CSS 161 Fundamentals of Computing Section B Fall 2013 Lecture

advertisement
CSS 161 Fundamentals of Computing Section B Fall 2013 Lecture: 1:15–3:15pm MW UWBB - 240
Lecturer:
Joey Benitez (jbenite@uw.edu)
Phone:
425-202-5498 – Google Voice
Office Hours:
11:30 am – 12:15 pm MTWTh, Truly House or by appointment
Office:
3:15 – 4:15 pm M Study Room outside of classroom, W UWBB 276 or by appointment
Course Website: http://www.joeybenitez.weebly.com
Course Description:
This course is an introduction to programming concepts within social, cultural, scientific, mathematical, and
technological concepts. Topics include programming fundamentals (control structures, data types and
representation, operations, functions and parameters), computer organization, algorithmic thinking, introductory
software engineering concepts (specifications, design, testing), and social and professional issues. You must be
concurrently enrolled in CSSSKL 161.
Grading:
Assignments
Midterm Exams (2 of them)
Comprehensive Final exam
35%
40%
25%
(175 points)
(200 points)
(125 points)
Grading scale: 90s (3.5 ‐ 4.0)
80s (2.5 ‐ 3.4)
70s (1.5 ‐ 2.4)
60s (0.7 ‐ 1.4)
Textbook: Walter Savitch, Absolute Java, 5th edition, Pearson, 2013.
Course goals:
Students develop competencies associated with problem‐solving, design, testing, programming, and
management techniques. Besides learning programming fundamentals, you will see common applications and
consider these applications in society. Good software engineering and algorithm analysis techniques are used
throughout. As with most technical courses, besides ability and motivation, it takes time to learn and master the
subject. Expect to spend an average of 10 to 15 hours a week outside of class time for this course; some of you
may spend more time, some less time.
Policies:
The goal of this course is for you to develop individual competence in programming. Work is to be done
independently unless directed otherwise; collaboration of work is NOT acceptable. You may discuss the
problem statement with each other and help debug, but any actual work to be turned in must be done without
collaboration. This class is run by honor code. By taking this class, you agree that you will not collaborate
inappropriately on any work. In some cultures, family relationships and their loyalty are considered above all
others. In this course, we are an academic family and you betray the instructor’s and the university’s trust
should you violate the honor code. This violation will be taken seriously. The student conduct code can be
found at: http://www.uwb.edu/academic/policies/Academic_Conduct.xhtml .
Each assignment will be due at the beginning of class on the due date. Late assignments up to 24 hours will
loss 25% of the points for the assignment. After 24 hours the assignment will receive a grade of zero. (except
for special circumstances, such as medical and other emergencies). No make‐up exams will be given except
under exceptional circumstances.
Computer use during lecture is limited to taking notes or searching for material related to topics being
discussed. No social networking, email, games, videos, mobile phones use, etc. , as these may distract your
neighbors trying to learn. Attendance is not required, so if you would prefer to engage in such activities during
class time, please do not come to class.
To request academic accommodations due to a disability, please contact Disabled Student Services (DSS) at
425.352.5307, 425.352.5303 TDD, 425.352.5455 FAX, or at drs@uwb.edu. You will need to provide
documentation as part of the review process prior to receiving any accommodations (by the third week of the
quarter).
Assignments:
− Always turn in an electronic copy of just your source code (only .java files) using catalyst. The turn‐in
area is at https://catalyst.uw.edu/collectit/dropbox/jbenite/28654
− Your code should compile and run correctly.
− Coding and documentation style guidelines can be found under the “Course Resources” link on the
course website.
− Syntax errors and run‐time errors with not much output yield a low grade. Run‐time errors or incorrect
answers will result in a significant number of points being deducted from your grade. In other words,
CHECK YOUR ANSWERS!!!!!!
Otherwise, you will be graded on documentation (clarity and completeness), style (indentation and use
of blank lines/spaces), meaningful identifier names, organization of your program (modularity/design),
efficiency (no useless, unnecessary, or unnecessarily complicated code), output (clarity and format), the
overall readability, and following directions. A detailed grading rubric can be found under the “Course
Resources” link on the course website.
Topics covered and tentative CSS 161 schedule:
Note that this is an approximate ordering of topics even though it appears as precise. Some material will take
more time, some less time. The material refers to the Java textbook.
Date
9/25
Topic
Introduction, Object-oriented Programming
Computers and Java
9/30
Expressions, assignments statements
10/2
10/7
10/9
10/14
10/16
10/21
10/23
Material
Assignment Due
Section 1.1
Chapter 1 (Savitch web notes – sections 1.1)
Chapter 1 (Savitch web notes – sections 1.2-1.3)
Section 1.2
Program style, console and input and output
Section 1.4, 2.1-2.2
Branching
Section 2.3, 3.1
Assignment 1 Due 10/7
Boolean expressions
Section 3.2
Loops
Section 3.3
Assignment 2 Due 10/14
Debugging
Section 3.4
Review
Assignment 3 Due 10/21
MIDTERM EXAM 1 Chapter 1 (Savitch webnotes), Chapters 1-3
10/28
10/30
11/1
Introduction to File I/O: Text files
The CLASS String, Class Definitions
Sections 10.1, 10.2
Sections 1.3, 4.1
Assignment 4 Due 11/1 at 11:45 PM
11/4
11/6
11/8
Information Hiding and Encapsulation
Arrays
Sections 4.2, 4.4
Section 6.1
Assignment 5 Due 11/8 at 11:45 PM
11/11
11/12
11/13
11/18
11/20
Veteran’s Day – No School
LAST DAY TO DROP A COURSE
Arrays
Arrays
MIDTERM EXAM 2
11/25
11/27
12/2
12/4
12/9
Arrays
Problem Solving
Miscellaneous
Review
FINAL EXAM, Monday in class
Section 6.2
Section 6.3
Assignment 6 Due 11/18
Section 6.4
Assignment 7 Due 12/4
Download