OREGON INSTITUTE OF TECHNOLOGY
COMPUTER SYSTEMS ENGINEERING TECHNOLOGY DEPARTMENT
COURSE : GUI Programming ( CST-238)
4 Credit Hours (3 Class Hours, 3 Lab Hours)
Professor: Sherry Yang, Ph.D.
Office Phone: 503-821-1292
Office Hours: R 4-6pm and other times by appointment
Office: Wilsonville Room 213
Email:
Quarter: Spring 2014
TEXTBOOK:
1. Sells, Chris & Michael Weinhardt, “Windows Forms 2.0 Programming”, Addison-Wesley Profession, 2006.
2. Johnson, Jeff, GUI Bloopers 2.0, Common User Interface Design Don’ts and Dos.
SPECIFIC COURSE INFORMATION:
Catalog Description
Introduction to Windows based programming. Topics covered include a review of the standard user interface elements of Windows, the Windows Application Program Interface (API), message processing, writing Windows Procedures, working with text, using Windows resources, creating modal and modeless dialog boxes, and using the Graphics Device Interface.
Prerequisite
CST 211 with C or better and SPE111
Required, Elective or Selective:
Required
SPECIFIC GOALS OF THE COURSE:
Specific Outcomes of Instruction
This course is designed to introduce the basic concepts associated with Graphical User Interface (GUI) Programming in the Windows environment. We will start with .NET framework and windows forms. We might explore other framework if time permits. We will also spend time on various aspects associated with user interface design. Students are expected to complete all in-class lab tasks and assigned coding projects.
COURSE TOPICS:
1: Basics
Writing Windows Forms from Scratch/Windows Form Events and Event Listeners
Windows Forms in Visual Studio .NET
Arranging Form Controls & Application Settings
2: Forms
Form properties: Visibility, Lifetime, Size and Location
Form properties: Adornments, Transparency, and Context Menus
Form properties: Tool Strips, Status Strips, MDI Applications, and Visual Inheritance
3: Layout
Fixed Layout vs. Dynamic Layout
Layout Controls and Optimization
Custom Layouts
4: Drawing
Drawing to the Screen, Colors, Brushes, Pens, Shapes, Paths, Images
Drawing Text: Fonts, Strings, Text Rendering
Page Units, Transforms, Regions
5: Components & Controls
Using Components & Creating Custom Components
Themed Controls, Owner-Drawn Controls
Extending Existing Controls & Custom Controls
6: Design-Time Integration
Design-Time Components, Hosts, Containers, and Sites
Debugging Design-Time Functionality
Designers, Smart Tags
7: Resources/Applications
Strongly Typed Resources
Application Internationalization
Single-Instance Applications
8: Settings
The Application Environment, Application, User, and Roaming-User Settings
Strongly Typed Settings
Designer Settings
9: Data Binding Basics
Simple Data Binding and Item Data Sources
Simple/Complex Binding and List Data Sources
Criterion 3 Outcomes Addressed By Course
3. an understanding of the core areas of software engineering. (data structures, theory of computation, operating systems, compilers, programming languages, computer architecture). (Program Objective A);
9. an ability to convey technical material through oral presentation and interaction with an audience (Program Objective A, C and D);
BRIEF LIST OF TOPICS COVERED:
1. Forms, Events and Controls
2. Forms lifecycle
3. Controls
4. Drawing
5. Data Binding
6. Application Settings
GRADING PROCEDURE:
Tests/Quizzes 30%
In-Class Assignments 15%
Labs/Assignments 45%
Presentations 10%
a. Class participation will be considered in evaluating “borderline” grades.
b. Students who have missed a test may make it up with additional projects.
c. Students must turn in ALL of the labs and complete the project to pass the course with a C or better.
GRADING SCALE:
90%+ = A
80%+ = B
70%+ = C
60%+ = D
59%- = F
LAB SCHEDULE and REQUIREMENTS:
Lab times will be used as help sessions and to check off lab assignments. You are required to complete all of the labs and project to pass the course with a C or better. Failing to turn in all labs and project will receive an automatic Incomplete.
CLASSROOM POLICIES:
1. Every student is expected to attend class on TIME and is responsible for ALL work missed during any absences.
2. Copying another’s work or plagiarism will not be tolerated. Please refer to OIT policy on Student Academic Integrity for more information: http://www.oit.edu/libraries/student_handbook/student_academic_integrity_policy.pdf
3. No make-up exams so please make arrangements with the instructor ahead of time if there is a schedule conflict.
4. No late homework and assignments will be accepted unless you make arrangements with the instructor ahead of time. There will be a 20% penalty per week for all late assignments.
OTHER IMPORTANT INFORMATION
If you may need a course adaptation or academic accommodation because of a disability, or if you might need special arrangements in case the room or building must be evacuated, please see me as soon as possible. I rely on the Disability Services for assistance in verifying the need for accommodations and developing accommodation strategies.
Obstruction or disruption of teaching, research, administration, disciplinary procedures, or other institutional activities, including the Institution's public service functions or other authorized activities on institutionally owned or controlled property is strictly prohibited by Oregon Tech’s code of student conduct and may result in disciplinary action.
Please be advised that this class may be recorded. If you would like permission to record this class you must speak with the instructor.
4