This course has been discontinued.
Last planned examination: Spring 2021
Decision to discontinue this course:No information inserted
This course introduces the programming language Java and the techniques for network programming in it. It gives hands-on experience in writing distributed applications.
Content and learning outcomes
- Review of Java programming basics and paradigms.
- Overview of the core Java API. Java I/O. GUI programming and multithreading.
- Basic network and Web concepts.
- Networking with sockets, secure sockets, URL connections. Applets and servlets.
- Client-server applications. Distributed computing with Java RMI and CORBA.
- The JavaMail API.
- An overview of Enterprise Java technologies such as Java Naming and Directory Interface (JNDI), Java DataBase Connectivity (JDBC), Java servlets, Java Server Pages (JSP), Enterprise Java Beans (EJB), Java Server Faces (JSF).
- An overview of the JXTA technology for development of P2P distributed applications.
- An overview of the Java 2 Platform, Micro Edition (J2ME).
Intended learning outcomes
The aim of this course is to introduce advanced network programming tools and techniques on the level which enables one
- to use Java Application Programming Interface and windowing toolkits (AWT, Swing)
- to design GUI clients for network servers
- to develop concurrent programs with threads, in particular, multithreaded servers
- to program Java applets and servlets
- to use sockets, URL connections and content handlers in network programming
- to develop distributed applications with sockets, Java RMI, CORBA, servlets, JSP, JSF, EJB, JDBC, JXTA and J2ME (Java 2 platform, Micro Edition).
Literature and preparations
ID1018 Programming I 7,5 credits or DD1332 Object Oriented Programming 7,5 credits, or equivalent courses.
Kursen baseras inte på någon speciell kursbok. Några rekommenderade böcker visas nedan. Andra titlar presenteras under kursens gång.
- Elliotte Rusty Harold, Java Network Programming, 3rd Edition, O'Reilly & Ass., Inc., 3nd Edition October 2004 (ISBN: 0-596-00721-3)
- Jan Graba, An Introduction to Network Programming with Java, Addison-Wesley, 2003 ( ISBN: 0-321-11614-3)
- Merlin Hughes, Michael Shoffner, Derek Hamner, Java Network Programming: A Complete Guide to Networking, Streams, and Distributed Computing, 2nd ed., Manning Publications, July 1999 (ISBN 188477749X)
- Franzén, Torkel, Java från grunden. Studentlitteratur, 2003 (ISBN 9144029144) (på svenska)
- Java hemsida på Internet: http://www.javasoft.com/
Examination and completion
If the course is discontinued, students may request to be examined during the following two academic years.
- ANN1 - Assignments, 4.5 credits, grading scale: P, F
- TEN1 - Examination, 3.0 credits, grading scale: A, B, C, D, E, FX, F
Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.
The examiner may apply another examination format when re-examining individual students.
Opportunity to complete the requirements via supplementary examination
Opportunity to raise an approved grade via renewed examination
- All members of a group are responsible for the group's work.
- In any assessment, every student shall honestly disclose any help received and sources used.
- In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.
Further information about the course can be found on the Course web at the link below. Information on the Course web will later be moved to this site.Course web ID2212
Main field of study
2G1523 Programming Web Services
2G1509 Distributed Systems
2G1526 Distributed Computing, Peer-to-Peer and Grids
2G1319 Communication System Design
The course is replaced by ID1212 as from autumn term 17.