STATE UNIVERSITY OF NEW YORK AT OSWEGO
Computer Science Department
  1. COURSE NUMBER AND CREDIT
  2. CSC 212 - 3 Semester Hours

  3. COURSE TITLE
  4. Principles of Computing

  5. COURSE DESCRIPTION
  6. The notion of "object" directs the discipline of programming presented in this course. The Java programming language serves as the medium through which key ideas are introduced. The "smaller" issues of message passing and control flow are presented, as are the "larger" issues of abstraction, encapsulation, and hierarchy. Variables and typing, procedures and parameters are discussed. Functionality provided in specific java packages is employed. Standard algorithms are presented. Problem-solving strategies are articulated and exploited. Critical thinking is featured throughout the course in the context of problem-solving and computer programming.

  7. PREREQUISITES
  8. None.

  9. COURSE JUSTIFICATION
  10. This course is the first course with a programming element in the core requirement. The techniques and concepts learned here are crucial in the rest of the core. This course will satisfy one of the computational/mathematics requirements of general education. This course is required for CS majors.

  11. COURSE OBJECTIVES
  12. Upon successful completion of this course, students will be able to:

    1. demonstrate knowledge of the fundamental concepts and methodologies of object-oriented programming.
    2. demonstrate a working knowledge of selection and repetition constructs.
    3. demonstrate a working knowledge of primitive and object types.
    4. read, write, compile and run java programs.
    5. use general problem solving strategies in algorithm design.
    6. understand and implement several standard algorithms, including merging, searching, and sorting algorithms.
    7. utilize the emacs text editor and other utility and network programs in a unix environment.
    8. develop web site documents.

  13. COURSE OUTLINE
    1. Computers and Programming
      1. Computer Components
      2. Problem Solving using Classes
      3. Syntax and Semantics
      4. Compilers and Interpreters
      5. Creating and Running a Program
    2. Objects and Primitive Data
      1. Literals and Variables
      2. Strings
      3. Introduction to Objects
      4. Assignment Statements
      5. Arithmetic Expressions
    3. Selection Structures
      1. Control Structures
      2. Boolean Expressions
      3. if Statements
    4. Repetition Structures
      1. while Statement
      2. do-while Statement
      3. for Statement
      4. recursion
    5. Classes
      1. instance, static and final variables
      2. encapsulation and visibility
      3. packages
    6. Methods
      1. return Statement
      2. Parameters
      3. Local Data, Scoping
    7. Arrays and Vectors
      1. Operations
      2. Searching and Sorting
      3. Arrays of Objects
      4. Vector Operations
    8. Input and Output Processing
      1. blue.io

  14. METHODS OF INSTRUCTION
    1. Lectures.
    2. Discussion.
    3. Programming Laboratory.

  15. COURSE REQUIREMENTS
    1. Reading.
    2. Design and implementation of programs.
    3. Participation in class and programming laboratory.

  16. MEANS OF EVALUATION
    1. Individual programming projects.
    2. Examinations.

  17. RESOURCES
  18. No additional resources are required.

  19. BIBLIOGRAPHY
  20. T. Budd. An Introduction to Object-Oriented Programming (2nd ed.). Addison-Wesley, New York, 1997.

    T. Budd. Understanding Object-Oriented Programming with Java (Updated ed.). Addison-Wesley, New York, 2000.

    M. Campione and K. Waltrath. The Java Tutorial, 2ed. Addison-Wesley 1998. http://java.sun.com/docs/books/tutorial/index.html

    E. Koffman and U. Wolz. Problem Solving with Java. Addison-Wesley, New York, 1999.

    A. Lewis and M. Loftus. Java Software Solutions: Foundations of Program Design (2nd ed.). Addison-Wesley, New York, 2000.

    W. J. Savitch. Java: An Introduction to Computer Science and Programming. Prentice-Hall, New Jersey, 1999.

    A. Tucker, A. Bernat, W. Bradley, R. Cupper and G.Scragg. Scragg, G.(1994). Fundamentals of Computing I: Logic, Problem Solving, Programs, and Computers. McGraw-Hill, New York, 1994.


Document:
URL:
Last Update: