|
15-600: Java & J2EE Programming |
|
Jeff Eppinger teaches this course in every Fall semester.
He will next teach this course in Fall 2008. |
|
This course provides an intensive exploration of computer programming in the Java Language for Masters students who have had some prior, but perhaps limited, programming experience in Java or in some other programming language. |
First Half: This course starts with a review of the fundamental topics of programming in Java:
- data types,
- operators,
- control structures, and
- classes.
After covering the basics we will study some useful functionality in the Java Class Libraries:
- simple graphical user interfaces (using Swing),
- file I/O,
- concurrency (i.e., threads), and
- simple data structures (lists and maps).
|
Second Half: The second half of the course focuses on web application development using Java, including the following topics:
- HTTP
- HTML and XML
- Servlets
- Java Server Pages
- JavaBeans
- Design Patterns (e.g., Abstract Factories and Model-View-Controller)
- Tag Libraries (JSTL)
- Relational Databases (MySQL/JDBC)
- Object-Relation Mapping tools (BeanFactory)
- Security (including SSL)
- AJAX (including JavaScript and the DOM)
|
|
There is a lot of material in 15-600 that overlaps with the
Web Application Development class that I teach in the Spring.
Students who have already taken Web Application Development (15-437, 15-637, 08-764 or 46-864) are not allowed to enroll in 15-600.
If you do so, you will be removed! Similarly, students who take 15-600 will not be allowed to enroll in any of the
Web Application Development courses listed above. |
|
There is no required course text for this course. You can find online documentation
for most everything on the web. There is no book that covers all of the above topics, but I recommend
O'Reilly's "Head First Java, Second Edition" by Sierra and Bates and
O'Reilly's "Head First Servlets and JSP" by Basham, et al.
These books cover most of the topics and would
be a good choice for a course textbooks (as long as you like the Head First Series writing style). Feel free to select
another book or other books if you find something else that you like. |
|
Students are required to provide their own computer hardware for this course.
Student hardware must run a recent version of one of the following operating systems: Windows, MAC OS X, Linux.
Student hardware must also have sufficient memory and disk space and be attached to the internet.
Students will have to install update-to-date versions of Java, Java Web Development, and database software. |