Компьютерная программа – это набор инструкций, которые выполняют определенную задачу при выполнении компьютером.
Проще говоря, компьютерная программа — это способ нас, людей, использующих компьютеры (что делает нас пользователями), попросить компьютер что-то сделать. Это может быть как простое отображение чего-либо на экране, так и сложное, например, компьютерная игра.
Компьютеры — это сложные машины, способные делать множество вещей из-за того, как люди их спроектировали, а также из-за того, насколько сильно произошла эволюция. Под компьютерами находятся схемы, предназначенные для облегчения потока информации с использованием сигналов включения/выключения.
Низкоуровневые компьютерные программы — это программы, в которых команды или функции языка тесно связаны с инструкциями процессора. По мере того, как программы становились все более и более сложными, стало трудно писать сотни (возможно, тысячи) строк кода, и поэтому возникла необходимость упростить работу людей, которые писали код.
Компьютерные программы высокого уровня были разработаны таким образом, что не было необходимости писать низкоуровневые команды для взаимодействия с процессором. Меньшее количество строк кода могло бы удовлетворять той же функциональности.
Это пример концепции, которая используется повсеместно в компьютерных
науках — Абстракция.
Согласно статье Википедии об абстракции:
Абстракция — это метод упорядочивания сложности компьютерных систем. Он работает, устанавливая уровень сложности, на котором человек взаимодействует с системой, подавляя более сложные детали ниже текущего уровня.
Медленно прочитайте приведенную выше строку, но не беспокойтесь, если вы не понимаете, что она означает. Постепенно вы поймете, что это значит.
Здесь можно задать вопрос:
«Круто, что жизнь упростили, придумав высокоуровневый код, но процессор все равно понимает только базовые инструкции. Кто выполняет это преобразование кода высокого уровня в код низкого уровня?»
Ответ: Компилятор.
Компилятор преобразует код высокого уровня в код низкого уровня.
Точно так же, как два человека могут общаться, используя один из многих «языков», которые обеспечивают структуру и понятны обоим, такая система должна существовать и для компьютерных программ.
«Компьютерные языки» были разработаны для обеспечения структурированного формата общения между программистами и компилятором. Существуют сотни (возможно, тысячи) языков программирования.
C на самом деле является языком среднего уровня, поскольку его можно использовать для выполнения операций, близких к машинному уровню, а также для написания прикладных программ (приложений высокого уровня).
Таким образом, C, на мой взгляд, является отличным выбором для начала изучения компьютерного программирования, если вы изучаете информатику/информационные технологии. (С низкоуровневого кода трудно начинать, а высокоуровневый код имеет конструкции, которые трудно оценить, не зная, почему они должны были быть спроектированы таким образом)
Для написания кода нам нужен
1. Текстовый редактор (например, Блокнот): приложения, которые позволяют нам писать и редактировать текст.
2. Компилятор (например, Gcc)
IDE (интегрированная среда разработки) были разработаны для редактирования текста, компиляции и других сложных возможностей, которые помогают в этом процессе разработки компьютерных программ.
Однако рекомендуется, чтобы новичок начинал только с текстового редактора и компилятора, чтобы делать глупые ошибки и учиться на них.
Примечание. в этой статье есть термины, которые новичок может не понять, но это совершенно нормально. Попробуйте выполнить поиск в Google по этим условиям. В случае, если это недостаточно плодотворно, расслабьтесь! Со временем вы поймете, что означают эти термины.
Надеюсь, что вам понравится и вы оцените красоту компьютерного программирования!