Введение
В 2016 году я приобрел свой ноутбук Asus, и с того момента, вплоть до Марта 2022 года, я стал пользователем операционной системы Windws 10.
На Десятке я делал много интересного мне, например, играл в мощные компьютерные игры, пробовал писать музыку в DAW программах, которую я и сегодня слушаю во время поездок в своей машине, изучал Blender, пробовал изучать игровые движки без успехов, пользовался системой как рядовой пользователь.
Шло время, шли годы. Компьютер устаревал. К началу 2022 года компьютер стал сильно тормозить, он с трудом выдерживал обновления, перегревался просто от работы системы. Я устранял некоторые проблемы, которые возникали после обновлений системы путем долгих оптимизаций и дефрагментации. В Марте 2022 года я принял решение попробовать Линукс.
Изучив советы из Интернета и Ютуба, я установил Linux Mint. Он помог мне оживить компьютер, и он многому меня научил. После Linux Mint я решил попробовать классическую Ubuntu. На Убунте я устанавливал виртуальные машины, а именно: Virtual Box, Gnome Boxes. На них я испытывал другие операционные системы и Линуксы. Так я наткнулся на свой нынешний дистрибутив - Linux MX21.
Мне понравился Linux MX21, так как он был основан на изначальной стабильной системе Debian, при этом он простой, шустрый и легковесный, имеет достаточно гибкую оболочку Xfce. Мне так же понравилось то, что в самом дистрибутиве предусмотрены инструменты для ремастеринга системы.
После выбора долгого выбора своего дистрибутива ОС Линукс, я решил остановиться, и подумать. Я не хочу оставаться просто пользователем, это скучно. Так я принял решение научиться создавать программы для своего Линукса и других операционных систем. Я решил начать свой путь с языка программирования C++.
Почему С++?
Я скажу вам коротко, что С++ основан на процедурном языке С, и является объектно ориентированным. Говорят, что с его помощью можно создавать много чего интересного, от консольных программ до программ с красивой графической оболочкой и мощным функционалом. Я слышал, что на нем писались браузеры и игровые движки, и многое другое.
Меня интересуют возможности, которые обрету я, изучив С++. Моя цель - освоить разработку консольных программ, которые могут работать через терминал Линукса, а так же кроссплатформенные программы с графической оболочкой для простых пользователей.
Как я устанавливал C++ и компилятор
В моем дистрибутиве Linux MX21 уже был установлен C++, но я проверил это, введя в терминале эту команду - sudo apt-get install g++. Результат вы видите на скриншоте ниже.
Терминал выдал следующее:
Чтение списков пакетов… Готово
Построение дерева зависимостей… Готово
Чтение информации о состоянии… Готово
Уже установлен пакет g++ самой новой версии (4:10.2.1-1).
Следующие пакеты устанавливались автоматически и больше не
требуются:
libenca0 libvorbisidec1
Для их удаления используйте «sudo apt autoremove».
Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления
отмечено 0 пакетов, и 0 пакетов не обновлено.
Далее я ввел еще одну команду в терминале - sudo apt -y install build-essential.
Терминал выдал следующее:
Чтение списков пакетов… Готово
Построение дерева зависимостей… Готово
Чтение информации о состоянии… Готово
Уже установлен пакет build-essential самой новой версии (12.9).
Следующие пакеты устанавливались автоматически и больше не
требуются:
libenca0 libvorbisidec1
Для их удаления используйте «sudo apt autoremove».
Обновлено 0 пакетов, установлено 0 новых пакетов, для удаления
отмечено 0 пакетов, и 0 пакетов не обновлено.
Hello World без IDE
Для написания программы на языке программирования C++, задача которой вывести в терминал надпись - Hello World, я выполнил следующие действия, не используя так называемые IDE:
1. Создал папку с именем Hello World.
2. Внутри папки Hello World я создал пустой файл Helloworld.cpp.
3. Далее я написал код программы в файле, как показано на скриншоте.
4. Далее я сохранил файл, после чего его иконка изменилась.
5. После этого я открыл терминал в папке с файлом Helloworld.cpp, и ввел следующую команду: g++ -lm -o output Helloworld.cpp. Это действие привело к компиляции программы, и появлению рядом с файлом Helloworld.cpp файла с именем output.
6. На последнем шаге, не выходя из папки, я ввел в терминал следующую команду: ./output. Это действие привело к выводу фразы - Hello World в терминал, как показано на скриншоте.
Итог
Так я сделал свой первый шаг к освоению языка программирования C++. В будущем я хочу научиться делать аналогичную программу в простой среде разработке. На момент написания данной статьи, я пока не научился ими пользоваться. У меня уже есть следующие программы: Geany, Atom, Code Block, Visual Studio Code. Фреймворк Qt пока не в счет, так как я хочу сначала научиться делать консольные программы без графической оболочки.
Спасибо вам за терпение и прочтение. Оставляйте комментарии, советы, подписывайтесь. Следующую статью напишу тогда, когда научусь писать простейшую консольную программу в IDE.