Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Какая у Вас система обучения???


Автор: ALexALed 5.4.2010, 10:04
Хотелось бы узнать как Вы обучаетесь новой технологии, допустим в таком порядке:
1. Ищу лучшую литературу
2. Читаю ее и выполняю примеры в ней
3. Пишу собственные приложения на основе прочитанного

либо так:

1. Читаю краткий обзор технологии
2. Особенности "добываю" на форумах / интернете по мере необходимости во время написания программы

какая система у Вас?????


P.S. Мне ближе первая система, ее и использую smile

Автор: AntonSaburov 5.4.2010, 12:23
За 1-й вариант.

Автор: _Y_ 5.4.2010, 12:40
Если что-то очень новое, новый язык например, по принципу трех книг:
  • Беру три книги, каждая из которых обещает научить с нуля.
  • Читаю первую. Где-то после 25% ничего не понимаю и поэтому бросаю.
  • Вторую прочитываю где-то процентов на 50-70%. Тоже ничего не понимаю и бросаю.
  • Читаю третью и не понимаю, что же было непонятного в первых двух smile
При этом полледовательность книг совершенно не важна, главное чтобы разные и разных авторов. 

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

Упражнения делаю очень редко.

Автор: AntonSaburov 5.4.2010, 19:03
Цитата(_Y_ @  5.4.2010,  12:40 Найти цитируемый пост)
Упражнения делаю очень редко.

IMHO - плохо. Без написания кода самому все очень слабо запоминается. И не возникает глупых вопросов. И нет попыток что-то поломать и посмотреть реакцию. Самому надо писать обязательно. Обретаешь уверенность.

Автор: batigoal 5.4.2010, 22:01
Комбинированный вариант.

1. Ищу лучшую литературу
2. Читаю ее и начинаю писать свое приложение на основе примеров из мануала.
3. Вопросы, неизбежно возникающие в процессе, гуглю.

Автор: neic 5.4.2010, 22:05
Я читаю книгу до управляющих структур и начинаю кодить.

После того как во всем разобрался пытаюсь делать, то чего в книге не написано (например сейчас пытаюсь передать глобальную переменную из одной формы в другую).

Потом пытаюсь работать с объектами (к сожалению в моей книге нет достаточного описания как работать с объектами). поэтому либо методом тыка (он кстати у меня работает, т.к. это мой не первый язык, и в принципе где-то что-то ориентируюсь). Если вообще не понятно, то читаю про объекты в нете.

Потом разбираюсь как работать с файлами (чтение книги и/или чтение в нете).

Ну и дальше клиент-сервер, БД и многопоточность (чисто теория и простые примеры).

Потом ставлю себе какой-нить большой проект (так чтобы он затронул все моменты) и делаю его.

Ну все это конечно руками запоминается (т.е. написание кодов)

Автор: _Y_ 6.4.2010, 19:55
Цитата(AntonSaburov @ 5.4.2010,  19:03)
Цитата(_Y_ @  5.4.2010,  12:40 Найти цитируемый пост)
Упражнения делаю очень редко.

IMHO - плохо. Без написания кода самому все очень слабо запоминается.

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

А запоминается у меня по любому слабо. Я и не пытаюсь запомнить. Я стараюсь понять принципы.

Автор: _sten_ 6.4.2010, 20:42
как по мне упражнения нужно делать, и как можно позаковырестей, тогда очень интересные нюансы свплывают... какие обычно и спрашивают на собеседованиях

Автор: yar 7.4.2010, 16:34
Всё это безотносительно к конкретному языку, фреймворку, методу или платформе.
При обучении новой технологии, подходу или языку для меня важно сперва выяснить к какой области знаний оно относится. Для этого сначала я читаю общее определение или описание (чаще всего - в Википедии).
Далее, если это оказывается частным области знания, принципы которой я уже знаю, то перехожу непосредственно к документации и примерам. Зачастую этого хватает.
Если же для меня это -- новое, то я постепенно поднимаюсь вверх до абстракции, с которой знаком (Например, если это Scala, то я поднимаюсь до ФП в общем, или до лямбда-исчисления; всё зависит от конкретной необходимости и наличия интереса\времени). Затем в обратном направлении, изучаю  фундаментальные принципы, провожу аналогии уже с известным, читаю книги, пишу примеры. Если область для меня не интересна, то ограничиваюсь только теми знаниями, которые нужны для решения задачи, а так же областью применимости и плюсами\минусами.

Также я считаю хорошим способом изучения чего-то нового следующий: берём 2 книги, первая -- это самоучитель "для чайников" с конкретной и практической информацией.  И вторая -- это какой-нибудь фундаментальный труд, больше теоретический. Вначале немного въезжаем во всё это по первой книге, делаем что там написано, а затем берём вторую, и уже "наводим мосты".

Самое главное -- это понимать принципы и находить общности, а остальное -- детали реализации ;).

Автор: ivanovpv 7.4.2010, 16:58
Я делаю так.
1) Ищу первоисточник. Ну например, когда учил C++ читал Страуструпа, Java - читал Гослинга. Тут даже дело не в их книгах, а в их интервью, мыслях - в общем цель впитать философию языка/тулзы
2) Выбираю инструмент (тщательно) - в случае языка это либо компилятор, либо IDE. Читаю форумы, пробую несколько вариантов. 
3) Пишу Hello World, с разными вариантами с небольшими усложнениями. 
4) Ставлю себе задачу - написать некую реальную программу, которая делает то-то и то-то
5) Как только начинаю писать сразу на свет божий начинают всплывать нужные книжки, мануалы и проч.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)