Найти в Дзене

Что такое программирование?

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

Что такое программирование?

Это создание программ, программного обеспечения, приложений.(Эти три слова - синонимы. ). Программы - это все что вы используете, когда пользуетесь компьютером. Браузер, microsoft word, игры - все это программы. А так же Windows, Linux, Mac. Операционная система - это тоже своего рода программа.
И даже, все что вы видите в браузере - это тоже программы.

Что из себя представляют программы - это набор алгоритмов исполняемых над данным в каком то окружении.
Алгоритм - это просто последовательность действий, описана на каком то языке. Например, ваше расписания на день (проснутся, сделал зарядку, позавтракал, пошел на работу) - это тоже алгоритм
Любая программа - по сути работа с данными. Отправка данных, хранение, получение данных, отображение. Данными может быть что угодно, в зависимости от направления в котором вы работаете программистом. Данными - могут быть байты, если вы работаете низкоуровневым программистом, пиксели, если вы работаете с графикой, или наборы отчетов, если вы прикладной программист. Все просто, нет необходимости усложнять.

Необходимо понимать, что универсальных программистов не бывает, выучив основы, вам необходимо будет выбрать направление и в нем двигаться.

А теперь детальнее перейдем к инструментам программиста.

Глобально говоря у программиста есть всего два инструмента:

  • это алгоритмы
  • среда исполнения алгоритма.

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

Какие среды исполнения бывают?

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

1. Железо

-2

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

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

2. Операционная система

-3

Дальше идет ОС(операционная система), которая дает возможность запускать другие программы и управляет ресурсами компьютера.

По сути ОС - это среда исполнения ваших программ и она выступает прослойкой между железом и вашей программой.

То есть понимаете?

Мы двигаемся с низу в верх. И каждый предыдущий уровень предоставляет упрощенный интерфейс для следующего. Некий API - (Application Programming Interface) - программный интерфейс приложения. В этом и eсть прелесть абстракции. Вам не нужно знать деталей реализации нижних уровней. Вы пользуетесь удобными интерфейсами.

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

В своих программах, вы часто будете манипулировать и создавать различные абстракции, поэтому советую запомнить этот термин.
По-сути, все программы - это микрокоманды, которые находятся в памяти компьютера. Самым верхним уровнем пользуется конечный пользователь. Это удобный интерфейс для пользования. Так называемый UI - user interface(пользовательский интерфейс). Вы как программист будете работать на более низких уровнях. В зависимости от вашей специализации.

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