Яку найкращу мову програмування вивчити?

З чого слід почати вчитися?

Фото Кріса Ріда на знімку

На сьогоднішній день на ринку існує стільки мов програмування, і якщо ви новачок у комп'ютерному програмуванні, ви можете задуматися, яку мову програмування вибрати найкраще та як почати її вивчати. Це найчастіші запитання, які мені задавали. Тут, у цій статті, я хочу відповісти на ці запитання про те, як знайти найкращу мову програмування для початку та з чого її почати вивчати.

Щоразу, коли я чую таке запитання про те, яку мову найкраще вивчити, я відповідаю: "Ну, це залежить". Так, не існує однозначної відповіді, щоб сказати, яка мова найкраща для всіх цілей. Кожна мова має свої цілі, плюси та мінуси. Кожна мова програмування є доброю та корисною для конкретних завдань. Правильне запитання можна переосмислити так: "Яку найбільш релевантну чи належну для мене мову обрати?" Тепер це питання має більше сенсу. Перш ніж відповісти на це, я зазвичай задаю ще кілька запитань, щоб чітко зрозуміти, що ви насправді хочете.

1. Що ви хочете розвивати?

Якщо ви хочете розпочати програмування, ви повинні знати область та тип додатків / програм, які ви хочете розробити. Вас цікавить розробка ігор? програмне забезпечення для автоматизації офісу? наукові розрахунки? корисне програмне забезпечення? апаратне застосування? і так далі. Відповідь показує ваше спрямування на програмування.

Але що робити, якщо ви не знаєте відповіді, або принаймні ви не впевнені у відповіді ?! Є так багато людей, що вони не знають відповіді, і вони просто хочуть розпочати програмування. Отже, ви можете думати про це як про те, що спонукало вас вирішити вивчати мову програмування? Це було цікаве програмне забезпечення? Можливо, ви хочете розробити подібне програмне забезпечення. Або це був розробник? Напевно, ти хочеш бути схожим на нього. Або це була новина, яку ви читали? Напевно, ви хочете розвинути те саме, що і в новинах. Тому важливо знати, що ви збираєтеся робити, перш ніж вибирати випадкову мову.

Якщо ви знаєте відповідь, то вам слід дослідити найбільш відповідні мови та технології в цій галузі. Наприклад, якщо вас цікавить:

  • автоматизація деяких щоденних завдань: рекомендуються мови скриптування - мови, що базуються на перекладачах (наприклад, Python, JavaScript або VBScript).
  • розробка приємних веб-сайтів: рекомендуються передові технології та мови (наприклад, HTML, CSS, JavaScript, JQuery тощо).
  • розробка веб-додатків: рекомендуються бек-енд-технології та мови (наприклад, ASP, PHP, Node.JS, Java, Django Python, Go тощо).
  • робота з даними та базами даних: рекомендуються мови, пов’язані з базою даних (наприклад, SQL) та платформами (наприклад, MySQL, SQLServer, Mongo тощо).
  • розробка програмного забезпечення для корпоративного рівня: рекомендуються мови на компіляторах (наприклад, Java, C ++, C # тощо).
  • робити якісь дивовижні штучні штучні інтелекту чи наукові розрахунки: Python, R, Go, Julia. Рекомендується матлаб тощо.
  • тощо.

Як ви бачили, для кожної з цих категорій (які не обмежені вищезазначеним списком) існує багато мов, з яких можна вибрати. На цьому етапі, якщо ви знаєте, що ви хочете зробити, ви можете націлити на подібні компанії та людей, які насправді виконують подібну роботу, як ви хочете зробити, щоб знайти найбільш відповідні мови та технології. Тож у вас може бути менше можливостей, але все-таки залишилося так багато мов програмування. Ось чому я задаю друге запитання.

2. Чому і де ви хочете використовувати мову?

Це питання може бути трохи заплутаним. Дозвольте перефразувати своє запитання. Ви хочете вивчити та використовувати цю мову для розваги та / або виключно для себе? чи ви хочете мати це як навик прийняття на роботу? Хто збирається використовувати ваше розроблене програмне забезпечення або код?

Якщо ви шукаєте мову з високим попитом і високою зарплатою, можливо, веб-сайт пошуку роботи або LinkedIn може допомогти вам набагато краще перевірити кількість вакансій, доступних для кожної мови у вашому регіоні / країні.

Наприклад, мій друг, інженер-механік, одного разу запитав мене «яку найкращу мову вивчити?», І коли я запитав його: «де ти хочеш цим користуватися?», Він відповів, що чув, що механічний інженери з знаннями програмування можуть легко знайти роботу з більш високою зарплатою. Отже, я запитав його: "які мовні навички очікують від інженера-механіка ці компанії?". Він сказав: "Java та Python". Отже, він відповів собі. Коли його цільовий ринок шукає ці дві мови, що я можу порадити?

3. Скільки часу ви готові витратити?

Сучасні мови програмування (наприклад, Python) дуже легко вивчати та кодувати; і вони зазвичай роблять багато речей за сценою, не помічаючи їх. Це чудова річ, проте у неї є деякі побічні ефекти. Це спричиняє повільніше програмне забезпечення з більшим споживанням пам'яті. Подібне завдання в інших звичайних мовах, таких як C, C ++ або Java, може зажадати набагато більше рядків коду, і вам може знадобитися зрозуміти більш глибоку логіку за кодом, який ви пишете. Але вони, як правило, швидші, ефективніші в пам'яті, хоча освоєння цих мов може зайняти десятиліття (особливо C ++).

Якщо ви хочете навчитися чомусь швидкому, якщо ви хочете кодувати швидший, динамічний і менш складний, ви можете вибрати Python. Якщо ви хочете чогось сильного, швидкого та ефективного, ви можете вибрати C ++ або Java. Однак вивчати та кодувати те саме в C ++ та Python потрібно також набагато більше часу. Це узагальнення є лише прикладом, і воно дуже залежить від вашої відповіді на перше питання.

Отож, отримавши відповіді на вищевказані три питання, у вас зараз може бути менше варіантів потрібної мови. Наступне поширене питання - як це навчитися?

Як вивчити вибрану мову?

Існує багато ресурсів для вивчення нової мови програмування або вдосконалення навичок програмування, таких як книги, YouTube, онлайн-курси та багато іншого. Насправді не важливо, як ви це вивчаєте, але ви повинні пам’ятати дві речі незалежно від мови, на якій ви вивчаєте:

  1. Алгоритмічне мислення (тобто структурне мислення) - це те, як ви структуруєте програму у своєму розумі, потім перетворюєте свої думки в код. Це найважливіший навик розвитку програміста. Після того, як ви освоїте алгоритмічне мислення, ви можете легко вивчити інші мови та розширити свої знання з програмування. Основні матеріали алгоритмічного мислення - це добре знання мовної структури (наприклад, синтаксису), особливостей, а також математики.
  2. Вивчіть структуру. Я бачив багатьох програмістів, що вони просто перестрибують деякі структури та курси, оскільки вони припускають, що вони їх знають, або вони можуть не мати важливого значення. Це найбільша помилка. Як студент, навіть як професійний програміст, ви повинні пройти всі мовні структури та деталі синтаксису, щоб знати силу та можливості нової мови програмування. Відсутність однієї точки може коштувати вам більше рядків коду та розладу в майбутньому.

Яке майбутнє для вибраної мови програмування?

В історії комп’ютерної індустрії нічого не існує. Сьогодні гаряча і модна мова, а завтра може бути мертва і забута мова. Отже, ви також повинні бути готові до цього.

На момент написання цієї статті Python користується великою популярністю і сьогодні користується великим попитом. Завдяки великій спільноті програмістів Python за надання різних пакетів. Але чи буде в майбутньому жарко? На це інше і складне питання відповісти.

Висновок

Якщо ви готові почати шлях, як бути програмістом на комп’ютері, вам повинно бути зрозуміло про себе, що ви збираєтеся розвивати, де ви збираєтесь ним користуватися, хто збирається ним користуватися та чому ви його розробляєте. Тоді ви зможете легко знайти ресурси та людей, які рекомендують вам відповідну мову, що відповідає вашим потребам. Немає дискретної та абсолютно абсолютної мови програмування. Кожна мова створена за призначенням, і перед вибором мови важливо визначити свою.

Програмування - непросте завдання, воно вимагає терпіння, багато практики, мислення та постійного навчання. Удачі у вашій подорожі.

Вас також запросили прочитати: