| Course Information: CSE 1301c Section
002 CRN 9296 |
|
| Lecture Time | Lab Time |
| M W 6:00 -7:15 am J-210 | M or W 7:30 - 9:15 am J - 201L |
Instructor:
Richard Gesick
office:
J-388
Means of Communication:
email (preferred):
rgesick@spsu.edu
office phone: (678) 915-3534
office hours:
M W 56 pm or by appt.
Required Text: None, the following are available free online:
Rob Miles CSharp Yellow Book 2008.pdf
Programmer's Heaven: C# School
Co- requisite:
MATH 1113
Overview:
This course provides an introduction to computer science with a focus on
structured programming. Topics include an overview of programming,
problem-solving and algorithm development, simple data types, arithmetic and
logical operators, selection and repetition structures, and arrays.
Emphasis is placed on the techniques of good programming style and how to
design, implement, debug, and document programs. Designs and
implementations use object-oriented programming.
Objectives:
Students with disabilities who believe that they
may need accommodations in this class are encouraged to contact the counselor
working with disabilities at (678) 915-7226 as soon as possible to better ensure
that such accommodations are implemented in a timely fashion.
Grading
The
course grade will be determined in the following manner.
Assignments 40%
Lab grade
15%
Tests
30%
Final Exam 15%
[90 ∞)
A
[80 90)
B
[70 80)
C
[60 70)
D
(-∞ 60)
F
Creating games is a great way to learn to program,
but it can be quite daunting if you are starting from first principles. XNA 2.0
makes serious game creation easier than it has ever been before. Even so, the
fact remains that for a beginner it is hard to understand how even a simple game
like Pong is made to work using XNA 2.0. From a programming point of view,
the focus is on the algorithm that controls the behavior of the game. This
approach allows programming fundamentals, and the essential nature of the way
that computers store and process data, to be explored at the very start of the
learning process. So the games may not be very sophisticated, but they are
still games and will teach you the basics of programming at the same time.
It is important to remember that learning to create
programs is not just about writing code. There are also ethical and professional
aspects to the business of building software. Great programmers take pride in
their work, give consideration to their colleagues, and take steps to ensure
that what they create is of high quality.
It is not possible in a single introductory
programming course to cover everything. The intention of this course is to
provide enough knowledge of programming fundamentals to allow someone to have
fun writing code. It also includes enough game ideas to allow them to explore
the creation of original material. It will also give you a foundation of
programming skills to build on should you continue to study computing.
Class Rules:
1. Students
are responsible for all announcements and assignments made in class.
2. Students
are expected to do their own work for all assignments unless otherwise indicated
by instructor. Group discussion and study of the assignments are
permitted, but, when you begin to prepare your assignment to turn in, all
collaboration must cease. If collaboration is suspected, the grade will be
a 0. Multiple occasions of collaboration will earn you an academic
dishonesty F for the course.
3. All
assignments are due by MIDNIGHT on the day indicated.
4. No
late assignments will be accepted.
5. If
a student must miss an announced test due to illness work travel or other valid
excuse, he/she must make alternate arrangements with instructor PRIOR to test
date. There will be NO make-up tests unless prior arrangements have been
made.
6. If
a class is cancelled for any reason, any assignment due that day will
immediately be due the next scheduled class period. Any topic or test
scheduled for that day will occur the next scheduled class period.
7. Class
attendance and participation is expected. Meaningful and relevant class
discussion is encouraged.
8. All
current Southern Polytechnic State University policies will apply.
Lab Rules:
1. Students
are expected to attend lab each day that a lab is scheduled.
2. Labs
are expected to be done and completed during lab time. Each lab is worth a
maximum of 15 points.
3. Students
are expected to work in groups of 2 for lab assignments. Groups may be
assigned or chosen, depending on the lab.
4. If
you have more than 2 missed lab grades (grades of 0), your final grade for the
course will be penalized 1 letter grade.
5. Labs
are due at the end of the lab period. Any lab turned in late will be
worth a maximum of 1 point.
6. If a student must miss a lab due to class cancellation, holidays, illness, work travel or other valid excuse, he/she must make alternate arrangements with the instructor.
|
Week |
Date |
Topic |
Lab Assignment |
Project Assignments |
|
1 |
24-Aug |
Course
Introduction |
no
lab this week |
|
|
26-Aug |
Computer
Concepts |
|||
|
2 |
31-Aug |
Introduction
to Programming |
Lab
0 Orientation to GameStudio and XNA |
Assign 1 |
|
2-Sep |
Data
Types |
|||
|
3 |
7-Sep |
no
class |
no
lab this week |
|
|
9-Sep |
Expressions
& Conversions |
Assign 1 due, Assign 2 |
||
|
4 |
14-Sep |
Worksheet
& Examples |
||
|
16-Sep |
Using
Classes |
|||
|
5 |
21-Sep |
Examples |
Lab
2 Methods & Using Classes (Ball BounceInitial.zip) |
|
|
23-Sep |
Review |
Assign
2 due |
||
|
6 |
28-Sep |
TEST
1 |
no
lab, test week |
|
|
30-Sep |
Intro
to Writing Classes |
Assign 3
|
||
|
7 |
5-Oct |
Constructors
& Other Methods |
||
|
7-Oct |
Boolean
Expressions & Conditionals |
|||
|
8 |
12-Oct |
More
Conditionals |
Lab
4 Writing classes (CastleAttackversion2) |
|
|
14-Oct |
Worksheet |
Assign
3 due |
||
|
9 |
19-Oct |
Loops |
Assign 4 |
|
|
21-Oct |
More
Loops |
|||
|
10 |
26-Oct |
More
Loops |
||
|
28-Oct |
review/
catch-up |
|||
|
11 |
2-Nov |
Review,
Worksheet |
no
lab, test week |
|
|
4-Nov |
TEST
2 |
Assign 4 due, Assign 5 & Assign 6 |
||
|
12 |
9-Nov |
Parameter
Passing & More |
||
|
11-Nov |
Examples |
|||
|
13 |
16-Nov |
Arrays |
Lab
8 Arrays (Elevens) |
Assign
5 due |
|
18-Nov |
More
Arrays and Lists |
|||
|
14 |
23-Nov |
More
Arrays and Lists |
no
lab, Holidays |
|
|
25-Nov |
no
class |
|||
|
15 |
30-Nov |
Review |
no
lab, test week |
|
|
2-Dec |
TEST
3 |
|||
|
16 |
7-Dec |
Project
Work (review if needed) |
Game Play of Final
Projects |
|
|
9-Dec |
Game
Competition |
Assign
6 due (AM) |
||
|
17 |
week
of 12/14 |
FINAL
date time tbd |
no
lab, finals week |
|
| Game Lab Availability for Just Students in Gaming
Courses TBA PERMANENT LINKS: XNA
Developer Center from Microsoft (good API reference) |
||||
|
FREE TUTORING AVAILABLE IN THE ATTIC If you are having difficulty in the class, PLEASE
go see a tutor...It's FREE!!!
|
||||
|
Here is a link for viewing how to solve (debug)
several common programming errors that beginning programming students
have. Let me know if you find these useful. http://debug.csi.muohio.edu/ In addition, here's a link for practicing
programming: http://academicjava.com/
|
||||
|
Here are a couple of links for more practice on
number conversion. The
first is from Teresa Carrigan who has developed several
animations to show the conversion. The
second is a practice exercise from Bettina Bair of Ohio State. Here's an article
from wikipedia.
|
||||
| Here is a link for a tutorial for 1301:
http://cse.spsu.edu/cslab/Reference/Java/PatRothJavaTutorial.pdf |
||||