Это субъективно, кому как. Я ничего не учу. По мне так это бесполезно. С постоянной практикой само всё запоминается.
Знаете, программирование не такая лёгкая штука, в принципе. Даже самые ярые прогеры попросту не смогут запомнить всего. Хороших прогеров от плохих отличает одно - они знают, что нужно делать, и, если не помнят конкретного решения, знают, где его искать. По себе скажу, прогер из меня не лучший, я из начинающих. Но я верстальщик. С опытом и приличным знанием именно в вёрстке. Вот, например, взять тень: Код (Text): text-shadow: 1px 1px 2px black, 0 0 1em red; /* Параметры тени */ Я не пишу её вручную по памяти. В голове очень много мыслей, и запоминать такую информацию мне не надо. Но я знаю, где её найти. И мне быстрее зайти на нужный сайт и её скопировать, изменив на нужные мне данные. Думаю, сейчас в мою сторону посыпятся гневные крики аля а как же без интернета, ничего не найдёшь. Ответ мой прост: а я и не полагаюсь на интернет. Я знаю, в какой книжке, в какой главе мне эту информацию найти. Но это я привёл пример самой простоты. Если я захочу поднапрячь мозг на это - я вспомню эту тень и напишу. Но, мне жаль тратить на это умственный запас. А есть вещи куда более серьёзней, чем это. И сложнее. И ошибок где допустить можно в десяток раз больше. Зная и представляя, где эта информация лежит - всё можно написать. Я думаю меня многие поддержат. А глупая зубрёжка ни к чему хорошему, обычно, не приводит. Учили в школе интегралы, дискриминанты и тд? И по-любому учителя заставляли тригонометрические функции учить наизусть. Без подсказок сейчас вспомните? Уверен - нет. Но вот лично моя учительница сделала по-другому. Она не заставляла нас учить. Она просто разрешила сделать шпаргалки с этими функциями и пользоваться ими даже на контрольных. В итоге экзамены даже двоечники сдали на "хорошо". Просто ими пользовались. И я долго все функции помнил после школы. Сейчас да, подзабыл. И то потому, что попросту ими не пользуюсь. Не видел их со времён школы. В общем, сами думайте. Вы же человек, а у человека есть мозги. Добавлено спустя 1 минуту 39 секунд: А ещё, тут один человек мне как-то сказал: №Если хочешь выучить английский - начни на нём думать". Так же я могу сказать и тут: "Чтобы научиться писать - попытайтесь думать как компьютер и как ваш код выглядит с его стороны". Это не сложно.
присоединюсь к мистеру Коту (извиняюсь, но из-за авы окрестил именно так ) - нужно знать, где искать информацию, и понимать принцип работы.
Помнить всё время все функции и аргументы может помочь программа на подобии Anki, и IDE которая при наведении на функцию будет показывать выдержку из документации.
Программирование - это не в синтаксисе и справке. Это в образе мышления. Вот что прокачивать нужно. Именно уметь в логику. А функцию нужную нагуглить - вопрос одного запроса. сейчас приходится работать сразу с тремя похожими языками. Один из которых наполовину состоит из unix-like команд с тысячей флагов. Разумеется, я не зубрю их все. Достаточно знать, что вот то-то и то-то в языке есть. А найти потом не сложно.
Логика точно нужна! Ещё вот интересно, так ли уж все программисты пишут алгоритмы, как учат в школе? А может и на самом деле проще сначала алгоритм написать, а потом программу по нему делать? Про Anki почитаю, что за зверь.
Скорее всего вы имели в виду не алгоритмы, а блок-схемы. Да, многие пишут. Так проще. Правда не обязательно именно в том виде, как учили в школе. Может своим языком, может ещё как. Это несколько упрощает работу. Нельзя всё запомнить, особенно, если программа из тысяч классов. Какая-то интерпретация блок-схемы всё равно есть. Те же комментарии по коду - это некий вид блок-схемы, я бы сказал. Другой вид, но суть в принципе та же. Для небольших программ логику обычно держат в голове. Но, опять же, программист программисту рознь. А вот на начальном этапе я бы советовал рисовать блок-схемы постоянно. Это поможет элементарно самому понимать программу.
Да, я имею ввиду блок-схемы. Сама пишу наброски по шагам, но не в какой-то специальной программе (хотя установлена Dia), а просто в блокноте. В Dia получается дольше, пока блоки стрелочками свяжешь. Это для презентаций, наверное, больше подходит.
Я, при проектировании чего-то нового до сих пор начинаю с ручки и листка А4. Но это касается не самих алгоритмов, а именно архитектуры приложения/модуля. Именно алгоритмизация чего-либо как-то уже давно без таких вещей идет, просто думай, кодь, отлаживай, смотри что получилось. Сам кодинг - это ерунда. Главное и самое сложное - проектирование. Скажем так, любой неграмотный Дамшуд может класть кирпичи на стройке торгового центра. Но спроектировать этот торговый центр не сможет. Добавлено спустя 2 минуты 5 секунд: Вообще, рисовать и описывать нужно все, что разом не помещается в мыслительном потоке у тебя. Со временем помещаться будет все больше и больше, но если понимаешь, что не можешь что-то охватить разом и разложить по полочкам - рисуй. Не обязательно прям каноничные блок-схемы. Просто кружочки, стрелочки, свободные измышления, в удобной тебе форме. Если, глядя на этот рисунок, который, со стороны может вообще казаться хренью, тебе становится легче понять то, что делаешь - значит все идет правильно
Ну как сказать. Я то кавычки не закрою, то инструкции не разделю. )) Уже придумываю, как стать внимательнее. Правило написала для себя, что нужно каждую строку своего кода перечитать. ))
Чтобы не париться с кавычками, скобочками и прочими парными элементами, попросту сначала печатай их, а потом их содержимое. Нужно написать строку? Сначала ставь "", а потом вписывай "Какой-то текст". То же с () и [] и {} - их кнопки рядом находятся и буквально за одно движение жмакаются.
Это кажется. На деле тот же текстовый редактор, но в разы удобнее. Сразу по всем файликам проекта навигацию дает, не только синтаксис подсвечивает, но и автодополнение кода предоставляет. Подсвечивает ошибки синтаксиса а, иногда, и логики кода. Да, там может быть мильярд кнопок, но, покуда вы не понимаете, что это, они вам просто не нужны. Используйте IDE просто как умный блокнот. А там и до остальных фич со временем руки дотянутся.