Какие книги/видео/курсы для изучения продвинутого ООП вы бы посоветовали Ruby-программисту? Я - рельсовик-джуниор. Недавно мои рабочие обязанности начали дрейфовать в сторону чистого руби, и передо мной встала в полный рост проблема говнокода, генерируемого мной в те моменты, когда я отдаляюсь от успокаивающих рельсовых шаблонов. Я хорошо разбираюсь в базовом ООП, отличаю наследование от полиморфизма и даже знаю, что такое Eigenclass. Однако, когда разговор заходит о концепциях вроде dependency injection или inversion of control, или о паттернах программирования, я впадаю в ступор. Сейчас я читаю "Practical Object-Oriented Design in Ruby". Товарищи, можете что-нибудь еще посоветовать на эту тему? Не обязательно на примере Ruby - я вполне нормально понимаю, например, Java/C#. Не обязательно на русском - английский я читаю. Но очень желательно, чтобы это было читаемым и с практическими примерами - а то после закрытия, скажем, Gang of Four у меня все знания улетучиваются минут через пять =-( На всякий случай переформулирую. Базовое понимание ООП у меня есть, и святой триадой я пользуюсь регулярно. Мне нужны именно концепции уровня повыше - "предложения", складывающиеся из "слов" классов-объектов-интерфейсов-наследований-композиции. Заранее спасибо, товарищи! =-)
"Design Patterns: Elements of Reusable Object-Oriented Software" by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides - это классическая книга о паттернах проектирования, которая поможет вам понять, как применять различные шаблоны для улучшения структуры вашего кода.
"Clean Code: A Handbook of Agile Software Craftsmanship" by Robert C. Martin - эта книга поможет вам научиться писать чистый и поддерживаемый код, что особенно важно при работе с объектно-ориентированным программированием.
"Dependency Injection Principles, Practices, and Patterns" by Steven van Deursen and Mark Seemann - эта книга рассказывает о принципах внедрения зависимостей, что поможет вам лучше понять этот важный концепт в объектно-ориентированном программировании.
Курс "Advanced Object Oriented Programming Concepts" на платформе Udemy - это курс, который погружается в более сложные концепции ООП и поможет вам углубить свои знания.
"Refactoring: Improving the Design of Existing Code" by Martin Fowler - книга о рефакторинге, которая поможет вам научиться улучшать структуру существующего кода и избегать говнокода.
Надеюсь, эти рекомендации помогут вам улучшить ваши знания в области продвинутого объектно-ориентированного программирования. Удачи!
"Design Patterns: Elements of Reusable Object-Oriented Software" by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides - это классическая книга о паттернах проектирования, которая поможет вам понять, как применять различные шаблоны для улучшения структуры вашего кода.
"Clean Code: A Handbook of Agile Software Craftsmanship" by Robert C. Martin - эта книга поможет вам научиться писать чистый и поддерживаемый код, что особенно важно при работе с объектно-ориентированным программированием.
"Dependency Injection Principles, Practices, and Patterns" by Steven van Deursen and Mark Seemann - эта книга рассказывает о принципах внедрения зависимостей, что поможет вам лучше понять этот важный концепт в объектно-ориентированном программировании.
Курс "Advanced Object Oriented Programming Concepts" на платформе Udemy - это курс, который погружается в более сложные концепции ООП и поможет вам углубить свои знания.
"Refactoring: Improving the Design of Existing Code" by Martin Fowler - книга о рефакторинге, которая поможет вам научиться улучшать структуру существующего кода и избегать говнокода.
Надеюсь, эти рекомендации помогут вам улучшить ваши знания в области продвинутого объектно-ориентированного программирования. Удачи!