home.social

#паттерн — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #паттерн, aggregated by home.social.

  1. Clean Architecture + DDD в Go: как не превратить проект в 200 файлов ни о чём

    Прежде чем погружаться в архитектуру, давайте посмотрим на контекст, в котором всё это происходит. По данным исследования McKinsey 2022 года, технический долг составляет до 40% всего технологического портфеля компаний. И это не просто цифра в отчёте. Согласно опросу 2024 года среди технических руководителей, у более чем 50% компаний технический долг занимает свыше четверти всего IT-бюджета, блокируя внедрение новых функций. (Источник: vFunction, 2025 ) При этом исследование Carnegie Mellon выяснило, что наибольшим источником технического долга являются именно архитектурные проблемы — а не баги и не плохой код на уровне функций. Теперь о Go. По данным Go Developer Survey 2024, главной проблемой команд, работающих с Go, названо поддержание единых стандартов кода — в том числе из-за разного уровня опыта участников и привнесения не-идиоматических паттернов из других языков. (Источник: go.dev/blog/survey2024-h2-results ) Это напрямую про нашу тему: люди приходят из Java, Python, C# и приносят с собой архитектурные привычки, которые в Go не работают. Clean Architecture и DDD — не исключение. Их часто реализуют "как в Java", а потом жалуются, что Go — многословный и неудобный язык. Давайте разберёмся, как делать это правильно. Как мы сюда попали? Представьте: вы начинаете новый Go‑сервис. Читаете статьи, смотрите видео, решаете «делать по‑взрослому». Создаёте структуру:

    habr.com/ru/articles/1025068/

    #go #архитектура #DDD #clean_architecture #backend #паттерн #паттерны_проектирования

  2. Clean Architecture + DDD в Go: как не превратить проект в 200 файлов ни о чём

    Прежде чем погружаться в архитектуру, давайте посмотрим на контекст, в котором всё это происходит. По данным исследования McKinsey 2022 года, технический долг составляет до 40% всего технологического портфеля компаний. И это не просто цифра в отчёте. Согласно опросу 2024 года среди технических руководителей, у более чем 50% компаний технический долг занимает свыше четверти всего IT-бюджета, блокируя внедрение новых функций. (Источник: vFunction, 2025 ) При этом исследование Carnegie Mellon выяснило, что наибольшим источником технического долга являются именно архитектурные проблемы — а не баги и не плохой код на уровне функций. Теперь о Go. По данным Go Developer Survey 2024, главной проблемой команд, работающих с Go, названо поддержание единых стандартов кода — в том числе из-за разного уровня опыта участников и привнесения не-идиоматических паттернов из других языков. (Источник: go.dev/blog/survey2024-h2-results ) Это напрямую про нашу тему: люди приходят из Java, Python, C# и приносят с собой архитектурные привычки, которые в Go не работают. Clean Architecture и DDD — не исключение. Их часто реализуют "как в Java", а потом жалуются, что Go — многословный и неудобный язык. Давайте разберёмся, как делать это правильно. Как мы сюда попали? Представьте: вы начинаете новый Go‑сервис. Читаете статьи, смотрите видео, решаете «делать по‑взрослому». Создаёте структуру:

    habr.com/ru/articles/1025068/

    #go #архитектура #DDD #clean_architecture #backend #паттерн #паттерны_проектирования

  3. Clean Architecture + DDD в Go: как не превратить проект в 200 файлов ни о чём

    Прежде чем погружаться в архитектуру, давайте посмотрим на контекст, в котором всё это происходит. По данным исследования McKinsey 2022 года, технический долг составляет до 40% всего технологического портфеля компаний. И это не просто цифра в отчёте. Согласно опросу 2024 года среди технических руководителей, у более чем 50% компаний технический долг занимает свыше четверти всего IT-бюджета, блокируя внедрение новых функций. (Источник: vFunction, 2025 ) При этом исследование Carnegie Mellon выяснило, что наибольшим источником технического долга являются именно архитектурные проблемы — а не баги и не плохой код на уровне функций. Теперь о Go. По данным Go Developer Survey 2024, главной проблемой команд, работающих с Go, названо поддержание единых стандартов кода — в том числе из-за разного уровня опыта участников и привнесения не-идиоматических паттернов из других языков. (Источник: go.dev/blog/survey2024-h2-results ) Это напрямую про нашу тему: люди приходят из Java, Python, C# и приносят с собой архитектурные привычки, которые в Go не работают. Clean Architecture и DDD — не исключение. Их часто реализуют "как в Java", а потом жалуются, что Go — многословный и неудобный язык. Давайте разберёмся, как делать это правильно. Как мы сюда попали? Представьте: вы начинаете новый Go‑сервис. Читаете статьи, смотрите видео, решаете «делать по‑взрослому». Создаёте структуру:

    habr.com/ru/articles/1025068/

    #go #архитектура #DDD #clean_architecture #backend #паттерн #паттерны_проектирования

  4. Clean Architecture + DDD в Go: как не превратить проект в 200 файлов ни о чём

    Прежде чем погружаться в архитектуру, давайте посмотрим на контекст, в котором всё это происходит. По данным исследования McKinsey 2022 года, технический долг составляет до 40% всего технологического портфеля компаний. И это не просто цифра в отчёте. Согласно опросу 2024 года среди технических руководителей, у более чем 50% компаний технический долг занимает свыше четверти всего IT-бюджета, блокируя внедрение новых функций. (Источник: vFunction, 2025 ) При этом исследование Carnegie Mellon выяснило, что наибольшим источником технического долга являются именно архитектурные проблемы — а не баги и не плохой код на уровне функций. Теперь о Go. По данным Go Developer Survey 2024, главной проблемой команд, работающих с Go, названо поддержание единых стандартов кода — в том числе из-за разного уровня опыта участников и привнесения не-идиоматических паттернов из других языков. (Источник: go.dev/blog/survey2024-h2-results ) Это напрямую про нашу тему: люди приходят из Java, Python, C# и приносят с собой архитектурные привычки, которые в Go не работают. Clean Architecture и DDD — не исключение. Их часто реализуют "как в Java", а потом жалуются, что Go — многословный и неудобный язык. Давайте разберёмся, как делать это правильно. Как мы сюда попали? Представьте: вы начинаете новый Go‑сервис. Читаете статьи, смотрите видео, решаете «делать по‑взрослому». Создаёте структуру:

    habr.com/ru/articles/1025068/

    #go #архитектура #DDD #clean_architecture #backend #паттерн #паттерны_проектирования

  5. Паттерны проектирования

    Маленькая шпаргалка для тех кто хоче понять что это и как называется. Изначальная цель написания - предоставить заинтересованным лицам краткую справку и возможность более эффективно воспользоваться поисковыми системами. Здесь перечислены как классические паттерны и антипаттерны проектирования от банды четырёх (GoF), так и прочие общепринятые.

    habr.com/ru/articles/1006094/

    #паттерны_проектирования #паттерны #паттерн #разработка #система #проектирование #архитектура #архитектура_приложений #архитектура_систем

  6. Чистая архитектура — красивая сказка для собеседований

    В процессе поиска работы я изучил множество вакансий, и в подавляющем большинстве среди обязательных требований значились знание паттернов проектирования, принципов SOLID и прочих «столпов» правильной архитектуры. На собеседованиях меня нередко просили не просто рассказать о SOLID, а буквально расшифровать каждую букву и объяснить её смысл. Всё это формирует у кандидата вполне логичное ожидание: раз требования такие высокие, значит и кодовая база у работодателя должна быть аккуратной, продуманной и соответствующей этим принципам. Однако в реальности это часто оказывается иллюзией.

    habr.com/ru/articles/1005814/

    #паттерн #паттерны #паттерны_проектирования #паттерны_программирования

  7. Паттерн Memento в Android: полный разбор сохранения состояния

    Если вы хоть раз теряли пользовательский ввод после поворота экрана или возвращались к приложению из фона и обнаруживали пустой экран вместо заполненной формы — вы знаете, о чем пойдет речь. Сохранение состояния в Android — одна из тех тем, которые кажутся простыми до первого бага в проде. Система может убить процесс в любой момент, конфигурация меняется, а пользователь ожидает, что все останется на своих местах. В статье о том, как паттерн Memento реализуется в Android через CustomView, SavedStateHandle, Compose и навигацию.

    habr.com/ru/articles/990568/

    #android #kotlin #паттерны #паттерны_проектирования #паттерны_программирования #паттерн #memento #desing_patterns #jetpack_compose #custom_view

  8. Паттерн Memento в Android: полный разбор сохранения состояния

    Если вы хоть раз теряли пользовательский ввод после поворота экрана или возвращались к приложению из фона и обнаруживали пустой экран вместо заполненной формы — вы знаете, о чем пойдет речь. Сохранение состояния в Android — одна из тех тем, которые кажутся простыми до первого бага в проде. Система может убить процесс в любой момент, конфигурация меняется, а пользователь ожидает, что все останется на своих местах. В статье о том, как паттерн Memento реализуется в Android через CustomView, SavedStateHandle, Compose и навигацию.

    habr.com/ru/articles/990568/

    #android #kotlin #паттерны #паттерны_проектирования #паттерны_программирования #паттерн #memento #desing_patterns #jetpack_compose #custom_view

  9. Паттерн Memento в Android: полный разбор сохранения состояния

    Если вы хоть раз теряли пользовательский ввод после поворота экрана или возвращались к приложению из фона и обнаруживали пустой экран вместо заполненной формы — вы знаете, о чем пойдет речь. Сохранение состояния в Android — одна из тех тем, которые кажутся простыми до первого бага в проде. Система может убить процесс в любой момент, конфигурация меняется, а пользователь ожидает, что все останется на своих местах. В статье о том, как паттерн Memento реализуется в Android через CustomView, SavedStateHandle, Compose и навигацию.

    habr.com/ru/articles/990568/

    #android #kotlin #паттерны #паттерны_проектирования #паттерны_программирования #паттерн #memento #desing_patterns #jetpack_compose #custom_view

  10. Паттерн Memento в Android: полный разбор сохранения состояния

    Если вы хоть раз теряли пользовательский ввод после поворота экрана или возвращались к приложению из фона и обнаруживали пустой экран вместо заполненной формы — вы знаете, о чем пойдет речь. Сохранение состояния в Android — одна из тех тем, которые кажутся простыми до первого бага в проде. Система может убить процесс в любой момент, конфигурация меняется, а пользователь ожидает, что все останется на своих местах. В статье о том, как паттерн Memento реализуется в Android через CustomView, SavedStateHandle, Compose и навигацию.

    habr.com/ru/articles/990568/

    #android #kotlin #паттерны #паттерны_проектирования #паттерны_программирования #паттерн #memento #desing_patterns #jetpack_compose #custom_view

  11. Принцип каскадного снижения связанности

    Часто ли вы слышите о новом принципе проектирования IT-архитектуры? А об обновлении классических принципов? Попробую вас удивить и привнести что-то новое. 😎 У вас никогда не вызывало недоумения, что связанность и прочность (или связность) — это про примерно одно и то же (и то, и другое — это некая связь), но одно — хорошо, а другое — почему-то плохо? 🙂 Но давайте по порядку.

    habr.com/ru/articles/894766/

    #архитектура #микросервисы #enterprise_architect #solutionsархитектура #принципы_проектирования #паттерн #связанность #связность #coupling #cohesion

  12. Принцип каскадного снижения связанности

    Часто ли вы слышите о новом принципе проектирования IT-архитектуры? А об обновлении классических принципов? Попробую вас удивить и привнести что-то новое. 😎 У вас никогда не вызывало недоумения, что связанность и прочность (или связность) — это про примерно одно и то же (и то, и другое — это некая связь), но одно — хорошо, а другое — почему-то плохо? 🙂 Но давайте по порядку.

    habr.com/ru/articles/894766/

    #архитектура #микросервисы #enterprise_architect #solutionsархитектура #принципы_проектирования #паттерн #связанность #связность #coupling #cohesion

  13. Принцип каскадного снижения связанности

    Часто ли вы слышите о новом принципе проектирования IT-архитектуры? А об обновлении классических принципов? Попробую вас удивить и привнести что-то новое. 😎 У вас никогда не вызывало недоумения, что связанность и прочность (или связность) — это про примерно одно и то же (и то, и другое — это некая связь), но одно — хорошо, а другое — почему-то плохо? 🙂 Но давайте по порядку.

    habr.com/ru/articles/894766/

    #архитектура #микросервисы #enterprise_architect #solutionsархитектура #принципы_проектирования #паттерн #связанность #связность #coupling #cohesion

  14. Принцип каскадного снижения связанности

    Часто ли вы слышите о новом принципе проектирования IT-архитектуры? А об обновлении классических принципов? Попробую вас удивить и привнести что-то новое. 😎 У вас никогда не вызывало недоумения, что связанность и прочность (или связность) — это про примерно одно и то же (и то, и другое — это некая связь), но одно — хорошо, а другое — почему-то плохо? 🙂 Но давайте по порядку.

    habr.com/ru/articles/894766/

    #архитектура #микросервисы #enterprise_architect #solutionsархитектура #принципы_проектирования #паттерн #связанность #связность #coupling #cohesion

  15. Пример паттерна Прототип в Unreal Engine

    В интернетах полно статей про паттерны. Но реальных примеров из живых проектов встречается немного. Понятно, что в случае с Прототипом, есть довольно популярный проектик Java Script или Lua. Но я хочу еще! Поэтому в этом посте приведу пример паттерна из Unreal Engine.

    habr.com/ru/articles/885520/

    #prototype #прототип #паттерн #unrealengine #c++ #gamedev #pattern #patterns #проектирование #design_patterns

  16. Пример паттерна Прототип в Unreal Engine

    В интернетах полно статей про паттерны. Но реальных примеров из живых проектов встречается немного. Понятно, что в случае с Прототипом, есть довольно популярный проектик Java Script или Lua. Но я хочу еще! Поэтому в этом посте приведу пример паттерна из Unreal Engine.

    habr.com/ru/articles/885520/

    #prototype #прототип #паттерн #unrealengine #c++ #gamedev #pattern #patterns #проектирование #design_patterns

  17. Пример паттерна Прототип в Unreal Engine

    В интернетах полно статей про паттерны. Но реальных примеров из живых проектов встречается немного. Понятно, что в случае с Прототипом, есть довольно популярный проектик Java Script или Lua. Но я хочу еще! Поэтому в этом посте приведу пример паттерна из Unreal Engine.

    habr.com/ru/articles/885520/

    #prototype #прототип #паттерн #unrealengine #c++ #gamedev #pattern #patterns #проектирование #design_patterns

  18. Пример паттерна Прототип в Unreal Engine

    В интернетах полно статей про паттерны. Но реальных примеров из живых проектов встречается немного. Понятно, что в случае с Прототипом, есть довольно популярный проектик Java Script или Lua. Но я хочу еще! Поэтому в этом посте приведу пример паттерна из Unreal Engine.

    habr.com/ru/articles/885520/

    #prototype #прототип #паттерн #unrealengine #c++ #gamedev #pattern #patterns #проектирование #design_patterns

  19. Фрактальный декоратор в C#

    Привет, Хабр! Сегодня разберём паттерн «Фрактальный декоратор» — способ рекурсивного декорирования объектов, позволяющий динамически добавлять уровни логики без изменения базового кода.

    habr.com/ru/companies/otus/art

    #c# #паттерн #Фрактальный_декоратор #декорирование_объектов

  20. Реализация паттерна Chain of Responsibility на примере котиков в PHP

    Привет, Хабр! Если вы когда‑нибудь пытались настроить бизнес‑логику в своём проекте так, чтобы она не выглядела как свалка if-else и работала хорошо, то этот материал для вас. Сегодня мы разберём один из самых приятных паттернов — Chain of Responsibility , или «Цепочка обязанностей».

    habr.com/ru/companies/otus/art

    #php #паттерн #Chain_of_Responsibility #цепочка_обязанностей

  21. Реализация паттерна Chain of Responsibility на примере котиков в PHP

    Привет, Хабр! Если вы когда‑нибудь пытались настроить бизнес‑логику в своём проекте так, чтобы она не выглядела как свалка if-else и работала хорошо, то этот материал для вас. Сегодня мы разберём один из самых приятных паттернов — Chain of Responsibility , или «Цепочка обязанностей».

    habr.com/ru/companies/otus/art

    #php #паттерн #Chain_of_Responsibility #цепочка_обязанностей

  22. Реализация паттерна Chain of Responsibility на примере котиков в PHP

    Привет, Хабр! Если вы когда‑нибудь пытались настроить бизнес‑логику в своём проекте так, чтобы она не выглядела как свалка if-else и работала хорошо, то этот материал для вас. Сегодня мы разберём один из самых приятных паттернов — Chain of Responsibility , или «Цепочка обязанностей».

    habr.com/ru/companies/otus/art

    #php #паттерн #Chain_of_Responsibility #цепочка_обязанностей

  23. Реализация паттерна Chain of Responsibility на примере котиков в PHP

    Привет, Хабр! Если вы когда‑нибудь пытались настроить бизнес‑логику в своём проекте так, чтобы она не выглядела как свалка if-else и работала хорошо, то этот материал для вас. Сегодня мы разберём один из самых приятных паттернов — Chain of Responsibility , или «Цепочка обязанностей».

    habr.com/ru/companies/otus/art

    #php #паттерн #Chain_of_Responsibility #цепочка_обязанностей

  24. Эффективный процесс разработки на основе Feature Slice Design: наш опыт

    Привет! Я – Егор, фронтенд-разработчик в Чиббис. Наша команда разработала новый личный кабинет для партнеров – b2b-приложение с нуля, используя Feature Slice Design. В статье я делюсь нашим опытом: от выбора стека технологий до построения процесса разработки, который помог нам за 5,5 месяцев превратить пустую папку в рабочий продукт. Мы разберем итерации, FSD-макеты, этапы создания разделов и расскажем, как удалось сократить время разработки и тестирования. Вас ждет готовый шаблон процесса, который вы сможете применить в своих проектах.

    habr.com/ru/companies/chibbis/

    #react #fsd #feature_slice_design #javascript #typescript #архитектура #методология #паттерн #паттерны_проектирования #процесс_разработки

  25. Гайд по реализации паттерна Composite в Kotlin с sealed-классами и корутинами

    Привет, Хабр! Сегодня рассмотрим, как реализовать паттерн Composite в Kotlin с помощью sealed-классов и корутин . Если у вас есть сложная система с кучей объектов — простых и составных — и вы хотите управлять ими, не теряя асинхронности, то этот гайд для вас.

    habr.com/ru/companies/otus/art

    #kotlin #паттерн #composite #корутины

  26. Как я выстрелил себе в ногу, не соблюдая паттерны

    Всем привет, меня зовут Андрей, я — php-разработчик в wpp.digital. Сегодня я поделюсь с вами историей. Она о том, как поверхностное понимание (или непонимание) паттернов проектирования отстрелило мне ногу. А еще поделюсь примером реализации простой истины: знание чего-то не равно умению это применять. Кстати, главным героем поэмы являюсь (неожиданная информация) я. Кому будет полезен данный текст? В первую очередь, мне для рефлексии. Во вторую — той редкой породе новичков, которая умеет учиться на чужих ошибках. Ну и в последнюю очередь — опытным коллегам, которые могут поностальгировать по временам джуновых задач и огромных перспектив. Последние еще могут разнести в комментариях всё, что я здесь написал. Теперь к задаче.

    habr.com/ru/articles/825322/

    #паттерн #паттерны_проектирования #факап #философия_программирования

  27. [Перевод] Архитектура в Unity-разработке: паттерн «Спагетти»

    Полгода назад меня повысили до ведущего Unity-разработчика, и тогда я почувствовал, что должен поднять уровень навыка написания кода. Мне надоело создавать прототипы, которые впечатляли клиентов и работодателей, в то время как через год кодовая база превращалась в адское месиво, изобилующее ошибками и горами технического долга. Однако, куда бы я ни обращался и кого бы ни спрашивал, мнение было одним: я не должен гнаться за такими глупыми мечтами, Singleton — это всё, что мне нужно для создания приложений на Unity. Мне однако этот ответ не понравился, и я надеюсь, что он не является окончательным. Поэтому я решил бросить себе вызов и сделать игру — не ради славы или денег, а чтобы исследовать саму природу того, как создавать игры. В надежде найти архитектурный паттерн, который сможет привести меня к чему-то большему, чем гора спагетти-кода.

    habr.com/ru/companies/otus/art

    #разработка_игр #gamedev #тестирование_игр #unity #паттерн #спагеттикод

  28. Применение ООП на практике

    Чаще всего задачу можно решить интуитивно понятным процедурным способом. Однако самый простой вариант не всегда самый лучший. Предлагаю посмотреть на примере реальной задачи, как можно сделать решение объектно-ориентированным, и какую пользу это может принести.

    habr.com/ru/companies/pvs-stud

    #паттерны #паттерн #стратегия #итератор #шаблонный_метод #ооп #проектирование #java #архитектура_приложений #программирование

  29. Применение ООП на практике

    Чаще всего задачу можно решить интуитивно понятным процедурным способом. Однако самый простой вариант не всегда самый лучший. Предлагаю посмотреть на примере реальной задачи, как можно сделать решение объектно-ориентированным, и какую пользу это может принести.

    habr.com/ru/companies/pvs-stud

    #паттерны #паттерн #стратегия #итератор #шаблонный_метод #ооп #проектирование #java #архитектура_приложений #программирование