AP CS A

Description

Computer Science Mind Map on AP CS A, created by Aykan Akyıldırım on 12/11/2016.
Aykan Akyıldırım
Mind Map by Aykan Akyıldırım, updated more than 1 year ago More Less
KonSpiral
Created by KonSpiral almost 11 years ago
Aykan Akyıldırım
Copied by Aykan Akyıldırım about 8 years ago
5
0

Resource summary

AP CS A
  1. Object Oriented Analysis and Design
    1. Program Design

      Annotations:

      • 1. Read and understand a problem description, purpose, and goals. 2. Apply data abstraction and encapsulation. 3. Read and understand class specifications and relationships among the classes (“is-a,” “has-a” relationships). 4. Understand and implement a given class hierarchy. 5. Identify reusable components from existing code using classes and class libraries.
      1. Class Design

        Annotations:

        • 1. Design and implement a class. 2. Choose appropriate data representation and algorithms. 3. Apply functional decomposition. 4. Extend a given class using inheritance.
      2. Program Implementation
        1. Programming constructs
          1. Primitive types vs. objects
            1. Declaration

              Annotations:

              • a. Constant declarations b. Variable declarations c. Class declarations d. Interface declarations e. Method declarations f. Parameter declarations
              1. Console output (System.out.print/println)
                1. Control

                  Annotations:

                  • a. Methods b. Sequential c. Conditional d. Iteration e. Understand and evaluate recursive methods
                2. Implementation Techniques
                  1. Methodology

                    Annotations:

                    • a. Object-oriented development b. Top-down development c. Encapsulation and information hiding d. Procedural abstraction
                  2. Java library classes (included in the AP Java subset)
                  3. Program Analysis
                    1. Debugging

                      Annotations:

                      • 1. Categorize errors: compile-time, run-time, logic. 2. Identify and correct errors. 3. Employ techniques such as using a debugger, adding extra output statements,
                      1. Understand and modify existing code
                        1. Extend existing code using inheritance
                          1. Understand error handling

                            Annotations:

                            • Understand runtime exceptions
                            1. Reason about prograing

                              Annotations:

                              • 1. Pre- and post-conditions 2. Assertions
                              1. Analysis of algorithms

                                Annotations:

                                • 1. Informal comparisons of running times 2. Exact calculation of statement execution counts
                                1. Numerical representations and limits

                                  Annotations:

                                  • 1. Representations of numbers in different bases 2. Limitations of finite representations (e.g., integer bounds, imprecision of floating-point representations, and round-off error)
                                  1. Testing

                                    Annotations:

                                    •  Testing 1. Test classes and libraries in isolation. 2. Identify boundary cases and generate appropriate test data. 3. Perform integration testing.
                                  2. Standard Data Structures

                                    Annotations:

                                    • Data structures are used to represent information within a program. Abstraction is an important theme in the development and application of data structures.
                                    1. Simple Data Types

                                      Annotations:

                                      • int, boolean
                                      1. Classes
                                        1. Lists
                                          1. Arrays
                                          2. Standard Algorithms

                                            Annotations:

                                            • Standard algorithms serve as examples of good solutions to standard problems. Many are intertwined with standard data structures. These algorithms provide examples for analysis of program efficiency.
                                            1. Operations on Data Structures

                                              Annotations:

                                              • 1. Traversals 2. Insertions 3. Deletions
                                              1. Searching

                                                Annotations:

                                                • 1. Sequential 2. Binary
                                                1. Sorting

                                                  Annotations:

                                                  • 1. Selection 2. Insertion 3. Mergesort
                                                2. Computing in Context

                                                  Annotations:

                                                  • An awareness of the ethical and social implications of computing systems is necessary for the study of computer science. These topics need not be addressed in detail but should be considered throughout the course.
                                                  1. System reliability
                                                    1. Privacy
                                                      1. Legal issues and intellectual property
                                                        1. Social and ethical ramifications of computer use
                                                        Show full summary Hide full summary

                                                        Similar

                                                        Computing Hardware - CPU and Memory
                                                        ollietablet123
                                                        SFDC App Builder 2
                                                        Parker Webb-Mitchell
                                                        Data Types
                                                        Jacob Sedore
                                                        Intake7 BIM L1
                                                        Stanley Chia
                                                        Software Processes
                                                        Nurul Aiman Abdu
                                                        Design Patterns
                                                        Erica Solum
                                                        CCNA Answers – CCNA Exam
                                                        Abdul Demir
                                                        Abstraction
                                                        Shannon Anderson-Rush
                                                        Spyware
                                                        Sam2
                                                        HTTPS explained with Carrier Pigeons
                                                        Shannon Anderson-Rush
                                                        Data Analytics
                                                        anelvr