NETWORK PROGRAMMING

Vittorio SCARANO NETWORK PROGRAMMING

0512100036
DIPARTIMENTO DI INFORMATICA
COMPUTER SCIENCE
2015/2016



YEAR OF DIDACTIC SYSTEM 2008
SECONDO SEMESTRE
CFUHOURSACTIVITY
648LESSONS
Objectives
KNOWLEDGE AND UNDERSTANDING: THE COURSE AIMS TO EXPLORE ASPECTS RELATED TO DISTRIBUTED PROGRAMMING AND ENTERPRISE COMPUTING AT A MEDIUM-HIGH LEVEL. THE COURSE CONSISTS OF A FIRST PART WHERE THE MAIN MODELS AND LAYER ARCHITECTURES ARE PRESENTED, THAT ARE AVAILABLE FOR DEVELOPING DISTRIBUTED APPLICATIONS. IN THE SECOND PART, THE ARCHITECTURE OF JAVA ENTERPRISE EDITION (JAVA EE 7) IS PRESENTED, FROM THE DESIGN PRINCIPLES, UP TO THE DATA LAYER, BUSINESS LAYER, SERVICES LAYER AND SOME INFO ABOUT THE PRESENTATION LAYER.
APPLYING KNOWLEDGE AND UNDERSTANDING: THE COURSE AIMS TO ENABLE STUDENTS TO DESIGN AND DEVELOP DISTRIBUTED APPLICATIONS AND SIMPLE WEB SERVICES. AT THE END OF THE COURSE THE STUDENT WILL BE ABLE TO DESIGN AND DEVELOP DISTRIBUTED APPLICATIONS, SCALABLE AND SECURE, AND RPC-STYLE OR WEB SERVICES.
COMMUNICATION SKILLS: STUDENTS WILL ACQUIRE THE ABILITY TO DESCRIBE, DESIGN AND DEVELOP DISTRIBUTED APPLICATIONS WITH PROPERTIES OF LANGUAGE.
MAKING JUDGMENTS: STUDENTS WILL BE GUIDED TOWARD THE CRITICAL AND RESPONSIBLE LEARNING OF CLASSROOM ACTIVITIES AS WELL AS THE ENRICHMENT OF THEIR ANALYSIS AND SYNTHESIS ABILITIES BY MEANS OF SUITABLE STUDYING MATERIALS THAT THE TEACHER WILL PROPOSE IN ORDER TO GET THEM ACQUIRE ADEQUATE JUDGMENT CAPABILITIES.
Prerequisites
STUDENTS MUST HAVE ACQUIRED KNOWLEDGE ON THE ARCHITECTURE OF NETWORKS AND TCP / IP PROTOCOLS AND CLIENT/SERVER PROGRAMMING. THE STUDENT MUST ALSO HAVE PROGRAMMING EXPERIENCE IN C AND JAVA. IT IS ALSO DESIRABLE THAT THE STUDENT HAS BASIC KNOWLEDGE OF DISTRIBUTED OBJECTS PROGRAMMIN AND THE MAIN TECHNIQUES FOR DEVELOPING WEB APPLICATIONS.
Contents
SOFTWARE ARCHITECTURE FOR DISTRIBUTED SYSTEMS. PATTERN AND ARCHITECTURAL SYLES. LAYER ARCHITECTURE. DEPLOYMENT. ARCHETYPES AND CROSSCUTTING CONCERNS.
JAVA ENTERPRISE EDITION. ARCHITECTURE. CONTEXT AND DEPENDENCY INJECTION. NETBEANS. BEAN VALIDATION. JAVA PERSISTENCE API. ENTERPRISE JAVABEANS. JAVA TRANSACTIONS (OUTLINE). JAVA SECURITY AND AUTHENTICATION SERVICES. JAVA SERVERFACES (OUTLINE). JAVA MESSAGING SERVICES. JAVA WEB SERVICES. RESTFUL SERVICES (OUTLINE).
CLOUD COMPUTING (OUTLINE). PROJECT MANAGEMENT TOOLS (OUTLINE): MAVEN
Teaching Methods
THE CLASS CONSISTS OF THEORETICAL LESSONS ON ARCHITECTURES AND FUNCTIONALITIES AND SOME LABORATORY PRACTICE CLASSE, WHERE STUDENTS DEVELOP SIMPLE JAVA ENTERPRISE APPLICATIONS
Verification of learning
SIX EXAM SESSIONS DURING THE WHOLE ACADEMIC YEAR, IN ADDITION TO TWO SPECIAL ONES RESERVED TO STUDENTS THAT ARE NOT ATTENDING CLASSES. EACH SESSION IS PROVIDED WITH A WRITTEN/LAB TEST AND AN ORAL TEST. THE RESULTING MARK IS CALCULATED USING A WEIGHTED AVERAGE OF THE TWO TEST MARKS. DURING THE CLASSES THERE WILL BE TWO TESTS (ONE MIDTERM AND ONE FINAL), RESERVED TO STUDENTS THAT ARE ATTENDING REGULARLY, THAT TAKE THE PLACE OF THE WRITTEN TEST.
Texts
BEGINNING JAVA ENTERPRISE EDITION, ANTONIO GONCALVES, APRESS
MICROSOFT APPLICATION GUIDE
More Information
INFORMATION ABOUT EACH CLASS AND EAMPLES DISCUSSED DURING THE COURSE ARE AVAILABLE ON THE DEPARTMENT LEARNING PLATFORM, WITH TRACES OF EXAMS AND OTHER SUPPORTING MATERIAL (PROGRAMMING MANUALS, TUTORIALS, READING MATERIAL)
HTTP://ELEARNING.INFORMATICA.UNISA.IT/EL-PLATFORM
  BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2016-09-30]