У декого із нас, в певний момент життя, виникає гостре бажання навчитися такому чудовому ремеслу, як програмування. Але виникає питання - з чого почати? Що необхідно робити в такому випадку? Ну а що потрібно робити, щоб навчитися їздити на велосипеді?.. Очевидно, що необхідно сісти на велосипед і старатись проїхати ним якусь відстань. А що потрібно зробити, щоб навчитись куховарити? Напевне, необхідно взяти рецепт, необхідні інгредієнти і приготувати страву, тобто — куховарити. І коли ми зробили усі ці спостереження, який ми можемо зробити висновок про програмування? Що саме потрібно робити? Ну як, здогадалися? Правильно! Щоб навчитись програмувати необхідно — програмувати! Запам'ятайте, це знання — дуже важливе. Для виконання своєї улюбленої роботи, а саме написання коду (програмування в основному саме у цьому полягає), нам буде потрібен наш надійний помічник — комп'ютер. Окрім самого комп'ютера нам будуть необхідні ще декілька програм для нього:
  • середовище розробки (де можна писати код);
  • компілятор або інтерпретатор (для того, щоб комп'ютер зрозумів наш неперевершений код);
  • і необов'язково - декілька інших корисних програм, які допоможуть зробити наш код ще кращим... ніж він є.

Середовище розробки

У нас час капіталізму (якщо ви знаходитесь у нашому часі), компанії і організації надають нам таку кількість найменувань товарів і послуг, що усіх і не перелічиш. Це відноситься і до середовищ розробки програмного забезпечення (наші заокеанські сусіди називають цей комплекс програм Integrated Development Environment — Інтегроване середовище розробки, скорочено IDE). Їх є безліч: від простих до цілих систем розробки і взаємодії. Ви можете найти на будь-який смак і колір, на будь-яку мову, операційну систему і платформу (їх також безліч). Devcpp5110
Середовище розробки Dev-C++
Але що саме представляє собою це середовище розробки, ця IDE? Як я вже казав, найчастіше, середовища розробки це система програм. Тобто IDE складається з декількох зв'язаних програмних модулів, часто і окремих програмних продуктів. До складу базового середовища розробки входить текстовий редактор. Текстовий редактор — це основна програма, без якої ми не зможемо писати код нашої майбутньої програми, через те, що в основній своїй масі код являє собою текстову інформацію. Існують системи графічного програмування, але нас це поки не цікавить. Якщо у вас є програма, яка вміє зберігати, редагувати і відкривати текстові файли, для вас вона може виступати середовищем розробки, тобто місцем написання коду. tetris.cxx - pluma
Текстовий редактор на базі Gedit з функцією підсвітки коду
Але не хвилюйтеся, в наш час навіть текстові редактори часто виступають складними системами з багатьма функціями, які невимовно прикрасять, а іноді і полегшать, ваш процес написання коду. Крім редагування тексту, в середовище розробки можуть бути вбудованими функції управління проектами, файлами проекту, імпортування файлів в проект, команди компілювання коду і виконання програми. Комерційні IDE включають в себе і компілятор.

Компілятор і інтерпретатор

Компілятор представляє собою програму або комплекс програм і програмних модулів, яка перетворює код у виконувані файли, зрозумілі комп'ютеру. Причина того, що нам потрібен компілятор, тобто перетворювач кодів, полягає у тому, що комп'ютер “розуміє” незручну для програміста мову (бінарний код) і програмісти також спілкуються між собою на мові, яку тяжко “зрозуміти” комп'ютеру. Комп'ютер в загальному добре виконує тільки дві речі: обчислювати і виконувати програми. Кожен компілятор приймає тільки файли певної мови програмування (тобто файли з певним кодом) і перетворює їх на виконувані файли, які ви зможете запустити на комп'ютері. Для того щоб компілятор не являвся великою програмою і щоб його можна було з не надто великими затратами реалізувати, програмні мови проектують простими — кількість операторів (тобто слів) мови найчастіше не перевищує 100. Ось наприклад, для мови програмування С++ кількість операторів сягає 76 плюс символьні оператори. У порівнянні: людина у звичайному повсякденному спілкуванні використовує до 600 слів. Якщо ви передасте компілятору файл з незрозумілим йому форматуванні він видасть помилку. Тому, перш ніж вчитись програмувати, необхідно обрати мову, яка вам найбільше підходить і потім для цієї мови встановити відповідний компілятор. Компілятори найчастіше використовуються в системному програмуванні. Прикладами компіляторів можуть виступати: GCC, Mingw, Clang (компілятори з інтерфейсом командного рядка), Visual C++, Dev-С++, Eclipse (середовища розробки) для мов С/С++. Інтерпретатор являє собою програму на подобі компілятора, але з однією важливою відмінністю: він не видає скомпільовані файли, а самостійно виконує команди з файлу, в якому міститься код на інтерпретованій мові програмування. Основна перевага інтерпретаторів полягає у тому, що, написавши один раз програму на інтерпретованій мові, вона може виконуватись на різних комп'ютерних системах (на яких можливо встановити інтерпретатор). Недоліком інтерпретатора являється те, що зазвичай код інтерпретованої мови виконується повільніше, ніж програми які були скомпільованими. Саме інтерпретатори таких мов як PHP, SQL (частина бази даних), Perl (CGI-скрипти) використовуються для написання веб-сайтів інтернету. Кожну з цих програм ви можете знайти в інтернеті і завантажити її на комп'ютер. Усі вони можуть бути платними (комерційними) або вільними (за них не обов'язково платити). Для того щоб вміти користуватися програмами необхідно прочитати документацію для неї або переглянути навчальні відео. Тепер, коли ви маєте усі необхідні програми на вашому комп'ютері, ви можете приступити до улюбленої справи.