powered by
Center for Curriculum and Transfer Articulation
C# Programming
Course: CSC270AA

First Term: 2003 Fall
Lec + Lab   3 Credit(s)   4 Period(s)   3.7 Load  
Subject Type: Academic
Load Formula: S


Description: Developing C# applications for the Microsoft .NET platform. Use of object-oriented principles in developing modularized C# programs



MCCCD Official Course Competencies
1. List the major components of the .NET Framework and explain how C# fits into the .NET Platform. (I)
2. Compile, run, debug, and document a simple C# application using tools available in a C# environment. (II)
3. Describe how modern Software Engineering Techniques are used in designing, implementing, and testing maintainable C# Programs. (III)
4. Create and use variables of the following C# data types in at least one C# application: Namespaces, value types and reference types, arrays, enumerations, constants, containers, user-defined types. (IV)
5. Write C# applications that use C# statements to control program flow and exception handling. (V)
6. Specify, design, and implement maintainable object-oriented programs in C# that create self-contained classes and frameworks, derive classes from existing classes, and demonstrate correct use of inheritance. (VI)
7. Write C# applications that define operators, use delegates, add event specifications, and implement predefined and custom attributes. (VII)
8. Write C# applications that read and write data from files and streams. (VIII)
9. Demonstrate how graphics and multimedia can be used with C#. (IX)
MCCCD Official Course Competencies must be coordinated with the content outline so that each major point in the outline serves one or more competencies. MCCCD faculty retains authority in determining the pedagogical approach, methodology, content sequencing, and assessment metrics for student work. Please see individual course syllabi for additional information, including specific course requirements.
 
MCCCD Official Course Outline
I. The .NET Platform
   A. Overview
   B. The .NET Framework
   C. C# in the .NET Framework
   C. The .NET Interactive Development Environment
II. Introduction to C#
   A. Structure of a C# program
   B. Compiling and running a C# program
   C. Using the Console class of the System namespace to perform basic I/O operations
   D. Using a debugger to trace execution
   E. Generating documentation
III. Applying Modern Software Engineering Principles
   A. Requirements
   B. Design principles
   C. Implementation
   D. Testing strategies
   E. Making programs maintainable
IV. C# Data Types
   A. Namespaces
   B. Value types and reference types
   C. Arrays
   D. Enumerations
   E. Constants
   F. Containers
   G. User-defined data types
   H. Creating and using variables of various types
V. Control Flow
   A. Branching statements-selection, if-else
   B. Loops-while, do-while, for
   C. Raising and handling basic exceptions
VI. Object-Oriented Programming in C#
   A. Overview of OOP-classes/subclasses, instances, methods, inheritance, polymorphism
   B. Classes
      1. Encapsulation principles
      2. Access modifiers
      3. Properties and indexers
      4. Creating self-contained classes and frameworks
      5. Using internal classes, methods, and data
      6. Using namespaces to organize classes
      7. Using aggregation
   C. Instances
      1. Using reference-type variables
      2. Using common reference types
      3. Namespaces
      4. Data conversions
   D. Methods
      1. Using methods
      2. Passing parameters
      3. Overloading methods
      4. Using constructors and destructors
   E. Inheritance
      1. The object hierarchy in C#
      2. Deriving classes
      3. Abstract classes
      4. Interfaces
      5. Virtual methods
      6. Abstract methods
      7. Sealed classes
VII. Operators and Events
   A. Overloading operators
      1. Arithmetic operators
      2. Equality and inequality operators
      3. Conversion operators
   B. Creating and using delegates
   C. Defining and using events
   D. Attributes
VIII. Files and Streams
   A. Data hierarchy
   B. Sequential-Access files
   C. Random-Access files
IX. Graphics and Multimedia
   A. Graphics contexts and graphics objects
   B. Graphics capabilities
   C. Windows Media Player
   D. Microsoft Agent
 
MCCCD Governing Board Approval Date:  2/27/2003

All information published is subject to change without notice. Every effort has been made to ensure the accuracy of information presented, but based on the dynamic nature of the curricular process, course and program information is subject to change in order to reflect the most current information available.