Від редакції:
Ви ще не втомилися від перших кроків - і все ще хочете стати програмістами? Вас не лякають сни з рядочками коду, і те, що в складні життєві ситуації ви хочете вписати оператор «if... else»? Тоді ми розповімо вам про основу основ - мови з родини С.
Продовжуємо цикл матеріалів для майбутніх self-made програмістів. Інколи різноманіття мов програмування може спантеличити: мало хто знає, який саме інструмент вивчати наступним. Але першим логічно опанувати саме той, який використовують у цікавій для тебе сфері, - якщо ти тільки збираєшся зробити перші кроки на ниві програмування, то не помилишся, якщо почнеш із сімейства С.
Що це?
До сімейства мов С зараховують саму С, С++, C#, Objective-C і Java. Паралельно з вивченням мови сімейства С ти зрозумієш фундаментальні основи програмування - базові концепції, які має знати будь-який програміст. Чимало проектів з кодом на С, що існують сьогодні, починали розробляти ще кілька десятиліть тому: операційна система UNIX, написана на асемблері, стартувала в 1969 році, але вже в 1972-му була перенесена на С.
Саму мову С створили, щоб перенести з асемблера ядро UNIX і отримати більш зрозумілий та структурований код, який дозволяє виконувати більше корисної роботи на кожен рядок написаного й при цьому менше залежить від архітектури.
Чому С керує світом?
Попри наявну тенденцію до використання нових високорівневих мов, фундамент ІТ досі тримається на С, а мільйони людей щодня використовують системи, кодовані цією мовою.
Microsoft Windows - перший приклад таких систем. Можна по-різному ставитися до продуктів Microsoft, але їхня популярність говорить сама за себе. 97% усіх суперкомп'ютерів світу працюють на Linux, який теж написаний здебільшого на С. Ти не повіриш, але й третя «велика» ОС у цьому списку теж має стосунок до С: ядро операційних систем Mac виконане саме цією мовою.
Більшість драйверів для різних систем також створено за допомогою С, як і ядра iOS, Android і Windows Phone.
Латина не мертва: вона просто відпочиває
Не потрібно вивчати всі мови сімейства: досить обмежитися якоюсь однією. Якщо ти працюєш з продуктами Microsoft і плануєш писати програми для Windows, починай вивчати C#. Якщо тебе цікавить розробка під Android, вивчай Java. Якщо ж мова йде про інтегровані системи - ОС, драйвери тощо, то найбільш корисним варіантом буде старий добрий С. Для будь-якої іншої сфери підійде С++.
Мови сімейства С мають особливість: якщо вивчити одну з них, то інші йдуть набагато легше. Ніхто не говорить латиною, але її все ще корисно вивчати, оскільки вона полегшує вивчення італійської, іспанської та французької мов. Так і тут: освоївши одну із С-мов, ти не станеш експертом з інших, але крива навчання стане менш пологою. У тебе не виникне проблем з розумінням коду на Java, якщо знаєш С#.
Де і як вчити?
Опанувати С# тобі допоможе курс від Prometheus «Основи програмування на C#» (https://courses.prometheus.org.ua/courses/Microsoft/CS201/2016_T1/about). На Coursera можна знайти програму із С++ для новачків (https://www.coursera.org/learn/c-plus-plus-white). Курс для тих, хто хоче вивчити Java, - під цим посиланням: https://courses.prometheus.org.ua/courses/EPAM/JAVA101/2016_T2/about.
Світом керують не масони, а програмісти на С. Ця мова не має свого «терміну придатності», вона досить близька до заліза, незалежна від платформи й надзвичайно практична.
Велика функціональність більш сучасних мов необов'язково означає велику практичну користь коду, який написаний ними. Ми щодня використовуємо пристрої на C, а тому це не тільки минуле й сьогодення, а й майбутнє в багатьох галузях розробки ПЗ.
Автор: Микола Червоний
Джерело:»Studway»