Розробка та тестування програмних засобів на платформі Java
Розробка та тестування додатків, які базуються на елементах мови програмування Java, принципи програмування в її середовищі. Вивчення переваг Java-платформи, прикладний програмний інтерфейс та особливості сучасних засобів створення Java-додатків.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | украинский |
Дата добавления | 22.06.2011 |
Размер файла | 2,8 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Размещено на http://www.allbest.ru/
Вступ
Створення мови Java - це дійсно один із самих значних кроків уперед в області розробки середовищ програмування за останні 20 років. Мова програмування Java є засобом для написання вихідного коду. Аплети й додатки, написані на цій мові, при компіляції приводяться до виду, у якому вони будуть запускатися на Java-Платформі.
Досвід багатьох професійних програмістів показує, що мова програмування Java - проста, гнучка і потужна. Вона об'єктно-орієнтована, забороняє множинне спадкування, має строгу систему типів, реалізує багатопотоковість, динамічно зв'язана і містить автоматичний «збирач сміття».
Її синтаксис заснований на C і C++, тому програмісти на C можуть без труднощів освоїти його. Зменшена «надмірність» мови, що означає те, що розробники зможуть значно швидше зрозуміти код, написаний іншим програмістом. Приміром, у мові програмування Java неможливе визначене користувачем перевантаження оператора, що можливо в C.
Мова Java, дає програмістам можливість користуватися трьома різними способами програмування, використовуючи при цьому тільки одну мову. Подібно символічній мові програмування Smalltalk, мова Java об'єктно-орієнтована, має здатність динамічного зв'язування й реалізує ієрархічну структуру класів з одинарним спадкуванням.
Для числових операцій, мова Java має незалежні від платформи типи даних, перевірку границь масиву, і чітко - певну ІІЕРА (Інститут інженерів по електротехніці й радіоелектроніці) арифметику. Ці здатності становлять гарну основу для запису стійких числових алгоритмів, що дають повторювані результати. Відносно системного програмування, виражень, інструкцій, і операторів мова Java у більшості випадків нічим не відрізняється від мови C. Мова Java сприяє «перехопленню» дефектів програми на стадії розробки, поки програмний продукт ще не випущений на ринок. Це здійснюється шляхом строгої типізації даних, автоматичного збору сміття й перевірки границь масиву, неможливістю автоматичного приведення типів і відсутністю посилальних типів (покажчиків). Всі перераховані факти виявляють собою обережності, які допомагають програмістові зменшити час на розробку, що дуже важливо в епоху Інтернету, коли часу на реалізацію й випуск працездатного програмного забезпечення дуже мало.
Мова Java має вбудовану підтримку багатопотоковості, зі строгим визначенням способів синхронізації для критичних ділянок коду з різних потоків, що дозволяє запобігти появі ряду проблем: при розрахунку часу, конкуренції між потоками й ін. В умовах росту потреб у багатопотоковості при обробці даних і в зменшенні витрат ресурсів процесора, мова Java була створена з урахуванням цих вимог сучасності, де ми маємо справу з новим поколінням «конкуруючих» між собою при паралельній роботі додатків і сервісів.
Механізми обробки виняткових ситуацій і потоків інтегровані з мовою і її системою типів (тобто передбачені на рівні мови). Крім того, мова реалізує динамічне зв'язування підкласів з методами, що скасовують або додають функціональні можливості, під час виконання. В інших середовищах подібні можливості були «заховані» і ускладнювали системні сервіси. Замість таких властивостей у мові, ми одержуємо простоту й безліч переваг, у числі яких можливість зробити мову платформонезалежною.
1. Огляд літературних джерел
1.1 Java-платформа
На теперішній час комп'ютерному світу відомо багато різних платформ, серед яких такі як: Microsoft Windows, Macintosh, OS/2, UNIX ® і система Netware ®. Для встановлення на кожну з них програмного забезпечення, воно повинне бути відкомпільоване окремо. Двійковий файл додатка, що виконується на одній платформі, не може бути запущений на іншій, тому як двійковий файл - специфічний, залежно від платформи.
Платформа Java - нова програмна платформа для транспортування й виконання високо інтерактивних, динамічних і безпечних аплетів і додатків на системах мережевих комп'ютерів. Основною якістю Java-Платформи, що виділяє її серед інших, є те, що вона розташовується на самому верхньому рівні в інших платформах, що дозволяє їй робити компіляцію в байт-коди, не прив'язані до кожної з фізичних машин і представляють собою машинні інструкції для віртуальної машини (virtual machine). Програма, написана мовою Java, компілюється у файл байт-коду, що може працювати скрізь, де присутня Java-Платформа, на кожній з основних операційних систем. Інакше кажучи, той самий файл буде виконуватися на будь-якій операційній системі, на якій присутня Java-Платформа. Подібна мобільність стає можливою завдяки тому, що в основі Java-Платформи лежить віртуальна Java-Машина.
У той час як кожна платформа має у своєму розпорядженні свою власну реалізацію віртуальної Java-Машини, всі віртуальні машини задовольняють вимогою єдиної специфікації. Завдяки цьому, платформа Java може реалізовувати єдиний стандарт - універсальний програмний інтерфейс для аплетів і додатків на будь-яких апаратних засобах. Тому Платформа Java є ідеальною для Інтернету, де та сама програма повинна бути здатна до виконання на будь-якому комп'ютері у світі.
Розробники використовують мову Java при написанні вихідного коду для Java-додатків. Вони компілюють свій код один раз і позбуваються тим самим від необхідності компілювати його для кожної системи окремо. Вихідний текст мови Java компілюється в проміжну, переносну форму байт-коду, що запуститься скрізь, де є присутнім Java-Платформа.
Розробники можуть писати объектно-оріентовані, багатопоточні, динамічно зв'язані додатки, використовуючи мову Java. Платформа має вбудовані системи захисту, обробки виняткових ситуацій, і автоматичного «збору сміття». Крім того, існує можливість використовувати JIT (just-in-time) компілятори (компілятори «на льоту») і прискорити виконання програм за допомогою перетворення байт - кодів Java у машинну мову. Також, розробники можуть записувати й викликати так звані нативні методи - методи C, C++ або інших мов, відкомпільовані для певної операційної системи - для підвищення швидкості виконання або для застосування спеціальних функціональних можливостей.
Програми, написані мовою Java і потім відкомпільовані, будуть запускатися на Java-Платформі. Платформа Java має дві основних частини:
- Java Virtual Machine (віртуальна Java-Машина);
- Java API (прикладний програмний інтерфейс Java).
У сукупності, ці частини забезпечують оперативні засоби керування роботою програми для кінцевого користувача при установці інтернет-додатків.
The Java Base Platform - «мінімальна» Java платформа, створена для запуску Java-Аплетів і додатків, що розробники можуть без проблем встановити й використовувати. Дана платформа призначається для мережевих, настільних комп'ютерів і робочих станцій. Платформа містить у собі ту ж віртуальну машину, що описувалася вище й при цьому має мінімальний комплект API, необхідним для запуску основних аплетів і додатків. Згаданий мінімальний комплект відомий, як Java Applet API або Java Base API. Розробники, які пишуть для цього комплекту можуть бути впевнені в тім, що програма запуститься скрізь без необхідності в підключенні додаткових бібліотек класів.
Деякі ліцензіати платформи Java уклали контракти про включення приватних реалізацій Java Base API в Java - платформі. В міру розробки бібліотек класів, Java Base Platform розростаються й нові класи регулярно мігрують у встановлену на кожну ліцензійну операційну систему Java Base Platform.
Інший набір API, що називається Standard Extension API, визначений JavaSoft у партнерстві з провідними промисловими компаніями створений для розширення основних функціональних можливостей. Найближчим часом планується мігрувати деяку підмножину Standard Extension API в Java Base Platform.
Embedded Java Platform була розроблена для споживача, що використовує прилади з малими ресурсами й з більш спеціалізованою функціональністю, ніж мережевий комп'ютер. Наприклад, принтери, ксерокси, мобільні телефони й ін. Подібна апаратура може мати деякі специфічні властивості, а саме невеликий обсяг пам'яті, відсутність дисплея або неможливість зв'язку по мережі.
API, розроблений для такої платформи, називається Java Embedded API. Java Embedded API - найменший із прикладних програмних інтерфейсів, які можуть бути впроваджені в описані вище прилади й при цьому ефективно працювати. Оскільки дана платформа усе ще допрацьовується, Java Embedded API дотепер не може розглядатися як стандарт. Тому існує деяка невизначеність, пов'язана із складом API. Приблизно, він буде містити в собі пакети java.lang і java.util. Java-Додатки, написані для одного окремого пристрою, зберігають працездатність на широкому діапазоні подібних по своїй специфіці пристроїв.
1.2 Переваги Java-Платформи
Переваги для кінцевого користувача: На сьогоднішній день, Java-Платформа забезпечує підтримку оперативного, інтерактивного наповнення World Wide Web, за допомогою «just-in-time» доступу до програмних ресурсів. Додатки легко доступні на всіх операційних системах одночасно, що звільняє користувача від необхідності вибору операційної системи по факту доступності додатків. Більш маленькі, менш дорогі спеціалізовані системи будуть, в остаточному підсумку, доступні для спеціалізованих додатків.
Переваги для розробника: Мова програмування Java - невелика, проста для вивчення система, оснащена всебічно, що розширюється набором, API. Розробники можуть «написавши один раз, запускати всюди», що дає мові Java величезну перевагу перед іншими мовами на ринку. Крім того, програми на Java на всіх операційних системах при компіляції перетворяться до того самого двійкового формату. Виграш у порівнянні із ситуацією, коли для установки програми на декількох платформах потрібно писати й компілювати код окремо для кожної платформи, очевидний. Програміст може працювати над додатком під однією платформою, скорочуючи при цьому час і вартість розробки, і бути впевненим, що його код буде працювати скрізь. Можливість «написавши один раз, запускати всюди», для багатьох програмістів є достатньою причиною для переходу до мови Java від таких мов як C або С++, на яких працездатність додатків залежить від платформи а, також, додатки яких «немережеві».
На додаток до цього, можливе створення додатків, що багаторазово використовують загальнодоступні об'єкти, що ще більше зменшує вартість розробок і дозволяє розробникам концентрувати свої зусилля тільки на створенні чогось нового.
Переваги при адмініструванні й підтримці: Java-Платформа має переваги, пов'язані з адмініструванням корпоративних комп'ютерних систем. Контроль версії й оновлення спрощуються, тому що Java-Додатки можуть зберігатися в центральному архіві й тут обслуговуватися для кожного окремо взятого користувача. У багатотипному, багатоплатформенному оточенні кількість Java-Платформ, яким необхідна технічна підтримка зменшується до однієї. У сукупності з тенденцією до зниження вартості мережеих комп'ютерів це приводить до зменшення як основних витрат, так і витрат на обслуговування. З подібними мережевими комп'ютерами керування даними може здійснюватися централізовано, у той час як обробка даних здійснюється локально.
Компанії з великими внутрішніми комп'ютерними мережами, які можуть не приділяти достатньо уваги для встановлення на всіх машинах новітнього програмного забезпечення або останніх операційних систем, можуть запускати Java-Додатки на всіх комп'ютерах у мережі. Крім того, впроваджуючи утримування корпоративних даних у форматах «розпізнаваних» Java додатками, корпорації дає своїм працівникам можливість доступу до будь-яких даних незалежно від платформи.
Якщо на Java-Платформі запустити клієнт, компанії можуть скористатися интерактивністю інтернету й перекласти необхідність відсилання завдань працівникам на клієнтський додаток. Також компанії можуть зменшити час, що витрачається на облік замовлень за допомогою впровадження спеціальних клієнтів, що містять бланки замовлень на Web сторінках. При цьому клієнти можуть бути запущені на будь-яких платформах.
1.3 Аплети та додатки
Java-Платформа дозволяє розробникам створювати два види програм:
Аплети - це програми, для запуску яких необхідно використовувати броузер. Тег <applet> вставляється в HTML-Код Web - сторінки й містить ім'я програми, що повинна бути запущена. Коли користувач заходить на сторінку по корпоративній мережі або по Інтернету, аплет автоматично завантажується із сервера й запускається на клієнтській машині. Через те, що аплети є завантажувальними програмами, вони повинні бути маленькими по розмірах або розбитими на модулі так, щоб на завантаження йшло якнайменше часу.
Додатки - це програми, що запускаються без броузера, в яких відсутній вбудований механізм автоматичного завантаження. У момент виклику додатка, він запускається. Таким чином, додаток являє собою щось схоже на програми, які пишуться на інших мовах. Вони можуть виконувати стандартні прикладні завдання, починаючи з редагування текстів і закінчуючи обробкою графіки. Як і для аплета, для запуску додатка потрібна Java-Платформа, однак платформа може бути доступна, як окрема програма, може бути впроваджена прямо в операційну систему або може бути убудована в сам додаток.
Хоча аплети й додатки запускаються різними способами, проте, вони мають однаковий доступ до більшості можливостей мови. Приміром, як аплет, так і додаток можуть працювати з вилученими серверами баз даних: «витягати» необхідні дані, обробляти їх локально й зберігати результат у БД.
Однак, для запуску аплета, на відміну від додатка, необхідна мережа. Крім того, додатки мають більше волі при роботі із системою, а саме - повний доступ до її сервісів. Простий приклад: додатки можуть нормально записувати й читати файли, а аплети - ні. З моменту завантаження аплета з «ненадійної» сторінки, він обмежується в правах доступу до читання й запису файлів на будь-якій системі, за винятком тієї, з якої він прибув. Для зняття або ослаблення подібних обмежень для аплетів використовуються цифрові підписи, завдяки яким кінцевий користувач може бути впевнений у тім, що завантаження завжди відбувається з ресурсу, якому він довіряє. Зараз, там, де існує необхідність локального зберігання даних у файлах, потрібні додатки.
1.4 Внутрішня будова Java-Платформи
Java-Платформа складається із двох основних частин, Java Virtual Machine (віртуальна машина Java) і Java API (див Рис1.2).
Java Virtual Machine - Java Virtual Machine - це «запрограмований» комп'ютер, що може бути реалізований у програмному забезпеченні або в апаратних засобах. Це абстрактний пристрій, спроектований так, щоб бути реалізованим на як можна більшому числі сучасних процесорів. Інтерфейс переносів і адаптери дають JVM можливість бути перенесеною на нові операційні системи без необхідності в повнім переписуванні
Java API - Java API визначає стандартний інтерфейс для аплетів і додатків, не звертаючи уваги на встановлену на комп'ютер операційну систему. Java API - основа, каркас при розробці додатка. Даний API визначає набір стандартних інтерфейсів для використання в ключових областях, кількість котрих збільшується, у яких програмісти звичайно вибудовують свої Java додатки.
Java Base API (Основний прикладний програмний інтерфейс Java) забезпечує можливість роботи з різними допоміжними класами, з уведенням / виведенням, з мережею, з GUI (графічний інтерфейс користувача), і аплетами. Компанії-Виробники операційних систем, які мають ліцензію Java, підписали контракти, що зобов'язують їх включати Java Base API у будь-яку Java-Платформу, що вони встановлюють.
Java Standard Extension API (Стандартний розширений прикладний програмний інтерфейс Java). Є розширенням описаного вище Java Base API. Передбачається, що деякі розширення будуть згодом мігровані в Java Base API. Інші нестандартні API будуть підтримуватися в додатках, аплетах і основних операційних системах. При публікації специфікації будь-якого розширювального API до його остаточного виходу, в обов'язковому порядку публікуються промислові огляди з можливістю зворотного зв'язка з розроблювачами.
На представленому малюнку, Java Base Platform представлена частинами, зафарбованими чорним, включаючи блоки, підписані «Адаптер». Java API включає як Java Base API так і Java Standard Extension API. Класи є реалізаціями API. Java Virtual Machine лежить в основі платформи. Інтерфейс переносу розташовується між Java Virtual Machine і операційною системою (ОС) або броузером. Інтерфейс переносу складається із платформонезалежної частини (зафарбована чорним) і залежної від платформи частини з написом «Адаптер». ОС і JavaOS забезпечують роботу з віконним інтерфейсом, зберіганням даних і взаємодією по мережі. Як показано, різні машини можуть приєднуватися по мережі.
Основна частина Java API відкрита й розширювана. Специфікації для кожного інтерфейсу розвиваються всегалузевими фахівцями у всіх областях. Підготовлювані специфікації видаються й відкриваються для рецензування різними галузями промисловості. Реалізації специфікацій API надходять від JavaSoft і інших підприємств. У сучасному середовищі постійних інновацій, структура Java API дозволяє будь-якому нововведенню легко існувати у вигляді розширення до Платформи Java.
API розбивається по групами, або наборам. Кожний набір API може бути реалізований у вигляді одного або декількох пакетів (просторів імен). Кожний пакет поєднує в собі набір класів і інтерфейсів, які визначають набір полів, конструкторів і методів.
1.5 Java Virtual Machine (Віртуальна машина Java)
Java Virtual Machine є ключем до незалежності від основної операційної системи й апаратних засобів. Це платформа, що приховує основну операційну систему від Java аплетів і додатків. Крім того, перенос Java Virtual Machine на броузер або іншу операційну систему не становить ніяких труднощів.
Віртуальна Машина визначає машинно-незалежний формат для двійкових файлів, що зберігаються з розширенням class. Цей формат включає команди для віртуального комп'ютера у формі байт-кодів. Подання байт-коду будь-якої програми, написаної мовою Java, символічне, у тому розумінні, що зсуви й індекси усередині методів не є константами, а представляються символічно, як строкові імена. При першому виклику методу, він відшукується у файлі class по імені, і в цей момент визначається числове значення його зсуву для більш швидкого доступу при наступних викликах. Тому, будь-який новий метод або метод, що перевантажує старий, може бути визначений у будь-якому місці в структурі класу. Він буде переданий у символічній формі, і програма належним чином виконається без порушень при виконанні коду.
Байт-Коди - високорівневі подання програми, які проходять оптимізацію й машинну генерацію об'єктного коду за допомогою just-in-time компілятора, після чого можуть бути виконані. Крім того, всередині Virtual Machine може запуститися «збір сміття», під час якої змінні втримуються в стеках в адресному просторі Java-Платформи.
додаток програмування інтерфейс java
1.6 Java Base API (Основний прикладний програмний інтерфейс Java)
Вибираючи Java Base API в Java-Платформі, розробники можуть бути впевнені в тім, що їхні додатки будуть працювати всюди.
У цей час, Java Base API визначений так само, як і Java Applet API, що буде описаний далі. У міру розвитку платформи, основний API буде розширюватися за рахунок міграцій Standard Extension API в Java Base API. Java Base API відомий також за назвою Java Core API.
Java Applet API (Прикладний програмний інтерфейс Java для аплетів)
Java Applet API, відомий також, як Java Base API визначає основні конструкторські блоки для створення повноцінно функціонуючих Java аплетів і додатків. Він включає всі класи пакетів java.lang, java.util, java.io, java.net, java.awt і java.applet. (Зверніть увагу на те, що Java Applet є повним набором API, доступним в Java Development Kit версії 1.0.2 від JavaSoft)
Java Standard Extension API (Стандартний розширений прикладний програмний інтерфейс Java)
Даний розділ описує Java Standard Extension API (Стандартні розширені прикладні програмні інтерфейси Java). Подібні розширення називають «стандартними», виходячи з того, що вони створюють опубліковані, однакові, відкриті API, які можуть бути реалізовані ким завгодно. Один раз визначені, вони можуть бути довизначені, але, для збереження сумісності, описувані API не повинні змінюватися, тому що при зміні, можлива ситуація, при якій класи не будуть працювати належним чином. Згодом, додаються всі нові й нові розширення. Крім того, деякі із цих розширень будуть мігровані в Java Base API.
Поточний план для описаних вище міграцій показаний у нижченаведеній таблиці 1.1.
Таблиця 1.1. Міграції в Java Base API
Міграція в Java Base API |
Перебуває в Java Standard Extension |
|
Java 2D |
Java 3D |
|
Audio Video |
MIDI |
|
Java Media Framework |
Java Share |
|
Java Animation |
Java Telephony |
|
Java Enterprise |
Java Server |
|
Java Commerce |
Java Management |
|
Java Security |
Реалізація повинна бути підходящою для будь-якої платформи, на якій вона запускається. Наприклад, настільна операційна система, що має доступ до спікера, буде відтворювати аудіо, однак, на універсальній або мережній операційній системі, що не має спікера, повинне бути реалізоване деяке «порожнє» виконання команди відтворення звуку або визначене деяке інше чітке поводження (наприклад: генерація виключення).
Java Security API (Прикладний програмний інтерфейс безпеки Java)
Java-Сервер - розширювана структура, що дає можливість розробки широкого спектра Інтернет і інтранет серверів, одночасно спрощуючи її. API структура включає серверні бібліотеки класів для адміністрування серверів, керування доступом і динамічною обробкою ресурсів. Дана структура також включає Servlet API (Прикладний програмний інтерфейс для написання сервлетів Java).
Сервлети - платформо-незалежні Java об'єкти, подоби аплетів, але, вони виконуються на стороні сервера. Сервлети можуть розташовуватися локально на сервері або можуть закачуватися на сервер з мережі (відповідно до обмежень, пов'язаним з безпекою). Область застосування сервлетів досить широка, починаючи від простих HTTP сервлетів (ефективна заміна cgi-скриптів) і закінчуючи більш складними сервлетами, що використовують JDBC/ODBC для забезпечення зв'язку із БД.
1.7 Середовище виконання Java
Середовище розробки мови Java включає і середовище компіляції, і середовище виконання, як показано на мал. 3. Java-Платформа представлена середовищем виконання. Розроблювач пише мовою програмування Java вихідний код (файли з розширенням java) і компілює їх у байт-коди (файли з розширенням class). Байт-Коди є інструкціями для Java Virtual Machine. При створенні аплета розроблювач, крім того, розміщає файл із байт-кодом на HTTP сервері й додає до HTML-Коду Web-сторінки тег <applet code=filename>, що вказує на точку входу для файлу з байт-кодом.
Байт-Коди можуть, на вибір, інтерпретуватися інтерпретатором або звертатися в машинний код just-in-time (JIT) генератором коду, частіше іменованим JIT Compiler (Компілятор «на льоту»). Інтерпретатор і JIT компілятор працюють в оточенні системи виконання (потоки, пам'ять, інші системні ресурси). Будь-які класи динамічно довантажуються в момент, коли це потрібно аплету.
1.8 Особливості сучасних засобів створення Java-Додатків
Серед особливостей засобів створення Java-Додатків, цікавих у плані створення корпоративних рішень, варто назвати засоби підвищення продуктивності праці розроблювачів, засобу підтримки колективної роботи, підтримку різних етапів життєвого циклу додатків, які передують створенню коду додатків (таких як керування вимогами, моделювання даних і додатків), так і наступних за ним (тестування, впровадження й супровід), можливості, пов'язані з повторним використанням моделей і коду, підтримку засобів і стандартів створення розподілених додатків і їхньої інтеграції (включаючи підтримку стандарту J2EE і Web-Сервісів XML), а також можливість створення мобільних рішень, у тому числі підтримку стандарту J2ME.
Сучасні інструменти розробки Java-Додатків, як правило, мають різні засоби підвищення продуктивності праці програмістів. Тут ми не будемо зупинятися на таких уже звичних речах, що стали, як колірне виділення синтаксичних конструкцій, візуальні редактори користувальницьких інтерфейсів, підтримка створення додатків з базами даних (у випадку Java - за допомогою універсального механізму доступу до даних JDBC, Java DataBase Connectivity) або наявність засобів звичайного й віддаленого налагодження, - зараз без них жоден інструмент для розробки додатків не має шансів зайняти скільки-небудь значимої позиції на ринку.
Із засобів, наявність яких не є очевидною, у першу чергу відзначимо засоби рефакторинга - автоматичного внесення супровідних змін у код при перейменуванні класів (наприклад, зміна коду, що містить посилання на перейменований клас) і зміні параметрів методів, автоматичного додавання конструкцій try…catch навколо блоку коду з урахуванням можливих виключень, які можуть відбутися при виклику методів, що втримуються в цьому блоці, а також інших дій, пов'язаних з автоматичним внесенням змін у код, що конче потрібно при колективній роботі над більшими проектами й при повторному використанні коду. Крім цього, до корисних особливостей Java-Інструментів можна віднести засоби створення тестових класів, засоби конвертації файлів SQLJ1 в Java-Код, різні засоби, що спрощують генерацію тестів і поставку додатків, а також наявність майстрів створення Web-Додатків, Web-сервісів, генерації коду на підставі WSDL2 - описів.
Говорячи про підтримку проектування додатків, варто підкреслити, що створення Java-Додатків масштабу підприємства зараз практично немислимо без застосування засобів UML-Моделювання. Такі засоби можуть бути включені безпосередньо до складу продукту або підтримуватися на рівні інтерфейсів до них; при цьому найбільш кращим є наявність засобів UML-Моделювання у вигляді модулів, убудованих у середовище розробки й підтримуючу синхронну зміну моделей і коду.
Особливо варто зупинитися на тім, що в даний момент у всіх продуктах, що лідирують на ринку засобів розробки Java-Додатків (іноді тільки в найбільш дорогих редакціях цих продуктів), реалізована можливість створення EJB (Enterprise Java Beans) - об'єктів, що виконуються під керуванням серверів додатків, що підтримують специфікацію J2EE. Ця можливість найбільш важлива з погляду застосовності подібного засобу при створенні корпоративних рішень, зокрема розподілених додатків, що реалізують наступні схеми: «підприємство - споживач» (B2C, business-to-consumer), такі як онлайновий продаж товарів, бронювання квитків і місць у готелях; «підприємство - підприємство» (B2B, business-to-business), такі як віртуальні торговельні площадки й онлайнові аукціони; «підприємство - співробітник» (B2E, business-to-employee), такі як корпоративні портали. Найчастіше в корпоративних рішеннях застосовуються конфігурації, що містять кілька серверів додатків або різні кластерні конфігурації. Нерідко виробники Java-Інструментів роблять власні сервери додатків, але багато хто з них підтримує створення об'єктів EJB і для серверів додатків інших виробників.
Говорячи про корпоративні рішення, не можна не відзначити, що й на Заході, і в Україні, що переживає сьогодні наслідки так званої острівкової автоматизації, досить актуальна проблема інтеграції різних додатків, використовуваних як усередині одного підприємства, так і на різних підприємствах. Одним з досить універсальних і простих способів рішення цієї проблеми є реалізація функцій додатків, до яких варто надати доступ ззовні у вигляді Web-Сервісів XML, що дозволяє звертатися до них інших додатків, що підтримують Web-Сервіси, незалежно від того, на яких платформах вони експлуатуються й за допомогою яких засобів розробки створені. У цей час популярність цієї технології інтеграції швидко росте й більшість виробників серверів додатків і засобів розробки вже так чи інакше реалізували підтримку Web-Сервісів і пов'язаних з ними технологій. Відзначимо, однак, що сьогодні є й альтернативні засоби інтеграції, відмінні від Web-Сервісів, наприклад засоби підтримки синхронного доступу до EJB з Windows - або.NET-Додатків, таких як Borland Janeva3.
Як правило, сучасні засоби створення Java-Додатків підтримують розробку додатків для декількох різних платформ, а найчастіше й самі існують у версіях для різних платформ. Звичайно в їхнє число входять Windows, Linux, Solaris, а іноді й інші операційні системи.
Нерідко сам засіб розробки Java-Додатків може поставлятися як окремо, так і в складі комплекту інструментів, що включають звичайно засоби UML-Моделювання, версію сервера додатків, призначену для розробки й налагодження EJB, а також, можливо, інші інструменти (наприклад, засоби створення користувальницьких інтерфейсів Web-Додатків або засоби оптимізації продуктивності додатків).
Borland JBuilder 9 і Borland Enterprise Studio 6 for Java
У цей час компанія Borland є лідером ринку засобів розробки Java-Додатків - її продукти JBuilder і Enterprise Studio for Java стали одними із самих популярних засобів розробки й компанія приділяє їхньому розвитку максимум уваги.
JBuilder 9, випущений у травні цього року, поставляється як окремо, так і в складі пакета Borland Enterprise Studio 6 for Java. Цей продукт підтримує всі стандарти Java 2 (J2SE, J2EE, J2ME), має різноманітні засоби підвищення продуктивності праці розроблювачів і скорочення витрат на створення додатків, включаючи різноманітні засоби рефакторинга, інструменти конвертації файлів SQLJ в Java-Код, засоби, що спрощують поставку й розгортання додатків, у тому числі J2 EE-Додатків, майстри створення Web-Додатків і Web-сервісів, засоби генерації клієнтських класів на підставі WSDL-Описів. Крім того, цей продукт легко інтегрується з J2 EE-Сумісним сервером додатків Borland Enterprise Server, із засобами підтримки різних етапів життєвого циклу розробки додатків і засобами керування колективною розробкою додатків, придбаними корпорацією Borland протягом останнього року, у тому числі із засобом керування колективною розробкою Borland StarTeam, засобом UML-Моделювання Borland Together Edition for JBuilder, а також із засобом оптимізації Borland Optimizeit Suite, що дозволяє оптимізувати код JSP (JavaServer Pages), сервлетів, EJB. З рис. 1.4 видно, наприклад, що й консоль Borland Enterprise Server, і репозитарий StarTeam доступні безпосередньо із середовища розробки.
Рис. 1.4. Середовище розробки Borland JBuilder 9
До складу даного продукту також входять інтерфейси до найбільш популярних засобів контролю версій вихідних текстів додатків, конфігуруємі інтелектуальні шаблони вихідних текстів програм (Smart Code templates) для автоматизації написання коду, а також майстри для створення Web-Сервісів. Для розроблювачів крос-платформних додатків реалізована підтримка Apache Ant - платформенно-незалежного інструмента з відкритими вихідними текстами для об'єктно-орієнтованого керування процесом складання додатка за допомогою конфігураційних файлів, написаних мовою XML. До складу пакета JBuilder 9 включені засоби розробки додатків JBuilder MobileSet для мобільних платформ, зокрема стільникових телефонів Nokia і Siemens. До безсумнівних переваг даного продукту варто віднести підтримку серверів додатків різних виробників, у тому числі IBM і BEA.
Поряд з декількома різними редакціями JBuilder компанія Borland поставляє інтегрований пакет для розроблювачів Borland Enterprise Studio 6 for Java, призначений для підтримки всього життєвого циклу додатків і утримуючий, крім Borland JBuilder 9, засіб керування вимогами Borland CaliberRM, Borland Together Edition for JBuilder 6.1, Borland Optimizeit Suite 5.5, Borland Enterprise Server 5.2, Borland JDataStore 6 і Borland StarTeam.
IBM WebSphere Studio 5
IBM WebSphere Studio 5 являє собою інтегрований набір засобів розробки Java-Додатків, заснований на WebSphere Studio WorkBench - реалізації IBM платформи Eclipse, призначеної для інтеграції різних інструментів розробки в єдине середовище (рис. 1.5). Даний пакет є першою в галузі єдиним корпоративним середовищем розробки Web-Сервісів для різних платформ, включаючи успадковані платформи, у цьому продукті вперше пропонується можливість розробки Web-Сервісів на базі успадкованих додатків, написаних на мовах COBOL і PL1.
Рис. 1.5. Середовище розробки IBM WebSphere Studio 5
Існує кілька редакцій цього продукту, призначених для створення Web-Сайтів, корпоративних додатків, мобільних рішень. До складу всіх редакцій WebSphere Studio входять сервер додатків WebSphere Application Server Developer Edition, інструменти для поставки Web-Додатків, а також інтегровані в продукт засоби тестування й налагодження компонентів додатка, таких як EJB, JSP, HTML-Код.
WebSphere Studio має розвинені засоби підтримки Web-Сервісів XML. Зокрема, EJB і інші компоненти додатка можуть бути представлені у вигляді Web-Сервісів - для цієї мети існують відповідні майстри, які генерують WSDL-Код, дані UDDI і клієнтський додаток для тестування. За допомогою WebSphere Studio можна також створювати клієнтські додатки до вже існуючих Web-Сервісів.
До складу WebSphere Studio 5 не включені засоби UML-Моделювання, однак розроблювачі можуть вибрати яке-небудь із існуючих подібних засобів, що належать тій же компанії IBM (наприклад, Rational XDE), і інтегрувати їх в WebSphere Studio WorkBench. Для підтримки колективної розробки передбачені модулі розширення для Concurrent Versions System (CVS) - засоби контролю версій, що ставиться до категорії Open Source. Є також модулі розширення для інших засобів контролю версій, створені незалежними виробниками.
WebSphere Studio можна використовувати на платформах Microsoft Windows 98/Mе/NT/2000, RedHat Linux, SuSE Linux. Однак створені за допомогою цього продукту додатки можна експлуатувати й на інших платформах при наявності J2 EE-Сумісного сервера додатків і відповідних засобів поставки додатків, створених незалежними виробниками.
JetBrains Intelli IDEA 3.0
Засіб розробки Java-Додатків Intelli IDEA чеської компанії JetBrains останнім часом залучає до себе все більше уваги завдяки високій якості продукту й зручності його застосування (гасло авторів цього продукту: «Develop with Pleasure!» - «Розробляйте із задоволенням!»).
Intelli IDEA 3.0 містить надзвичайно розвинені засоби автоматичного завершення коду, застосування шаблонів, пошуку, оптимізації, налагодження й рефакторинга коду й навіть запису зненацька сгенерованих ідей з метою їхньої наступної реалізації; дозволяє розширювати середовище розробки продуктами незалежних компаній, надаючи для цього відповідний прикладний програмний інтерфейс - Open API; містить розвинені засоби створення, перетворення й редагування XML-Документів і пошуку помилок у них, засоби інтеграції з інструментами контролю версій, засіб тестування JUnit, інструмент складання додатків Jakarta Ant, компілятор Jikes (високопродуктивний компілятор Java-Коду в байт-код, написаний мовою C++), засобу інтеграції з Microsoft Visual SourceSafe (рис. 1.6).
Рис. 1.6. Середовище розробки JetBrains Intelli
Intelli IDEA підтримує створення J2SE-, JSP- і J2 EE-Додатків, створення й застосування Web-Сервісів.
Eclipse
Eclipse (від англ. затьмарення[1]) - вільне інтегроване середовище розробки модульних кроссплатформенних додатків. Розвивається й підтримується Eclipse Foundation.
Найбільш відомі додатки на основі Eclipse Platform - різні «Eclipse IDE» для розробки ПО на безлічі мов (наприклад, найбільш популярний «JavaIDE», підтримуваний початково, не покладається на які-небудь закриті розширення, використовує стандартний відкритий API для доступу до Eclipse Platform).
Історія: спочатку Eclipse розроблялася фірмою IBM як спадкоємець середовища розробки IBM VisualAge, як корпоративний стандарт IDE для розробки на різних мовах під платформи IBM. По відомостях IBM, проектування й розробка коштували 40 мільйонів долларів. Исходный код був повністю відкритий і зроблений доступним після того, як Eclipse був переданий для подальшого розвитку незалежному від IBM співтовариству.
В Eclipse 3.0 (2003 год) були обрані специфікації сервісної платформи OSGi, як архітектура часу виконання. З версії 3.0 Eclipse перестав бути монолітною IDE, що підтримує розширення, а сам став набором розширень. В основі лежать фреймворк OSGi і SWT/JFace, на основі яких розроблений наступний рівень - RCP (Rich Client Platform, платформа для розробки повноцінних клієнтських додатків). RCP є основою не тільки для Eclipse, але й для інших RCP-Додатків, наприклад Azureus і File Arranger. Наступний рівень - сам Eclipse, що представляє собою набір розширень RCP - редактори, панелі, перспективи, модуль CVS і модуль Java Development Tools (JDT).
Остання стабільна версія програми - 3.5 (Galileo). Вона, як і попередня їй версія 3.4 (Ganymede), підтримує нові можливості, що з'явилися в Java 6.0, і містить відновлення ключової OSGi-OSGi-моделі компонентів Equinox.
Переваги: Eclipse - у першу чергу повноцінна Java IDE, націлена на групову розробку: підтримка CVS входить у поставку Eclipse, активно розвиваються кілька варіантів SVN-модулів, існує підтримка VSS і інших. У силу безкоштовності й високої якості, Eclipse у багатьох організаціях є корпоративним стандартом для розробки додатків.
Друге призначення Eclipse - служити платформою для розробки нових розширень, чим він і завоював популярність: будь-який розроблювач може розширити Eclipse своїми модулями. Уже існують C/C++ Development Tools (CDT), які розробляються інженерами QNX разом з IBM, і засобу для мов COBOL, FORTRAN, PHP та ін. від різних розробників. Безліч розширень доповнює середовище Eclipse менеджерами для роботи з базами даних, серверами додатків і ін.
Eclipse написана на Java, тому є платформо-незалежним продуктом, за винятком бібліотеки SWT, що розробляється для всіх розповсюджених платформ (див. нижче). Бібліотека SWT використовується замість стандартної для Java бібліотеки Swing. Вона повністю опирається на платформу нижче (операційну систему), що забезпечує швидкість і натуральний зовнішній вигляд користувальницького інтерфейсу, але іноді викликає на різних платформах проблеми сумісності й стійкості додатків.
Архітектура: основою Eclipse є платформа розширеного клієнта (RCP-від англ. rich client platform). Її складають наступні компоненти:
- Ядро платформи (завантаження Eclipse, запуск модулів);
- OSGi (стандартне середовище поставки комплектів (англ.bundles));
- SWT (портуємий інструментарій віджетів);
- JFace (файлові буфери, робота з текстом, текстові редактори);
Робітниче середовище Eclipse (панелі, редактори, проекції, майстри).
GUI в Eclipse написаний з використанням інструментарію SWT. Останній, на відміну від Swing (який самостійно емулює графічні елементи керування), використовує графічні компоненти даної операційної системи. Користувальницький інтерфейс Eclipse також залежить від проміжного рівня GUI, називаного JFace, що спрощує побудовукористувальницького інтерфейсу, що базується на SWT.
Гнучкість Eclipse забезпечується за рахунок підключаємих модулів, завдяки чому можлива розробка не тільки на Java, але й на інших мовах, таких як C/C++, Perl, Groovy, Ruby, Python, PHP, Erlangта інші.
NetBeans
NetBeans IDE - вільне інтегроване середовище розробки додатків (IDE) на мовах прогрмування Java, JavaFX, Ruby, Python, PHP, JavaScript, C++ і ряді інших.
Середовище IDE NetBeans являє собою стандартне модульне інтегроване середовище розробки (Integrated Development Environment; IDE), написане мовою програмування Java. Проект NetBeans складається з інтегрованого середовища розробки з відкритим вихідним кодом, написаного мовою програмування Java, і платформи додатка, яка може використатися як загальна платформа для створення додатків будь-якого типу.
Середовище NetBeans - це інтегроване середовище для розроблювачів, засіб для програмістів, що допомагає писати, компілювати й налагоджувати програми. Вона написана мовою програмування Java, однак може підтримувати розробку на будь-якій мові. Існує також велика кількість модулів, що розширюють її функціональність. IDE NetBeans - це безкоштовний продукт без обмежень на область його застосування.
Доступна також Платформа NetBeans - модульна й розширювана основа, використовувана як програмне ядро для створення більших настільних додатків. Незалежні постачальники - партнери Sun, надають різні додаткові модулі, які легко інтегруються в платформу й можуть бути використані для розробки їхніх засобів і рішень.
Для розробки програм у середовищі NetBeans і для успішної інсталяції й роботи самого середовища NetBeans повинен бути попередньо встановлений Sun JDK або J2EE SDK відповідної версії. Середовище розробки NetBeans за замовчуванням підтримувала розробку для платформ J2SE і J2EE. Починаючи з версії 6.0 Netbeans підтримує розробку для мобільних платформ J2ME, C++ (тільки g++), PHP і Ruby без установки додаткових компонентів.
Проект NetBeans IDE підтримується й спонсуєтся компанією Oracle, однак розробка NetBeans ведеться незалежно співтовариством розроблювачів-ентузіастів (NetBeans Community) і компанією NetBeans Org.
По якості й можливостям останні версії NetBeans IDE не уступають кращим комерційним (платним) інтегрованим середовищам розробки для мови Java, таким, як IntelliJ IDEA, підтримуючи рефакторинг, профілювання, виділення синтаксичних конструкцій кольором, автододавання конструкцій, що набираються, на льоту, безліч визначених шаблонів коду й ін.
У версії NetBeans IDE 6.1[1]декларується підтримка UML, SOA, мови програмування Ruby (включаючи підтримку Ruby on Rails), а також засобу для створення додатків на J2ME для мобільних телефонів. У версії 6.5 додана підтримка мови PHP. Також для тестування викладено модуль підтримки Python[2].
NetBeans IDE підтримує плагіни, дозволяючи розроблювачам розширювати можливості середовища. Одним із найпопулярніших плагінів є потужний дизайнер звітів iReport[3] (заснований на бібліотеці JasperReports).
На ідеях, технологіях і в значній частині на вихідному коді NetBeans IDE базуються пропоновані фірмою Sun комерційні інтегровані середовища розробки для Java - Sun Java Studio Creator, Sun Java Studio Enterprise і Sun Studio (для ведення розробки на C, C++ або Фортран). Порівняно недавно Sun стала пропонувати ці середовища розробки безкоштовно для зареєстрованих в Sun Developer Network (SDN) розроблювачів, сама ж реєстрація на сайті безкоштовна й не вимагає ніяких попередніх умов, крім згоди з ліцензією CDDL.
NetBeans IDE доступна у вигляді готових дистрибутивів (перекомпільованих бінарних файлів) для платформ Microsoft Windows, GNU/Linux, FreeBSD, Mac OS X, OpenSolaris і Solaris (як для SPARC, так і для x86 - Intel і AMD). Для всіх інших платформ доступна можливість скомпілювати NetBeans самостійно з вихідних текстів.
У релізі NetBeans IDE 6.7 була додана інтеграція з Project Kenai[4], підтримка мови Groovy і веб-фреймворка Grails. У версії 6.8 - підтримка PHP-Фреймворка Symfony.
NetBeans IDE 6.0, створена на основі попередньої версії 5.5.1, надає гнучку підтримку створення модулів для IDE і інтернет-додатків, заснованих на платформі NetBeans, новий дизайнер користувальницьких інтерфейсів (відомий за назвою «Проект Matisse»), нову й перероблену підтримку системи керування версіями CVS, підтримку Weblogic 9 і JBoss 4, і безліч поліпшень у редакторі. NetBeans 6.0 поставляється в складі дистрибутивів Ubuntu 8.04 і Debian Linux distributions.[8]
NetBeans IDE 6.5, випущена в листопаді 2008 року, розширює можливості Java EE (включаючи підтримку Java Persistence, EJB 3 і JAX-WS). Додатково, NetBeans Enterprise Pack підтримує розробку додатків Java EE 5 Enterprise, включаючи візуальні засоби SOA, засоби для роботи з XML schema, роботу з веб-сервісами (для BPEL), і моделювання мовою UML. Складання NetBeans IDE Bundle for C/C++ підтримує проекти на мовах C/C++.
Поточна версія середовища - NetBeans IDE 6.8
2. Основні принципи програмування в середовищі JAVA
2.1 Загальні уявлення про мову Java
Java став першою універсальною C-Образною мовою прикладного програмування, що забезпечила легкість переходу на цю мову великої кількості програмістів, знайомих з C і C++. А наявність засобів строгої перевірки типів, орієнтація на роботу з комп'ютерними мережами, переносимість на рівні коду, що виконується, і підтримка платформонезалежного графічного інтерфейсу, а також заборона прямого звертання до апаратури забезпечили виконання більшості вимог, що пред'являлися до мови прикладного програмування. Чим більшими стають швидкодія й обсяг пам'яті комп'ютерів, тим більша потреба в поділі прикладного й системного програмного забезпечення. Відповідно, для прикладних програм зникає необхідність прямо звертатися до пам'яті й інших апаратних пристроїв комп'ютера. Тому серед прикладних програм з кожним роком росте частка програмного забезпечення, написаного на Java і мовах. Net. Але як по числу програмістів, так і по числу пристроїв, що використовують відповідні платформи, Java у цей час лідирує з більшим відривом.
2.2 Ідентифікатори. Змінні й типи. Примітивні й посилальні типи
Ідентифікатори - це імена змінних, підпрограм-функцій і інших елементів мови програмування. В ідентифікаторах можна застосовувати тільки букви й цифри, причому першою завжди повинна бути буква (у тому числі символи підкреслення й долара), а далі може йти довільна комбінація букв і цифр. Деякі символи національних алфавітів розглядаються як букви, і їх можна застосовувати в ідентифікаторах. Але деякі використовуються як символи-роздільників, і в ідентифікаторах їх використовувати не можна.
Мова Java регістро-чутлива. Це значить, що ідентифікатори чутливі до того, у якому регістрі (верхньому або нижньому) набираються символи. Наприклад, імена i1 і I1 відповідають різним ідентифікаторам. Це правило звично для тих, хто вивчав мови C/C++, але може спочатку викликати складності в тих, хто вивчав мову PASCAL, що є регістро-нечутливим.
Довжина ідентифікатора в Java будь яка, принаймні, у межах розумного. Так, навіть при довжині ідентифікатора у всю ширину екрана компілятор NetBeans правильно працює.
Змінна - це іменована комірка пам'яті, уміст якої може змінюватися. Перед тим, як використовувати яку-небудь змінну, вона повинна бути задана в області програми, що передує місцю, де ця змінна використовується. При оголошенні змінної спочатку вказується тип змінної, а потім ідентифікатор задаваємої змінної. Вказівка типу дозволяє компіляторові задавати розмір осередку (обсяг пам'яті, виділюваної під змінну або значення даного типу), а також припустимого правила дій зі змінними й значеннями цього типу. В Java існує ряд визначених типів: int - ціле число, float - речовинне число, boolean - логічне значення, Object - найпростіший об'єктний тип (клас) Java, і т.д. Також є можливість задавати власні об'єктні типи (класи).
Оголошення змінних a1 і b1, що мають якийсь тип MyType1, здійснюється так:
MyType1 a1, b1;
При цьому MyType1 - ім'я типу цих змінних.
Інший приклад - оголошення змінної j типу int:
int j;
Типи бувають визначені й користувальницькі. Наприклад, int - визначений тип, а MyType1 - користувальницький. Для оголошення змінної не потрібно ніякого зарезервованого слова, а ім'я типу пишеться перед іменами задаваємих змінних.
Оголошення змінних може супроводжуватися їхньою ініціалізацією - присвоюванням початкових значень. Приведемо приклад такого оголошення цілочисельних змінних i1 і i2:
int i1=5;
int i2=-78;
або
int i1=5, i2=-78;
Присвоювання виду int i1=i2=5;, характерні для C/C++, заборонені.
Для починаючих програмістів відзначимо, що символ «=» використовується в Java і багатьох інших мовах як символ присвоювання, а не символу рівності, як це прийнято в математиці. Він означає, що значення, що знаходиться із правої сторони від цього символу, копіюється в змінну, що стоїть в лівій частині. Тобто, наприклад, присвоювання b=a означає, що в змінну (осередок) з ім'ям b треба скопіювати значення зі змінної (осередку) з ім'ям a. Тому неправильне з погляду математики вираження
x=x+1
у програмуванні цілком коректно. Воно означає, що треба взяти значення, що зберігається в осередку з ім'ям x, додати до нього 1 (це буде відбуватися десь поза осередком x), після чого результат, що вийшов, записати в осередок x, замінивши їм колишнє значення.
Після оголошення змінних вони можуть бути використані у вираженнях і присвоюваннях:
змінна=значення;
змінна=вираження;
змінна1= змінна2;
і так далі. Наприклад,
i1=i2+5*i1;
Примітивними типами називаються такі, для яких дані втримуються в одній комірці пам'яті, і цей осередок не має підосередків.
Посилальними типами називаються такі, для яких у комірці пам'яті (посилальної змінної) утримуються не самі дані, а тільки адреси цих даних, тобто посилання на дані. При присвоюванні в посилальну змінну заноситься нова адреса, а не самі дані. Але безпосереднього доступу до адреси, що зберігається в посилальних змінних, немає. Це зроблено для забезпечення безпеки роботи з даними - як з погляду усунення ненавмисних помилок, характерних для роботи з даними по їхніх адресах у мовах C/C++/PASCAL, так і для усунення можливості навмисного злому інформації.
Якщо посилальної змінної не привласнено посилання, у ній зберігається нульова адреса, якому дане символічне ім'я null. Посилання можна привласнювати один одному, якщо вони сумісні по типах, а також привласнювати значення null. При цьому з однієї посилальної змінної в іншу копіюється адреса. Посилальні змінні можна порівнювати на рівність, у тому числі на рівність null. При цьому рівняються не дані, а їхньої адреси, що зберігаються в посилальні змінні.
В Java всі типи діляться на примітивні й посилальні. До примітивних типів ставляться наступні визначені типи: цілочисельні типи byte, short, int, long, char, типи даних у форматі із плаваючою крапкою float, double, а також булевий (логічний) тип boolean і типи-перерахування, що повідомляються за допомогою зарезервованого слова enum (скорочення від enumeration - «перерахування»). Всі інші типи Java є посилальними.
В Java діють наступні угоди про регістр букв в ідентифікаторах:
Подобные документы
Аналіз особливостей мови програмування Java та середовища Android Studio. Розробка програмного забезпечення для якісного та ефективного вивчення іноземних слів. Побудова базових алгоритмів і структури даних. Вибір мови програмування, реалізація програми.
курсовая работа [335,3 K], добавлен 11.01.2015Історія розвитку мови Java, основні технології та їх застосування для роботи з SQL-серверами. Огляд багатопоточного програмування в Java. Принципи функціонування сервлетів та JSP-сторінок. Зміна розміру графічних об’єктів, робота з кольорами в Java.
курсовая работа [49,3 K], добавлен 29.03.2010Загальна характеристика та особливості програмування сучасних систем автоматизованого проектування. Порівняльна характеристика середовищ розробки прикладних програм на мові JAVA. Ознайомлення з принципами і особливостями роботи певних класів, компонентів.
курсовая работа [2,0 M], добавлен 31.01.2014Розробка кросплатформового інструменту електронного тестування учнів молодших та середніх класів по іноземній мові. Вибір середовища розробки та системи контролю версій. Опис мови програмування Java та лістинг програми. Апаратні та програмні вимоги.
дипломная работа [608,3 K], добавлен 26.10.2010Створення баз даних за допомогою стандартних бібліотек Java та клієнт-серверних програм. Основні стандартні класи і методи бібліотек SQL та swing, бібліотек, що дозволяють опрацьовувати дані СУБД та навчитись концепціям програмування мовою Java.
лабораторная работа [215,3 K], добавлен 04.10.2011Основні концепції компонентної розробки прикладних задач: com/dcom, Java Beans, corba, .net. Розробка стратегії гри для кожної категорії учасників, компонентів. Програмна реалізація спроектованої системи, обґрунтування вибору використовуваних засобів.
курсовая работа [1,0 M], добавлен 11.11.2014Архитектура Java и Java RMI, их основные свойства, базовая система и элементы. Безопасность и виртуальная Java-машина. Интерфейс Java API. Пример использования приложения RMI. Работа с программой "Calculator". Универсальность, портативность платформ.
курсовая работа [208,6 K], добавлен 03.12.2013Розробка логічної гри "Тетріс" у складі набору об’єктно-орієнтованих моделей, програмного коду з використанням об’єктно-орієнтованної мови Java. Проектування архітектури гри, аналіз вимог до неї, опис реалізації, кодування та тестування програми.
курсовая работа [2,2 M], добавлен 24.10.2010Характеристика об'єктно-орієнтованої мови програмування Java. Розробка програми з кнопками доступу до хімічної таблиці, списку елементів та додаткової інформації про програму та про продукт (ким був розроблений та звідки була взята інформація для нього).
отчет по практике [2,6 M], добавлен 18.05.2014Принцип работы Java. Аплеты как особенность Java-технологии, характеристика методов их защиты. Модель безопасности JDK1.2 и концепция "песочницы". Иерархия криптографических сервисов, алгоритмов. Объектная организация криптографической подсистемы Java.
реферат [54,8 K], добавлен 09.09.2015