Skip to content
Trayan Iliev edited this page May 30, 2021 · 18 revisions

IPT Course Java Web Development

Instructor: Trayan Iliev
E-mail: t_iliev@ iproduct.org

Course Program

  1. Java Collections & Generics
  2. Java Reflection By Example
  3. Exceptions handling
  4. Functional programming using lambdas and Stream API
  5. OOP principles – Abstraction, Encapsulation, Inheritance and Polymorphism, Overriding / Overloading
  6. SOLID principles - Single responsibility, Open–closed, Liskov substitution, Interface segregation & Dependency inversion principles
  7. Unit testing using JUnit5
  8. Java IO - files, streams, novelties in NIO 2
  9. Object serialization and marshalling
  10. Design patterns: Builder, Factory, Dependency Injection, MVC pattern, Adapter pattern
  11. Threads & Concurrency: multi-threading, thread safety & synchronization
  12. Build tools (basics) – Ant vs Maven vs Gradle, practical examples – 4 h
  13. WWW – WWW introduction (IP addresses, Ports, DNS, Proxy, Hosts file), Cookies, HTTP, Ajax – 4 h
  14. Servlet container, Servlets, JSPs – Intro, web.xml, Servlets, Session management and Object scope, Filters, Listeners, JSPs & Expression Language (EL), Tags (JSTL) – 8 h
  15. Serialization & deserialization (JAXB) – 4 h
  16. Web Services (Soap, Rest, XML, JSON) – Popular Java libraries (Axis2, Jackson…) – 14 h
  17. Introduction to Spring. DI, AOP and MVC – 14 h
  18. Popular Patterns – Singleton, Adapter, Proxy, Builder, Factory, Command, Strategy, Observer, Decorator, SOLID principles: https://en.wikipedia.org/wiki/SOLID_(object-oriented_design) – 4 h
  19. Relational databases – Fundamentals (ACID), relations, transactions, indexes, triggers, views, relational algebra and SQL queries – 8 h
  20. Unit testing with JUnit. Object mocking. – 8 h
  21. Linux and Jenkins (CI/CD) Recommended Materials

Open Source Learning Resources / Textbooks

Clone this wiki locally