קורסים מקצועיים למתקדמים

פיתוח תוכנה

Java Design Patterns & Effective Programming

מספר הקורס 101

למה ללמוד בג'ון ברייס?
  • למידה חדשנית ודינמית עם כלים מתקדמים בשילוב סימולציות, תרגול וסביבות מעבדה
  • מגוון הכשרות טכנולוגיות עם תכנים המותאמים להתפתחות הטכנולוגית ולביקוש בתעשיית ההייטק
  • מובילים את תחום ההכשרות לעולם ההייטק והטכנולוגיה כבר 30 שנה, עם קהילה של עשרות אלפי בוגרים
  • אתם בוחרים איך ללמוד: פרונטאלית בכיתה, מרחוק ב- Live Class או בלמידה עצמית

המועדים הקרובים

קורס לקבוצות

הקורס נפתח במתכונת של קבוצה בלבד, בהתאמה אישית לארגונים.
לפרטים נוספים: Muzman@johnbryce.co.il

משך הקורס

שעות אקדמיות:

24

מספר מפגשים:

קורס בוקר:

3

מתכונת הקורס

הקורסים המוזמנים לארגונים מותאמים באופן אישי ומלא לצרכי הארגון, מערכי הלימוד גמישים וניתן לשלב בהם תכנים רלוונטיים וייעודיים.

Overview

Design patterns are a must for every developer. Design patterns help the developers write extensible and maintainable code. Design patterns also provide the developers with common vocabulary for design and allow easy classification of conceptual problems.

Another important aspect for Java programmers is to develop effectively. This means that best practices are taken, object and stacks are not abused, pitfalls are avoided and there is a correct usage of the APIs.

The course will focus on the well-known GoF patterns and their appliance in the Java language. In addition, the course details effective related issues, some taken from “Effective Java” which was written by Joshua Bloch.

מטרות הקורס

Who Should Attend

Java developers that want to code effective Java

Java developers that want to implement common DPs in their applications

Team leaders and software architects in Java environments

תכנית הלימודים

Full Sylabus
PDF להורדה

Java Design Patterns

  • UML Recap
    • Class Diagrams
    • Sequence Diagrams
    • Interaction Diagrams
  • Design Principles
    • Open/Closed Principle
    • Design by Contract
    • Inversion of Control & Dependency Injection
    • Composition over Inheritance
  • Creational Patterns
    • Factory
    • Abstract Factory
    • Builder
    • Prototype
    • Singleton
  • Structural Patterns
    • Adapter
    • Bridge
    • Composite
    • Decorator
    • Façade
    • Proxy
  • Behavioral Patterns
    • Command
    • Mediator
    • Chain of Responsibility
    • Iterator
    • Observer
    • State
    • Strategy
    • Interpreter
    • Visitor

Effective Java

  • All about Objects
    • Object creation with Factories
    • Object creation with Builder
    • Singletons in Java
    • Comparing Objects: equals, Comparable, Comparator, hashCode
    • De-referencing and finalization
    • Cloning objects
    • Object serialization
  • Primitives and Strings
    • Boxing and un-boxing
    • Using float and double
    • Numeric overflows
    • String concatenation
  •  Classes and methods
    • Minimize accessibility, mutability, scope
    • Accessor methods
    • Composition over inheritance
    • Design for inheritance
    • Using interfaces
    • Nested classes
    • Object initialization
    • Overloading
    • Varargs
    • Methods – best practices

 

 

 

 

  • Exceptions
    • Exception performance and use-cases
    • Checked vs. runtime exceptions
    • Standard exceptions
    • Leaky abstractions with exceptions
    • Documenting exceptions
    • Ensuring failure atomicity
    • Catching exceptions
  • Generics
    • Generics vs. raw types
    • Unchecked warnings
    • Lists vs. arrays
    • Generic types
    • Generic methods
    • Wildcards
  • Enums and Annotations
    • Using enums
    • Enum ordinals
    • EnumSet and EnumMap
    • Enum extensibility with interfaces
    • Annotations use-cases
    • @Override annotation

 

 

 

Prerequisites
  • Experience in JavaSE programming
  • Familiarity with Java web development & web-services – optional

Schedule Appointment

Fill out the form below, and we will be in touch shortly.

לא הצלחנו לאתר את הטופס.