The aim of this course is to give the students network programming concepts using a modern programming platform.Topics covered include: The language’s network classes, the Winsock interface, DNS resolution, the core topics of the network layer - to make sockets connections via TCP, and ―connectionless‖ connections via UDP, asynchronous socket programming, multithreading, and multicasting, providing application layer programming examples - use SNMP to manage network devices, SMTP to communicate with remote mail servers, and HTTP to Web-enable your applications. A practical part includes writing Client-side scripts and server-side programs.
Intended learning outcomes
Knowledge & understand
To Design a Graphics User Interface and Events
To fully understanding the programming of Protocols, sockets and streams
To build and design the database
To understand the programming using multiples of threads
To be able to explain the client-server software
Mental skills
To be able to compare between the simple GUI and more complicated ones
To be able to distinguish between the multiples of threads programming and the other kind of programming
To compare between the using of protocols in the parallel programming
To make a final conclusion of programming using Client-Server
Practical & professional skills
To use the tools in order to design database
To use the tools to deal with the protocols within the networks programming
To use the tools in order to design a multiples of threads
To use the tools in order to connect, communication and exchange the data in the networks programming
Generic and transferable skills
To be able to present , write and communicate with any scientific programs
to be able use the new technologies and advanced programming languages
to be able to gain intensive knowledge of the modern software
Teaching and learning methods
Lectures
Tutorials
Problem-based learning
Mini-projects
Software packages tools
Methods of assessments
Midterm exam = 40
Final exam = 50
Project = 10
Course contents
Object-Oriented Programming in Java
I/O , Applet, Frame and other topics
Exception Handling
InetAddress
TCP/IP Client sockets programming
URL( URL Connection, HTTP Server program
Socket overview,
Reserved sockets,
Proxy servers,
Internet addressing, port numbe
The Main Thread'( Creating a Thread,
Implementing Runnable, Extending Thread)
Multithreaded
Programming(the java thread model,
Thread Priorities, synchronization, messaging,
Creating Multiple Threads using isAlive(), and join()
Synchronization, suspending, resuming, and stopping Threads
Database (Hashtable class, Vector class)
(Client) Develop a complete software the client-server program that can be able to connect, communicate, exchange between data between the programs, GUI(Frame) is included as well.
(Server) Develop a complete software to link up the client-server program that can be able to connect, communicate, exchange between data between the programs, GUI(Frame) is included as well