150 likes | 439 Views
Лекц ія 1 « Основи ООП. Мова Java ». Укладач: к.е.н . Жулінська К.М. Джерело : http://dou.ua/lenta/articles/language-rating-jan-2013/. План. Основні парадигми програмування Місце мови Java серед мов програмування Особливості та характерні риси мови Java Основні поняття ООП
E N D
Лекція 1«Основи ООП. МоваJava» Укладач: к.е.н. Жулінська К.М.
Джерело: http://dou.ua/lenta/articles/language-rating-jan-2013/
План • Основні парадигми програмування • Місце мови Java серед мов програмування • Особливості та характерні риси мови Java • Основні поняття ООП • Інсталяція JavaDevelopmentKit, завантаження документації
Парадигми програмування • Процедурно-орієнтоване програмування (ПОП) – це методологія програмування, заснована на концепції виклику процедури (методи або функції). Із процедур формуються структури коду, які повторно можна використовувати. Результатом застосування даної методології є додаток, що являє собою алгоритм послідовного виклику процедур. До процедурних мов програмування належить Pascal, С • Об’єктно-орієнтоване (ООП) – методологія програмування, побудована на представленні програми у вигляді об’єктів, кожен з яких є екземпляром певного класу. В класі є методи, які описують функціонал екземплярів даного класу. У результаті застосування ООП маємо додаток, що представляє собою виклик різних об’єктів, їх методів. До об’єктно-орієнтованихмовпрограмуваннявідносятьсятакі, як мовиС++, С#, Java. • Прототипно-орієнтованепрограмування (ПрОП) — стиль об'єктно-орієнтованого програмування, при якому відсутнє поняття класу, а успадкування здійснюється шляхом клонування існуючого примірника об'єкта - прототипу. Прикладом ПрОП є мова JavaScript.
Мова C 1972 р., ПОП (для розробки системного ПЗ) МісцеJava серед мов програмування Мова Pascal 1974 р., ПОП (мовапрограмування + P-машина) Мова С++ 1983 р., ООП Мова Java 1996 р., ООП (мовапрограмування + JVM) Мова C# 1998-2001 р., ООП (мова програмування + .NET) Мова JavaScript 1995 р., ПрОП (розширює функціонал HTML-сторінок)
Історіявиникненнямови Java • 1991 р. - група інженерів компанії Sun під керівництвом ПатрікаНотона і Джеймса Гаслінга зайнялися розробкою мови, яку можна було б використовувати для програмування побутових пристроїв (пультів для телевізорів, контролерів для управління холодильниками, пральними машинами, мікрохвильовими печами тощо). Назва мови Oak • 1994 - Компанія Sun випустила свій власний браузер HotJava, що "умів" обробляти код всередині веб-сторінок • У 1996 р. офіційно вийшла перша версія Java (Java 1.0), яка згодомзазнала низку удосконалень. • НазвамовиJava походить від сорту кави (вирощується на о. Ява (Індонезія)), який часто споживали розробники мови. • Талісманом мови є Duke • Щорічно проводиться конкурс Duke'sChoiceAwards Джеймс Гослінг Duke
Особливості Java. Кросплатформеність javac compile once run anywhere! – концептуальний принцип Java
Особливості Java • Швидкість. За рахунокдодаваннядодаткового звена – JVM – Java-програми як правило, виконуються трішки довже, ніж програми на С++. У той же час в JVM є вбудований механізм JIT(just in-time) -компіляторів, які перекомпільовують байт-код в інструкції для ЦП не повністю, а по мірі необхідності (лише методи, які викликаються, а не весь код програми). • Динамічність. Мова Java є більш динамічною, відносно С та С++, С#. Бібліотеки класів постійно поновлюються новими методами, розширяючи можливості програміста у розробці програм.
Основні поняття ООП • Класописує властивості, функціонал своїх екземплярів. • Екземпляр класу – це об’єкт, що створений на основі даного класу. Екземпляру класу притаманні властивості, які описані в даному класі. Екземпляр може викликати методи, що описані в даному класі. • Метод класу описують функціонал, поведінку екземплярів даного класу. Рис. Відмінності між класом і об’єктом в ООП
Наслідування • Наслідування – здатність класів формувати ієрархії, коли класи‐нащадки наслідують поведінку класів‐предків. Реалізується за рахунок опису нового класу на основі вже існуючого (батьківського), при цьому властивості і функціональність батьківського класу запозичуються новим класом. • Призначення: • Дозволяє позбутися дублювання коду. • Дозволяє додати нову функціональність в клас.
Інкапсуляція • Інкапсуляція- “приховування” властивостейвсерединіоб’єкта; представляєсобою процесвідокремленняелементівоб’єкту, яківизначаютьйогоповедінку. • Призначення: приховатипрограмнуреалізаціювідкористувача (прикладного програміста), при цьомунадаючийомуінтерфейс(набірметодів, якиминаділенийоб’єкт).
Поліморфізм • Результат: Now speak! • Woof! • Meow!
Програмне забезпечення Java • Інсталятор JDK - http://www.oracle.com/technetwork/java/index.html • Простийтекстовий редактор (напр., NodePad) • IDE(інтегроване середовище розробки) - Eclipse абоNetBeans. • Для зручності можна завантажити документацію по бібліотеці класів Java http://www.oracle.com/technetwork/java/javase/downloads/index.html
Рекомендована література • Літературапо Java: • Java2. Библиотека профессионала. Том 1. Основы Автор: Кей Хорстманн, Гари Корнелл • Java2. Библиотека профессионала. Том 2. Тонкости программирования Автор: Кей Хорстманн, Гари Корнелл • Відеоуроки: • Шуйков Сергей Юриевич: http://www.ex.ua/view/14114671 • Юрий Ткач (розміщено на youtube.com)