Як зрозуміти, що програмування — це твоє? Як взагалі «входити» в нього з огляду на величезну кількість напрямів? Ми поговорили зі студентами та викладачем кафедри ПІ в ХНУРЕ про те, як вони починали свій шлях у програмуванні, на якій мові зупинилися і чому.
Шлях у програмування довгий і непростий. Загалом, як і при виборі будь-якого іншого роду діяльності, цю справу дійсно треба любити всією душею — інакше ви просто вигорите.
Найскладніше дається вивчення першої мови програмування. Далі буде простіше: на наступну мову піде вже набагато менше часу. Синтаксис вчиться найшвидше, а особливості мови кочують з однієї в іншу. До того ж у вас уже будуть певні навички, які можна застосовувати й до інших мов програмування.
Дмитрій Васильєв:
«Я проти будь-яких суперечок про мови програмування — кожна хороша для свого завдання і сфери. Особисто мені подобається С++ - всупереч думці, що склалася в суспільстві, мені цілком зручно і комфортно. З усіх мов, якими я програмував (здебільшого Java/Kotlin, C#, Python) вибрав її за швидкодію, безліч механізмів метапрограмування (шаблони). Ну, і сфера її застосування — в моєму випадку графіка — мені дуже заходить. Плюс до всього, С++ вимагає глибокого розуміння програмування в принципі, розуміння процесу складання проєктів — і я таке люблю»/
- З якої мови програмування ти починав?
- Починав кодити з ігор на Unity, на C#. Поступово вчив мову, мені подобалося. Потім стало цікаво інше, поступово перейшов на Java/Kotlin і на мобільну розробку. Зараз перемикнувся на С++, повністю влаштовує.
- Тобто, «шарпи» (C#) стали для тебе якоюсь базою, яка полегшила подальше вивчення мов?
- Так. На прикладі «шарпів» я зрозумів ази, на прикладі Java я зрозумів ООП, а на прикладі C++ я зрозумів програмування. «Плюси» (C++) подобаються за те, що вони покривають увесь спектр моїх завдань, і здебільшого які мені цікаві.
- Тобто, C# ти починав вчити для конкретного завдання. Ось ти хотів створювати ігри, і далі зв'язка Unity-C#. Так було?
- Так, я тоді не знав нічого про Unreal Engine і C++
Сергій Федосов:
«Чому я обрав Python?
Швидкість написання коду, читабельність, зручність. Усі скаржаться на його швидкість і продуктивність. Вірно, порівняно з рештою мов програмування, він є дуже повільним, тому що спершу інтерпретується в мову C, а потім тільки в машинний код. Але хто забороняє використовувати інші мови програмування для більшої продуктивності? До того ж більша частина залежить від написання коду самим програмістом. Вважаю, що потрібно використовувати певні засоби для певних цілей. Python добре використовувати в роботі з Big Data і бекендом, а також автоматизувати рутинні завдання. Для цього всього створено безліч бібліотек.
Чому я обрав JavaScript?
Веброзробка, розширення для браузерів, бекенд. Цією мовою програмування можна легко і швидко робити динамічні вебсторінки, облаштовувати бекенд, писати повноцінні вебсервери. Перевагою JavaScript є написання серверної та клієнтської частин однією мовою. Основними особливостями цих мов є універсальність, динамічна типізація (тип даних визначається самостійно, у момент присвоювання змінній) і швидкість написання коду».
- З якої мови програмування ти починав і чому обрав саме її?
- Починав із Python. Захотілося навчитися програмувати. Дізнався, що легким стартом буде вивчення цієї мови. Хотів вивчити основи, а потім заглиблюватися в низькорівневе програмування на С++.
Віталій Миколайович Ляпота, старший викладач кафедри програмної інженерії:
«Близько десяти років тому я звернув погляд на Python - і безперечно полюбив цю мову та люблю її й досі. Я можу зручно та швидко писати консольні скрипти, можу зручно та приємно розробляти вебдодатки (обожнюю фреймворк Django), можу легко використовувати різні бібліотеки для наукових обчислень, та й узагалі вона має справді багату бібліотеку з додатковими модулями. Дуже подобається її синтаксис, який іноді прямо навіть змушує писати хороший і зрозумілий код. Подобається, що ця мова дуже легка у вивченні та використанні. Навіть подобається її динамічна типізація з можливістю проставляння типів тільки за потреби (є в мене деяка маленька нелюбов до надто вже суворо типізованих мов)».
- Я так розумію, мову програмування ви здебільшого обирали, так би мовити, «по любові». Не тому, що більше перспектив, вищий попит тощо, а просто тому, що дуже і дуже подобається. Адже так?
- Так, саме так і було.
Отже, підбиваючи підсумки: з чого ж варто почати шлях у програмування?
- Для початку добре визначитися з метою: для чого ви хочете вивчати програмування? І вже, виходячи з цього, підбирати мову програмування під конкретне завдання. Головне — щоб було цікаво.
- «Помацайте» мову програмування: чи все вам подобається? Чи все зручно? Якщо недоліки для вас переважують переваги — ймовірно, варто пошукати альтернативу.
- Деякі люди отримують задоволення від самого процесу написання коду, створення алгоритмів тощо. Якщо немає бажання створити щось конкретне, але просто цікаве саме по собі програмування — можливо, це про вас. Спробуйте почати з найбільш інтуїтивно зрозумілих мов: Python, JavaScript.
Дисклеймер: думки автора статті та людей, які брали участь у її написанні, можуть не збігатися з вашою. Це абсолютно нормально — правильним є той підхід до вибору мови програмування, ККД якої вище нуля і яка підходить саме вам.
Аліса Бондар