LINUX.ORG.RU
ФорумTalks

Проектирование программ


0

0

Привет всем! :-)
Как многие, возможно уже в курсе, я не учился программированию в ВУЗе. Но я люблю программировать, это мое хобби. Так как я не учился этому профессионально, я, возможно, могу не знать многих тонкостей сего дела.
Сейчас передо мной встал вопрос о проектировании приложений. Раньше мне хватало моей головы, чтобы представить себе программу и сразу же начать ее писать. Теперь с увеличением сложности моих программ, а также из-за желания некоторых людей присоединиться к разработке, пришел к проектированию.

В общем, посоветуйте литературу по проектированию приложений. Всем заранее спасибо! :-)

★★★★★

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

берем что понравится

имхо как введение - лучше всего, и приятно

namezys ★★★★
()

Присоединяюсь к вопросу ТС.

ShTH
()

про антипаттерны в вики почитай

VladimirMalyk ★★★★★
()

Можно еще про Mind Maps глянуть. Это ДО проектирования, когда надо объять задачу разумом и набросать черновик какие фичи вообще нужны.

Я вот этим пользуюсь http://www.xmind.net/

Для архитектурного дизайна есть UML. Какие там нынче методики модные ХЗ.

Книжки - фик знает. Макконела Code Complete уже упоминали. У дядьки вообще вагон интересных книжек. С более менеджерским уклоном - Rapid Development.

Vit ★★★★★
()
Ответ на: комментарий от maxim2

Копипащу из джаббера:

Хорошая книга Кента Бека по Extreme Programming

Кент Бек --- это круто, но это про оптимизацию процесса разработки, а не про проектирование. Он пишет про то, как надо взаимодействовать с постановщиками задач и про общение внутри команды разработчиков.

По сабжу --- про само проектирование почитай Э. Гамма, Р. Хелм и др.: Приёмы объектно-ориентированного программирования. Паттерны проектирования. --- СПб. Питер, 2004. — 366 с.

fedyan
()

Структурное проектирование надежных программ встроенных ЭВМ / А. А. Штрик, Осовецкий Л.Г., Мессих И.Г. - Л. : Машиностроение. Ленингр.отд-ние, 1989.

Чудная книжка. Я по ней написал несколько курсовых по экономике и половину диплома по специальности «финансы и кредит».

abraziv_whiskey ★★★★★
()

> Как многие, возможно уже в курсе, я не учился программированию в ВУЗе. Но я люблю программировать, это мое хобби. Так как я не учился этому профессионально, я, возможно, могу не знать многих тонкостей сего дела.

В наших ВУЗах профессионально программировать и не учат. ВУЗ дает необходимый минимум знаний для работы по этой специальности: дискретная математика, теория автоматов и т.п. Дальше, имея необходимую базу, необходимо развиваться самостоятельно. После учебы человек приходит на позицию junior'а и под присмотром опытных коллег из него выколачивается вся дурь. ;-)
Могу посоветовать следующую литературу (список получился с уклоном в сторону ООП):
С. Макконнелл - Совершенный код (как уже ответили выше)
Г. Буч - Объектно-ориентированный анализ и проектирование
Ну и GoF конечно же:
Э. Гамма, Р. Хелм, Р. Джонсон, Д. Влиссидес - Приемы объектно-ориентированного проектирования

m0rph ★★★★★
()
Ответ на: комментарий от m0rph

>Ну и GoF конечно же:

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

volh ★★
()
Ответ на: комментарий от volh

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

VladimirMalyk ★★★★★
()

>пришел к проектированию.

Если освоишь вышеназванные книги, то станешь «Программистом», а если выучишь всего_один_ГОСТ http://www.csrs.ru/gost/19_102_77.htm , то станешь «Большим_Начальником» :)

quickquest ★★★★★
()
Ответ на: комментарий от volh

впрочем, я неосилятор, и половина этих паттернов для руби не имеет смысла..

volh ★★
()
Ответ на: комментарий от m0rph

> В наших ВУЗах профессионально программировать и не учат.

Я бы четвертовал всех, кто навязывает мнение, будто в ВУЗе должны учить языкам программирования.
Программирование != использование языка программирования.

Terrens
()
Ответ на: комментарий от volh

> Мне казалось, что если человек хочет научиться поектированию, он должен научиться думать сам. А эти шаблоны проектирования в основном лишены процесса думания.

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

m0rph ★★★★★
()
Ответ на: комментарий от volh

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

Как у стругацких подмечено: ученый обретет покой только тогда, когда ему на каждое явление будет повешен ярлычок. Сказал «гравиконцентрат» — и все ясно, все хорошо.

shimon ★★★★★
()
Ответ на: комментарий от Miguel

? Вы с дуба упали, простите. Назовите хоть один паттерн проектирования, который привязан к языку.

По теме:
Бери всё что есть в теме и имеет в названии слова «паттерн» и «проектирование». Это то что нужно.
Зачастую паттерны это абстрактные понятия, которые в книгах стараются не показывать на примере языков чтобы не делать из читателя слишком тупого болванчика.
Поняв, скажем, паттерн MVC, можно самому ему найти применение и по своему его реализовать(к примеру в джанго разработчики его интерпритировали как MVT).

tia
()
Ответ на: комментарий от Miguel

Паттерны, сцуко, слишком привязаны к языку реализации.

А ничего, что банда четырёх написала книгу классических образцов с использованием по крайней мере трёх языков программирования?

iZEN ★★★★★
()
Ответ на: комментарий от tia

Вы с дуба упали, простите. Назовите хоть один паттерн проектирования, который привязан к языку.

Команда, Визитор, да практически все. Даже в Смолтоке часть паттернов GoF не имеют смысла; в Хаскеле смысл теряют почти все.

Miguel ★★★★★
()
Ответ на: комментарий от iZEN

А ничего, что банда четырёх написала книгу классических образцов с использованием по крайней мере трёх языков программирования?

С++ и Смолток они явно считают почти одинаковыми (что, вообще-то, не так) и одинаково на них пишут. Какой там третий, я уже не помню?

Miguel ★★★★★
()
Ответ на: Эй, специалисты! от question4

Замечательная книга. Перечитываю уже в который раз с удовольствием

boombick ★★★★★
()
Ответ на: комментарий от Miguel

Это чушь :) Просто не надо плоско мыслить, дабы не привязывать паттерны к ЯП. И вообще, паттерны - не панацея.

boombick ★★★★★
()
Ответ на: комментарий от Miguel

> Паттерны, сцуко, слишком привязаны к языку реализации.

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

m0rph ★★★★★
()
Ответ на: комментарий от boombick

Просто не надо плоско мыслить, дабы не привязывать паттерны к ЯП.

Просто не надо мыслить шаблонами.

Miguel ★★★★★
()
Ответ на: комментарий от suzuki

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

boombick ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.