Skip to content
Trayan Iliev edited this page Jun 8, 2019 · 18 revisions

IPT Course Java Web Development

Instructor: Trayan Iliev
E-mail: t_iliev@ fmi.uni-sofia.bg

Course Program

  1. Java fundamentals – Stack and Heap (quick review), Literals, assignments and variables, Scope, Garbage collection, Handling exceptions, Common exceptions and errors – 4 h
  2. OOP principles – Encapsulation, Inheritance and Polymorphism, Overriding / Overloading – 4 h
  3. String Processing, Data Formatting, Resource Bundles, Regular Expressions – java.util and java.math, StringTokenizer, Date/Calendar, Locale, Random, Optional, Observable, Observable interface, BigDecimal – 6 h
  4. Generics and Collections – toString(), hashCode(), and equals(), Collections Overview, Collection interfaces, Sorted collections, Comparators, Using Collections, Generic Types – 6 h
  5. Java I/O (Files, Streams) – I/O basics, AutoCloseable, Closeable and Flushable interfaces, I/O exceptions, Serialization, java.io. and nio – 8 h
  6. Threads & Concurrency – Defining, Instantiating, and Starting Threads, Synchronizing Code, Thread Problems, Immutable classes – 8 h
  7. Functional programming and lambda expressions – Fundamentals, Functional interfaces, Method references, Constructor references – 4 h
  8. The Stream API – Stream basics, reduction operations, mapping, collecting, iterators – 4 h
  9. Build tools (basics) – Ant vs Maven vs Gradle, practical examples – 4 h
  10. WWW – WWW introduction (IP addresses, Ports, DNS, Proxy, Hosts file), Cookies, HTTP, Ajax – 4 h
  11. Servlet container, Servlets, JSPs – Intro, web.xml, Servlets, Session management and Object scope, Filters, Listeners, JSPs & Expression Language (EL), Tags (JSTL) – 8 h
  12. Serialization & deserialization (JAXB) – 4 h
  13. Web Services (Soap, Rest, XML, JSON) – Popular Java libraries (Axis2, Jackson…) – 14 h
  14. Introduction to Spring. DI, AOP and MVC – 14 h
  15. Popular Patterns – Singleton, Adapter, Proxy, Builder, Factory, Command, Strategy, Observer, Decorator, SOLID principles: https://en.wikipedia.org/wiki/SOLID_(object-oriented_design) – 4 h
  16. Relational databases – Fundamentals (ACID), relations, transactions, indexes, triggers, views, relational algebra and SQL queries – 8 h
  17. Unit testing with JUnit. Object mocking. – 8 h
  18. Linux and Jenkins (CI/CD) Recommended Materials

Open Source Learning Resources / Textbooks

Clone this wiki locally