Somebody Somewhere
январь 2019.
26945

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

Ответить
Ответить
Комментировать
4
Подписаться
13
15 ответов
Поделиться

Вы уже начали. В той или иной степени языки программирования окружают нас повсюду. Даже русский язык - это иногда язык программирования некоторых «исполнителей», от которых вам чего-то требуется.

«Разбираться в языках программирования» в целом — это значит понимать как записываются алгоритмы на языках разного рода, и как работают исполнители, понимающие эти языки. Это знание столь же лингвистические, сколько и техническое. (Очень хорошо заранее уже владеть английским, так как ключевые слова решительного большинства языков укоренены в английском.) Почитайте о том, какие бывают языки программирования, какие принципы и парадигмы они используют (процедурное, модульное, объектно-ориентированное, и т.д.).

Не менее одного языка в каждой «языковой семье» необходимо изучить более глубоко, чем просто поверхностно. Можно взять для начала понятные вещи. Например, браузер. С помощью языка разметки (это не совсем программирование, но в широком смысле — вполне) разместите на странице квадратики, а потом с помощью языка JavaScript (а вот это уже программирование в чистом виде) научите эти квадратики делать что-то осмысленное при нажатии клавиш и кликах мыши. Возможности браузеров чрезвычайно широки, в них можно писать вполне замысловатые игры. Например, вполне адекватный симулятор бильярда. Знакомство с JavaScript является очень дешёвым и эффективным стартом, так как родственный синтаксис имеет огромное количесво языков. Это не значит, что на них потом легко будет перейти. Браузер и программирование его работы — это только один пример.

Настоящий шок от количества разных (практических и выдуманных для развлечения) языков проагрммирования помогает испытать http://helloworldcollection.de/. Здесь собраны примеры программ, которые печатают на экране строку "Hello world!".

19
-2

Все прекрасно, спасибо за ответ, но не богли бы вы указать литературу где вы ставили пометку "почитайте"?

+1
Ответить

ИМХО, JavaScript, как и любой динамически типизированный яп - не самый лучший старт. Стоило бы начать с С/с++ или Java. Но на с очень сложно сходу разобраться.

+6
Ответить

Резонно. Тогда, при таком подходе можно начинать с языка Pascal + книги Н.Вирта "Алгоритмы и структуры данных", например.

+2
Ответить

Есть 2 подхода. Если у вас есть усидчивость для написания прог чисто для пк, тогда думаю питон будет лучше. С/С++ это не самые простые и не самые удобные для старта. Если сложно абстрогироваться, тогда стоит начать микроконтроллеров аля ардуино. Низкий входной порог, куча описаний, и самое главное, иы видишь результат не абстракнтные чила или точки, а действующий механизм подчиненый программе. Если взять Arduino IDE то там кастрат языка С, а значит и его изучение будет легче потом. Но С/С++ не очень языки с точки хрения информационной безопасности. Питон будет в этом попроще.

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

+3
Ответить
Ещё 1 комментарий

Вначале определитесь, какие программы хотите писать. Если это WEB, начните с HTML, CSS, Javascript. Если для смартфонов я бы рекомендовал Java. Если к примеру игрушки, то - C# и Unity хорошо подойдут, по ним очень много материала в сети. Вообще, знание языка вам мало что даст, к нему обычно требуются разнообразные фреймворки, базы данных, понимание работы тех или иных сред и т.д. потому определитесь с направлением, чтобы не изучать все подряд. Не стоит начинать изучение программирования с Python - язык довольно не обычный и по синтаксису и по не очевидной логике, после него будет сложно понять другие, а придется. В интернете полно курсов в том числе и бесплатных. Никто вам не сможет порекомендовать конкретный, по простой причине - у каждого начинающего разный уровень восприятия. Кто-то поймет так, кто-то иначе, у всех своя точка старта. Универсального курса просто не существует. Ищите, качайте именно свой, который поймете. Благо у большинства даже платных есть пара вводных уроков бесплатных как раз для понимания -подходит вам или нет.

0
Ответить
Прокомментировать

Начинать нужно с цели - для чего нужно разбираться в языках программирования?
Пока запрос очень общий и ответы на него могут быть либо очень общими, либо специфичными, но не факт, что они окажутся релевантными.
Я, не являясь программистом, изучал Бейсик (еще в школе), Фортран (в институте), Ассемблер (институт и работа) и, наконец, Python (для работы и общего развития).
Выбор конкретного языка для изучения должен определяться областью использования - языки не универсальны. Универсальны логика, математика, алгоритмы.
Так что, если начинать разбираться фундаментально с программированием, то плясать нужно от логики, алгоритмов и математики с вычислительными методами. Затем уже выбирать подходящий язык. Это дедуктивный метод - от общих принципов к конкретной реализации.
Другой вариант - индуктивный. Выбрать понравившийся по тем или иным причинам язык и попробовать его в деле, начав с Hello world, а потом по ходу уже разбираться с более фундаментальными вещами.
Смотрите, какой путь вам больше по душе, с того и начинайте. Для любого пути можно найти подходящие ресурсы. Кстати, в любом случае нужен хороший английский - сильно расширяет количество доступных материалов.

Из того, что сам использовал и мне понравилось:
CS50: Introduction to Computer Science - Гарвардский вводный курс, есть на ютубе, на edX.
MITx: 6.00.1x Introduction to Computer Science and Programming Using Python - Вводный курс по Python от MIT на edX.
codewars.com - сайт с задачами на программирование на множестве языков.
sololearn.com - курсы по различным языкам.

14
0
Прокомментировать

Определитесь, что вам интересно: создавать программы или веб-сайты. Хотя хороший специалист знает и то, и то.

Веб-разработка обычно начинается с ознакомления языков: HTML -> CSS -> PHP -> JS.
"Машинные" языки изучают с Pascal -> C -> Java -> C++ -> Python -> C#

Такой порядок не обязателен, строгой последовательности и определённой методички не существует.

Изучать можно конечно по книжке или записаться на курсы, но на дворе 21 век, и все уроки доступны на специализировнных сайтах или форумах.

Арсений Метелевотвечает на ваши вопросы в своейПрямой линии
7
0
Прокомментировать

Этот ответ написан и доступен на

Этот ответ написан и доступен на Яндекс Кью

Добрый день!

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

1. Для саморазвития. Чтобы на максимально общем уровне понять, что такое языки программирования, нужно разобраться, как работает компьютер. Для этого отлично подойдёт книга Чарльза Петцольда «Код: тайный язык информатики».

2. Чтобы освоить новую профессию. Сначала определитесь со сферой, в которой хотите работать. Это может быть веб-разработка, разработка мобильных приложений, разработка игр, робототехника, аналитика данных или машинное обучение. Для каждой специальности нужны свои языки программирования. Вот как выглядит минимальный набор:

для веб-разработки ― HTML, CSS, JavaScript;

для разработки мобильных приложений на Android ― Java и Kotlin, на iOs ― Swift;

для анализа данных ― Python или R. Python ― самый популярный язык для анализа данных; R ― более академичный, его чаще используют в научных работах;

для высоконагруженных систем (промышленных программ, облачных систем, браузеров) ― C++, C, Java. Программы на них работают быстро, но порог входа высокий: для работы с этими языками нужно хорошо знать информатику.

Концепции программирования не привязаны к языку. Они общие для всего Computer Science. Поэтому, освоив один язык, вы будете быстрее и легче понимать, как работают другие.

3. Чтобы понять, чем занимаются коллеги. Если вы работаете в смежной области, например дизайнером или менеджером проектов, то знание языков программирования поможет вам разобраться, за что отвечает программист, сколько времени уходит на создание простого проекта и почему невозможно поставить кнопку там, где вы хотите. В таком случае попробуйте освоить языки разметки HTML и CSS и разместить свой первый сайт в интернете. В Яндекс.Практикуме есть бесплатный вводный курс «Основы HTML, CSS, JS», где вы напишете свой первый веб-проект на JavaScript.

4
0
Прокомментировать

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

Кажется, тоже начну с него. В моем личном исследовании вопроса специалисты указали мне него.

Иван Бøотвечает на ваши вопросы в своейПрямой линии
3
0

Кроме языка как такового есть еще библиотеки. Это куски программ, сделанные настолько универсально и удачно, что все ими пользуются. Большая часть библиотек устанавливается вместе со средой разработки на этом языке. Такие называются стандартными библиотеками. Изучение даже стандартных библиотек требует гораздо большего времени, чем собственно языка.
С какого языка начать? Когда-то я начинал с Ассембли. Но я IT фрик с детства. Далее С и С++. Это очень мощные языки для своих сфер применения. Java и C# - это замена C++, созданная для достижения прикладного результата, для легкости чтения и изменения кода, отладки и тд и тп. Следующая ступень эволюции (или деградации?) - это Python. Я тут не спец, но знаю, что там типизация не строгая, что для меня абсолютно не приемлемо, но для людей, которые пишут, скажем математические задачи - само то. А вообще, если вы до сих пор не начали, то надо ли? Ради денег начинать? А вы сможете конкурировать с фриками? Я помню, как мы в начале 90х по ночам оккупировали ПК, писали расписание кто за кем, один комп был на несколько програмеров и все стремились изучать. Интернета не было, изучали то, что смогли достать. Я не отговариваю, стать IT фриком может каждый, я же не знаю степень вашего стремления.

+6
Ответить

Поддерживаю фразу насчет деградации и комментарий в целом, сразу чувствуется, что есть солидный опыт программирования. От себя могу порекомендовать для решения простейших задач VBA (Excel, Word и так далее): довольно просто и удобно для начинающих. Я тоже как только не программировал в конце 90-х, даже загонял компилятор и библиотеки в ОЗУ для ускорения компиляции, это было круто.

+1
Ответить
Прокомментировать
Читать ещё 10 ответов
Ответить
Читайте также на Яндекс.Кью
Читайте также на Яндекс.Кью