Course Coordinator: CAPT Rick Sarmento, USN • x3-6810 • MI-331 • sarmento@usna.edu
Instructor: Major Brian Hawkins, USMC • x3-6803 • MI-348 (via MI-346)• bhawkins@usna.edu
This course builds on the procedural programming skills developed in the prerequisite course and introduces the student to object oriented programming and design principles using Java. Object oriented topics such as classes, inheritance, information hiding, polymorphism, and dynamic binding are presented and used to create robust, reusable, and maintainable software. The fundamentals of Java are presented along with exception handling, I/O, event driven programming, simple GUIs, and generics.
Prereq: IC210 or SI204.
2. Implementation. An ability to design, implement, and evaluate a computer-based solution to meet a given set of computing requirements in the context of the discipline.
4. Making informed ethical judgements. Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles.
Optional - Java in a Nutshell, 7th Edition, Flanagan, O'Reilly, 2018. (6th Edition is OK as well)
EI is available and encouraged and should be scheduled with your instructor. Since this course continually builds upon material previously presented, it is crucial that you seek EI as soon as you have problems understanding the material. However, EI is not a substitute lecture; you must come prepared with specific questions or areas to be discussed (i.e. have read the assigned lecture material). Students are also encouraged to attend MGSP.
The guidance in the Honor Concept of the Brigade of Midshipmen and the Computer Science Department Honor Policy must be followed at all times. See
www.usna.edu/CS/resources/
When permitted, all assistance, collaboration, and resources must be documented. Midshipmen must clearly state on their assignment what resource(s) they used, with whom they collaborated, or from whom they obtained assistance. The same rules apply for giving and receiving assistance. If you are unsure whether a certain kind of assistance or collaboration is permitted, you should assume it is not, work individually, and seek clarification from your instructor.
Any cheating will result in, at a minimum, a zero for the assignment, quiz, lab, or exam in question. All honor offenses will be reported to the Honor Board.
Section Leader: The section leader will record attendance and bring the students to attention at the beginning and end of each class/lab period. If the instructor is late more than 5 minutes, the section leader will keep the students in place and report to the Computer Science department office. If the instructor is absent, the section leader will direct the students in productive review of course material.
Food & Drink: Drinks are permitted, but they must be in reclosable containers. Food, alcohol, smoking, smokeless tobacco products, and electronic cigarettes are all prohibited.
Cell Phones & Smart Watches: Cell phones must be silent (preferably off) and put away during class/lab. Any use of a smart watch during class/lab to access functions normally associated with a cell phone is strictly prohibited. Any cell phone or smart watch found in violation of this policy will be confiscated and turned into your Company Officer.
Laptops, tablets, & computers: When using laptops, tablets, or computers during class/lab, students are prohibited from viewing any material that is not directly related to the course. Unless otherwise stated by the instructor and for a specific purpose, laptops and tablets are not allowed in the classroom/labroom.
Labs During lab periods, students must work on the current lab assignment only. Students are prohibited from working on other course material or previous lab assignments.
All work will have specified due dates/times, and any assignment turned-in after the specified due date/time will be considered late. Amplified information is below.
Homework: Homework assignments will be due at the beginning of the class following the assignment. No late submissions will be accepted for grading credit without an excused absence or prearranged coordination with the instructor.
Labs: Lab assignments will be due before the start of the following lab. No late submissions will be accepted for grading credit without an excused absence or prearranged coordination with the instructor.
Projects: Late submissions incur a penalty of 3N points, where N is the number of days late, rounded up to the nearest whole day. One second late will be considered equivalent to one day late.
Note: All assignments MUST be completed in order to pass this course.
Extentions to due dates/times are available on a case-by-case basis and must be requested in advance of to the specific assignment's due date/time. Requests for extentions must include sufficient justification and are not guaranteed to be approved.
Grades will calculated in accordance with the table below.
6 weeks | 12 weeks | Final | |
Homework | 15% | 10% | 5% |
Labs | 25% | 20% | 15% |
Projects | 30% | 30% | 30% |
6 Week Exam | 30% | 15% | 10% |
12 Week Exam | 25% | 10% | |
Final | 30% | ||
Total | 100% | 100% | 100% |