ID2212 Nätverksprogrammering med Java 7,5 hp

Network Programming with Java

Kursen beskriver programmeringsspråket Java med betoning på användning för nätprogrammering. Ett genomgående tema är utveckling av distribuerade applikationer.

Målet med kursen är att introducera avancerade verktyg och tekniker för nätverksprogrammering på en nivå sådan att kursdeltagarna efter kursen ska kunna:

  • använda Java API och grafikverktyg (AWT, Swing);
  • designa GUI-klienter för nätverkstjänster;
  • utveckla parallella program med trådar, speciellt, multitrådade servrar;
  • skapa Java applets och servlets;
  • använda sockets, URL-förbindelser och content handlers i nätverksprogrammering;
  • utveckla distribuerade tillämpningar med sockets, Java RMI, CORBA, servlets, JSP, JSF, EJB, JDBC, JXTA, och J2ME (Java 2 Platform, Micro Edition).
  • Utbildningsnivå

    Avancerad nivå
  • Kursnivå (A-D)

    D
  • Huvudområde

  • Betygsskala

    A, B, C, D, E, FX, F

Kurstillfällen/kursomgångar

HT12 för fristående studerande

  • Perioder

    HT12 P2 (7,5 hp)
  • Anmälningskod

    10089
  • Kursen startar

    2012-10-22
  • Kursen slutar

    2013 vecka: 1
  • Undervisningsspråk

    Engelska
  • Campus

    KTH Kista
  • Antal föreläsningar

  • Antal övningar

  • Undervisningstid

    Dagtid
  • Undervisningsform

    Normal
  • Antal platser *

    10 - 10

    *) Kurstillfället kan komma att ställas in om antalet antagna understiger minimiantalet platser. Vid fler sökande än platser kommer urval att ske.

  • Schema

    Schema (nytt fönster)
  • Kursansvarig

    Vladimir Vlassov <vladv@kth.se>
  • Lärare

    Vladimir Vlassov <vladv@kth.se>
  • Målgrupp

    Endast för fristående studenter (=vidareutbildning)!

HT12 för programstuderande

HT13 TIDAB för programstuderande

HT13 SWB för programstuderande

  • Perioder

    HT13 P2 (7,5 hp)
  • Anmälningskod

    50382
  • Kursen startar

    2013-11-04
  • Kursen slutar

    2014 vecka: 3
  • Undervisningsspråk

    Engelska
  • Campus

    KTH Kista
  • Antal föreläsningar

  • Antal övningar

  • Undervisningstid

    Dagtid
  • Undervisningsform

    Normal
  • Antal platser

    Ingen begränsning
  • Schema

    Schema (nytt fönster)
  • Kursansvarig

    Vladimir Vlassov <vladv@kth.se>
  • Lärare

    Vladimir Vlassov <vladv@kth.se>
  • Målgrupp

    Science without borders

HT13 för fristående studerande - Till anmälan

  • Perioder

    HT13 P2 (7,5 hp)
  • Anmälningskod

    10034
  • Kursen startar

    2013-11-04
  • Kursen slutar

    2014 vecka: 3
  • Undervisningsspråk

    Engelska
  • Campus

    KTH Kista
  • Antal föreläsningar

  • Antal övningar

  • Undervisningstid

    Dagtid
  • Undervisningsform

    Normal
  • Antal platser *

    1 - 5

    *) Kurstillfället kan komma att ställas in om antalet antagna understiger minimiantalet platser. Vid fler sökande än platser kommer urval att ske.

  • Schema

    Schema (nytt fönster)
  • Kursansvarig

    Vladimir Vlassov <vladv@kth.se>
  • Lärare

    Leif Lindbäck <leifl@kth.se>
    Vladimir Vlassov <vladv@kth.se>
  • Målgrupp

    Endast för fristående studenter (=vidareutbildning)!

  • Anmälan

    Fullfölj anmälan för kursen på antagning.se via denna anmälningslänk.
    Observera att anmälan måste slutföras på antagning.se genom egen inloggning.

Lärandemål

Målet med kursen är att introducera avancerade verktyg och tekniker för nätverksprogrammering på en nivå sådan att kursdeltagarna efter kursen ska kunna:

  • använda Java API och grafikverktyg (AWT, Swing);
  • designa GUI-klienter för nätverkstjänster;
  • utveckla parallella program med trådar, speciellt, multitrådade servrar;
  • skapa Java applets och servlets;
  • använda sockets, URL-förbindelser och content handlers i nätverksprogrammering;
  • utveckla distribuerade tillämpningar med sockets, Java RMI, CORBA, servlets, JSP, JSF, EJB, JDBC, JXTA, och J2ME (Java 2 Platform, Micro Edition).

Kursens huvudsakliga innehåll

  • Java paradigm och grundläggande programmering.
  • Översikt över Java API. Java I/O. GUI programmering. Trådar i Java.
  • Grundläggande begrepp inom nätverks- och webbteknik.
  • Internetteknik med sockets, säkra sockets och URL-förbindelser. Applets och servlets.
  • Client-server applikationer. Distribuerade applikationer med Java RMI, Java och CORBA.
  • JavaMail API.
  • Översikt över Enterprise Java teknologi: JNDI, Java databaskommunikation (JDBC), servlets, JSP, JSF, EJB.
  • Översikt över JXTA teknologi för utveckla distribuerade peer-to-peer tillämpningar.
  • Översikt över J2ME (Java 2 platform, Micro Edition).

Behörighet

ID1004 Objektorienterad programmering 7,5 hp eller DD1332 Objektorienterad programmering 7,5 hp eller motsvarande kurser samt Engelska B/Engelska 6

Rekommenderade förkunskaper

Grundläggande behörighet samt Matematik D/Matematik 3c, Fysik B/Fysik 2 samt Kemi A/Kemi 1

Litteratur

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

  • ANN1 - Inlämningsuppgifter, 4,5 hp, betygsskala: P, F
  • TEN1 - Tentamen, 3,0 hp, betygsskala: A, B, C, D, E, FX, F

Krav för slutbetyg

En skriftlig tentamen (TEN1;3hp)
Inlämnings-och projektuppgifter (ANN1; 4,5hp)

Ges av

ICT/Programvaruteknik och Datorsystem

Kontaktperson

Vlassov, Vladimir

Examinator

Vladimir Vlassov <vladv@kth.se>

Övrig information

Ersätter 2G1118, Nätverksprogrammering med Java, 4 poäng

Påbyggnad

2G1523 Programmering av webtjänster
2G1509 Distribuerade System
2G1526 Distribuerad programmering, peer-to-peer och GRIDS
2G1319 Kommunikationssystem

Versionsinformation

Kursplan giltig från och med HT10.
Examinationsinformation giltig från och med HT07.