Syllabus - Brandeis University

advertisement
Brandeis University
Division of Graduate Professional Studies
Rabb School of Continuing Studies
Course Syllabus
I. Course Information
1. Course Name: Advanced Programming in C#
2. Course Number: Class Number: 2-37 RSEG 180 1DL: Advanced Programming in C#
(Summer 2015)
3. Course Start & End Dates; Class Meeting Times:



Class Starts: Wednesday, May 20th, 2015
Class Ends: Tuesday, July 28th 2015
Distance Class. Assignments and discussion postings are due on Tuesday each week
4. Instructor’s Name and Contact Information:




Keith Cramer
Senior Software Engineer, IBM
kcramer97@yahoo.com or kcramer@brandeis.edu
507-356-2726
. Document Overview
This syllabus contains all relevant information about the course: its objectives and outcomes, the grading criteria, the texts
and other materials of instruction, and of weekly topics, outcomes, assignments, and due dates.
Consider this your roadmap for the course. Please read through the syllabus carefully and feel free to share any
questions that you may have. Please print a copy of this syllabus for reference.
6. Course Description
This course covers the programming language C# (pronounced "C sharp"), used to develop
Windows applications. The focus of the course is learning the .NET programming environment,
Windows programming and the syntax and capabilities of the C# language. Concepts covered
will include Microsoft Visual Studio .NET IDE, C# language syntax, control structures, arrays,
exception handling, Windows graphical user interface, multithreading, strings, graphics and
multimedia, files and streams, XML, database SQL and ADO .NET, ASP .Net, web forms and
web controls, ASP .NET and web services, networking, data structures and collections.
This is a programming course that addresses how to develop Windows applications using the C#
(pronounced "C sharp") programming language. Students will learn the Microsoft .NET
environment for developing and running software applications, featuring ease of development of
web-based services, rich standard run-time services available to components written in a variety
of programming languages, and inter-language and inter-machine interoperability.
The focus of the course is learning the .NET programming environment, Windows programming
1
and the syntax and capabilities of the C# language.
At the end of this course the student will be able to:
Install and learn the Microsoft Visual C# IDE,
Create a C# console application
Understand C# classes, objects and control statements
Describe the basics of C# graphics programming
Master Creating a Windows Forms Program
Create and manipulate SQL Databases in the C# language
Apply the basic concepts of Web programming using the C# language
Apply the basic concepts of ASP .NET & ASP.NET AJAX programming using the C# language
Apply C# GUI with Windows Presentation Foundation, C# WPF Graphics and Multimedia, and
C# XML and LINQ Programming
This class will use Microsoft Visual Studio Community Edition 2013. This software is available for free
from Microsoft and can be downloaded for free from: https://www.visualstudio.com/en-
us/products/free-developer-offers-vs.aspx
When installing the software it is recommended you choose the default optional
components:
2
If you have access to Microsoft Visual Studio Community Edition 2013 professional subscription, you may
use this software for the class. This class will require students to have either Windows 7 or Windows 8.1
installed on a computer that can be used for writing and testing the programs assigned. We will not
require Windows 8.1 for this class as many people simply have not upgraded to this version yet.
Therefore I will not assign any programming assignments that require Windows 8.1.
Prerequisites
RSEG102 or RSEG105 or equivalent programming experience in Java, C++, or C#.
7. Materials of Instruction
a. Required Texts
Visual C# 2012 How to Program (5th Edition)
Paul Deitel (Author), Harvey Deitel (Author)
ISBN-10: 0133379337 | ISBN-13: 978-0133379334
3
Publisher: Prentice Hall
b. Required Software
This class will use Microsoft Visual Studio Community Edition 2013 This software is available for
free from Microsoft and can be downloaded for free from:
:
https://www.visualstudio.com/en-us/products/free-developer-offers-vs.aspx
I am using Windows 7 and Windows 8.1 to test and grade your assignments.
c. Optional Software
Microsoft is offering all of its development tools for free to students. You need to prove student status with
registration documentation. Here is the web site to get free software:
https://www.dreamspark.com/Student/Software-Catalog.aspx
e. Online Course Content
 DL Courses: This section of the course will be conducted completely online using Brandeis’
Latte site, available at http://latte.brandeis.edu. The site contains the course syllabus,
assignments, our Discussions bulletin board, links/resources to course-related professional
organizations and sites, and weekly checklists, objectives, outcomes, topic notes, self-tests, and
discussion questions. Access information is emailed to enrolled students before the start of the
course. .
If you have not taken a distance course at Brandeis University using the latte course system it is
strongly recommended that you complete the latte tutorial:
https://moodle2.brandeis.edu/course/view.php?id=1226
.
9. Overall Course Outcomes
The student will learn the C# programming language. This includes the syntax and grammar of C#. The
student will learn the fundamentals of creating Windows programs. Students that complete this class will
be able to design and write Windows programs using the C# language.
At the end of the course, students will be able to:
1. Create C# classes in a console application.
2. Use C# to create a GUI application in a form.
3. Create a Microsoft Presentation Foundation Application
4. Create a Microsoft Presentation Foundation Application and use Linq to access a real database.
4
5. Create a Microsoft ASP.NET Application
10. Course Grading Criteria
Percent
Component
30 % (DL)
Discussions/On-line participation:

Each week, respond to at least 1 Discussion Question(s) by Tuesday
and post at least 1 other substantive messages by Tuesday.
10%
Programming Assignment 1
15 %
15 %
15 %
15 %
Programming Assignment 2
Programming Assignment 3
Programming Assignment 4
Programming Assignment 5
Your grade will be based on the percentage of points earned in class programming assignments. Class participation
is required in the form of a weekly discussion question that and discussion forum postings. Students post responses
to discussion questions to the course’s Discussions. (bulletin board) There is a requirement that each student post
at least one original response and two substantive replies on each discussion question each week. In addition each
student most post a comment on three different days each week. Full credit for posting will only be given if you
meet the minimum posting criteria (3 posts / week) and the minimum number of days that you post criteria ( 3 posts
per week).
Evaluation criteria for how discussion posts are graded each week:
The instructor will read and evaluate your weekly posts for original content, how it substantially contributes to the
discussion, original research, and quality. You will receive a value between 0-100 each week. For example if you
fail to post any messages you will receive a zero. If you post one original, and two substantive replies to other
peoples post in a week you will receive a ten. This is a graduate level class in software engineering. As a graduate
student you are expected to do original research for the discussion questions. The topics have been specifically
been selected to broaden the classes knowledge in the theme of Microsoft C#, .NET programming, and comparing
and contrasting artifacts of this development language to other popular choices in the industry such as Java, C++ to
name a few, Students are expected to cite all references to the posting entries. Do not cut/paste text from internet
sources without using quotations, and including some original analysis for the posts. Students are expected to do
some original research and spend some time contemplating the questions with academic and industry relevant
answers. I will judge the quantity and quality of your posts in assigning your grade each week.
Weekly workload expectations for students:
It is expected that a student will spend six to ten hours each week directly working on course materials, reading,
researching, writing programs, and posting on the discussion forum.
5
II. Weekly Information
5/20/2015 – 5/26/2015
Week 1
Outcomes
Discussions (for DL)
Readings
You install and use the Microsoft Visual Studio Community Edition 2013
You will build your fist C# “Hello World” Program
You will learn some basic/introduction C# language constructs
You will learn how to create a C# console application
Discussion posting for week 1
Visual C# 2012 How to Program Chapters 1-3
Week 1 Lecture Notes
Assignments / Assessments/
Self-Assessments
Due 5/26/2015 – You must download Microsoft Visual Studio Community
Edition 2013 and practice using the IDE (Integrated Development
Environment). You should try building some example programs from the
wizards. In the IDE
Download and begin to work on the “Getting Started with C#” Assignment
from the latte assignment folder. This assignment will be due next week.
Week 2
5/27/2015 – 6/2/2015
Outcomes
Discussions (for DL)
Readings
You will have a basic understanding of C# classes
You will have a basic understanding of C# objects
You will master the C# language control statements
Discussion posting week 2
Assignments / Assessments/
Self-Assessments
Visual C# 2012 How to Program Chapters 4-6
Week 2 Lecture Notes
Due 6/2/2015 - Complete “Getting Started with C#” Assignment and post
your completed assignment in the latte assignment folder.
You will download and start Homework assignment #1. This assignment will
be due in one week.
Week 3
6/3/2015 – 6/9/2015
Outcomes
Discussions (for DL)
Readings
Assignments / Assessments/
Self-Assessments
Will be assigned in the discussion posting
Visual C# 2012 How to Program Chapters 7-9
Week 3 Lecture Notes
Due 6/9/2015 - Homework Assignment #1
You will download and start Homework assignment #2. This assignment will
be due in 2 weeks.
6/10/2014 – 6/16/2015
Week 4
Outcomes
Discussions (for DL)
Readings
6
You will obtain a basic understanding of C# Methods
You will obtain a basic understanding of C# array
You will learn the basics of LINQ and Collections
You will learn some advanced programming concepts about C# Classes and
Objects.
You will master the concept of C# Inheritance & Polymorphism,
You will master the concept of C# Operator Overloading,
Will be assigned in the discussion posting
Visual C# 2012 How to Program Chapters 10-12
Week 4 Lecture Notes
Assignments / Assessments/
Self-Assessments
Continue to work on homework Assignment #2. This assignment is due in
one week
Week 5
6/17/2015 – 6/23/2015
Outcomes
Discussions (for DL)
Readings
Assignments / Assessments/
Self-Assessments
You will learn how to program Exception Handling in C#
You will learn the basics of C# graphics programming
You will master Creating a Windows Forms Program
You will learn how to use keyboard and mouse events in C#
You will learn how to add a tooltip to your program.
You will learn how to program Windows controls in C#
You will learn how to use threading in C#
Will be assigned in the discussion posting
Visual C# 2012 How to Program Chapters 13-15
Week 5 Lecture Notes
Due 6/23/2015 - Homework Assignment 2
You will download and start Homework assignment #3. This assignment will
be due in 2 weeks.
6/24/2015 – 6/30/2015
Week 6
Outcomes
Discussions (for DL)
Readings
You will learn how to do advanced string manipulation in C#
You will learn how to use files and streams in C#
You will learn how to do searching and sorting in C#
Will be assigned in the discussion posting
Assignments / Assessments/
Self-Assessments
Visual C# 2012 How to Program Chapters 16-18
Week 6 Lecture Notes
Continue to work on homework Assignment #3. This assignment is due in
one week
Week 7
7/1/2015 - 7/7/2015
Outcomes
Discussions (for DL)
Readings
Assignments / Assessments/
Self-Assessments
Will be assigned in the discussion posting
Visual C# 2012 How to Program Chapters 19-21
Week 7 Lecture Notes
Due 7/7/2015 - Homework Assignment #3
You will download and start Homework Assignment #4. This assignment will
be due in 2 weeks.
You will download and start Homework Assignment #5. This assignment will
be due in 3 weeks.
7/8/2015 – 7/14/2015
Week 8
Outcomes
Discussions (for DL)
Readings
Assignments / Assessments/
7
You will learn to use data structures in C#
You will learn how to use generics in C#
You will learn how to use collections in C#
You will learn how to create and manipulate SQL Databases in the C#
language
You will learn how to use LINQ in C# with an external database
Will be assigned in the discussion posting
Visual C# 2012 How to Program Chapters 22
Week 8 Lecture Notes
Continue to work on homework Assignment #4. This assignment is due in
Self-Assessments
Week 9
one week
Continue to work on homework Assignment #5. This assignment is due in
two weeks
7/15/2015– 7/21/2015
Outcomes
Discussions (for DL)
Readings
Assignments / Assessments/
Self-Assessments
Week 10
You will learn GUI with Windows Presentation Foundation
You will learn WPF Graphics and Multimedia
Will be assigned in the discussion posting
Visual C# 2012 How to Program Chapters 32,33
Week 9 Lecture Notes
Due 7/21/2015- Homework Assignment #4
Continue to work on homework Assignment #5. This assignment is due in
one week
7/22/2015– 7/28/2015
Outcomes
Discussions (for DL)
Readings
Assignments / Assessments/
Self-Assessments
You will learn the basic concepts of Web Programming with ASP.NET
You will learn using LINQ with XML files
Will be assigned in the discussion posting
Visual C# 2012 How to Program Chapters 23,24
Week 10 Lecture Notes
Due 7/28/2015- Homework Assignment #5
III. Course Policies and Procedures
1. Grading Policy:
Students are expected to hand in assignments when due. No extensions will be granted. Any assignment turned in
one week late will automatically lose 20% of the possible points. Any assignment not turned in after one week late
will not be accepted and the student will receive a zero for the assignment.
2. Academic Dishonesty:
No form of cheating or plagiarism will be tolerated. Such actions will be dealt with in accordance with the
procedures set forth in the Brandeis University handbook. Cheating can result in an F for the exam, an F for the
course, or other disciplinary action. All programming assignments must be done individually.
3. Assignments:
All programming assignments will be posted on latte with due dates duly noted. You must turn the assignments in
using latte by the due date to receive full credit.
IV. University and Division of Continuing Studies Standards
8
Please review the policies and procedures of Continuing Studies, found at
http://www.brandeis.edu/gps/students/studentresources/policiesprocedures/index.html. Among them, we
would like to highlight the following.
Learning Disabilities
If you are a student with a documented disability on record at Brandeis University and wish to
have a reasonable accommodation made for you in this course, please contact me immediately.
Academic Honesty and Student Integrity
Academic honesty and student integrity are of fundamental importance at Brandeis University and we
want students to understand this clearly at the start of the term. As stated in the Brandeis Rights and
Responsibilities handbook, “Every member of the University Community is expected to maintain the
highest standards of academic honesty. A student shall not receive credit for work that is not the product
of the student’s own effort. A student's name on any written exercise constitutes a statement that the
work is the result of the student's own thought and study, stated in the students own words, and produced
without the assistance of others, except in quotes, footnotes or references with appropriate
acknowledgement of the source." In particular, students must be aware that material (including ideas,
phrases, sentences, etc.) taken from the Internet and other sources MUST be appropriately cited if
quoted, and footnoted in any written work turned in for this, or any, Brandeis class. Also, students will not
be allowed to collaborate on work except by the specific permission of the instructor. Failure to cite
resources properly may result in a referral being made to the Office of Student Development and Judicial
Education. The outcome of this action may involve academic and disciplinary sanctions, which could
include (but are not limited to) such penalties as receiving no credit for the assignment in question,
receiving no credit for the related course, or suspension or dismissal from the University.
Further information regarding academic integrity may be found in the following publications: "In Pursuit of
Excellence - A Guide to Academic Integrity for the Brandeis Community", "(Students') Rights and
Responsibilities Handbook" AND "Continuing Studies Student Handbook". You should read these
publications, which all can be accessed from the Continuing Studies Web site. A student that is in doubt
about standards of academic honesty (regarding plagiarism, multiple submissions of written work,
unacknowledged or unauthorized collaborative effort, false citation or false data) should consult either the
course instructor or other staff of the Rabb School for Continuing Studies.
University Caveat
The above schedule, content, and procedures in this course are subject to change in the event of
extenuating circumstances.
9
Download