Рубрики
Без рубрики

4 способа изучения объектно-ориентированного дизайна

Оглядываясь за 2019 год, я понял, что у меня была привилегия работать на разнообразном наборе программного обеспечения Proje … Теги с дизайном, Java, Python, JavaScript.

Оглядываясь за 2019 год, я понял, что у меня была привилегия работать на разнообразном наборе программных проектов:

  • Проект архитектуры и кодирования преобразования предприятия и нагрузки (ETL) в Python и Django
  • Строительство платформы SFTP, используя AWS Lambda, Node и Вариант
  • Добавление основных функций и рефакторинга долгосрочного проекта Java предприятия

Просматривая эти проекты, одна общая вещь застряла до тех пор, почему эти проекты считались успехом, оно было связано с их объектно-ориентированным дизайном.

Ключевой особенностью каждого из этих проектов была свободная природа конкретных требований и насколько детали входов и поведения изменится, когда мы узнали больше о домене. Наличие хорошего дизайна сделала внесение изменений и тестирование ветеров. Например, разработав Трубопровод ETL для использования канонического, Изменение требований в проекте Python ETL, которое должно было предпринять в неделю для реализации, может быть сделано и проверено менее чем за день.

Это заставило меня думать о том, как я научил объектно-ориентированный дизайн. Некоторые из ответов очевидны, но другие меньше так. Я хочу поделиться этим подходами с вами.

1. Курсы

Мой самые ранние объектно-ориентированные дизайнерские тренинги были от принятия спонсируемого работодателя учебного курса с обучением Hott. Курс покрыл наиболее распространенным Банда из четырех шаблоны проектирования. Он продолжал научить, как организовать набор требований к компонентам и проанализировать их, чтобы увидеть, что могут использоваться шаблоны дизайна для создания приложения. Если честно, я не помню много из этого курса, так как у меня не было много возможностей использовать методы и узоры в моей повседневной работе.

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

2. Книги

Другим очевидным способом обучения объектно-ориентированным дизайном является из книг. Книги – это не только отличный способ учиться, но сделать отличный справочный материал, когда вы забыли детали и нужно напоминание. На мой взгляд, секрет использования книг – понять, как будет представлен материал и как вы учитесь. Книга канонических узоров дизайна является бандой из четырех книг, Шаблоны дизайна: элементы многоразового объектно-ориентированного программного обеспечения Отказ Однако это может быть жестким чтением, особенно для начинающих.

Взято из: https://martinfowler.com/bliki/GangOfFour.html

По моему опыту я нашел главную первые книги отличным местом, чтобы начать или освежить себя. Они разбиты на перевариваемых кусках с кодированием и мыслью в конце каждой секции. Вроде как Основные моменты для кодеров. Две отличные книги для начала

O’Reilly также публикует отличные книги по этому вопросу и часто преподает субъектами, создавая примеров приложения с концепциями.

3. Чтение и подражательный код

Одним из моих любимых методов изучения новых шаблонов дизайна копает исходный код моей любимой структуры и библиотек. Весенние рамки рассказали мне больше о дизайне, чем любой курс или книгу. Этот метод может быть труден для новичка, как некоторые рамки, такие как весна, сильно абстрагированы, и это может быть трудно понять, почему классы разбиты друг от друга.

Отличный способ начать нырять в абстрактную структуру, – это попытаться расширить часть рамки. Зачастую структуры настроены, чтобы позволить пользователям расширить интерфейсы и рефераты, чтобы изменить поведение конкретного компонента. Весенняя документация очень подробна и часто будет ходить по читателю через то, как и почему дизайн компонента.

” Большинство из нас находят свои собственные голоса только после того, как мы звучали как много других людей ». ― Нил Гайман

Другой способ – прочитать и продлить код вашей команды. Один из моих самых больших прыжков в понимании того, как создавать многоразовые компоненты читали и побудили код самых умных людей в моей команде. Увидев, как и почему код абстрагирован и задает им вопросы о коде, часто дают вам представление о другом образе мышления и проектирования.

4. Рефакторинг

Подняв задачу рефакторинга или рефакторируя свой собственный код, прежде чем совершить, – это отличный способ улучшить ваше понимание шаблонов дизайна. Когда вы читаете код, вы можете начать видеть, где код дублирован, запутанный или трудно проверить. Рефакторинг заставляет вас удалить себя из фактического кода и абстрактно подумать о том, как он вписывается в приложение. Задавать такие вопросы, как

  • Когда это повторно, как я могу проверить, это ведет себя так же?
  • Какие тесты отсутствуют в исходном коде?
  • Как я могу изменить код?
  • Как я могу устранить несколько или гнездо, если и петли?
  • Как я могу объединить два метода или классы?
  • Как я могу проверить определенную часть логику внутри длинного метода или функции с минимальным настроек?
  • Если я должен был поддержать этот код 3 года, что бы облегчить поддержку этот код?
  • Если требования должны были измениться или бизнес хотел изменить поведение, как я могу сделать его настраиваемым?

Вывод

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

Оригинал: “https://dev.to/ryboflavin42/4-ways-to-learn-object-oriented-design-4c1e”