Рекомендация книги OOAD:от теории к практике [закрыто]

StackOverflow https://stackoverflow.com/questions/2162231

  •  23-09-2019
  •  | 
  •  

Вопрос

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

У меня есть куча книг

  1. Шаблоны проектирования от GoF
  2. Антипаттерны Браун и др.
  3. Рефакторинг Фаулера
  4. Код завершен 2

Возможно, это очень хорошие книги, но они не учат вас проектировать приложения.Меня часто парализует принятие каких-то очень элементарных решений (пример).Я ищу книгу, которая учит, когда и почему.Есть много книг о молотках и гвоздях, но мне еще предстоит найти книгу, которая рассказала бы вам что-нибудь об их практическом взаимодействии.

Какая книга помогла вам стать уверенным в себе объектно-ориентированным архитектором/дизайнером?

Это было полезно?

Решение

Лучшая книга, которую я когда -либо читал о Оо, - это Бертран Мейер Объектно -ориентированная построение программного обеспечения.

Это огромно, но это было очень полезно для меня. Он охватывает каждый аспект OO Design Imvho.

Другие советы

  1. "Объектно-ориентированная конструкция программного обеспечения"Бертран Мейер

Самая фундаментальная работа о объектно-ориентации когда-либо опубликована. Это абсолютно должна иметь книгу для каждого «объектно-ориентированного» программка.

2. "Объектно-ориентированный анализ и дизайн с приложениями"Грэди Буч и др.

Не так формально, как книга Мейера, но эта книга может открыть глаза на многие вопросы в объектно-ориентированном мире и в разработке программного обеспечения в целом

3. "Образец дизайна: элементы многоразового объектно-ориентированного программного обеспечения"Эрих Гамма и соавт.

Это знаменитая книга «Банда четырех» о дизайне

4. "Рефакторинг: улучшение дизайна существующего кода"Мартин Фаулер и соавт.

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

5. "Думая на Java"Брюс Экель

Эта книга может помочь многим новичкам не только на языке Java, но и в объектно-ориентированном образе мышления.

6. "Прикосновение класса: научиться хорошо программировать с объектами и контрактами"Бертран Мейер

Отличный учебник от знаменитого автора.

Я полностью понимаю вашу ситуацию. Также владеют тремя из этих книг;) Я бы предложил главу первого издания. Объектно-ориентированный анализ и дизайн. Это приведет вас на правильных треках. Книга GOF отличная, но бесполезно, пока вы не получите основы в своей голове, и первая книга по уходу позаботится об этом. Ваше здоровье :)

На самом деле осуществление программирования - большая помощь, чем чтение о разработке программирования.

«Парализованный некоторыми очень основными решениями» является симптомом более глубокой проблемы-чрезмерного инженера. Пока вы не построите много вещей, вы не знаете, какие решения имеют значение, а какие не имеют значения.

Лучший способ получить необходимый опыт - построить много вещей.

Код Ката очень, очень важен. http://slott-softwarearchitect.blogspot.com/search/label/code-kata

Кроме того, я собрал кучу кода kata, который я использовал в один большой проект. http://homepage.mac.com/s_lott/books/oodesign.html

Роберт С.Мартин «Гибкая разработка программного обеспечения:Принципы, шаблоны и практики», объясняющий принципы объектно-ориентированного подхода.

Эрик Эванс:«Дизайн, управляемый предметной областью» посвящен тому, как создать хороший дизайн, соответствующий вашей бизнес-задаче.

Мартин Фаулер:«Шаблоны архитектуры корпоративных приложений»: основные принципы архитектуры предприятия.

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

Крейг Ларман Применение UML и узоров Многие суммировали о том, что я узнал из опыта. Что мне нравится в этом, так это то, что он рассматривает все аспекты дизайна программного обеспечения, что включает в себя такие вещи, как итеративный дизайн и разработка. Не смотрите слишком усердно на использование UML: описания дизайна являются средством для конца, и я нашел подход Лармана довольно прагматичным. Вы не можете просто кодировать: вы должны сообщить о своих намерениях (и понять, что нужно). UML и чисто разработанный, хорошо прокомментированный код являются одними из средств для этой цели.

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

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

Несмотря на то, что я склонялся к Rational, я обнаружил, что эти двое предложили много понимания дизайна OO.

  • Применение UML и узоров - Крейг Ларман
  • UML 2 и Unified Process: Практический объектно -ориентированный анализ и дизайн - Jim Arllow & Ila Neustadt
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top