Вопрос Вопрос программистам. Умение решать задачи.

Регистрация
15 Июн 2013
Сообщения
67
Репутация
0
Спасибо
1
Монет
0
Изучаю язык. Допустим, в учебнике или курсе есть задача, не важно какая, её нужно реализовать в коде. Вот я разбил её на несколько маленьких, может даже написал какие-то отдельные паттерны, а вместе их все соединить не получается.
Наверно, каждый начинающий программист с этим сталкивался. Можно конечно посмотреть готовые решения таких задач, но это не даст понимания и совершенно не запомнится. Или главное не стопориться, подсмотреть готовый ответ, а потом само как-нибудь приложится? Прошу вашего совета, сеньоры, и джуниоры)
 
Паттерны? Сколько лет работаю - ни одного готового не знаю Не с того края подходишь к задаче. Никаких готовых решений заучивать не надо. Задача разбивается не на "паттерны", а на собственные подзадачи, всегда разные
 
Изучай похожие алгоритмы и хорошо высыпайся. Поверь, мозг в конце концов даст ответ .
 
Поясню общее недоумение, выраженное в ответах: у программистов, подобных проблем не возникает - так как подзадачи едины с задачей (одна и та же сущность в разном масштабе, при разном "зуме"), и взаимосвязи логических компонентов формируются естественным путем при topdown-проектировании. Проще говоря, не приходится об этих взаимосвязях думать, ведь они уже есть - натурально сформированы сами собой. Наличие проблемы показывает ошибку в подходе к проектированию (или даже полное отсутствие осмысленного подхода). То есть, деятельность "непрограммистская", и от этого беда. Пофиксишь это - пофиксишь проблему, как следствие. ‎ Для понимания сути, приведу аналогию из другой области: если начать рисовать портрет с черт лица, каждая из них будет "сама по себе" и неизбежно возникнет искажение пропорций из-за отсутствия связности - а если сначала наметить общую форму головы с планами (плоскостями) и уровнями расположения черт, двигаясь от больших деталей к малым, то все будет ок. В программинге то же самое: сначала общее, затем частное. Подход "нафигачить утилити кода и сшивать его", не программерский - это быдлкодингом попахивает, сорри. Переиспользование кода достигается иначе, а именно либо подключаемыми модулями (зависимостями), либо сниппетами... из-за их малой отвественности, они просто не могут быть первичными сущностями в разработке. Первична всегда архитектура решения, общая логика, каркас.
 
Не очень понял, каким образом ты смог их разбить на подзадачи, если потом собрать не можешь.
 
Будто математику все с нуля изобретают)) В школе и вузе нам тоже дают кучу готовых решений и формул, на которых построена вся учеба. Другое дело, что все по разному воспринимают поданный материал... Не вижу ничего страшного, чтобы подсматривать чужие решения и учиться на них. P.s. а какая задача была?))
 
Назад
Сверху