Welcome to California State University, Chico -- Today Decides Tomorrow
Search for
 
Search in
 

California State University, Chico
 
CSCI 511: Object-Oriented Programming Back to List
Previous Page Next Page
 
Prerequisites: CSCI 311

Catalog Description:
This class focuses on object-oriented programming using large class libraries and interactive programming environments. The course centers on good object-oriented design and implementation by addressing these issues with examples throughout the semester. Students will experience the development environment and extensively use the library of at least one object-oriented programming language. Topics include the proper use of inheritance and model/view/controller distinctions, various issues concerning multithreaded systems, I/O, exception handling, and distributed computing. CSCI 215.

Course Objectives:
The objectives are for the student to:
  • develop OO programming skills.
  • learn to communicate with other programmers regarding OO concepts.
  • develop an appreciation of the benefits of an OO approach to programming.

Course Outcomes:
Students shall:
  • understand the benefits of modularity and abstraction.
  • be able to distinguish data abstraction from parameterization and procedural abstraction.
  • be able to write class libraries and programs in at least one OO language.
  • be able to use class libraries in at least one OO language.
  • understand polymorphism and implementation inheritance.
  • be able to use both implementation inheritance and object composition, and understand the tradeoffs.
  • be aware of differences in the OOP features supported by different OO languages.
  • be able to recognize and apply some OO design patterns, and communicate in terms of them.
  • be able to reason about, and document, classes in terms of contracts, preconditions, postconditions, and invariants.
  • be able to interpret and produce UML class diagrams and object diagrams.
  • be able to improve the design of existing OO software via refactoring.

Accreditation Category Content:
This course embodies a significant portion of Solutions Design
Topic Percentage Hours
     
Software Design 50% 22.5
Concepts of Programming 50% 22.5
Relationship of Course to Program Objectives:
This course supports the achievement of the following program objectives:
  1. All students will be able to analyze and solve computing problems, or problems in related areas, and to continually upgrade their knowledge and skills.
  2. All students will be effective oral and written communicators and be able to function effectively as members of multi-disciplinary teams.
  3. Those graduates who pursue careers as computing professionals will have the skills to use and design new and innovative systems that meet society's needs.
  4. Those graduates who pursue advanced degrees will have the skills to succeed in graduate programs in computing and related fields.
 
Computer Science | Welcome | Important Dates! | Advising | Facilities | News | Career Opportunities | Mission | Industry Involvement | Assessment Tools | Alumni | Research | BS in Computer Science | BS in Computer Information Systems | MS in Computer Science | Minor in Computer Science | Minor | Online Program
CSU, Chico:
Home | Admissions | Bookstore | Catalog | Schedule | Library | Help

This page and its contents © 2003 College of Engineering, Computer Science, & Construction Management
California State University, Chico
College of Engineering, Computer Science, & Construction Management
California State University, Chico
Chico, CA 95929-0003
530-898-5963
webmaster@ecst.csuchico.edu

Maintained by Freedom™.   Developed by Diverse Network Associates™.

Department of Computer Science Preparing Graduates to Solve 21st Century Problems