Программирование
Программирование — процесс создания компьютерных программ. Современное программирование — это написание исходного кода по точно заданным правилам и ограничениям, выбранного языка программирования.
Объясните простыми словами, пожалуйста
(сказка из сборника «11000011 ночь»)
Компьютер — это добрый джинн, который может исполнить любые желания 🧞
- Хотите 🏭 фабрику-самобранку, производящую еду самостоятельно — пожалуйста.
- Хотите 🛩 ковер-самолет-автопилот, регулярно летающий из Парижа в Лондон — получите, распишитесь.
- Хотите 🚗 телегу, которая едет куда нужно без лошади и водителя — Tesla уже ждёт вас.
Но есть две небольшие проблемы:
- Компьютер-добрый-джинн не понимает язык человека.
- Человек сам в точности не знает, чего он хочет🤷
Компьютер понимает только язык цифр 1 и 0. Если вы попытаетесь загадать своё желание случайным набором чисел 1011...1101 — вы получете непредсказуемый результат, а компьютер скорее всего обидется и зависнет. Значит нужно говорить не случайные цифры а осмысленные, но как? Давайте позовем на помощь нашего друга и специалиста по натиранию электронных радиоламп — Аладдина-программиста. Ходят легенды, что он умеет переводить желания людей на язык компьютера — это и называется программированием.
Итак мы просим Аладдина напрограммировать «лекарство от всех болезней». Он достает своего волшебного Питона (Python — это такой популярный язык программирования) и с помощью него сообщает джинну-компьютеру:
print("я хочу лекарство от всех болезней")
Смотрим результат:
я хочу лекарство от всех болезней
Это просто текст? 😠
Мы получили именно то, что загадывали. Компьютер не знает, что такое лекарство и что такое болезни, он не может изобрести что-то непонятное. Сначала мы должны тщательно объяснить ему на пальцах единиц и нулей, что это такое. А мы пока сами не знаем, что такое лекарство от всех болезней 😞
Но не переживайте, компьютеры добры к человеку и не бросят его в беде. Прямо сейчас тысячи компьютеров делают вычисления, чтобы помогать быстрее изобретать новые лекарства. А после изобретения помогут автоматизировать производства по их изготовлению, чтобы сделать лекарства дешевыми и доступными.
Хотите помочь? Изучайте языки программирования и программируйте. Начните по-настоящему общаться с вашим добрым-джинном компьютером, он хочет исполнить ваши желания 😉
А если серьезно
Программирование — это создание инструкций, которые компьютер может понять и выполнить. Изначально эти инструкции записываются на языке программирования в виде исходного кода. Этот код представляет из себя несложный набор специальных символов и правил понятных человеку. Но чтобы инструкции понял компьютер, исходный код требуется перевести в машинный язык единиц и нулей. Для этого применяются специальные программы — компиляторы.
Программы создают программисты. В процессе работы они используют инструменты для тестирования и отладки своего кода, чтобы убедиться, что он работает правильно.
Как научиться программировать
Вот несколько советов, которые могут помочь научиться программировать.
- Проверьте, что вам нравится программировать. Начать можно с компьютерных игр про программирование. Ищете, выбирайте, пробуйте. Если вам это интересно и это «затягивает», можно двигаться дальше.
- Выберите интересное для вас направление. Для новичков без IT образования подойдут мобильная разработка и разработка веб-приложений (frontend или backend). Не торопитесь на данном этапе, изучите каждое из трех направлений и выберите подходящее.
- Выберите один язык программирования по интересующему направлению. Рекомендуется JavaScript для фронтенд направления, Python для бэкенд, Kotlin / Swift для мобильной разработки.
- Начните изучение с бесплатных материалов и недорогих курсов. Если понимаете — «это оно», можно продолжать. Если идет «через силу», надо пробовать другие варианты.
- Изучите выбранный язык программирования, на уровне решения простых задач. Важно писать код решений самостоятельно «без копирования готовых из гугла». Программирование — это прежде всего практический навык.
Как стать профессиональным программистом
Чтобы программирование стало вашей профессией, нужно двигаться дальше:
- Освойте профессиональные инструменты работы. Минимальный набор — это инструменты работы с исходным кодом: git и IDE. Плюс у каждого направления разработки есть свои дополнительные.
- Выполните минимум один pet-проект (учебный проект) и выложите его код в открытый доступ (например, на GitHub)
- Разместите резюме и откликайтесь на вакансии стажера (подойдут бесплатное обучение или работа за минимальную зарплату). Остерегайтесь мошенников, обещающих высокие зарплаты без опыта работы.
- Пройдите собеседование и устройтесь на стажировку.
- Продолжайте искать работу, откликайтесь на вакансии младших (junior) разработчиков.
- Устройтесь на работу младшим разработчиком.
- Продолжайте учиться.
Какие типы программистов существуют
Программисты различаются прежде всего по направлениям работы и знаниям языков программирования. Но есть различия и в профессиональном уровне.
Кодер (Coder) — новичок.
Программист (Programmer) — профессиональный специалист.
Инженер-программист (Software engineer).
Информатик (Computer scientist).