X Код для використання на сайті:
Ширина px

Скопіюйте цей код і вставте його на свій сайт

X Для завантаження презентації, скористайтесь соціальною кнопкою для рекомендації сервісу SvitPPT Завантажити собі цю презентацію

Презентація на тему:
Основні поняття та засади мови Java

Завантажити презентацію

Основні поняття та засади мови Java

Завантажити презентацію

Презентація по слайдам:

Слайд 1

Тема №1 Основні засади мови Java

Слайд 2

Мова Java: першоджерело http://java.sun.com

Слайд 3

Історія Java: початок Розроблялася під егідою корпорації Sun з 1991 р. З самого початку - як мова для програмування побутових пристроїв, наприклад, для дистанційного керування телевізорами. Основні вимоги - компактність та незалежність від платформи. Перша назва - Oak. Співпадіння з назвою іншої мови, тому перейменована на Java. Перші прототипи не мали особливого комерційного успіху.

Слайд 4

Історія Java: перші успіхи Тим часом - стрімкий розвиток Інтернету. Стало ясно, що за своїми основними рисами Java прекрасно підходить для Інтернет-застосувань. 1995 р. - демонстрація технології на виставці Sun World. В першу чергу - аплети. Великий успіх. 1996 р. - перша версія набору інструментальних засобів для створення Java-застосувань. Т.зв. JDK (Java Development Kit) 1.0. Ряд слабких місць; значні виправлення в 1.1 і особливо в 1.2. Введення-виведення, обробка подій в графічних застосуваннях, система безпеки і т.п.

Слайд 5

Історія Java: Java 2 і далі 1998 р. - версія 1.2; ключовий момент. Починаючи з цього моменту - Java 2 Platform. Нова назва пакету - Java 2 SDK (Software Development Kit). Поняття deprecated-методу. Важлива віха – Java 5. Суттєві зміни в самій мові. Найновіша версія - 6. Широко використовується 1.4. Нова назва пакету – Sun JDK. Основні конкуренти Java.

Слайд 6

Основні платформи (технології) Java Standart Edition (SE) - базовий пакет; Java Enterprise Edition (EE) - для корпоративних клієнт-серверних застосувань; Java Micro Edition (ME) - для портативних пристроїв; зокрема, для мобільних телефонів.

Слайд 7

Програмні моделі Java application; applet; midlet; xlet; servlet; ejb.

Слайд 8

Java - об’єктно-орієнтована мова Одна з найважливіших характеристик мови. Часто кажуть - “повністю об’єктно-орієнтована”. Програмний код завжди повинен бути інкапсульований у класи. Зокрема, це означає, що не може бути функцій поза класами. Таким чином, будь-яка програма, навіть найпростіша, повинна бути оформлена як клас (один або декілька).

Слайд 9

Java-застосування Виконуються в середовищі операційної системи.

Слайд 10

Приклад найпростішого застосування /* The simplest program*/ public class message { static String Out="You should not trouble so simple program"; public static void main(String args[]) throws Exception {System.out.println(Out); int Ch=System.in.read(); } }

Слайд 11

Java-застосування: продовження Метод main. Запитання: чи можна написати застосування, яке нормально працює, але не використовує методу main?

Слайд 12

Аплети Програмні модулі, написані мовою Java, які виконуються в середовищі веб-браузера. Точніше - програмні модулі, які підключаються до веб-сторінки. При зверненні до сторінки вони завантажуються разом з нею і виконуються в середовищі броузера (тобто на стороні клієнта).

Слайд 13

Загальна схема функціонування аплету Броузер Сервер HTML Клас аплету

Слайд 14

Підключення аплету до сторінки . . .

Слайд 15

Інша класифікація програм консольні; графічні (використання GUI)

Слайд 16

Платформна незалежність Основна ідея - модулі, написані мовою Java, повинні працювати на будь-якій машині з будь-якою архітектурою та під управлінням будь-якої операційної системи. На рівні відкомпільованих програмних модулів. Девіз Sun: “Write Once - Run Anywhere” (напиши один раз - запускай де завгодно).

Слайд 17

Ключові поняття віртуальна машина, JVM байт-код; JRE (Java Runtime Environment)

Слайд 18

Незалежність від платформи - механізм реалізації Java-програма орієнтована на виконання на деякій гіпотетичній Java-машині (з певною архітектурою, набором команд і т.п). Віртуальна машина - сукупність засобів, які емулюють роботу Java-машини та забезпечують виконання відкомпільованих Java-класів. В реалізації від Sun - HotSpot. Початковий код Java-програми компілюється не в машинно-залежний код, а в проміжний код - байт-код. Т.ч., байт-код - це послідовність відкомпільованих команд Java-машини.

Слайд 19

Байт-код - продовження. Далі, байт-код інтерпретується віртуальною машиною, яка забезпечує його виконання. Стандартний інтерпретатор - java. Технічно, байт-код зберігається в файлі з розширенням .class. В броузері - своя віртуальна машина.

Слайд 20

Виконання програм: загальна схема виконання Початковий код Байт-код (.class) Компіляція Інтерпретація JIT-компіляція

Слайд 21

Поняття про JIT-компіляцію Just-In-Time-компіляція; інша назва - синхронна компіляція. Байт-код транслюється в машинний код, який зберігається в пам’яті, а потім викликається при необхідності. Для фрагментів коду, які часто повторюються (наприклад, в циклі). Можна досягти прискорення до 20-ти разів. Про створення exe-файлу мова не йде. Стандартний інтерпретатор по суті працює в режимі JIT-компіляції.

Слайд 22

Поняття про JRE Java Runtime Environment -середовище, яке забезпечує виконання Java-програм. Інсталюється разом з SDK, але може встановлюватися і окремо.

Слайд 23

JRE: основні функції завантаження класів; управління пам’яттю; збирання “сміття”; бібліотека класів, які входять до поставки Java.

Слайд 24

Завантажувачі класів Як мінімум - три завантажувачі: первинний, який завантажує системні класи (як правило, з файлу rt.jar); розширений - з каталогу jre/lib/ext; системний - шукає класи в каталогах та jar-архівах, які вказані у змінній оточення CLASSPATH. При бажанні можна створити свій завантажувач.

Слайд 25

Проблема безпеки Проблема, яка стосується як випадкових помилок, так і злонамірного коду. Будь-який код, який завантажується по мережі, вважається ненадійним.

Слайд 26

Основні механізми безпеки рівень самої мови: виключені потенційно небезпечні можливості (перш за все - арифметика покажчиків); жорсткий контроль за виходом за межі масиву і т.п; верифікація, яка здійснюється при завантаженні класів (навіщо?); менеджер безпеки (Security Manager), який контролює потенційно небезпечні дії; використання цифрових підписів.

Слайд 27

Основні моделі безпеки Як базова - модель в 1.0. За замовченням - застосування можуть здійснювати будь-які дії; аплети обмежені правилами “пісочниці” (sandbox).

Слайд 28

Основні правила “пісочниці” аплет не може звертатися до локальної файлової системи; читати і записувати файли і т.п; аплет не може створювати мережних з’єднань, за винятком того сервера, з якого він був завантажений (“аплет може дзвонити тільки додому”); аплет не може запускати модулі в машинному коді; аплету не дозволяється отримувати інформацію про системні властивості (крім деяких; прохання встановити самостійно - яких саме); …

Слайд 29

Зміни в моделі безпеки 1.1 - “надійні”, підписані аплети можуть отримувати ті ж права, що й застосування; 1.2 і далі - самі права стають вибірковими.

Слайд 30

Менеджер безпеки: основний принцип Коли клас звертається до методу, який виконує певні операції, цей метод викликає один з методів об’єкту SecurityManager. Якщо нормально - виконання продовжується. Якщо ні - виникає виключення SecurityException.

Слайд 31

Основні інструментальні засоби Основний пакет - SDK (Software Development Kit) від Sun. Основні програми SDK: javac - компілятор; java - інтерпретатор; jar - програма створення архівів; javadoc - автоматичне створення документації; appletviewer - програма для перегляду аплетів.

Слайд 32

Приклад тестового запитання Дана програма, записана в файлі kl.java: public class kl { …} class OtherClass{…} Скільки файлів .class буде створено в результаті операції javac kl.java: а) один, в якому обидва класи, що входять до початкового коду, будуть об’єднані; б) два - за кількістю класів у файлі з початковим кодом; в) три - за кількістю класів плюс один, який встановлює зв’язок між цими класами; в) компілятор видасть повідомлення про синтаксичну помилку, оскільки в файлі не може бути більше за один клас; г) жодного, оскільки утиліта javac - це інтерпретатор байт-коду, а не компілятор.

Слайд 33

Інші засоби (IDE) Net Beans; IntelliJIDEA; Eclipse; … про Visual J++ від Microsoft.

Слайд 34

Java: основні риси мови простота; об’єктна орієнтованість; розподіленість; незалежність від платформи; незалежність від архітектури; надійність; безпека; інтерпретованість; висока продуктивність; багатопоточність; динамічність.

Завантажити презентацію

Презентації по предмету Інформатика