Java程序辅导

C C++ Java Python Processing编程在线培训 程序编写 软件开发 视频讲解

客服在线QQ:2653320439 微信:ittutor Email:itutor@qq.com
wx: cjtutor
QQ: 2653320439
CS1110 - Computer Science I (Java) - Fall 2016 
Syllabus & Policies 
 
and see:  https://homepages.wmich.edu/~kaminski/1110/GenCourseInfo 
 
 
Instructors Lecture professor & course coordinator: Dr. Kaminski 
   Office: B247      Office Hours:  Tues & Thurs 12:45 - 1:40 
     (no office hours Sept 27 & exam week) 
   Email: donna.kaminski@wmich.edu 
  Lab instructors: TAs - see course website for names & office hours 
 
Class Meetings    (must register for the lecture & 1 lab) – classes in Elson Floyd Hall 
 Lecture:  in D-109       Tuesday/Thursday 11:30 am - 12:45 pm 
 Labs:  in C-224       Monday                10:30 am - 12:20 pm 
         Monday             12:30 pm -   2:20 pm      STEP 
         Monday                5:30 pm -   7:20 pm      HC 
         Thursday     4:30 pm -   6:20 pm 
         Friday       9:30 am - 11:20 am 
 
Catalog Description  
“A first course in the science of programming digital computers.  Analysis of problems and 
development of correct procedures for their solution will be emphasized along with the 
expression of algorithmic solutions to problems in a structured high-level computer 
language. Applications will solve both numerical and non-numerical problems for the 
computer.” 
 
Required Material 
1) TEXTBOOK:  Starting Out with Java – From Control Structures through Objects,       
by Tony Gaddis,  CUSTOM edition for WMU, (8 chap from book of same name – 6th ed., 
2016),  ISBN 10: 1-323-46579-0,  ISBN 13: 978 1-323-46579-0,  Pearson 
2) ONLINE EXERCISES:  Pearson’s MyProgrammingLab bundled with custom book 
3) YOUR OWN LAPTOP:  Windows/Linux/Mac OK,  [tablets & ChromeBooks NOT OK] 
o must bring it to EVERY LECTURE (starting in 2
nd
 week) & 1
st
 lab 
o (labs have Windows machines) 
4) SOFTWARE: 
a) TopHat account for quizzes/attendance in lecture – must purchase (see email invite) 
b) JAVA JDK (Java Development Kit) and NetBeans IDE (Integrated Development 
Environment) installed on YOUR laptop (done in 1
st
 lab or before) – free downloads 
 
Course Prerequisites 
• no prior programming experience expected 
• math pre/co-requisite:  MATH 1180  (i.e., pre-Calc or beyond) 
• comfortable using a Windows-based computer (in lab), software applications, 
files/folders, uploading/downloading files, using a thumb drive, etc. 
 
 
Course Communication 
• WMU E-Learning to manage lab activities, including posting assignment specs & due 
dates, submitting assignments, grade-tracking, disseminating information, etc. 
• Course website,  homepages.wmich.edu/~kaminski/1110, posts prep-material for 
“lecture” including code examples &  links, textbook sections to read, other references, 
in-lecture programming tasks, course admin material, course resources, etc. 
• E-mail to your @wmich address, for announcements, changes to assignment specs or 
due dates, schedule changes, instructor absence, etc.   NOTE:  If you email your 
instructor/TA, always use your @wmich account, start subject with “CS1110” followed 
by a descriptive subject – otherwise you may not get a timely response to your email. 
 
Course Format 
Programming is a skill best “learned by doing”, requiring practice/practice/practice, gradually 
being introduced to new programming/language concepts, and then using them right away 
to solve actual problems.  It is also useful to be able to get help on programming problems 
when they occur, rather than being stuck on your own not knowing how to proceed.  As 
such, the format for this course will use a “flipped classroom” model.   
• Rather than learning new material via lecture, and then you designing/writing programs 
as homework all on your own, most of class time - both in “lecture” and in lab – will be 
spent doing problem-solving and hands-on program development. 
• New Java/programming concepts will be introduced by having you do assigned readings 
and reviewing/running the on-line code-examples prior to class for each “lecture”. 
• You’ll do several programming tasks during the “lecture” session, as 2-person teams, 
with several roving helpers (advanced CS majors/grad students) for 1-on-1 help. 
• The 7 programming assignments will all be started during your weekly lab to ensure 
everyone knows how to proceed and be able to finish the project as homework.  
• Most of the assignments will have a 2-week deadline to allow you to get help during the 
subsequent week’s lab, prior to the submission deadline. 
• Besides working on assignments, lab time will be spent having you do programming 
exercises (as 2-person teams) which give experience on tasks related to the 
assignments. 
• The course also needs an assessment component – done individually.  In “lecture”, 
there’ll be 2 written exams.  In lab, there’s be 2 programming tests (i.e., write/submit a 
program on the computer within the allotted time). 
• This course requires a significant amount of out-of-class work for finishing assignments 
and for preparing for each “lecture” session.  (If you don’t complete the prep work 
before each “lecture”, you’ll have difficulty doing the in-class programming tasks – 
wasting your time, your partner’s, and the in-class helpers).  If you don’t have the time 
or commitment to do the necessary work outside of class, you should drop the class. 
 
The Nature of Programming 
Programming knowledge/skills (and this course) are cumulative – you CAN NOT AFFORD TO 
FALL BEHIND and then hope to catch up weeks later by spending extra time later.  You have 
to keep up!  For most students, that includes spending a significant amount of out-of-class 
time, as well as attending the 2 “lectures” and 1 lab each week.  If you don’t have the time or 
commitment for this, you should drop the class, as you’re not likely able to catch up and pass 
the class. 
2 
 
 The art and science of programming includes more than just Java coding.  The skills 
we want to develop in CS1110 extend to programming in other languages, and for many 
areas (e.g., games developer, systems programmer, iOS app designer, database programmer, 
etc.).  Programming is problem solving, algorithm development as well as coding.  It’s 
understanding what the client wants in terms of input, output and functionality.  It’s 
following specs, using commonly-used format/style/approaches/algorithms and checking 
that output is correct.  It’s developing efficient, understandable code. 
 
Course Objectives Outcomes 
Students completing CS1110 with a grade “C” or better should be able to: 
1) consistently follow a problem solving process; 
o understand problem, design solution, implement code & test program 
2) read, develop, and implement algorithms to solve simple problems; 
o define, recognize, design, and implement algorithms (using pseudo code) 
3) understand and use basic concepts of high-level language procedural programming; 
o main controller module, variable declarations, assignment-statements, I/O for 
console, windows and files, control structures including selection, looping, and 
method calling, modular programming including parameter passing; 
4) understand and use basic concepts of OOP (object oriented programming); 
5) consistently document programs effectively and efficiently; 
o
 program/module top-comments, self-documenting code, side-comments as 
appropriate, commenting as algorithm design, use of white space, 
align/indent to show code logic 
6) understand and use basic components of an integrated development environment (IDE); 
o context-sensitive editor, build/compile, execute 
7) know the basic phases of the software life cycle & software development cycle; 
o requirements, design, code & debug, test, maintenance 
8) know basic introductory searching and sorting algorithms; 
o linear & binary search, selection & insertion sort; 
9) gain an initial and elementary understanding of algorithm complexity; 
o big O Notation 
 
Attendance 
You’re expected to attend every lecture and your weekly lab, arrive on-time, stay the whole 
class period and actively participate in the in-class activities.  Lateness, early departure and 
non-participation will be considered as absences.  1-2 absences during the semester will not 
directly affect your grade – however, beyond that, you can lose points towards your final 
grade (even if it’s not explicitly accounted for below). 
 
Course Etiquette 
You’ll have a computer in front of you during both lecture and lab.  However, once class 
starts, you may only use it to work on the assigned CS1110 tasks for that day.  Once class 
starts there must be NO:  WEB SURFING, TEXTING, CHECKING EMAIL/FACEBOOK, POSTING, 
MAKING/RECEIVING PHONE CALLS, PLAYING GAMES, WORKING ON OTHER CLASSES, 
WORKING ON CS1110 ASSIGNMENTS (except as specified, in lab), etc.  It is inappropriate, 
counter-productive to learning, rude and distracting to the instructor and fellow students.  
You will be asked to leave the class if you do not show appropriate behavior in class. 
 You are expected to come to class on time, stay for the entire class period, not take 
a bathroom/phone/food breaks in the middle of class, be attentive when the instructor 
presents material, follow instructions as to the activities to work on at that time, etc.   No 
eating or drinking in class.  No headphones.  Turn off your cell phone after the lecture-quiz. 
 
Final Grade 
10% Midterm exam (in lecture, paper exam) 
15% Final exam (in lecture, paper exam) 
15% Quizzes, attendance, programming tasks (in lecture) 
45% 7 programming assignments (started in lab, finished as homework) 
  5% programming exercises (in lab) 
  5% programming test #1 (in lab, using computer)  
  5% programming test #2 (in lab, using computer) 
NOTE:  Course instructor may adjust requirements and point-distribution should unforeseen 
 circumstances arise during the semester. 
Final grade for the course based on the following (total points for the course as %): 
A   (90-100%) C     (70-74%) 
BA   (85-89%) DC   (65-69%) 
B     (80-84%) D     (60-64%) 
CB   (75-79%) E   less than 60% 
NOTE:  CS majors, CS minors and CompEng majors need at least a “C” grade in this course in 
 order to proceed to CS1120, since CS1110 is its prerequisite. 
 
Programming Assignments (in lab) 
Specs and due dates for the 7 projects will be posted on E-Learning and discussed in lab.  
You’ll start work on assignments in lab, but will need to do the majority of the program as 
homework on your own. 
 ALL WORK ON PROGRAMMING ASSIGNMENTS MUST BE DONE ON YOUR OWN.  
Working together with another student, getting significant help from anyone else (whether 
they’re in the class or from outside), sharing your work with someone else – are all 
considered as “academic dishonesty” and will be penalized/reported as such.  (See below). 
 Allow enough time to complete assignments prior to the due date - and assume 
there’ll be unexpected problems and bugs to sort out.  Schedule your work to allow time for 
to get one-on-one help, if needed, during instructors’/tutor’s available hours (see course 
website for their days/times, under General Admin).  You may get help from:  
- your lab instructor during your weekly lab session 
- your lab instructor during his/her office hours 
- one of the other lab instructors during his/her office hours 
- the CS tutor at Student Success Centers, (a dorm), evenings on main campus 
Lab instructors and the CS tutor do NOT handle your programming problems and debugging 
issues via email– this must be done in person.   
 
 
 
3 
 
Programming Assignment - Submission & Due Dates/Times 
A .zip file of your completed project must be uploaded to E-Learning prior to the date/time 
deadline (posted on E-Learning).  Lab instructors will explain the submissions procedure.  
Assignments will NOT BE ACCEPTED VIA EMAIL.  Assignments will NOT BE ACCEPTED LATE 
(except under valid, documented, extreme circumstances – see your lab instructor for his/her 
policy on this). 
 
Programming Assignments - Grading 
Programming assignments will be graded using established rubrics.  Correct output, 
formatted as described in the specs, is of primary concern.  But also, you’ll lose points for not 
using the specified programming concepts in the code and/or appropriate coding style/ 
format.  NO POINTS will be given for a program that doesn’t “build” (compile), a program 
that crashes before solving any of the problem, or a program that produces no viewable-
output.  (Assignment grades aren’t compensation for the amount of work put into a project). 
So use incremental development to facilitate completing a program, to help 
isolate/fix bugs, and to help get partial credit for the project.  That is, try to always keep the 
program in a working state which produces SOME grade-able output.  Then add code to that 
working code to accomplish the next sub-goal, compile and run it, and re-check the output.  
If you find a bug, it’s likely caused by the code you just recently added. 
 
Exams (in lecture) & Programming Tests (in lab) 
NO books/notes/calculators/computers/tablets/phones/internet access/communications/ 
online help, etc. allowed except as specified below.  No bathroom (or other) breaks allowed.  
Exams/tests are cumulative and include material from the readings, assigned examples and 
exercises, in-class exercises, assignments, lectures, etc.  You‘re responsible for material even 
if you are absent/late.  Tentative exam/lab-test dates are posted on the course website. 
Exams (in lecture) will be paper-based, requiring hand-written answers.  For these 
exams, you may bring one 8.5”x11” hand-written sheet of notes.  
Programming tests (in lab) will be done on the lab computers using NetBeans, with 
programs submitted via E-Learning.  You may not use your own laptop.  You may not access 
the course website or the internet.  The tests will have you develop a complete working 
program from scratch according to written specs, completing/submitting the .zip project 
within the allotted time during lab. 
If you miss an exam or lab-test, you’ll receive a 0 for that exam/test.  If an 
emergency arises causing you to miss an exam/test AND you have sufficient WRITTEN 
documentation of the situation, then alternative arrangements may be made for handling 
the exam/test. 
If you violate academic honesty policies while taking an exam/test, the situation 
will be handled according to the WMU Academic Integrity statement included below.  The 
penalty for academic dishonesty in this course is an ‘E’ grade for the course. 
 
Quizzes & Programming Tasks (in lecture) 
At the start of each lecture, a quiz will be given covering the assigned readings/examples/ 
exercises, using the TopHat app (on your phone).  These will be multiple-choice or true/false.  
Quizzes will also serve to take attendance.  No make-up’s for those who are absent or late. 
 The majority of lecture-time will be spent having you do programming tasks in 2-
person teams.  Each pair will demonstrate their working program(s) by the end of that class 
to one of the roaming class assistants.  This may consist of writing short programs based on 
written specs, adding a chunk of code to an existing program, making changes or corrections 
to an existing program, etc.  No make-up’s for these will be provided. 
 
Incomplete (‘I’) Grade Policy 
A grade of “I” (Incomplete) can be given ONLY IF 
1) you could not complete the course as a result of a situation outside your control, 
2) AND you provide WRITTEN documentation of the situation, 
3) AND you had a passing grade at the time you requested the incomplete grade, 
4) AND the work remaining to be completed is minimal. 
It can NOT be used as a replacement for a low or failing grade. 
 
Disability Services for Students (DSS) 
Both in compliance with and in the spirit of the Americans with Disabilities Act (ADA), we 
would like to work with you if you have a disability that is relevant to your work in this class.  
If you have a documented disability and wish to discuss academic accommodations, please 
contact your instructor in a timely fashion with your DSS verification card.  You may also 
contact the Office of Disability Services for Students if you need to register with the DSS 
office, 269-387-2116 (or at www.wmich.edu/disabilityservices). 
 
Academic Integrity 
[See WMU Policy below]  Further clarification: 
• Exams/in-lab-tests/quizzes must all be done completely on your own, using only the 
resources allowed (as stated above and by your instructor). 
• In-lab exercises and programming tasks done in “lecture” will be done as teams. 
• The 7 ASSIGNMENTS must all be done COMPLETELY ON YOUR OWN.  For these, you are 
NOT allowed to work together, to get significant help from other people or from online 
resources, to share your program with other students, to look at other student’s work or 
let them look at yours, etc. – that would be considered plagiarism or complicity.  [Don’t 
share your files in any form !!!].  Plagarism detection software may be used. 
• For assignments, you MAY,  
o use code from the textbook, from in-class exercises (that you wrote) or from 
the course website examples – but any significant chunk of code developed by 
someone else should be clearly attributed in a comment in the code. 
o get help from your (or the other) lab instructor or the CS tutor at Student 
Success Centers 
o VERBALLY discuss a problem or its solution with other students in class, but 
when pencil hits paper, or fingers hit keyboards, you MUST do everything on 
your own. 
 
 
 
 
 
4 
 
WMU Academic Honesty Policy 
Students are responsible for making themselves aware of and understanding the University 
policies and procedures that pertain to Academic Honesty. These policies include cheating, 
fabrication, falsification and forgery, multiple submission, plagiarism, complicity and 
computer misuse. The academic policies addressing Student Rights and Responsibilities can 
be found in the Undergraduate Catalog at 
http://catalog.wmich.edu/content.php?catoid=24&navoid=974.  If there is reason to believe 
you have been involved in academic dishonesty, you will be referred to the Office of Student 
Conduct. You will be given the opportunity to review the charge(s) and if you believe you are 
not responsible, you will have the opportunity for a hearing. You should consult with your 
instructor if you are uncertain about an issue of academic honesty prior to the submission of 
an assignment or test. 
  
WMU Sexual Misconduct Policy 
Students and instructors are responsible for making themselves aware of and abiding by the 
“Western Michigan University Sexual and Gender-Based Harassment and Violence, Intimate 
Partner Violence, and Stalking Policy and Procedures” related to prohibited sexual 
misconduct under Title IX, the Clery Act and the Violence Against Women Act (VAWA) and 
Campus Safe. Under this policy, responsible employees (including instructors) are required to 
report claims of sexual misconduct to the Title IX Coordinator or designee (located in the 
Office of Institutional Equity). Responsible employees are not confidential resources. For a 
complete list of resources and more information about the policy see 
www.wmich.edu/sexualmisconduct. 
  
WMU Other Policies 
In addition, students are encouraged to access the Code of Conduct, as well as resources and 
general academic policies on such issues as diversity, religious observance, and student 
disabilities: 
·        Office of Student Conduct   www.wmich.edu/conduct 
·        Division of Student Affairs   www.wmich.edu/students/diversity 
·        University Relations Office www.wmich.edu/policies/religious-observances-policy 
·        Disability Services for Students www.wmich.edu/disabilityservices