AP CS A

Description

AP Computer Science (Course Outline) Mind Map on AP CS A, created by KonSpiral on 27/11/2013.
KonSpiral
Mind Map by KonSpiral, updated more than 1 year ago
KonSpiral
Created by KonSpiral almost 11 years ago
186
1

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

                                                        Missed Questions on Inheritance/Polymorphism Test
                                                        Nik Nguyen
                                                        Resistance Training I
                                                        Lynn Kabaroff
                                                        Abstract Classes & Interfaces & Polymorphism
                                                        Nik Nguyen
                                                        Inheritance
                                                        Nik Nguyen
                                                        Arrays - Vocabulary
                                                        vgeetha
                                                        Arrays
                                                        vgeetha
                                                        Resistance Training I
                                                        Lynn Kabaroff
                                                        The SAT Test
                                                        philip.ellis
                                                        Types and Components of Computer Systems
                                                        Jess Peason
                                                        GCSE History – Social Impact of the Nazi State in 1945
                                                        Ben C
                                                        OP doplnovaci otazky
                                                        Helen Phamova