Короткий огляд Java. Об'єктно-орієнтоване програмування. |
Написав Yolop | |||||
Субота, 14 лютого 2015 22:31 Переглядів: 11667
|
|||||
Мова програмування Java в першу чергу є об’єктно-орієнтованою. Щоб зрозуміти це, потрібно зазирнути в історію програмування. Самі комп’ютери ніяких мов, крім двійкових кодів, не розуміють. Двійковий код — це набір команд 0 (немає сигналу) та 1 (є сигнал), завдяки яким комп’ютер отримує завдання, здійснює обчислення й повертає результат. Але для людини, яка хоче скласти якусь програму, надзвичайно складно мислити двійковими кодами. На початку, коли програми були нескладними, це припускалося, але з їхнім ускладненням з’явилася потреба в узагальненні та об’єднанні двійкових кодів у команди, які інтуїтивно були б зрозумілими та простими у використанні. Тому двійкові коди почали замінювати на слова, вислови та десяткові (вісімкові, шістнадцяткові) числа, а саме спілкування із комп’ютером, який і надалі працює за допомогою двійкових сигналів, здійснювалося й здійснюється за допомогою "перекладачів" — компіляторів. Певний набір висловів та чисел перероблявся компілятором у двійкову послідовність складних команд для комп’ютера. Але із ускладненням програм і цього було замало. Програмний код почали об’єднувати в структури, які були складними задачами, що внутрішньо складалися із декількох простіших задач. Це допомагало зробити код зрозумілішим і розбити його на логічні одиниці. Однією із таких є мова C. Такі мови програмування ще називають структурними. Але із часом програми ставали ще складнішими й містили величезну кількість стрічок коду. Щоб ще більше впорядкувати програмні коди, спростити перебіг програмування, потрібні були нові засоби. Тому почали створюватись нові засоби програмування, які стали основою об’єктно-орієнтованих мов, таких як С++, Java, С#, PHP, Swift. Об’єктно-орієнтовані мови складаються із об’єктів — одиниць програмування, які вміщують у собі певну кількість даних та способи їх взаємодії між собою. Крім того, що об’єкти є міні-програмками, вони можуть взаємодіяти із іншими такими ж об’єктами. Завдяки цьому вдалося значно спростити перебіг програмування — замість сотень стрічок коду, програміст може оперувати лише кількома об’єктами. Щоб створити об’єкт, спочатку створюють його “сутність” — клас, який являє собою образ даних та їх взаємодії за допомогою яких об’єкт “втілюється”. Крім того, об’єктно-орієнтоване програмування вирізняється ще трьома рисами: інкапсуляцією, успадкуванням та поліморфізмом. Інкапсуляція — це можливість об’єкту обмежувати доступ до його складових іншим частинам програми. Завдяки цьому вдається уникнути помилок коду, коли програма змінює сторонні дані, що часто повністю порушує її роботу. Успадкування — це можливість успадковувати властивості (дані та їхню взаємодію) дочірньому об’єкту від батьківського із можливістю додавання нових додаткових властивостей дочірньому. Завдяки цьому, коли вам потрібно створити об’єкт, трохи вдосконалений від існуючого, його потрібно лише успадкувати й додати нові вдосконалення. За допомогою успадкування можна створювати цілі дерева або ланцюги різноманітних класів. Поліморфізм — це здатність об’єкту із одним іменем поводити себе по-різному в залежності від кількості і/або виду даних, які він обробляє. Це дозволяє значно спростити код, адже для різних розрахунків потрібно було створювати новий відповідний клас (об’єкт), тоді як із поліморфізмом достатньо лише одного. Крім того, що Java є об’єктно-орієнтованою мовою програмування, вона ще й кросплатформна. Це означає, що програми, написані на Java одного разу, будуть працювати незалежно від операційної системи, на якій вона запущена. Це досягається завдяки віртуальним машинам, встановленим в операційну систему. Віртуальні машини зчитують програму і перекодовують її відповідно до програмного середовища, у якому працює даний комп’ютер. Саме завдяки цій властивості Java стала популярною в інтернеті, адже сайти, написані за допомогою цієї мови, будуть працювати всюди. ( 22 Проголосувало ) Старіші матеріали:
3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved." |