Я хочу робити все те саме, що й ти.
Ти — мій кумир.
Телесеріал «Альф» Серед мов програмування мова Java — найпопулярніша й найбільш затребувана. Ця книга про те, як програмувати мовою Java.
Особливості мови Java
Погано на цій планеті з почуттям
гумору.
Т/с «Альф» Історія мови Java почалась в 1990-х роках, коли групі інженерів компанії Sun Microsystems у межах проекту під назвою «Green» було поставлено завдання з розробки універсальної, компактної і незалежної від конкретної платформи мови програмування Oak, призначеної для використання в побутових пристроях. У процесі реалізації проекту змінилися не тільки основні пріоритети, але й назва мови програмування. Як би там не було, в 1995 році світ познайомився з мовою програмування Java.
S З моменту появи першої версії Java було декілька оновлень платформи.
На момент написання книги актуальною є версія Java 10. Однак слід мати
на увазі, що версії Java 9 та Java 10 підтримуються лише для 64-розрядних операційних систем. Тому актуальною залишається і версія Java 8,
яка дозволяє працювати з 32-розрядними системами. Приклади для книги
підбиралися відповідно до принципу оберненої сумісності, щоб програмні
коди виконувались у всіх версіях, починаючи з Java 8. Методи та прийоми,
Вступ . Програмування мовою Java
характерні для версій Java 9 або Java 10, виділені коментарями та супроводжуються поясненнями. Мова Java, хоч і не без труднощів, але завоювала своє «місце під сонцем». Сьогодні Java міцно утримує позиції найбільш затребуваної мови програмування. Успіху мови сприяв бурхливий розвиток Internet-технологій. Справа в тім, що для Java-програм характерним є високий ступінь універсальності й незалежності від апаратного забезпечення. Це важливо у випадку створення програмного забезпечення, орієнтованого на роботу в мережі, оскільки кінцеві користувачі використовують різні операційні системи і різне апаратне забезпечення. До того ж не останню роль відіграла застосовність мови Java для програмування всіляких мобільних пристроїв. Тому немає нічого дивного в тому, що значна доля комерційних і вільно поширюваних програм написані на мові Java. Відповідно, попит на програмістів, які працюють з мовою Java, стабільно високий, а загальні тенденції такі, що він залишиться високим і найближчим часом. Універсальність програм, написаних мовою Java, базується на використанні віртуальної машини. Це такий специфічний «посередник», під керівництвом якого виконується байт-код, який створюється під час компіляції програми. Тут необхідні пояснення. Після того, як програма написана, вона компілюється. Зазвичай в результаті компіляції програми створюється виконавчий файл з машинним кодом, який і виконується, коли необхідно виконати програму. Простіше кажучи, під час компіляції команди, зрозумілі для програміста, переводяться на «мову», зрозумілу для комп’ютера. Якщо мова йде про програму, написану мовою Java, то все відбувається схожим чином, але з деякими особливостями. Найважливіше те, що в результаті компіляції Java-програми створюється не машинний код, а проміжний байт-код. Це дещо середнє між машинним кодом і кодом програми. Якщо машинний код, як правило, виконується під управлінням операційної системи, то байт-код виконується під управлінням спеціальної програми, яка називається віртуальною машиною (або віртуальною Java-машиною). Зрозуміло, що таку програму на комп’ютер треба заздалегідь установити. Виникає запитання: а в чому ж виграш від використання віртуальної машини і як усе описане впливає на універсальність кодів? Виграш у тому, що під час написання коду можна абстрагуватися від особливостей Java операційної системи і апаратного забезпечення, які використовуються кінцевим користувачем. Ці особливості враховуються — але враховуються на рівні віртуальної машини. Саме віртуальна машина під час виконання байт-коду «бере до уваги» особливості операційної системи й апаратного забезпечення комп’ютера, на якому виконується програма.
S Припустимо, існує програма, написана мовою С++. У процесі її компіляції
створюється машинний код, який для різних операційних систем буде різним. Якщо компілюється програма, написана мовою Java, то створений
в результаті байт-код не залежатиме від операційної системи, котра встановлена на комп’ютері — він буде одним і тим самим для різних операційних
систем. Але віртуальна машина для кожної операційної системи своя. Відмінність в операційних системах «враховується», коли на комп’ютер установлюється віртуальна машина. Описаний вище механізм, загалом, забезпечує високий ступінь універсальності програм, написаних на мові Java. Особливо це помітно у випадку створення програм із графічним інтерфейсом.
S Забігаючи наперед, відмітимо, що у плані створення прикладних програм
із графічним інтерфейсом мова Java особливо ефектна. Існує ще один важливий аспект, який стосується мови Java, на який одравзу звертаємо увагу. Мова Java — повністю об’єктно-орієнтована мова. Сказане означає, що для написання навіть найменшої і найпростішої програми доведеться описати, щонайменше, один клас. Це автоматично створює деякі труднощі в освоєнні премудростей мови Java. Особливо важко тим, хто не має досвіду програмування. Адже фактично відразу, з перших кроків, доводиться знайомитися з концепцією об’єктно-орієнтованого програмування (скорочено ООП), яка, слід визнати, не є тривіальною. Однак панікувати не варто — ми знайдемо спосіб донести необхідні відомості навіть до найбільш непідготовлених читачів. Головне, аби було бажання засвоїти мову Java.
Програмне забезпечення
— Кейт, мені потрібна твоя порада.
— Ось тобі моя порада: більше ніколи так не роби!
Т/с «Альф» Якщо підійти до питання формально, то сама по собі мова Java — це набір правил, відповідно до яких формується програмний код. Однак програми пишуться задля того, щоб вони виконувались. А якщо так, то нам знадобиться спеціальне програмне забезпечення. Гарна новина в тому, що все необхідне програмне забезпечення можна отримати цілком вільно, просто і безкоштовно.