Вы находитесь на странице: 1из 4

CS 107 Introduction to Programming

Fall 2015
Credits: 3 units
Contact Hours: Section 3: Tuesday and Thursday, 0800-0915, Room WC-201
Section 4: Tuesday and Thursday, 1100-1215, Room GMCS-214
Instructor:
Patty Kraft
Office: GMCS 544 Email: pkraft@mail.sdsu.edu Phone: 594-7243
Office Hours Days: M/T/W/TH
Office Hours:
1315 1400 M/T/W/TH, 0945 1030 T/TH and by appointment
Course Materials
1. Required: Online course material (payment is required at the time you subscribe)
a. Sign up at ZyBooks.com
b. Enter zyBooks code: SDSUCS107Fall2015
c. Section is either 3 or 4
d. Click 'Subscribe'
2. Required: Leland Beck and Alexander Chizhik, CS 107 Course Reader. This is an in-class workbook. You are
expected to have this workbook with you each and every class session.
3.

Cay HCay
orstmann,
Wiley, Wiley,
2013. 2013.
ISBN-13:
978- 978Required
Java FJava
or Everyone:
Late OLate
bjects,
2nd E2nd
di8on,
Optional : text:
Horstmann,
For Everyone:
Objects,
Edition,
ISBN-13:
1118063316
1118063316.

Course Information for CS 107


Description from the Official Course Catalog
Programming methodology and problem solving. Basic concepts of computer systems, algorithm design
and development, data types, program structures. Extensive programming in Java.
Prerequisites: Satisfaction of the Entry-Level Mathematics requirement.
Course Type: Lower division required course
Specific Goals for CS 107
Course-Level Student Learning Outcomes
The objectives of CS 107 (Introduction to Programming) are for students to:
1. Understand design methods for simple Java computer programs and use them to construct simple
Java computer programs.
2. Identify the importance of the underlying data representations of numeric values, strings, true/false
(Boolean) data and how it affects operations performed on that data.
3. Use basic control structures comprising declaration, assignment, decision, and repetition to solve a
problem that can be modeled in software.
4. Describe simple Boolean logical expressions and use them in assignment and control statements.
5. Demonstrate ability to work within a group to examine, modify or test source code segments.
6. Understand how data is represented in computer memory and storage, and to construct data
conversion statements to maintain integrity of the data
7. Understand how to construct mathematical expressions in a computer language.
8. Understand the use of modularity to isolate small procedures within a larger programming domain
for purposes of readability, encapsulation, and code re-use.
9. Understand the techniques that can be used to select a set of values to test program logic.
10. Be able to use UNIX shell commands to create, modify, delete, store, compile, and run Java programs.

11. Understand the structures that provide storage of a collection of same type data elements and to be
able to use basic methods that work on those collections.
12. Understand how to recognize syntax warnings and to systematically resolve any coding errors.
Relationship to CS Program Course Outcomes
CS 107 addresses the following CS Program course outcomes:
a) An ability to apply knowledge of computing and mathematics appropriate to the programs student
outcomes and to the discipline
b) An ability to analyze a problem, and identify and define the computing requirements appropriate to
its solution
c) An ability to design, implement, and evaluate a computer-based system, process, component, or
program to meet desired needs
d) An ability to function effectively on teams to accomplish a common goal
e) An ability to use current techniques, skills, and tools necessary for computing practice.
Topics Covered
The following topics are covered in CS 107:
1. Overview of computers and programming languages.
2. Introduction to UNIX, text editors, and the programming process.
3. Java data types, variables, arithmetic, standard input/output.
4. Syntax and logic defect detection techniques.
5. Java conditional statements, data type conversions.
6. Methods for program design.
7. Java control structures: conditional and iterative constructs.
8. Java methods.
9. Java arrays and strings.
10. Java exception handling and file input/output.
11. Introduction to object-oriented constructs.
12. Java objects and classes.
Special Assistance
Special Assistance: If you are a student with a disability and believe you will need accommodations for this class, it
is your responsibility to contact Student Disability Services at (619) 594-6473. To avoid any delay in the receipt of
your accommodations, you should contact Student Disability Services as soon as possible. Please note that
accommodations are not retroactive, and that accommodations based upon disability cannot be provided until you
have presented your instructor with an accommodation letter from Student Disability Services. Your cooperation is
appreciated.
Course Structure and Conduct
Style of the Course: lecture, in-class group learning activities, individual homework and programming assignments
Technology Utilized in the Course: Blackboard, ZyBook, Java IDE, SDSU ROHAN web server, connection utilities
Programming Assignments and Exams
Programming assignments: There will be several programming assignments (lab exercises) throughout the
semester. You are required to follow certain coding guidelines which will be outlined in class and on assignments.
Programming work is to be done on an individual basis. All programming assignments will be submitted online and
a matching hard copy could be required to be submitted in class. Assignments turned in after the start of class on
the due date will be counted late and assessed a late penalty of 5% per day up to 7 days. No assignments accepted
beyond seven days after the due date. Categories of lab assignments are:
1) Introductory. Evaluates LO 10, 12
2) Data types and variables and arithmetic statements. Evaluates LO 2, 7, 10, 12
3) Conditional statements and data conversion. Evaluate LO 1, 2, 3, 4, 6, 10, 12

4)
5)
6)
7)
8)

Loops. Evaluate LO 1, 2, 3, 4, 9, 10, 12


Nested Loops. Evaluate LO 1, 2, 3, 4, 9, 10, 12
Methods. Evaluate LO 1, 2, 3, 4, 8, 10, 12
Arrays. Evaluate LO 1, 2, 3, 4, 8, 10, 11, 12
Strings. Evaluate LO 1, 2, 3, 4, 6, 8, 9, 10, 12

Midterms: The two midterm exams will be closed book/closed notes and will focus on applying techniques and
methodologies to various types of Java constructs and problems. Questions on the tests will come from the
textbook, Course Reader, and lecture notes. Computers/laptops and cell phones cannot be used during exams.
Students are NOT to collaborate with anyone except the instructor when working on a midterm exam. Once an
exam starts, students cannot leave and then return to the test room. Once a student leaves the test room, he/she
may not work further on the exam.
Final Exam: The final exam is listed in the SDSU Final Exam Schedule under "Group Finals" not under "TTH
Classes." See http://arweb.sdsu.edu/es/registrar/finalexams/15_fall.html#group.
Course Assessment and Grading
Class Participation
10%
Homework
10%
Programs
40%
Midterms
20%
Final Exam
20%

of final grade. Evaluates LO 5


of final grade.
of final grade, 4% to 6% each
of final grade, 10% each
of final grade

Grading Scale (%)


A
AB+
B
BC+

93.0
90.0
87.0
83.0
80.0
77.0

<=
<=
<=
<=
<=
<=

score
score
score
score
score
score

<=
<
<
<
<
<

100
93
90
87
83
80

C
CD+
D
DF

73.0
70.0
67.0
63.0
60.0
0

<=
<=
<=
<=
<=
<=

score
score
score
score
score
score

<
<
<
<
<
<

77
73
70
67
63
60

Excused Absence Make-up Policies: Unless a compelling reason exists (compelling will be determined
by me), failure to appear for an exam at the indicated date and time will result in a zero score.
Other Course Policies
1.

2.

3.

4.

Adding/Dropping Procedures: Students that do not show up the first week of class will be dropped at the
end of the first week. Students will be allowed to add the course based on space available, provided they
have attended all lectures from the first week of class. Last day for students to add or drop class:
8/4/2015.
Cheating/Plagiarism: You are free to discuss ideas and strategies for approaching problems with others,
but each student must complete his/her own work. You may share a "snippet" of a program with a fellow
student, but do not give access to your program in any form to another student; sharing a program carries
the same penalty as using a shared program. Cheating and plagiarism WILL NOT BE TOLERATED. If a
student is found cheating or plagiarizing material written by someone else (including information posted
on websites), that student will fail this course and should expect to face disciplinary proceedings.
Extra Credit Policy: If you are having problems with the assignments or tests, contact the instructor as
soon as possible. It will NOT be possible to earn extra credit to improve a poor grade at the end of the
semester. There may be opportunities for extra credit during the semester that are related to additional
programming assignments.
Classroom Focus: If you MUST bring a cell phone or pager to class, set it to the vibrate mode and step out
of the room to take any necessary calls. PLEASE limit this to emergency/critical situations only.

Course Calendar

2015

LECTURE TOPIC

Week 1

Introduction

Week 2

Java Basics

Week 3

Unix, editors, & IDEs

Week 4

Conditional statements

Week 5

Midterm I, 24-Sep-2015

Week 7

Iteration

Week 9

Arrays

Week 10

Midterm II, 29-Oct-2015

Week 11

Methods

Week 14

Strings, Objects, & Classes

Week 15

Problem solving

Dec 12

SATURDAY 1300-1500
"Group Finals" See http://arweb.sdsu.edu/es/registrar/finalexams/15_fall.html#group.

Вам также может понравиться