Нужно ли изучать шаблоны проектирования? - PullRequest
5 голосов
/ 29 марта 2011

Я хочу научиться программировать с opengl (на самом деле я хочу узнать в будущем о графике, gpu и hpc), мой друг предложил мне прочитать книгу GoF (шаблоны проектирования), а после этого прочитать кое-что об Ogre3d или Qt.или Sdl, например ... Я спросил об этом, потому что я недавно прочитал книгу, и я хочу улучшить свои знания ... является ли шаблон проектирования требованием, а затем изучать opengl?

Ответы [ 7 ]

11 голосов
/ 29 марта 2011

Шаблоны проектирования не имеют ничего общего с графическим программированием. Это широко применяемые способы решения множества проблем, которые обычно возникают в программировании. Я должен отослать вас к этому очень хорошему вопросу здесь: Как вы знаете, когда использовать шаблоны проектирования? .

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

Начните с нескольких вступительных текстов, затем приобретите практический опыт (в графике, поскольку это ваша область выбора) и , затем прочитайте книгу GoF.

4 голосов
/ 29 марта 2011

Изучение шаблонов проектирования не является обязательным для вашей конкретной задачи программирования OpenGL, но изучение шаблонов проектирования чрезвычайно полезно для вас, если вы делаете карьеру в разработке программного обеспечения. Однако до тех пор, пока у вас не появятся хорошие базовые знания в объектно-ориентированном программировании, многие концепции GoF будут выходить из-под контроля.

2 голосов
/ 29 марта 2011

Чтение и понимание книги по шаблонам проектирования может быть очень полезным.

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

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

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

Интересным моментом является то, что большое количество программистов применяют общие шаблоны, не осознавая этого.

2 голосов
/ 29 марта 2011

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

Я не думаю, что полезно запоминать название каждого отдельного шаблона проектирования.Сегодня, если вы начнете разбрасываться терминологией, такой как «Шаблон команд», большинство людей будут сбиты с толку, некоторые подумают, что вы просто хвастаетесь, другие часами спорят с вами о том, что на самом деле является шаблоном команды, правильным или неправильным (частогде-то посередине).

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

2 голосов
/ 29 марта 2011

Лично я не видел значения, заложенного в шаблоны проектирования GoF, до тех пор, пока не запрограммировал достаточно долго, чтобы сам заметить многие из этих шаблонов. Увидев их в использовании, стало намного легче мотивировать, почему кто-то писал о них, и, кроме того, почему кто-то читал о них.

Если вы похожи на меня, то много ли поможет книга GoF, зависит от вашего опыта; Мне пришлось накопить достаточное количество опыта, прежде чем я нашел его ценным. В таком случае я думаю, что изучение большего количества языков и написание большего количества инструментов было бы более полезным начинанием.

Но убедитесь, что у вас есть время почитать это когда-нибудь в ближайшие два или три года; он хорошо написан, и люди делают часто просто делают неосторожные замечания "о, это просто", или "EventMachine - это реализация шаблона Reactor", и знание терминов может значительно сократить разговоры. 1009 *

2 голосов
/ 29 марта 2011

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

Однако, если вы хотите улучшить свои навыки разработчика программного обеспечения, я советую вам изучить их. Gang of Four - отличное место для старта.

1 голос
/ 29 марта 2011

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...