CS 571 Java

squawkpsychoticΛογισμικό & κατασκευή λογ/κού

2 Δεκ 2013 (πριν από 3 χρόνια και 6 μήνες)

64 εμφανίσεις

CS 571
Java
Summer 2010
Course Details
Instructor:Vivek Pathak
Web:http://www.cs.stevens.edu/~vpathak/
Email:vpathak+571@cs.stevens.edu
Oce:Lieb 307
Telephone:(201) 216-5048
Classes:Tuesdays 5:15PM to 8:00PM weeks of 05-20-10 to 08-17-10.
Objectives
The course consists of an in-depth discussion of Java language and programming tech-
niques.Comparison of Java to other languages,such as C/C++,is made throughout
the course to emphasize various shortcomings of the language and their implications
on design paradigms.Some aspects of GUI libraries,multithreading support,and Java
native interface are also discussed.
At the end of this course,students shall be able to:
 Be able to design,implement,and test programs using core features of Java lan-
guage including inheritance,interfaces,exceptions.[core:software]
 Be able to design,implement,and test programs using advanced features of the
Java language including generics,threads,and re ection.[core:software]
 Explain the main runtime support mechanisms including bytecode interpretation,
garbage collection,threads [core:runtime][sys:hardware-interface]
 Explain and write programs using basic design patterns for concurrency and syn-
chronization [core:concurrency]
 Be familiar with the standard libraries including Swing/AWT for graphical user
interfaces and event driven programming [core:software]
 Compare and contrast Java and C++ language features and standard libraries
[core:software]
1
Text
The Java Programming Language,4
th
Edition
by Ken Arnold,James Gosling,and David Holmes
Publisher:Addison Wesley
ISBN:0321349806
Eective Programming,2
nd
Edition
by Joshua Bloch
Publisher:Addison Wesley
ISBN:0321356683
Grading
Grading will be assigned according to the following scheme:
 Tests:3 with total weightage 30%.
 Programming assignments:3 with total weightage 30%.
 Final project:30%.
 Participation:10%.
Lateness policy:Submissions should be made within the given deadline.Programming
assignments are due within two weeks.
Outline
Tentative outline:
Week
Topics
Reading
Assignment
1.
May 18
Introduction to Java
Arnold 1
2.
May 25
Classes and Objects
Arnold 2
Bloch 2
3.
Jun 1
Extending Classes
Arnold 3
Bloch 3
4.
Jun 8
Interfaces
Nested Classes
Arnold 4 5
Bloch 4
Assignment 1
5.
Jun 15
Enumerated Types
Tokens,Values,and Variables
Primitives as Types
Arnold 6 8
Bloch 6
Test 1
2
6.
Jun 22
Operators and Expressions
Control Flow
Arnold 9 10
Bloch 8
Assignment 2
7.
Jun 29
Generic Types
Arnold 11
Bloch 5
8.
Jul 6
Project Proposal
9.
Jul 13
Exceptions and Assertions
String and Regular Expressions
Arnold 12 13
Bloch 9
Test 2
10.
Jul 20
Threads
Arnold 14
Bloch 10
Assignment 3
11.
Jul 27
Re ection
Arnold 16
12.
Aug 3
Garbage Collection
Packages
Documentation Comments
Arnold 17 19
13.
Aug 10
I/O
Serialization
Arnold 20
Bloch 11
14.
Aug 17
Collections
java.awt,javax.swing
Arnold 21;25
Test 3
Last modied on January 12,2011.
3