🔥 Чорна п’ятниця у FoxmindEd: знижки до 50% на ІТ курси онлайн! Поспішайте, пропозиція діє лише до 1.12!
Дізнатися більше

Курс Enterprise Patterns

Advanced online course
Online
Middle/senior
Курс “Enterprise Patterns” заснований на книзі Мартіна Фаулера “Patterns of Enterprise Applications”, але адаптований для сучасних розробників. Автор осучаснив приклади та додав нові патерни, щоб зробити курс зрозумілим навіть менш досвідченим програмістам. Це єдиний практичний курс, який вчить, як побудувати архітектуру додатка з нуля, заповнюючи прогалини в навчанні. Курс допоможе розвинути навички архітектора, щоб ви могли вибирати оптимальні рішення для різних завдань, а не дотримуватися звичних шаблонів.

Формат та вимоги

Формат навчання:
Тривалість курсу – 3 місяці. Завдання перевіряє ментор
Доступ до відео та завдання – 6 місяців. Перевірка завдань лише протягом 3 місяців
1 раз на 2 тижні вебінар
Вимоги:
Досвід роботи програмістом не менше 3-х років
Мова програмування: Java, PhP, Python, Ruby, C#, C++ (будь-яка ООП мова)
Не підійдуть для курсу не ООП мови: Go, JS etc.

Програма курсу

  • OOP – застосування в сучасній розробці.
  • UML – огляд.
  • Поняття паттернів та історія їх створення.
  • Організація domain logic – підходи та методи.
    • Transaction Script – просте кодування бізнес-правил.
    • Domain Model – аналіз та кодування об’єктів домену.
    • TableModule – організація домену як таблиць бази даних.
    • Service Layer – відділення доменної логіки від об’єктів.
  • Організація Layers – вибір необхідних шарів для різних типів застосунків.
  • Data Source – зберігання даних в базі даних.
    • Data Accessor – перетворення запитів коду в запити до БД.
    • Table Data Gateway – клас для роботи з таблицями БД.
    • Row Data Gateway – клас для роботи з рядками таблиці.
    • Active Record – самозбереження об’єктів у БД.
    • Data Mapper – конвертація даних між об’єктами та записами БД, ORM.
  • Resource Pattern – робота з різними джерелами даних.
    • Resource Decorator – обгортка навколо ресурсу.
    • Resource Pool – пул ресурсів, перевикористання з’єднань.
    • Resource Timer – вивільнення неактивних ресурсів.
    • Resource Descriptor – мета-інформація про ресурс.
    • Retryer – повторний доступ до недоступних ресурсів.
  • Input and Output Patterns – робота з складними об’єктами.
    • Selection Factory – многофакторний пошук.
    • Domain Object Factory – створення складних об’єктів.
    • Update Factory – редагування складних об’єктів.
    • Domain Object Assembler – CRUD операції над складними об’єктами.
    • Paging Iterator – розбиття списку на сторінки.
  • Cache Patterns – робота з кешем.
    • Cache Accessor – додавання кешу.
    • Demand Cache – збереження запитів у кеші.
    • Primed Cache – попереднє заповнення кешу.
    • Cache Search Sequence – пошук у кеші.
    • Cache Collector – видалення зайвих записів з кешу.
    • Cache Replicator – дублювання кешу.
    • Cache Statistics – аналіз використання кешу.
  • Behavioral – поведінкові аспекти ORM.
    • Unit of Work – централізоване управління змінами даних.
    • Identity Map – відображення об’єктів і записів у БД.
    • Lazy Load – відкладене завантаження об’єктів.
  • Metadata Mapping – відображення даних у метаданих.
    • Query Object – об’єктний запит до БД.
    • Repository – управління доступом до БД.
  • Structural – структурні аспекти.
    • Identity Field – унікальне визначення об’єктів.
    • Foreign Key Mapping – відображення зовнішніх ключів.
    • Association Table Mapping – відображення через асоціативні таблиці.
    • Dependent Mapping – відображення залежних об’єктів.
    • Embedded Value – інтеграція малих об’єктів.
    • Serialized LOB – відображення складних структур як BLOB.
    • Single Table Inheritance – відображення ієрархії класів у одну таблицю.
    • Class Table Inheritance – відображення ієрархії класів у таблиці за класом.
    • Concrete Table Inheritance – відображення конкретних класів.
    • Inheritance Mappers – ієрархія маперів.
  • Delegation (When Not to Use Inheritance)
  • Interface
  • Abstract Superclass
  • Interface and Abstract Class
  • Immutable
  • Marker Interface
  • Object Pool
  • Filter
  • Read-only Interface
  • Dynamic Linkage
  • Virtual Proxy
  • Cache Management
  • Remote Facade – фасад віддаленої системи.
  • Data Transfer Object – об’єкт передачі даних.
  • Optimistic Offline Lock – оптимістичне блокування.
  • Pessimistic Offline Lock – песимістичне блокування.
  • Coarse-Grained Lock – блокування великими блоками.
  • Implicit Lock – неявне блокування.
  • Client Session State – зберігання на клієнті.
  • Server Session State – зберігання на сервері.
  • Database Session State – зберігання в базі даних.
  • Gateway – інтеграція різних систем.
  • Mapper – роз’єднання залежностей між системами.
  • Layer Supertype – базовий клас шару додатку.
  • Separated Interface – специфічні інтерфейси для різних задач.
  • Registry – реєстр об’єктів системи.
  • Value Object – об’єкт для представлення значень.
  • Money – об’єкт для роботи з грошима.
  • Special Case – обробка особливих випадків.
  • Plugin – підключення додаткових функцій.
  • Service Stub – заміна реального сервісу тимчасовою заглушкою.
  • Record Set – управління наборами записів.

Демо-версія

Автор курсу
Сергій Немчинський
CEO FoxmindEd

27 років у програмуванні, з них 15 років у Java. Certified Scrum Master, з 2008 року працював і проводив тренінги в Luxoft, NetCraker, IntroPro. Провів 50+ тренінгів у сфері IT. Більше 350К підписників на освітньому YouTube каналі.

Ваш результат:

Ваш результат:

Після закінчення курсу ми видамо вам сертифікат, що свідчить про успішне завершення online курсу Enterprise Patterns.

Курс: Java Start
Олександр
Сергій, Доброго дня! Дякуємо Вам та Вашій команді за курс! Дуже якісний матеріал та перевірка завдань. Робота з ментором приносить величезне задоволення) Я не тільки вивчив патерни, але й зрозумів спільні ідеї, що потрібно робити, а що не можна. Тому і зараз, і в…
Читати повністю

Сергій, Доброго дня! Дякуємо Вам та Вашій команді за курс! Дуже якісний матеріал та перевірка завдань. Робота з ментором приносить величезне задоволення) Я не тільки вивчив патерни, але й зрозумів спільні ідеї, що потрібно робити, а що не можна. Тому і зараз, і в перспективі, програмувати ставати легше. Ще раз велике спасибі)

Alena N.
Проходжу навчання на курсі Enterprise Patterns. Доводиться вирішувати купу завдань, їх на кожен шаблон по одному. При цьому Сергій дає загальну інформацію по патерну, про ситуації, коли варто або не варто використовувати, дає корисні поради, реалізація залишаєтьс…
Читати повністю

Проходжу навчання на курсі Enterprise Patterns. Доводиться вирішувати купу завдань, їх на кожен шаблон по одному. При цьому Сергій дає загальну інформацію по патерну, про ситуації, коли варто або не варто використовувати, дає корисні поради, реалізація залишається на розсуд учнів. Так само вчасно перевіряє завдання, відповідає на питання, що виникають. Виконуючи завдання, починаю більше розуміти, за яким принципом працюють фреймворки під капотом. Курс можу сміливо рекомендувати, знань дає дуже багато (якщо вчитися) 🙂 Сергію та команді Foxminded велике спасибі.

Дмитро Кучерявенко
Для себе особисто вважаю курс мега корисним, не дивлячись на те що не пройшов його до кінця. Книга по якій складений курс – в ту-ду аркуші у мене вже давно. Хочу подякувати за те що викладаєте у відкритий доступ велику кількість освітніх відео. Дуже багато речей …
Читати повністю

Для себе особисто вважаю курс мега корисним, не дивлячись на те що не пройшов його до кінця. Книга по якій складений курс – в ту-ду аркуші у мене вже давно. Хочу подякувати за те що викладаєте у відкритий доступ велику кількість освітніх відео. Дуже багато речей переглянув для себе в процесі розробки, проектування нових фіч починаю тепер з draw.io, патерни фабричний метод і команда лягли в основу архітектури додатку над яким в даний момент працюю. Якщо коротко підсумувати – то тема курсу актуальна, формат зручний, можливість отримати фідбек це взагалі Топчик. Курс обов’язково пройду до кінця, в майбутньому готовий приєднатися до нових курсів на нові цікаві теми. Так тримати!

Дмитро Мойсеєв
Особисто для мене курс виявився дуже корисним, саме те, чого не вистачало. Я розумів, що є якісь напрацювання в галузі архітектури ПО, але не розумів куди рухатися. ООП, SOLID, GRASP, GoF – це все звичайно добре, але замало. Ці ж шаблони – відкрили цілий напрям д…
Читати повністю

Особисто для мене курс виявився дуже корисним, саме те, чого не вистачало. Я розумів, що є якісь напрацювання в галузі архітектури ПО, але не розумів куди рухатися. ООП, SOLID, GRASP, GoF – це все звичайно добре, але замало. Ці ж шаблони – відкрили цілий напрям для вивчення. Я тепер розумію і бачу куди більше, але як завжди виходить, питань стало куди більше ніж було спочатку. Принаймні ясно в якому напрямку рухатися. Дякую за курс – було дуже приємно його проходити!

Online

Gold

  • Без перевірки завдань*
  • Доступ: 6 місяців з моменту покупки курсу
  • Доступ до курсу відкривається одразу після оплати

* Місяць перевірки можете придбати окремо за $250.
Бонус: отримай знижку 10% на пакет Gold курсу Grasp&GoF patterns після покупки пакету Gold курсу Enterprise patterns

Online

Platinum

  • Перевірка завдань*
  • Участь в вебінарах
  • Доступ: 6 місяців з моменту старту потоку курсу

*У пакеті перевірка завдань протягом 3х місяців. Додатковий місяць перевірки – $250

Як проходить навчання

Реєстрація на курс

Реєструєтесь на курс

Відповіді на запитання

З вами зв’язується співробітник і відповідає на всі ваші питання

Доступ

Отримуєте доступ до відео-лекцій і завдань

Практика

Дивитесь відео і відразу на практиці спробуєте написати код за шаблоном

Перевірка

Отримуєте відгук від ментора

Наступні завдання

Фінішуєте завдання і переходите до наступного

Реєстрація





    Надсилаючи повідомлення, ви погоджуєтесь з нашою офертою.

    Enterprise Patterns Advanced

    Припустимо, ви вже освоїли програмування достатньою мірою, щоб відрізняти поганий код від хорошого. Наступний крок – ви навчитеся оцінювати якість системи, з якою ви працюєте, наскільки вона хороша. У хороших програмних систем є кілька характеристик, одна з них — використання патернів, тобто схем, що повторюються.

    Програмісти запозичили поняття патерна в архітекторів. В архітектурі патерни описують, припустимо, якої висоти будуть вікна в будівлі, як розподілятиметься вага по конструкціях, що несуть, яким чином підведені комунікації тощо. Тобто це опис елементів, з яких може бути створена якісна, функціональна будівля.

    У патернів у програмуванні подібна роль. Це набори шаблонів, за допомогою яких може бути створена функціональна та ефективна програмна система. Знання патернів допомагає розробнику оцінювати системи програм для підприємства, і навіть створювати нові системи та його елементи, домагаючись максимальної ефективності їх роботи.

    Погодьтеся, це навіть звучить круто. А вже вміти застосовувати патерни на практиці – це суперсила!

    Кому підійдуть наші курси з Enterprise Patterns

    Цей курс призначено для досвідчених програмістів рівня Middle to Senior. Мінімальний досвід роботи – три роки, хоча для геніїв ми готові зробити виняток.

    Наш ідеальний студент цікавиться не тільки написанням коду за гроші, він хоче робити цей код краще, а в ідеалі — всю систему, для якої призначений цей код, щоб система працювала бездоганно і робила краще цей світ.

    Патерни можна використовувати в об’єктно-орієнтованому програмуванні, тому наш майбутній студент повинен володіти хоча б однією ООП-мовою на робочому рівні.

    Крім того, наш майбутній студент повинен мати деякі кар’єрні амбіції та бажання розвиватися як повноцінний IT-фахівець, а не просто кодер. Якщо це все про вас — ми чекаємо на вас з нетерпінням!

    Чого ви навчитеся на курсах Enterprise Patterns від FoxmindEd

    В рамках курсу ви розгляньте 90 патернів. Для кожного шаблону передбачається відеолекція та практичне завдання. Залежно від вибраного вами пакета навчання ваше завдання може бути перевірене ментором.

    Про що будуть лекції:

    • Загальне поняття про патерни та їх походження
    • Логіка шару предметної області
    • Шаблони роботи з даними
    • ORM Patterns
    • Presentation Patterns
    • Complex Patterns
    • Distribution Patterns
    • Offline Concurrency Patterns
    • Session State Patterns
    • Base Patterns

    Початкові вимоги до студента

    • Досвід роботи програмістом не менше трьох років
    • Мова програмування: Java, Php, Python, Ruby, C#, C++ (будь-яка ООП мова)
    • Не підійдуть для курсу не ООП мови: Go, JS etc.

    Як проходить навчання на курсах Enterprise Patterns від FoxmindEd

    Як ви знаєте, навчання на курсах компанії FoxmindEd відбувається з ментором. Це означає, що ми не маємо лекцій та домашніх завдань. Ми робимо акцент на практику. Для вас підготовлений онлайн-курс із рядом завдань з тем курсу, а ментор допомагає розібратися зі складними нюансами та дає фідбек за якістю виконання завдання.

    Автор курсу Enterprise patterns – Сергій Немчинський, найхитріший лис та директор нашої компанії FoxmindEd. У Сергія більше 20 років досвіду в програмуванні та менеджменті команд розробників, він працював у найбільших IT-компаніях українського ринку та маленьких стартапах, може писати код на півтора десятках мов програмування, а ще має свій канал на YouTube, де вже понад 200 тисяч підписників. Нудно не буде!

    Після завершення курсу Enterprise patterns

    Зараз хорошому розробнику немає потреби шукати роботу – попит на айтішників величезний, тільки встигай відповідати рекрутерам. Але так буде не завжди. Ринок рухається спіралеподібно, рано чи пізно він обернеться обличчям до роботодавця.

    Щоб успішно конкурувати на ринку праці з іншими розробниками, треба розширювати свій skill set. Крім того, знання патернів Enterprise розробки допоможе просунутися кар’єрними сходами у великих компаніях.

    Якщо ви розробник, але хочете краще розбиратися у великих корпоративних системах, професійно розвиватися і просуватися вгору кар’єрними сходами, курси Enterprise patterns від FoxmindEd – для вас. 

    Показати більше Приховати

    FAQ

    Для кого цей курс?

    Курс розроблений для досвідчених програмістів, тих, хто вже володіє навичками написання коду з ООП мов програмування: Java, PHP, Python, Ruby, C#, C++ та інших.

    У якому форматі проходить навчання на курсі Патернів?

    Це відеотренінг. На кожен паттерн буде уже записана відеолекція, приклад використання паттерну в коді, практична задача на використання паттерну і тестування для перевірки знань, чи правильно ви все зрозуміли з лекцій. В залежності від обраного пакету додатково можуть бути доступні перевірка завдань ментором та участь у вебінарах з автором курсу Сергієм Немчинським.

    Які є варіанти участі в курсі?

    Варіант №1 (пакет "Platinum"): Повноцінний курс на нашій платформі з лекціями (окреме відео на кожен шаблон) і завданнями до кожного патерну. Перевірка завдань ментором і відповіді на запитання. Вебінари раз на два тижні з автором курсу Сергієм Немчинським.
    Варіант №2 (пакет "Gold"): Повноцінний курс на нашій платформі з лекціями (окреме відео на кожен шаблон), тестами й завданнями. Без перевірки завдань.

    Коли розпочинається навчання?

    Пакет "Platinum" - це груповий курс. Після оплати курсу вам бронюється місце у групі та в попередньо визначений день старту вся група одночасно розпочинає навчання. Про найближчий старт групи ви можете дізнатись на нашому сайті

    Скільки триває курс?

    Доступ до матеріалів курсу надається протягом 6-ти місяців з моменту надання студенту доступу до платформи. Тривалість групового навчання в пакеті “Platinum” складає 3 місяці.

    Яка вартість навчання?

    Вартість навчання буде залежати від обраного вами курсу та від обраного пакету. Детальніше щодо вартості навчання вас проконсультує наш менеджер.

    Чи видаєте ви сертифікат по закінченню навчання?

    Так, після проходження повної програми менторингу ви отримуєте електронний сертифікат англійською мовою.

    Більше FAQ