ITEC 120
PRINCIPLES OF COMPUTER SCIENCE I
ITEC 120. Principles of Computer Science I
Three hours lecture; two hours laboratory (4).
Pre-requisites: none
A rigorous, systematic approach to object oriented problem solving and programming.
Topics covered:
Programming Fundamentals
- Java: assignment, expressions, conditionals, loops
- Keyboard I/O
- File I/O (records)
- Arrays of primitive types
- Arrays of objects
- Applications
- Class libraries
- Methods
- OverloadingObjects and Classes
- Fields and Methods
- Instance v.s. Class Members
- Inheritance (*)
- Encapsulation
- Visibility modifiers
- New
- Reference types
- Primitive typesLanguage Topics
- Type conversion
- String manipulation
- Java Virtual Machine
- Java Applets and simple graphicsSoftware Engineering
- Problem solving
- Software Analysis and Design
- Testing and debugging
- Documentation and program structure
- UML
- Abstraction and Data StructuresAlgorithms
- searching
- simple sortGraphical User Interface
Recursion
Recurring Themes
- Ethics
- Analysis of Algorithms (sort)
These topics are consistent with the curriculum for CS1 as recommended by the Association for Computing Machinery (ACM).
Class lecture and discussion sessions present and explain problem solving techniques and standard algorithms, illustrated by examples. In the laboratory students learn, with faculty guidance, to solve programming problems and to actually implement their solutions on the computer. Students are also required to solve, code, test and debug several problems without direct faculty guidance.
To provide students with a basic understanding of computer systems, working knowledge of a higher level programming language and the problem solving skills that they will need to prepare them for further studies in information technology.
Student achievement is measured by written tests and evaluation of programming assignments.
None.
DATE ACTION APPROVAL
April 15, 2009, Updated Arthur E. Carter, Chair
February, 2003 Updated John P. Helm, Chair