May 05, 2024  
2020-2021 Catalog 
    
2020-2021 Catalog [ARCHIVED CATALOG]

Add to Portfolio (opens a new window)

C SCI 143 - Object-Oriented Programming II

5 Credits
Includes implementation of interfaces, modularity, data structures, file I/O algorithms and analysis, searching, sorting and recursion. Emphasis on learning to develop algorithms using the principles of top-down design and step-wise refinement and modularity in object-oriented programming paradigm. Based on ACM (Association for Computing Machinery) curriculum guidelines for Computer Science II.

Pre-requisite(s) C SCI 142 min 2.0 
Course Note For online sections, tests will be administered on campus. Alternate testing sites may be arranged with the instructor given adequate notice.
FeesCF

Quarters Typically Offered
Summer Day, Online
Fall Day, Evening, Online
Winter Day, Evening, Online
Spring Day, Evening, Online

Designed to Serve For students desiring to transfer to a four-year institution as a computer science major.
Active Date 20200303T13:40:59

Grading System Decimal Grade
Class Limit 30
Contact Hours: Lecture 55
Total Contact Hours 55
Degree Distributions:
AA
  • Science

Course Outline
  1. Abstraction information hiding, encapsulation, interfaces, modularity
  2. Abstract Data Types
  3. Dynamic Memory Allocation references (pointers), static versus dynamic allocation, de-allocation, memory leaks, garbage collection
  4. Data Structures Stacks, Queues, Linked lists, trees, tree traversal, arrays, ArrayList, iterators
  5. Algorithm Analysis Searching, binary search, linear search; Sorting, bubble, insertion, merge, selection, quick
  6. Object Oriented Design Techniques inheritance, polymorphism, early & late binding
  7. Testing and debugging, Javadoc software design; examples of software errors; test strategies; debugger; Javadoc documentation system


Student Learning Outcomes
The student will design and implement a medium-sized program.

The student will be able to extend a program and incorporate previously created classes.

The student will demonstrate the process of algorithm development and data abstraction.

The student will demonstrate the concepts of data typing and array structures.

The student will demonstrate and utilize the concepts of classes, and modular design.

The student will be able to use a computer to write, execute, and debug medium-sized programs in a structured, high-level language using object-oriented techniques.

The student will be able to implement UI.



Add to Portfolio (opens a new window)