|
CSE 160 |
Computer Science:
Honors Spring 2008 Class hours: Tuesdays and Thursdays, 9:50-11:10, Computer Science 2129. Lab hours: Wednesdays, 9:35-12:35, Computer Science 2129. |
| Prof.
George Hart |
Office: 1421 Computer Science email: george@cs.sunysb.edu Phone: (631) 632-8959 Office hours: tuesday and thursday 1:00-2:15, and by appt. |
| Web page: |
http://www.cs.sunysb.edu/~cse160 |
| Announcements: |
I will not
have office hours tuesdayMay 13. Instead, I will have office
hours monday May 12, 4:00-5:00, and wednesday May 14, 2:00-3:00. Final Exam: Thursday, May 15, 8:00-10:30. Note the earlier-than-class starting time. Covers everything, including a bit of C and SML. Please fill out this online survey for CSE160. Here is last year's final, but it is too hard. (Crude answer available here. Not at all polished and doesn't exactly match the question.) Summer project to prepare for CSE260: Download Eclipse Europa and begin to learn its interface. See the SML notes below. Here are some notes on C compared to Java. (Updated notes, April 3) Midterm solution .jar file |
| Assignments: |
HW #1,
due thursday Feb 14. HW #2, due thursday Feb 21. HW #3, due thursday Feb 28. (My answer to the BigNum question) HW #4, due thursday March 6. HW #5, due March 13 and 27. HW #6, due April 10. (Answers: A, B, C) HW #7, due April 17. Extended to tuesday, Apr 22. HW #8, due April 24. HW #9, due May 1. HW #10, due May 8 (Crude answer available here. Not a model answer, as I wrote it as I was designing the HW problem, but it mostly works (for 30 seconds).) |
| TA: |
Giordano Fusco (email) TA office hours: Fridays, 3:30-4:30, room CS2110. |
| SML Info: |
Running SML SML Examples #1, similar to April 1 class SML Examples #2, similar to April 3 class |
| Software Versions: |
The third edition of the text includes important
features introduced in Java 1.5, including generic types, enums,
for-each loops, and autoboxing. For the third edition of the Objects
First text, you need Java 1.5 or 1.6, and BlueJ 2.1.2. Do not
use the older second edition of the text. Projects for 3rd edition (zipped) CH1 CH2 CH3 CH4 CH5 CH6 CH7 CH8 CH9 CH10 CH11 CH12 |
| Useful links: |
BlueJ Reference
Manual (.pdf format) BlueJ Tutorial (.pdf format) www.bluej.org The official BlueJ web site www.translab.cs.sunysb.edu Translab information www.sinc.sunysb.edu Campus SINC sites java.sun.com The official Java web site http://java.sun.com/javase/6/docs/api/ The official Java documentation The Java Tutorial Online tutorial about everything Java Code Conventions for the Java Programming Language A source code style guide. Class notes on testing (.pdf format) and BlueJ testing tutorial. Don't forget the CS HelpDesk is available. If the university is closed for snow, it is announced on this page. Final Exam: Thursday, May 15, 8:00-10:30. Note the earlier-than-class starting time. |
The emphasis in CSE 160 is on a higher-level, object-oriented approach to the construction of software. Close attention is paid to software engineering issues such as programming style, modularity, and code reusability. The way which software tools can be used to aid the program development process is also emphasized. The course initially considers the construction of small programs, continues by treating the design and implementation of program modules, and culminates in an introduction to object-oriented design techniques suitable for larger programs.
Specific topics covered in CSE 160 include: objects and
classes, programming style, object interaction, mutability and
immutability, collections of objects, iterators, debugging and
testing, information hiding and modularity, cohesion and
coupling, code refactoring, programming by contract,
inheritance and polymorphism, exceptions and handlers, and
object-oriented design.
Grading is based on homework (25%), midterm examination (30%), final examination (35%) and participation (10%),.
We will follow this book closely during the semester. We will use the BlueJ programming environment provided with the book.
This is a somewhat more advanced book that has useful related material. We will draw on some material from this book. It is also used in CSE 260.
You may discuss the homework in this course with anyone you like, however each student's submission, including written material and coding, must be their own work, and only their own work. Any evidence that written homework submissions or source code have been copied, shared, or transmitted in any way between students (this includes using source code downloaded from the Internet or written by others in previous semesters!) will be regarded as evidence of academic dishonesty. The College of Engineering and Applied Sciences regards academic dishonesty as a very serious matter, and provides for substantial penalties in such cases, such as receiving an `F' grade, or expulsion from the University. For more information, obtain a copy of the CEAS guidelines on academic dishonesty from the CEAS office.Be advised that any evidence of academic dishonesty will be treated with utmost seriousness. Those involved will be prosecuted to the fullest extent permitted by the University and College laws.
If you have a physical, psychological, medical or learning disability that may impact on your ability to carry out assigned course work, I would urge that you contact the staff in the Disability Support Services office (DSS), ECC Building (behind SAC), 632-6748/TDD. DSS will review your concerns and determine, with you, what accommodations are necessary and appropriate. All information and documentation of disability is confidential.