LINUX.ORG.RU

Как учиться программированию?

 


9

4

Где и как научиться программированию, а не только синтаксису? Вернее, чтобы вообще не стоял вопрос об ЯП. Есть ли признанные книги, курсы? Может есть варианты решения: изучаешь программирование через изучение синтаксиса или наоборот?

Посоветуйте пожалуйста для уровня нуба.

К примеру вот навскидку, что-то из подобного подойдёт?

1. https://www.intuit.ru/studies/courses/3533/775/info

2. https://www.intuit.ru/studies/courses/2193/67/info

3. https://www.intuit.ru/studies/courses/11876/1156/info

Буду благодарен за советы.

P.S. Это не толксы, не нужно тут чсв показывать.

Ответ на: комментарий от alexferman

Ну опять же, это как бы основы. Мне бы понять, как учиться «профессия программиста». Как работать. Или наоборот, чего не нужно делать. Чтобы не задалбывать окружающих вопросами типа: «А что мне делать дальше?»

le_legioner ★★ ()

Джеймс Андерсон, Дискретная математика и комбинаторика.
Это способ думать и описывать явления, которые станут программами.
Потом «Структура и интерпретация компьютерных программ».
Потом алгоритмы.
Этому учиться можно всю жизнь, а можно Hellow World! написать, понять, что это всё ерунда и забыть.

TomBOY ()
Ответ на: комментарий от le_legioner

Мне бы понять, как учиться «профессия программиста»

Выучить один ЯП

Или наоборот, чего не нужно делать.

Не нужно задавать подобных философских вопросов, а просто кодить на понравившемся ЯП

Чтобы не задалбывать окружающих вопросами типа: «А что мне делать дальше?»

Вот тут совсем не понятно. Если хочешь устроится в контору программистом, то анализируешь вакансии и смотришь, что ты должен знать/уметь, чего требует рынок и подгоняешь свои скиллзы.

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

Не нужно задавать подобных философских вопросов, а просто кодить на понравившемся ЯП

Ну имхо несколько спорно. Если просто сесть и кодить на языке, не вдаваясь в вопросы «а как?», можно в какой-то момент увидеть вокруг себя кучу велосипедов, ни у одного из которых нет круглых колёс. По-моему знание «теории» КС не менее важно. А чуваками, которые выучили синтаксис какого-нить пхп и в душе не гребут, чем очередь от стека отличается и так уже всё забито 🙄

Reineke ()

Моё имхо следующее.

Просись в проект. Тут топик есть про работу за еду например. Интерном можно напроситься почти везде, если есть образование и, особенно, если оно релевантное, кто же откажется от бесплатного раба для грязной работы. 90% это проблем солвинг а не то как сиё решение записать, и ещё 10% это тестирование и отладка.

Если хочется курсы, проходи курсы по алгоритмам, сетям, архитектуре эвм и криптографии, а не как закодить мвц на чистом джаваскрипт. На степике был неплохой курс по алгоритмам. И крайне не плохой(для новичка) по плюсам оба два от csc.

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

pon4ik ★★★★★ ()
Ответ на: комментарий от no-such-file

Если следовать определению в википедии, со ссылкой на «Британику»

Матема́тика (др.-греч. μᾰθημᾰτικά[1] < μάθημα «изучение; наука») — наука о структурах, порядке и отношениях, исторически сложившаяся на основе операций подсчёта, измерения и описания формы объектов[2].

То к математике можно относить физику, философию и натурфилософию, и в то же время(если иметь в виду объекты реальные, или имеющие реальные прототипы в природе), к ней мы не можем отнести неевклидову геометрию, к примеру(типа Лобачевского). К тому же ни слова о логике, которая изучает высказывания, безотносительно объектов и их природы

Едва ли может существовать что-то, к примеру «математика», что не имеет никакого четкого определения

newlin2019 ()

Для начала, без базы в виде ЯП и алгоритмов не обойтись.

А потом, идёшь от задач. Анализируешь, понимаешь, что твой ЯП для решения не подходит, изучаешь тот, который подходит. Так, опыт и приходит (ну или, проходит).

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

А ты можешь? Покажи. Назови четкие критериии математической дисциплины. В науке, кроме того, для отрасли должна быть какая-то общая идея. Какова общая идея математики?

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

Матема́тика (др.-греч. μᾰθημᾰτικά[1] < μάθημα «изучение; наука») — наука о структурах, порядке и отношениях, исторически сложившаяся на основе операций подсчёта, измерения и описания формы объектов[2].

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

то есть нет никакой общей идеи, как я и сказал.

Простой пример: матлогика не попадает в это определение. Неевклидова геометрия тоже.

Кстати, любопытно то, что математика означала у греков первоначально астрологию, а такие дисциплины, как геометрия(наука измерения земли), похоже не входила в математику никаким боком

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

Всегда думал, что логика это именно про порядок и отношения. Надо жи.

А в чём проблема с попаданием геометрии Лобачевского под приведённое определение математики?

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

Всегда думал, что логика это именно про порядок и отношения. Надо жи.

Порядок и отношение есть везде. В стихотворных ритмах они даже очевидней. Но это не значит что стихи = логика

А в чём проблема с попаданием геометрии Лобачевского под приведённое определение математики?

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

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

Порядок и отношение есть везде

Не уверен насчёт, например, содержимого твоей головы.

Но это не значит что стихи = логика

Да не, в стихах тоже есть своя логика, как и в литературе, и в искусстве вообще.

наука о структурах, порядке и отношениях, исторически сложившаяся на основе операций подсчёта, измерения и описания формы объектов

в определении утверждается об опыте

Тебе не говорили, что ты шизик?

Это шизофренически-мыслимое, но не реальное пространство

Геометрия Лобачевского используется в СТО.

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

Да не, в стихах тоже есть своя логика, как и в литературе, и в искусстве вообще.

Не путай бытовой смысл с научным. В общенаучном смысле логика — это наука о мышлении

Тебе не говорили, что ты шизик?

Нет, это у тебя большие проблемы с обобщениями. Ум неспособный подняться выше буквы. «история» — это запомненный опыт. Исторически-сложившееся не может быть вне опытной сферы

Геометрия Лобачевского используется в СТО.

Хоть в ТЫЩЕ

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

Не путай бытовой смысл с научным

Литература, искусствоведение это тоже науки. Гуманитарные.

«история» — это запомненный опыт. Исторически-сложившееся не может быть вне опытной сферы

Ага, точно. А родившийся в Англии не может говорить по-русски.

Ты не шизик, ты просто тупой.

alexferman ()

Сейчас каждый набежит и бросится написывать ту методику, которая наиболее подошла и помогла именно ему.

В обучении всё индивидуально, если ты о качестве, а не корочке. Перебирай до того, пока не зайдёт.

burato ()
Ответ на: комментарий от alexferman

Ага, точно. А родившийся в Англии не может говорить по-русски.

Ты никогда не слышал иностранную речь? Некоторые даже украинсую слыхивали

тупой

это тот, кто даже не понимает значения слова «опыт»

newlin2019 ()

Как научиться чему-либо?

  • Идти сверху вниз(если на конкретном примере вызывает затруднения - поменять направление на обратное)
  • Не искать «тайных знаний» и других серебрянных пуль, обещающих за несколько дней сделать из тебя специалиста

Короче, осваиваешь теорию, берешь себе посильную задачу и решаешь. Повторять до готовности

dllmain ()
Ответ на: комментарий от Reineke

Если просто сесть и кодить на языке, не вдаваясь в вопросы «а как?»

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

чем очередь от стека отличается

А пыховцам и не нужно это знать. Они бабки зарабатывают и без этих знаний. Казалось бы, парадокс.

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

У тебя что ни сообщение, так истеричные визги какие-то

Где? Это твоё восприятие.

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

WitcherGeralt ★★ ()

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

enso ★★★★ ()

Я перечислю что не нужно делать: учить алгоритмы типа пузырьковой сортировки, изучать графы, красно-черные деревья, читать все 4 тома Кнута, качать книги по дискретной математике, булевой алгебре и т.п., слушать тех, кто говорит что все это нужно, не нужны платные курсы, знакомый так отдал 130К за онлайн-обучение... Математика дальше 6 класса для 95% задач в программировании не нужна, все алгоритмы реализованы в самом языке либо в стандартных либах. Один идиот утверждал что SQL НЕВОЗМОЖНО ИЗУЧИТЬ БЕЗ РЕЛЯЦИОННОЙ АЛГЕБРЫ. Все неверно и чисто субъективно. Ставь питон и начинай писать сначала в процедурном стиле потом в ООП втягивайся. Что нужно знать? Ну, пожалуй, иметь представление про паттерны программирования. И да в бизнесе ценится только то насколько ты быстро решаешь задачу, а не качество твоего кода. Стандартная разработка - это поставить кучу либ и слепить из говна и палок сайт на коленке, а потом приделывать костыли.

tz4678 ()
Ответ на: комментарий от WitcherGeralt

Где?

Тут на форуме.

Я просто не проходу мимо идиотов, которы енесут херню

Т.е. работа программиста заключается не в написании программ? Может тогда поведаешь секрет, в чём она заключается?

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

У тебя что ни сообщение

Покажи хотя бы три, если тебе верить, найти будет не сложно.

Т.е. работа программиста заключается не в написании программ?

Т.е. говнокодить можно десятилетиями и так ничему не научиться. И это был не единственный твой совет. Не знаю следовал ли сам своим советам, но пока они даже простые тестовики тебе разобрать не помогли.

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

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

Т.е. говнокодить можно десятилетиями и так ничему не научиться

Программирование это создание программ, разработка ПО. А вот что скрывается под словом «говнокодить» - одному тебе известно. Ну то есть, у каждого иксперда будет своё мнение, что такое быдлокод. И если ТС будет всерьёз слушать ценное мнение каждого истеричного иксперда, он уж точно ничему не научится, и скорее всего, забросит программирование.

Так что прости за оскорбление твоих чувств, но херню тут порю точно не я.

alexferman ()

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

anonymous ()