Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Информация по технике программирования  (Прочитано 8445 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Gor
Постоялец

ru
Offline Offline

« : 21-08-2012 06:34 » 

Я начинающий программист. За вопрос не судите строго, возможно глуповатый. Овладел самыми азами C# и XAML. Может кто-нибудь посоветует толковую (для начинающих) книгу, главу из како-то книги (или ссылку) по технике программирования. Не книгу по C# или XAML где описываются их возможности, структура и т.д., а именно техника программирования. Возможно это что-то ближе к алгоритмам. Азы более менее знаю, а как ими правильно воспользоваться пока проблема...
Спасибо.
« Последнее редактирование: 21-08-2012 06:36 от Gor » Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 21-08-2012 09:37 » 

Т.е. нужна книжка, в которой разобран пример построения приложения от и до со всеми ньюансами. Да ещё и с ориентацией на .NET и WPF.

Не знаю даже...
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Gor
Постоялец

ru
Offline Offline

« Ответ #2 : 21-08-2012 12:18 » 

Ну, может не такая шикарная. Но что-нибудь в этом духе.
Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #3 : 22-08-2012 09:45 » 

С учётом

Я начинающий программист.

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

А так это наводит на мысль о книге типа "как стать профессиональным программистом за 21 день".
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Gor
Постоялец

ru
Offline Offline

« Ответ #4 : 24-08-2012 18:09 » 

Ну, господа, вы философы.
Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 24-08-2012 18:57 » 

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

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Gor
Постоялец

ru
Offline Offline

« Ответ #6 : 25-08-2012 09:14 » 

Я, к примеру, таким способом как ты хочешь, программированию не учился.

А как, на твой взгляд, правильней учиться? Опиши, пожалуйста, "костяк", схему такого обучения. На чем сделать акцент? Допустим, я изучил алгоримты ("широко" говоря), обобщил частные случаи (еще "шире" говоря). Но как реализовать их на практике, ведь встает вопрос техники программирования, даже элементарной (например, перенос информации из одного окна в другое и т.д. и т.п.). Ясно, что-то можно взять из MSDN, что-то из книг. Чем больше узнаёшь со временем, тем быстрее учишься. Но, вот как бы сделать более интенсивным этот процесс на начальном этапе. Стать профессионалом за 21 день конечно нельзя, но...

P.S. Надеюсь понятно и не слишком забавно изложил вопрос.
« Последнее редактирование: 25-08-2012 09:32 от Gor » Записан
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #7 : 25-08-2012 11:34 » 

Gor, "костяк" - это вдумчивая практика. Ты пишешь программу, потому что тебе нравится это делать, создавать какие-нибудь вещи; видишь, что твоя программа работает не так, как хочется, или тебе не нравится, как она устроена, и это приводит к желанию изучить вопрос: как же сделать лучше или даже просто сделать то, что хочется. Когда ты узнаешь, как сделать, ты сравниваешь со своей программой, смотришь, какие переделки нужны, и задумываешься о том, как в будущем сразу писать правильнее, почему так, а не иначе.

Так помаленьку шаг за шагом совершенствуешься. Была бы мотивация.

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

Как быстро стать профессионалом... По-моему никак. Профессионал - это не столько знания, сколько опыт.

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

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

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

Если смотрел остросюжетный фильм "Неуправляемый" (Unstoppable) про железнодорожников: вот там старый машинист - типичный профессионал. И он по ходу дела комментирует все ошибки своего неопытного кондуктора. Что только глубокое знание трассы, матчасти, динамики состава позволяет решить проблему.

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

Максимально ускорить обучение можно только одним способом. Фигурально выражаясь: бросить в воду не умеющего плавать - захочешь жить, так выплывешь. Но это огромный стресс, зона полного дискомфорта. Да и мотивировать нечем: вот если бы за провал проекта расстреливали... То в живых остались бы самые способные к быстрому обучению.

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

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Gor
Постоялец

ru
Offline Offline

« Ответ #8 : 26-08-2012 12:39 » new

Принято.
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines