C# CSIS 113C Class Syllabus

Course Information:  

 Section  Semester Dates  Location   Units
Spring 2014 - 3493
 Spring 2014  Jan. 21 - May 29
 Online  3

Instructor Information:

 Instructor       Office #  Office Hours   Phone Number email 
Dr. Adrian S. Nastase N/A N/A N/A anastase@msjc.edu

Office Hours:
Since I am an Associate Faculty, I do not have an office or assigned office hours.  Still, I enjoy both teaching and talking to students. Please post questions and comments concerning class material in the online discussion board.  If you need to reach me directly, please contact me via email.

Course Description:
This introductory course is designed to teach students how to write programs using one of the most popular language, C#. At the end of the class, students should be confident in generating programs using VIsual Studio in a .NET environment.

Prior programming experience using Visual Basic, C++, or Java recommended.

Goals and Objectives

  1. Contrast and compare major elements of the .NET Framework and explain how C# fits into the .NET platform.
  2. Analyze the basic structure of a C# application and be able to document, debug, compile, and run a simple application.
  3. Create, name, and assign values to variables.
  4. Use common statements to implement flow control, looping, and exception handling.
  5. Create methods (functions and subroutines) that can return values and take parameters.
  6. Create, initialize, and use arrays.
  7. Explain the basic concepts and terminology of object-oriented programming.
  8. Demonstrate use of common objects and reference types.
  9. Demonstrate ability to create a C# Windows application using Visual Studio


Course Learning Outcomes

  1. Prepare a program / algorithmic design for a simple straight line process.
  2. Code and implement a Do...While loop construct tor a given problem.
  3. Code and implement a While loop construct for a given problem.
  4. Code and implement a For loop construct for a given problem.
  5. Create a robust test suite in support of a C# program design.
  6. Implement a test module as part of the program design that will exercise a test suite

Required Text
 Name Publisher  Author(s)  ISBN   

C# 2012 for Programmers (5th Edition)

Prentice Hall

Paul Deitel, Harvey Deitel



Make sure you read the assigned material in the textbook. The textbook material is mandatory. It is not enough to read only the lecture. The lecture portion of the class will cover the "big ideas" from each chapter. Just as in a live class, the lecture is a guide, and it is not intended to replace your individual study. You will find that the lectures will not simply be a repeat of the material in the book, but will usually present it from a different angle.

Reading ahead is also encouraged. Reading ahead will serve you well because you will be reviewing material, rather than seeing it for the first time. If you fail to do the reading, you will find yourself at a serious disadvantage in class and will have troubles getting a high score on assignments and exams.

How well you do in this class depends, to a certain extent on to how much time you are willing to spend outside of class. Like all college courses, you should plan on spending two hours per week for every unit the class is worth. Since this is a 3 unit class you should plan on spending 6 hours of work in addition to the four hours per week on classroom time. As this is an online class, your schedule is more flexible but you should plan 10 hours per week to successfully complete this course. In this class it would be wise to budget your time. Rather than cramming all of your studies into a two-day period, you should try to spend one to two hours a day reading or working on assignments.

If you are a good student or you are satisfied with a lower grade, you may get by with less. If you have difficulty with the material, or if you want to receive an A in the course, you will simply have to spend more time.

There will be two exams derived from the assigned reading and lab assignments. The exams will be taken online. You are free to use any books or notes that you wish. Each exam is worth 250 points for a total of 500 points.

There will be 12 lab assignments given in this class. You are responsible for all of them. Lab assignments are worth 40 points each, for a total of 480 points. 

Submitting Work
This is a hands-on class.  You will write programs in C# and submit them in the Student Assignment Submission area.

Assignments and exams are due on their due date.

Late Work
I will not accept late work. I am always on time with grading and answers to your questions and I expect the same from my students.  You will be given 1 to 2 weeks per assignment. This is plenty of time to complete the assignment and submit it. Many students feel that they can simply start the assignment on the day it is due and complete it. Do not let yourself fall into this trap. Some of these assignments are difficult and are going to need a great deal of your time and attention. 

I understand that there are times when life gets in the way of your school work. If something happens to you, and you are unable to participate in the class, it is your responsibility to let the instructor know in a timely manner. You should treat this class like you would a job. If you disappeared from your job for two weeks, without notifying someone, chances are you would lose that job.

The College catalog states under student responsibilities that students are to "Diligently attend class and complete assigned course work". Therefore, you are expected to be an active participant in this class. Failure to turn in work for two consecutive weeks can lead to you being dismissed from the class.

This is a progressive class.  You will find it difficult to continue to the next assignment if you did not finish the previous one.

I want to encourage as much discussion as possible using the Discussion forum on Blackboard. You can answer questions posted by your colleagues, bring new ideas, point to some interesting materials regarding C#, engage in discussions, debate subjects, in other words be active as you would in a face-to-face class. You are expected to participate in at least one discussion for every week of class. Discussion participation is worth 80 points. This is not just about points. Helping others understand the problem they are facing will also help you learn more and practice more.

Please do not post full solutions. You may give your colleagues hints and also you may point to some mistake they made in their assumptions, or point to some paragraph in your textbook, but full solutions and code posts are not allowed.

A Word about Academic Dishonesty
It may, at times, be possible for you to find a solution to your homework assignments on the web or in a book. You could probably even have someone else complete your assignments for you. Please do not do this. You are only hurting yourself and the reputation of the school. I am here to help. If you are having difficulties completing assignments or understanding the material, you should contact me. You are also encouraged to ask for assistance from other students via the discussion board.

I will be the first person to say that references are a great thing. Please use them as just that. Mt San Jacinto College does not tolerate cheating in any form. Anyone caught cheating can expect disciplinary action including, but not limited to, a letter grade of 'F' in the course, a grade of 'F' for that particular assignment, removal, suspension, or expulsion.

How Assignments are Graded
  • 35% - All directions are followed
  • 30% - If it compiles without error
  • 35% - If it runs to completion with proper input and output

Final Thoughts
Coding with C# can be very challenging for some people, since everything in C# is an object. I really want your experience in this class to be rewarding, not frustrating. It is important that you grasp a topic before moving on to the next one. If you are having difficulty, it is important for you to seek out help from the tools that are in place to help you. One of these tools is the discussion board. Ask questions, give advice, be an active participant.

This class starts with simple topics and quickly goes to more complicated subjects. It is specifically designed to challenge you, so that you will become proficient in coding. In an online class individual study is very important. Make sure you read the assigned text and practice with the code shown in examples before tackling an assignment. A programming language is learned by doing, by building your own code and by debugging it yourself. If you understand this you will be very successful in this class and you will acquire knowledge that will help you in your future professional life.


 Midterm  Final  Assignments Participation  Total
 200  240 480  80  1000


Grade Scale:

 Points Earned  Final Grade
900 - 1000 A
800 - 899 B
700 - 799 C
600 - 699 D
0    - 599 F


Tentative Schedule:

 Week  Topic  Read  Online Lessons Assignments  Must be
by 11:55 PM
on this day

Jan. 21 Introduction to .NET Framework, Introduction to Visual Studio, First Program Chapter 1 and 2 Unit 1 1  Jan. 26
Jan. 27 Introduction to C# Applications Chapter 3 Unit 1 2  Feb. 2
Feb. 3  C# Applications (cont.) and
Introduction to Classes and Objects
Chapter 3 and 4 Unit 1 3  Feb. 9
Feb. 10 Introduction to Classes and Objects (cont.) Chapter 4 Unit 1 4  Feb. 16
Feb. 17 Control Structures Part 1 Chapter 5 and 14 Unit 2 5  Feb. 23
Feb. 24 Control Structures Part 2 Chapter 6 Unit 3 6  Mar. 2
Mar. 3 Methods Part 1 Chapter 7 Unit 4 7  Mar. 9
Mar. 10 Methods Part 2 Chapter 7 Unit 5 7 (cont.)  Mar. 16
Mar. 17 Midterm    Mar. 23
Mar. 24 Spring Break        
Mar. 31 Arrays Chapter 8 Unit 6 8  Apr. 6
Apr. 7 Arrays (cont.) Chapter 8 Unit 6 8 (cont.)  Apr. 13
Apr. 14 Classes and Objects: A Deeper Look Chapter 10 Unit 7 9  Apr. 20
Apr. 21 Object Based Programming Chapter 11 Unit 8 10  Apr. 27
Apr. 28 Object Based Programming (cont.) Chapter 11 Unit 8 10 (cont.)  May 4
May 5 Introduction to Exception Handling Chapter 13 Unit 9 11  May 11
May 12 Introduction to Exception Handling (cont.) Chapter 13
Unit 9 12
 May 18
May 19 Preparing for the final exam    May 21
May 22 Final Exam        May 29

Have a great class!