Перш за все, Java - це дуже, дуже велика мова програмування. Так, дійсно, вона має репутацію простої мови з якою легко почати програмувати, вона позбавлена багатьох “дитячих хвороб” С++, однак повторюсь, Java - це велика й складна мова програмування того ж порядку, що й С# або Fortran, і вивчити її протягом одного семестру - просто неможливо.
Проте, її синтаксис дуже нагадує C, тож якщо ви вже знайомі з якоюсь С-подібною мовою, перейти до Java вам буде нескладно. До того ж вивчати Java - це весело та цікаво, плюс, ваші програми можна буде запустити будь-де - навіть на вашому Android-смартфоні!
Технологію і мову Java було створено в результаті дослідницького проекту зі створення програмної платформи для “розумних” та вбудованих пристроїв. Головними “обличчями” цього проекту були Джеймс Гослінг та Білл Джой.
Цей невеликий проект, який з 1991 року здійснювався в Sun Microsystems за закритими дверима, започаткували Патрік Ногхтон, Майк Шерідан та Джеймс Гослінг, Білл Джой та інші приєднались пізніше. Метою проекту була розробка мови програмування для розумних побутових приладів, розважальних центрів тощо.
Кумедним є той факт, що коли справа дійшла до вибору назви для нової мови програмування, Джеймс Гослінг визирнув у вікно, і перше, що він там побачив, був кремезний дуб, тож не довго думаючи, він запропонував назвати спільне дітище Oak (дуб).
Перша спроба виходу на ринок для нової мови не була вдалою, оскільки виявилось, що “розумних” побутових приладів, ТВ-приставок або ігрових консолей з розширеною функціональністю на початку 90-х було, м’яко кажучи, не так вже й багато. Врятував нову мову …Інтернет, який в 1994 році вже став досить популярним за затребуваним. HTML в ті часи не міг похвалитись інтерактивністю або можливостями з побудови складних інтерфейсів користувача, подібних до традиційних “настільних” програм. Великим плюсом стала також незалежність від платформи - одна уніфікована мова та середовище виконання програм, яке дозволяло не зважати на те, на якому комп’ютері та з якою операційною системою працює користувач, який відкрив ту чи іншу веб-сторінку. Тож команда вчасно і вдало переорієнтувалась на ринок веб-застосунків, а зроблена ними демонстрація можливостей платформи зі створення веб-аплетів не тільки вразила спільноту розробників, а й додатково мотивувала авторів проекту, які впевнились, що вони винайшли щось нове, чудове і корисне.
Технологію Java було анонсовано у травні 1995, а перша фінальна “не бета” версія побачила світ вже у 1996 році, тож мову Java було розроблено набагато швидше за будь-яку іншу мову програмування! До того ж Java - абсолютно безкоштовна - ви можете вільно завантажити абсолютно все - середовище виконання, інструментарій розробника, документацію, навіть вихідні коди!
На це питання немає однозначної відповіді, оскільки Java одночасно є:
Як мова програмування, Java, як вже було сказано раніше, близька до C++ за синтаксисом, і до SmallTalk за семантикою. Ви можете використовувати Java для створення додатків будь-яких типів і будь-якого призначення.
Як середовище розробки, технологія Java пропонує розробникам повний набір інструментів для роботи - компілятор (Java - так само як C# є мовою подвійної компіляції, однак, про це ми ще поговоримо пізніше), інтерпретатор, генератор документації, утиліту для створення Jar-архівів і багато іншого. Про JDK (Java Development Kit) ми теж ще поговоримо в наступних модулях цього курсу, однак слід відмітити, що для створення більш-менш серйозних додатків IDE все ж знадобиться!
Середовищем розгортання і виконання додатків є JRE (Java Runtime Environment) - пакет, що містить повний набір стандартних класів з усіх пакетів Java SDK - базові класи мови, класи для побудови графічного інтерфейсу користувача, класи для роботи з колекціями і т. ін.
Ми вже неодноразово зазначали, що Java є С-подібною мовою. Найближчими “родичами” мови Java є наступні мови:
scala-library.jar
. Scala сумісна з існуючими програмами мовою Java, тобто код Scala може викликатися з Java-програм і навпаки. Також компілюється в JavaScript.Основними характерними відмінностями Java є наступні її особливості:
Java - це мова С++, з якої забрали всі пістолети, ножі та палиці. Іншими словами - це мова С++ глибокої дистиляції
.Програми Java розповсюджуються у вигляді .class
-файлів або jar
-пакетів. .class
-файли містять проміжний код (або байт-код), який виконується віртуальною машиною Java (JVM), тобто набір даних та інструкції для віртуальної машини.
Основні відмінності Java від “батьківської мови” зумовлені прагненням розробників “дистилювати” С++, вилучивши з неї всі потенційно небезпечні конструкції, зокрема:
Також Java є повністю об’єктно-орієнтованою мовою з максимально простим та зрозумілим кодом, що дозволяє створювати складні програми, та адекватно описувати об’єкти оточуючого світу. Основною перевагою мови є портабельність, тобто можливість виконання програм будь-де, незалежно від апаратної платформи та ОС - потрібна лише віртуальна машина Java. Девіз мови - “написав один раз - виконав де завгодно”!
Основні цілі створення мови: