100 likes | 109 Views
Revision. This revision note is intended to provide some help with your revision. This is not necessarily an inclusive list of all the details that may be examined. Format of paper. Answer 4 out of 6 questions. Each question is worth 25 marks.
E N D
Revision This revision note is intended to provide some help with your revision. This is not necessarily an inclusive list of all the details that may be examined. Client-server Programming
Format of paper • Answer 4 out of 6 questions. • Each question is worth 25 marks. • You will be given some Java APIs that are related to client server programming. • Note that the format of the sample paper on library’s digital collection is out of date. Client-server Programming
Question Styles • Include both “essay” type and “doing/programming” type. • The “essay” style are “describe …” “explain …”, “evaluate …”, “compare …” and “discuss …” • An example of the “programming” style is Write Java code fragments (or detailed pseudo code) using stream-mode sockets. The code should reflect the following scenario: …… Although your code does not need to be syntactically correct, it needs to show sensible use of objects, classes and methods. Client-server Programming
Topics • General understanding of: • basic network concepts, network applications, protocols, client-server paradigm and peer-to-peer paradigm. • Socket (stream mode) • Socket (datagram), including multicast • RMI • Concurrency and Thread • SMTP Client-server Programming
Socket -- stream mode • Needs to understand the roles of server socket and socket. • Needs to understand how sockets are connected via streams • Needs to be able to write Java code fragments (or very detailed pseudo code) to illustrate how to implement simple scenarios Client-server Programming
Socket – datagram and multicast • Needs to understand the various elements needed to send and receive packets using datagram in Java, e.g. datagram socket, datagram packet, array for storing the bytes etc. and how these elements are related to each other. • How does Java support multicasting • Needs to be able to write java code fragment or detailed pseudo code to send and receive packets using datagram in Java. Client-server Programming
RMI • Needs to know the Java RMI architecture • Needs to be able to explain how to implement simple scenarios using RMI and how an RMI application can enable a client program to invoke methods of a remote object. • Needs to know the pros and cons between the RMI approach and the socket approach. Client-server Programming
Threads and Concurrency • Needs to understand the concept of thread • Needs to know the two ways to implement threads • Needs to understand the problems associated with concurrent threads sharing data and know how to solve the problems. Client-server Programming
SMTP • Needs to be able to define common acronyms associated with email systems. • Needs to understand a typical basic data flow between the email client and server. Client-server Programming
This week and Next week • This week practical sessions: smtp • Next week: no practical sessions • Lecture is a “questions and answer” session. Meet in 2P49 at 12:30. • In the meantime, if you have question, email julia.dawson@uwe.ac.uk