Maricopa Community Colleges  CSC250   19966-19985 
Official Course Description: MCCCD Approval: 12/12/95
CSC250 19966-19985 L+L 3 Credit(s) 5 Period(s)
Advanced Programming Using C++
Developing Applications in C++; moving from C to C++ including objects and classes, inheritance, polymorphism and data abstraction. Prerequisites: CSC150 or permission of instructor.
Go to Competencies    Go to Outline
 
MCCCD Official Course Competencies:
 
CSC250   19966-19985 Advanced Programming Using C++
1. Write computer programs utilizing current software engineering techniques. (I)
2. Describe how and why the basic object oriented principles of object classes, data abstraction, inheritance and polymorphism are used in the software development process. (II)
3. Write C++ programs using objects and classes (base and derived), methods, friend functions, overloaded operators, virtual functions, templates, exception handlers, and streams. (III)
4. Specify, design and implement maintainable programs in C++ that include multiple pieces that work together to solve a single problem. (I, II, III)
5. Use standard graphics libraries to build applications in C++ that support a non- character based (e.g., point and click) user interface. (IV)
6. Write C++ event-processing applications that work with the user interface. (IV)
7. Write applications in C++ that interface to another major application, such as a relational database package for permanent storage. (IV)
Go to Description    Go to top of Competencies
 
MCCCD Official Course Outline:
 
CSC250   19966-19985 Advanced Programming Using C++
    I. Software Engineering
        A. Description
          1. Requirements
          2. Design
          3. Implementation
          4. Unit test and system test
          5. Repeatability
          6. Maintainability
        B. Use of case tools
      II. Design Model
          A. Object oriented model
            1. Classes
            2. Inheritance
            3. Polymorphism
            4. Data abstraction
          B. Comparison of design models
          C. The role of an object hierarchy
        III. Language Features
            A. C++
              1. Classes, objects, methods
              2. Derived classes, inheritance
              3. Operators, friend functions, operator overloading
              4. Virtual functions, polymorphism
              5. Templates
              6. Exception handling
              7. Streams
            B. Using C and C++ together
          IV. Building an Application in C++
              A. User interface
              B. Event-driven processing
              C. Database (or other) interface(s)
          Go to Description    Go to top of Competencies    Go to top of Outline