TOP HOT – מסלולי הכשרה המבוקשים של נאיה קולג’

חייגו עכשיו: 073-2865544

Design Patterns & Java8 & Spring intro


This course discovers some of the most useful, important and common design patterns in Java; reusable code patterns that you can use to structure your program and perform common tasks. In addition, the course will teach you about new features of Java 8 and the Spring framework to gain experience of better development using spring.

This course includes important advanced Java topics such as reflection, multithreading, TDD concepts and Maven and functional programming with lambdas and streams. It teaches a number of useful techniques that enhance productivity and good system design – which may otherwise take Java developers years to absorb on their own.

The course is hands on, and requires that students be comfortable with writing general Java code at an intermediate level, including the use of interfaces.

At least 2 years of Java programming experience

Design patterns

  • Anti-patterns
  • OOP principles and best practice: SOLID
  • Strategy
  • Singleton
  • Factory
  • Builder (and immutable objects)
  • Proxy
  • Decorator
  • Chain of responsibilities
  • IOC


  • ClassLoaders
  • Classpath
  • Class / Method / Constructor / Field
  • Annotations
  • reflections
  • How to scan packages
  • Dynamic proxy
  • Invocation handler

New in Java 8

  • Lambda / functional programming
  • Effectively final
  • Static and default methods in interfaces

Introduction to Spring

  • Context
  • Spring bean
  • Xml
  • Spring Annotations support
  • Bean Definition
  • BeanPostProcessor


  • Threads
  • Runnable / Callable
  • How to stop threads correctly
  • Synchronization / volatile / locks
  • Wait / notify
  • Executors


  • Annotation Processors
  • Pojo annotations
  • Functional annotations
  • Delombok

TDD main concepts

  • Mockito
  • Spring Test


  • Maven & Procedural Build Tools
  • The POM
  • The Build Lifecycle
  • Standard Project Layout
  • Running Maven
  • Artifacts & Dependencies & Dependency Management
  • Repositories
  • POM Inheritance (parent)
  • Cross-project Configuration (reactor)
  • Profiles
  • Installation and Deployment
  • Plugins
    • dependency:…
    • enforcer
    • writing custom plugin
  • Lifecycle and Packaging
יבגני בוריסוביבגני הינו מנהל תחום ומוביל טכנולוגי Big Data Development בנאיה טכנולוגיות, מומחה Java ומרצה בכיר בנאיה אקדמי
  • על פי דרישה מועד פתיחה
  • 09:00-16:30daysימים ושעות
  • 40academic hours שעות אקדמיות
  • מתקדםcourse levelרמת הקורס
  • עברית/Englishlanguageשפת הדרכה
  • לבדיקת התאמה לקורס
  • [current_url]

    השאירו פרטים ונחזור אליכם בהקדם!

Call Now Button דילוג לתוכן