На зорі появи комп'ютерів питання про те, яка мова програмування вивчати не стояло. У той час був тільки одну мову - машинний. Йшов час, комп'ютерна технікаставала складніше, а разом з комп'ютерами ставали складніше програми і настав той момент, коли писати складні програми в машинних кодах стало неможливо. Інженери та фахівці, для полегшення своєї роботи, почали розробляти людино-зрозумілі мови програмування і до сьогоднішнього дня з'явився не один десяток мов програмування. У всьому світі не знайдеться фахівця, який точно скаже, скільки існує мов. Тому реальна картина така, що є популярні мови програмування і не популярні, мови вузької спрямованості і широкого використання. І ось стикаючись з таким реальним світом, школяр або студен, не може визначитися з тим, яка мова програмування йому вивчати. При цьому, хороший програміст, каже, що не має значення яку мову вивчати. Інший, не менш хороший програміст, каже, що потрібно вивчати мову C ++. А третій, теж хороший програміст, каже, що потрібно вивчати мову Pascal (Delphi). Думок про те, яка мова програмування вивчати, може бути, безліч. І в першу чергу це пов'язано не з кількістю мов, а зі сферами застосування. Адже кожна мова розроблявся не просто так, а з цілком певною метою. Тому і потрібно розглянути ті цілі, які повинні досягатися при вивченні якогось певного мови програмування.

Навчальні мови програмування

Кожен програміст повинен освоїти хоча б одну мову програмування. На думку багатьох фахівців, такою мовою є Basic або Pascal. Pascal спочатку придумувався як мова програмування для студентів. З його допомогою початківці програмісти освоюють основні конструкції програмування і набувають основні навички програмування. Після освоєння Pascal для багатьох програмістів вже втрачає сенс питання про те, яка мова програмування потрібно вивчати. Адже знаючи певну теорію, маючи практику програмування, можна освоїти будь-яку мову при необхідності. Крім Pascal, для навчання використовуються так само: BASIC, Fortran, C. Все залежить в першу чергу від спрямованості навчального закладу.

напрямок фахівця

Після того, як освоєний навчальний мовупрограмування, вивчається ту мову програмування, який найбільш прийнятний в тій області, в якій передбачається працювати програмісту. Тому якщо ви будете займатися WEB-програмуванням, то необхідно вивчати PHP, Perl, Python, Java та ін. Якщо ж програмісту доведеться займатися розробкою прикладного програмного забезпечення, То варто дивитися в бік Delphi або C ++. Таким чином, знаючи одну мову програмування, вивчити основні конструкції програмування і отримати мінімальну практику, в подальшому не складе труднощів освоїти інші мови, необхідні для тієї сфери, в якій доведеться застосовувати знання програмування.

Мови програмування і їх сфери застосування.

Розглянемо деякі відомі мови програмування і їх сфери застосування. Отже:

  • Мова 1С- Вбудована мова програмування однією з відомих платформ 1С Підприємство. Використовується для розширення функціоналу розробляється конфігурації, для вирішення завдань обліку на підприємствах, створення форм і обробок.
  • Мова PHP- мова Web-розробки. На мові PHP написана більша частина динамічних сайтів. Всі відомі безкоштовні движки (CMS), такі як Drupal, Wordpress, Joomla написані з використанням мови PHP.
  • C #, VB.NET- Мови широкого застосування, може використовуватися і для WEB-програмування, і для розробки складного програмного забезпечення.
  • C ++- Використовується для розробки програмного забезпечення будь-якої складності. Часто можна почути думку, що на цій мові можна написати все.
  • Delphi- може використовуватися і для навчальних цілей, і для розробки складного програмного забезпечення. Має великий інструментарій по роботі з базами даних і створення звітностей. Тому набув широкого поширення в фінансово-економічній сфері, де необхідна розробка додатків працюють з базами даних. Мова так само дозволяє створювати мультимедіа-додатки (наприклад відеоплеєр KMPlayer, віртуальна музична студія FL Studio), ігри з використання 3D графіки і мн. ін.
  • VisualBasic (VB / VBA)- існує як окремий пакет для розробки Windows-додатків, так і вбудовану мову макросів (Excel, Word, Access, CorelDraw та ін.).
  • JAVA- багатоплатформовий мову програмування з широкою сферою застосування. Використовується в багатьох галузях, для вирішення широкого спектра завдань. Одним з основних переваг даного мови програмування є саме кросплатформенних і наявність безкоштовних середовищ розробки таких як Eclipse. Практично все мобільні додаткинаписані на мові Java (Java додатки, Android програми).
  • Objective-C- з ростом популярності продуктів Apple зростає і популярність цієї мови програмування. На сьогоднішній день залишається основною мовою для розробки на платформі iOS.

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

І на закінчення повторюся ще раз: -Імея знання і володіючи базовими принципами програмування, вміти читати і складати алгоритми рішень задач, вивчення інших мов не складе труднощів тому Вам необхідно буде вивчити тільки синтаксис мови. Вивчаючи іноземні мови Ви ж не починаєте думати і робити все по іншому. Ну якщо тільки чуть чуть :)

На цьому все. Успіхів Вам у цій не легкій справі.

Багато починаючі програмісти мучаться питанням:

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

І кидаються з кутка в куток, слухаючи рекомендації "крутих спеців". Почнуть вивчати Паскаль. Потім їм хтось скаже, що Паскаль - це відстій, а от З ++ - це круто. Вони кидають Паскаль, беруться за С ++. Потім ще хтось їм скаже, що найкрутіше - це Асемблер. Всі. С ++ забутий, і вони йдуть до нових вершин - до премудростям Ассемблера.

При цьому вони забувають головне:

Не буває поганих мов програмування - бувають погані програмісти!

ДУЖЕ ВАЖЛИВО!
вивчайте програмування, а не мова програмування!

Тому що, якщо ви новачок, то ви й гадки не маєте, де ви будете працювати і які програми писати. Цілком можливо, що ваш майбутній роботодавець використовує Delphi, а може бути і Visual C ++ або FoxPro. Або взагалі вам доведеться розробляти програми для контролерів або верстатів з ЧПУ.

Запам'ятайте, що досвідченому програмісту для вивчення основ нової мови програмування буде потрібно всього кілька днів. Тобто перебудуватися з Delphi на Visual C ++ або назад не так вже й складно (і не так вже й довго). Але для цього треба вміти програмувати!

Якщо ви досконало знаєте мову програмування, але не вмієте програмувати, то який з цього користь? Це те ж саме, що знати як забивати цвяхи, але не вміти цього робити. Навіщо вам ці знання, якщо ви все-одно зверніться в результаті до професіонала?

Ось саме тому я знову вимовляю свою улюблену фразу: не буває поганих мов програмування - бувають погані програмісти.

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

Тому не звертайте уваги на чиїсь переваги. Якщо кому то подобається С ++ або С #, то це його право. Однак це не означає, що програміст С ++ крутіше програміста Visual Basic. Це лише означає, що є різні мови програмування. Так само як є різні способи прийняття їжі: азіати їдять паличками, європейці - вилками і ложками. Що гірше, що краще? Так ні те, ні інше. Просто одні звикли до паличок, а інші до ложок і вилок.

Ваше завдання полягає не в тому, щоб навчитися їсти паличками. І не в тому, щоб навчитися їсти виделкою.

Ваше завдання - не залишитися голодним!

Тому в деяких випадках поїсти можна і руками.

Ще раз нагадую. Головне - це результат. А вже якими засобами цей результат отримати - це справа уподобань і звичок. Якщо ви тільки починаєте вивчати програмування, то у вас ще немає ніяких звичок і переваг. Тому починати можна з будь-якої мови програмування і з будь-яких засобів розробки. Так як вивчення мови і засобів розробки - це найпростіше. І в процесі підвищення кваліфікації вам все одно неодноразово доведеться перенавчатися. Тому що змінюються технології, з'являються нові мови і т.п.

висновки:

  • Ваше завдання - навчитися програмувати, а не вивчити мову програмування (хоча це теж потрібно, але це не головне).
  • Чим простіше ваш перший мова програмування, тим швидше ви навчитеся програмувати.
  • Виходячи з висновків 1 і 2, можна сказати, що починати краще з мов, які спочатку були створені дуже простими для вивчення. Тому я вам рекомендую почати з мови Паскаль або Visual Basic.
А якщо ви ще не підписані на розсилку "Основи програмування", то прийшов час зробити це:.

Увага! Думка людей, що відповідають на питання,
може не збігатися з думкою редакції.

Які мови програмування вигідніше вчити?



КАРТЕР ПЕЙДЖ

технічний керівник Google

«КОРОТКИЙ ВІДПОВІДЬ: ВЧІТЬ C АБО C ++.

Можливо, вам ніколи не доведеться користуватися ним
на роботі, але ви багато чому навчитеся, освоївши його. Найскладніші завдання, з якими стикаються кращі програмісти, Так чи інакше вимагають знання C.
Ось деякі речі, засновані на C:

Віртуальна МАШИНА JAVA

ВЕЛИКА ЧАСТИНА LINUX

ЯДРО MAC OS X

WINDOWS (С І C ++)

ORACLE DATABASE

маршрутизатор CISCO

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

C поліпшить ваші навички в Java.Ви розберетеся, коли віртуальна машинавикористовує стек, а коли - купу, і що це означає. Ви будете інтуїтивно розуміти, як відбувається прибирання сміття. Ви будете краще розуміти, як використовувати примітивні типи даних і об'єкти.

C поліпшить ваші навички в Python.Його система класів багато в чому грунтується на C ++. Ви навчитеся писати грамотний, добре організований код, що дозволить вам легше працювати з ним в майбутньому. Ви навчитеся обережніше поводитися з глобальними змінними.

C поліпшить ваші навички в Objective-C.Ви навчитеся керувати підрахунком посилань і зрозумієте, яка частина коду повинна «володіти» об'єктом. Ви зможете уникати витоків пам'яті.

Так що краще - C або C ++?Я віддаю перевагу C ++, тому що, хоча вони дуже близькі, C ++ підтримує об'єктно-орієнтоване програмування. Навіть якщо ви будете працювати тільки з функціональними мовами, об'єктно-орієнтоване програмування навчить вас організовувати код таким чином, щоб ви могли створювати і підтримувати великі проекти.

Можливо, ви не будете заробляти так само багато,
як фахівці з COBOL (Один з найстаріших мов програмування. - Прим. Ред.),які можуть раптово знадобитися. Але після C ви зможете вивчити будь-яку іншу мову. Якщо в індустрії комп'ютерних технологій
і є сталість, то воно полягає в наступному: сьогоднішня новинка може через кілька років опинитися старомодною. Навчіться навичкам, які дозволяють знаходити нові навички, і все у вас буде добре ».



ШТЕФАН ЦУКЕРМАН

програміст

«Якщо ви вмієте правильно організовувати дані, абсолютно не важливо, якою мовою ви володієте. Є три тісно пов'язані речі, які вам потрібно знати:

Основні структури даних і алгоритми (Зв'язкові списки, хеш-таблиці, збалансовані і інші дерева пошуку, черги і купи);

Моделювання даних, отриманих з реального світу (Розуміння логіки вже збудованих моделей, вміння працювати зі стандартними і сторонніми бібліотеками);

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

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

Якщо брати самий високий рівень, То я б порадив один з трьох наступних мов: Perl, Python, Ruby (І як варіант Lua).У них вбудовано багато корисних структур даних: хеш-таблиці, динамічні масиви та інші. Також вони спрощують роботу
з пристроями введення-виведення і пропонують модулі
і бібліотеки, які дозволяють відразу перейти до вирішення проблеми, а не писати проміжний код, який
і так повинен бути включений в будь-який сучасний мову програмування;

Імперативний / процедурний мову не дуже низького рівня: C, Go, Fortran (Мій вибір - C);

Імперативний / об'єктно-орієнтована мова: C ++, C #, Java, Ada (Я б вважав за краще C #, тому що його створювали, враховуючи помилки Java);

Функціональний / мультипарадигмальності мову: Objective Caml, Clojure, Common LISP, Erlang, F #, Haskell, Scala, Scheme. Я схиляюся до OCaml і Scala, тому що
їх синтаксис простіше, ніж у інших, хоча це, звичайно, суб'єктивно.

Який би мову ви не вибрали, вивчіть його по-справжньому добре і наберіться досвіду роботи з ним. Вміти створювати реалізацію класу в Java - це здорово, але якщо ви дізнаєтеся, як в Java працює збірка сміття (або в чому її недоліки), то станете більш класним програмістом. Добре знати, що в Perl можна використовувати модулі,
але зовсім інша справа, якщо ви розумієте, коли вони просто інтерфейси для коду на C: це означає, що інтерпретатор не керує пам'яттю автоматично. І так далі".

Якщо ви замислюєтеся про те, щоб почати програмувати, вам спочатку необхідно вибрати. Вибір залежить від того, які завдання ви хочете виконувати.

Деякі мови програмування легкі в вивченні і досить гнучкі, інші складні та заточені під специфічні завдання і в будь-який з цих комбінацій.

Давайте будемо відверті - ця тема є об'єктом запеклих суперечок і наші аргументи не є істинною в останній інстанції, але принаймні, ми розглянемо основні популярні мови і завдання, які на них можна вирішити. Отже, поїхали!

Java

Java є одним з найбільш довгоживучих і впливових мов програмування. Ви можете знайти її в надрах веб-додатків, на всіх платформах, операційних системах, мобільних пристроїв. Ця мова має широкими можливостями.

Java базується на класах і дотримується парадигми об'єктно-орієнтованості, вона призначена бути портативної на максимально можливій кількості платформ! З цієї причини, Java є одним з найпопулярніших мов програмування в Світі, що робить її найбільш привабливою з огляду на велику затребуваність професіоналів!

Зворотною стороною цих переваг є те, що охопити всі її тонкощі досить складно, однак при належному систематичному підході, ви можете вибудувати своє максимально ефективно.

Java - не ідеальний мову програмування (такого і не існує), у багатьох навчальних закладах починають вивчення з C / C ++ тому, що Java успадкувала безліч принципів саме від них, однак цей підхід зовсім не обов'язковий для того, щоб стати успішним Java програмістом.

Ruby

Ruby - інтерпретована, об'єктно-орієнтована мова програмування с.

Його автором є японський вчений Yukihiro Matsumoto. Юкіхіро розробив Ruby в 90-их, що робить його одним з відносно молодих мов програмування в широкому сенсі.

Ruby спроектований таким чином, щоб його синтаксис був максимально наближений до звичайної людської мови, яку легко читати і писати нам, людям, без необхідності вивчати величезна кількість команд і спеціалізованих «слів» для того, щоб змусити програму працювати.

Незважаючи на те, що основна парадигма мови є об'єктно-орієнтованої, він також підтримує можливість процедурного, функціонального і навіть імперативного програмування!

Ruby славиться своєю репутацією при розробці стартапів і є дуже затребуваним навиком на ринку.

Він відрізняється легкістю освоєння, наприклад пройдіть невелике 20-хвилинне введення в мову за посиланням: Ruby за 20 хвилин.

У мови Ruby є дуже схожий на нього мову, практично брат - Python. Про нього читайте нижче.


Природно, коли люди обговорюють, « яка мова програмування краще?»В контексті простоти вивчення для новачка, не можна не згадати Python (Правильно читається« Пайтон »)!

Python був розроблений в 80-их роках і його автор Guido van Rossum, передав його в некомерційну організацію Python Software Foundation, яка є адміністратором цієї мови.

Сама мова теж поширюється з відкритим вихідним кодомі його можна без обмежень використовувати для будь-яких цілей. Мова є інтерпретується об'єктно орієнтованим, але також і процедурних, функціональним.

Завдяки його гнучкості він один з найбільш широко відомих високорівневих мов програмування на сьогоднішній день.

C і C ++


Обидва ці мови з'явилися в 70-80-их роках. C є вкрай широковживаних імперативним мовою програмування, який вплинув на майже все сучасні мовипрограмування. C ++, з іншого боку, пішов ще далі і додав до себе об'єктно-орієнтовані особливості, як, наприклад, класи, а також віртуальні функції. C ++ теж є вкрай популярним у всьому Світі і використовується практично в будь-якій сфері - від мікроконтролерів до ігор. С ++ більш складна у вивченні, ніж звичайний C. Деякі фахівці вважають, що на сьогоднішній день не має сенсу починати вивчати програмування з C, але суперечки з цього приводу не вщухають вже дуже давно.

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


Будь ласка, не плутайте JavaScript і Java. JavaScript був розроблений в 90-е вченим Brendan Eich в компанії Netscape. JavaScript є фундаментальною технологією в інтернет-просторі і в основному використовується в браузерах. Однак, він існує і в рішеннях інших завдань (додатках і навіть серверах). Мова не має строгу типізацію і дає розробникам гнучкість у використанні як об'єктно-орієнтованості, так і функціонального, а також імперативного програмування.

Якщо ви планується розробляти веб-додатки, то вам просто необхідно рано чи пізно вивчити цю мову.

На щастя, JavaScript відносно простий у вивченні. Він використовується в зв'язки з HTML + CSS, які ви можете вивчити, відвідавши наші.

Запишіться прямо зараз або замовте дзвінок з безкоштовною консультацією!