MID0009 | Systems for Design and Implementation |
Teaching Staff in Charge |
Lect. COJOCAR Grigoreta Sofia, grigocs.ubbcluj.ro Lect. CIOBAN Vasile, Ph.D., vciobancs.ubbcluj.ro Lect. SIMON Karoly, Ph.D., ksimoncs.ubbcluj.ro |
Aims |
At the completion of this course, the students will be able to:
a) have a systematic knowledge concerning application development methodologies b) be familiarized with the modern concepts and preocupations in the field of developing application software c) know the use of computer-aided software development tools |
Content |
1. Fundamentals of .NET and C#
- .NET platform: comparison with Java platform - C# language: comparison with Java language 2. .NET Libraries - Collections - IO - Delegation, events - Graphical user interfaces 3. Reflection - Reflection in Java and .NET - Dynamic loading of Java classes - .NET late binding and dynamic loading of assemblies - Applying reflection to: persistence, abstract factory, interface dependencies, and dynamic replacement of interface implementation 4. Client-Server applications based on TCP communication - Communication between applications using TCP - Model client-server applications that use TCP communication - Creating and starting threads in Java and .NET - Client applications in Java and C# - Server applications in Java and C# 5. Remote procedure call based client-server applications - General model: remote interface, registry (of servicies),communication channel, remote object, skeleton object - Remote method invocation in Java - java.rmi package - Remote object on .NET platform - System.Runtime.Remoting 6. Database access components - .NET tables for data - System.Data - ResultSets in Java - Database connections, implementations 7. Servicies and Relational data sources - Relational data source - Relations between relational data sources and servicies - Data transfer objects between applications 8. Object oriented models and relational databases - Correspondance between class diagram and relational tables - Separating bussines model from database using mappers - Transactions and late loading 9. Application servers - n-tier systems: client tier -server tier -data tier - Internal structure of application servers - Synchronized access of client applications and data consistency 10. XML Processing - XML language and XML documents - XML documents type - Object oriented model for documents (DOM) 11. XML documents applications - sequenctial parsing of XML documents (SAX) - javax.xml si System.Xml - DOM implementations - javax.xml si System.Xml - XML messages for applications communication - Remote procedure call between applications on different platforms 12. Web applications - layered systems: browser - web server - application server - database server - Web server structure - Patterns for web applications |
References |
1. Eckel, B., Thinking in C#, MindView Inc, 2004.
2. Larman, C.: Applying UML and Design Patterns: An Introduction to OO Analysis and Design and Unified Process, Berlin, Prentice Hall, 2002. 3. Fowler, M., Patterns of Enterprise Application Architecture, Addison-Wesley, 2002. 4. Hohpe, G., Woolf, B., Enterprise integration patterns, Addison-Wesley, 2003. 5. ***, Microsoft Developer Network, Microsoft Inc., http://msdn.microsoft.com/ 6. ***, The Java Tutorial, SUN Microsystems, Inc, 2004. http://java.sun.com/docs/books/tutorial/index.html 1. Eckel, B., Thinking in Java, 4th edition, Prentice Hall, 2006. |
Assessment |
The final assessment method is a practical exam, consisting in implementation of mini client-server application.
The final mark will be obtained as: A. Lab activity: 40% C. Practical exam: 60% |
Links: | Syllabus for all subjects Romanian version for this subject Rtf format for this subject |