Skip to content

9. Додатки

Тут ми розповідаємо, як встановити інструменти, що використовуються в цьому документі, на комп’ютерах із Windows 7 або 8.

9.1. Встановлення JDK

На сайті URL можна знайти [http://www.oracle.com/technetwork/java/javase/downloads/index.html] (жовтень 2014 р.), найновішу версію — JDK. Надалі папку з інсталяційними файлами JDK будемо називати <jdk-install>.

 

9.2. Встановлення Maven

Maven — це інструмент для управління залежностями Java-проекту та багато іншого. Він доступний у URL та [http://maven.apache.org/download.cgi].

 

Завантажте та розпакуйте архів. Папку для встановлення Maven ми назвемо <maven-install>.

  • У файлі [1] файл [conf / settings.xml] налаштовує Maven;

У ньому містяться такі рядки:


  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
-->

Значення за замовчуванням у рядку 4, якщо, як у мене, ваш {user.home} має пробіл у шляху (наприклад, [C:\Users\Serge Tahé]), може спричинити проблеми для деяких програм, зокрема IntellijIDEA. Тоді слід написати щось на кшталт:


  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->
<localRepository>D:\Programs\devjava\maven\.m2\repository</localRepository>

і в рядку 7 слід уникати шляху, що містить пробіли.

9.3. Встановлення STS (Spring Tool Suite)

Ми встановимо SpringSource Tool Suite [http://www.springsource.com/developer/sts] — це Eclipse, попередньо оснащений численними плагінами, пов’язаними з фреймворком Spring, а також із попередньо встановленою конфігурацією Maven.

  • перейдіть на сайт SpringSource Tool Suite (STS) [1], щоб завантажити поточну версію STS [2A] [2B],
  • завантажений файл є інсталятором, який створює структуру файлів [3A] [3B]. У [4] запускається виконуваний файл,
  • у [5] — робоче вікно IDE після закриття вікна привітання. У [6] відображається вікно серверів додатків,
  • у [7] — вікно серверів. Сервер зареєстровано. Це сервер VMware, сумісний із Tomcat.

Необхідно вказати в STS папку встановлення Maven:

  • у [1-2] налаштовуємо STS;
  • у [3-4] додається нова інсталяція Maven;
  • у полі [5] вказується папка встановлення Maven;
  • у [6] завершуємо роботу майстра;
  • у [7] нову інсталяцію Maven встановлюють як інсталяцію за замовчуванням;
  • у [8-9] перевіряється локальне сховище Maven — папка, куди будуть завантажуватися залежності та куди STS розміщуватиме створені артефакти;

9.4. Встановлення сервера Tomcat

Сервери Tomcat доступні за посиланням URL [http://tomcat.apache.org/download-80.cgi]. Приклади в цьому документі було протестовано з версією 8.0.9, доступною за посиланням URL [http://archive.apache.org/dist/tomcat/tomcat-8/v8.0.9/bin/].

Завантажте [1] архів у форматі zip, що відповідає вашій робочій станції. Після розпакування ви отримаєте структуру каталогів [2]. Після цього можна додати цей сервер до списку серверів STS:

  • у [1-3] додаємо новий сервер у STS; (щоб відкрити вікно серверів, виберіть «Window» / «Show view» / «Other» / «Server» / «Servers»);
  • у [5] виберіть сервер Tomcat 8;
  • у [6] надайте цьому серверу ім’я;
  • у [8] вкажіть папку, куди було завантажено Tomcat;
  • у [9] — новий сервер;
  • у [11-12] запустіть сервер Tomcat 8;
  • у [13-14] — вікно журналів;
  • у [15] — щоб зупинити його;

9.5. Встановлення [WampServer]

[WampServer] — це набір програмного забезпечення для розробки на PHP / MySQL / Apache на комп’ютері з ОС Windows. Ми будемо використовувати його виключно для SGBD та MySQL.

  • на сайті [WampServer] [1] виберіть відповідну версію [2],
  • завантажений виконуваний файл є інсталятором. Під час інсталяції запитується різноманітна інформація. Вона не стосується MySQL. Тому її можна проігнорувати. Після завершення встановлення з’явиться вікно [3]. Запустіть [WampServer],
  • у [4], іконка [WampServer] встановлюється на панелі завдань у нижньому правому куті екрана [4],
  • при натисканні на неї з’являється меню [5]. Воно дозволяє керувати сервером Apache та SGBD MySQL. Для управління ним використовується опція [PhpPmyAdmin],
  • після чого з’являється вікно, показане нижче,

Image

Тут ми не будемо детально зупинятися на використанні [PhpMyAdmin]. У цьому документі наведено інформацію, яку слід знати у разі потреби.

9.6. Встановлення плагіна Chrome [Advanced Rest Client]

У цьому документі використовується браузер Chrome від Google (http://www.google.fr/intl/fr/chrome/browser/). До нього буде додано розширення [Advanced Rest Client]. Для цього можна виконати такі дії:

 
  • після чого додаток стане доступним для завантаження:
  • щоб її отримати, вам потрібно створити обліковий запис Google. [Google Web Store] потім вимагає підтвердження [1]:
  • У [2] доданий розширення доступний у меню [Applications] [3]. Цей пункт меню відображається на кожній новій вкладці, яку ви створюєте (CTRL-T) у браузері.

9.7. Управління jSON на Java

Фреймворк [Spring MVC], що працює прозоро для розробника, використовує бібліотеку jSON [Jackson]. Щоб проілюструвати, що таке jSON (JavaScript Object Notation), ми наводимо тут програму, яка серіалізує об’єкти у формат jSON та виконує зворотну операцію, десеріалізуючи отримані рядки jSON для відтворення вихідних об’єктів.

Бібліотека «Jackson» дозволяє побудувати:

  • рядок jSON для об’єкта: new ObjectMapper().writeValueAsString(object);
  • об’єкт із рядка jSON: new ObjectMapper().readValue(jsonString, Object.class).

Обидва методи можуть викликати виняток IOException. Ось приклад.

  

Вищезазначений проєкт — це проєкт Maven із таким файлом [pom.xml]:


<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>istia.st.pam</groupId>
  <artifactId>json</artifactId>
  <version>1.0-SNAPSHOT</version>

  <dependencies>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.3.3</version>
    </dependency>
  </dependencies>
</project>
  • рядки 12–16: залежність, яка завантажує бібліотеку «Jackson»;

Клас [Personne] має такий вигляд:


package istia.st.json;

public class Personne {
    // дані
    private String nom;
    private String prenom;
    private int age;

    // виробники
    public Personne() {

    }

    public Personne(String nom, String prénom, int âge) {
        this.nom = nom;
        this.prenom = prénom;
        this.age = âge;
    }

    // підпис
    public String toString() {
        return String.format("Personne[%s, %s, %d]", nom, prenom, age);
    }

    // методи getter та setter
...
}

Клас [Main] має такий вигляд:


package istia.st.json;

import com.fasterxml.jackson.databind.ObjectMapper;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

public class Main {
  // інструмент серіалізації/десеріалізації
  static ObjectMapper mapper = new ObjectMapper();

  public static void main(String[] args) throws IOException {
    // створення особи
    Personne paul = new Personne("Denis", "Paul", 40);
    // відображення jSON
    String json = mapper.writeValueAsString(paul);
    System.out.println("Json=" + json);
    // інстанціювання об’єкта «Особа» на основі JSON
    Personne p = mapper.readValue(json, Personne.class);
    // відображення об’єкта «Особа»
    System.out.println("Personne=" + p);
    // масив
    Personne virginie = new Personne("Radot", "Virginie", 20);
    Personne[] personnes = new Personne[]{paul, virginie};
    // відображення JSON
    json = mapper.writeValueAsString(personnes);
    System.out.println("Json personnes=" + json);
    // словник
    Map<String, Personne> hpersonnes = new HashMap<String, Personne>();
    hpersonnes.put("1", paul);
    hpersonnes.put("2", virginie);
    // відображення JSON
    json = mapper.writeValueAsString(hpersonnes);
    System.out.println("Json hpersonnes=" + json);
  }
}

Виконання цього класу призводить до виведення на екран наступного тексту:

1
2
3
4
Json={"nom":"Denis","prenom":"Paul","age":40}
Personne=Personne[Denis, Paul, 40]
Json personnes=[{"nom":"Denis","prenom":"Paul","age":40},{"nom":"Radot","prenom":"Virginie","age":20}]
Json hpersonnes={"2":{"nom":"Radot","prenom":"Virginie","age":20},"1":{"nom":"Denis","prenom":"Paul","age":40}}

З цього прикладу слід звернути увагу на:

  • об'єкт [ObjectMapper], необхідний для перетворень jSON / Object: рядок 11;
  • перетворення [Personne] --> jSON: рядок 17;
  • перетворення jSON --> [Personne]: рядок 20;
  • виняток [IOException], викликаний обома методами: рядок 13.

9.8. Встановлення [Webstorm]

[WebStorm] (WS) — це IDE від JetBrains для розробки додатків HTML / CSS / JS. Я вважаю, що він ідеально підходить для розробки додатків на Angular. Сайт для завантаження — [http://www.jetbrains.com/webstorm/download/]. Це платна версія IDE, але можна завантажити 30-денну пробну версію. Існують недорогі версії для особистого користування та для студентів.

Для встановлення бібліотек JS у додатку WS використовує інструмент під назвою [bower]. Цей інструмент є модулем [node.js] — набору бібліотек JS. Крім того, бібліотеки JS завантажуються з репозиторію Git, що вимагає наявності клієнта Git на комп’ютері, з якого здійснюється завантаження.

9.8.1. Встановлення [node.js]

Репозиторій для завантаження [node.js] — це [http://nodejs.org/]. Завантажте інсталятор, а потім запустіть його. Наразі більше нічого робити не потрібно.

9.8.2. Встановлення інструменту [bower]

Встановлення утиліти [bower], яка дозволить завантажувати бібліотеки JavaScript, можна здійснити різними способами. Ми зробимо це з консолі:


C:\Users\Serge Tahé>npm install -g bower
C:\Users\Serge Tahé\AppData\Roaming\npm\bower -> C:\Users\Serge Tahé\AppData\Roaming\npm\node_modules\bower\bin\bower
bower@1.3.7 C:\Users\Serge Tahé\AppData\Roaming\npm\node_modules\bower
├── stringify-object@0.2.1
├── is-root@0.1.0
├── junk@0.3.0
...
├── insight@0.3.1 (object-assign@0.1.2, async@0.2.10, lodash.debounce@2.4.1, req
uest@2.27.0, configstore@0.2.3, inquirer@0.4.1)
├── mout@0.9.1
└── inquirer@0.5.1 (readline2@0.1.0, mute-stream@0.0.4, through@2.3.4, async@0.8
.0, lodash@2.4.1, cli-color@0.3.2)
  • рядок 1: команда [node.js], яка встановлює модуль [bower]. Щоб команда працювала, виконуваний файл [npm] має бути в каталозі PATH на комп’ютері (див. наступний абзац);

9.8.3. Встановлення [Git]

Git — це система управління версіями програмного забезпечення. Існує версія для Windows під назвою [msysgit], яка доступна на URL та [http://msysgit.github.io/]. Ми не будемо використовувати [msysgit] для управління версіями нашого додатка, а лише для завантаження бібліотек JS, які знаходяться на сайтах типу [https://github.com], що вимагають протоколуспеціальний протокол доступу, який надається клієнтом [msysgit]

Майстер інсталяції пропонує різні етапи, серед яких такі:

Для інших етапів встановлення ви можете прийняти запропоновані значення за замовчуванням.

Після завершення встановлення Git переконайтеся, що виконуваний файл знаходиться у PATH вашого комп’ютера: [Panneau de configuration / Système et sécurité / Système / Paramètres systèmes avancés]:

Змінна PATH має такий вигляд:


D:\Programs\devjava\java\jdk1.7.0\bin;D:\Programs\ActivePerl\Perl64\site\bin;D:\Programs\ActivePerl\Perl64\bin;D:\Programs\sgbd\OracleXE\app\oracle\product\11.2.0\client;D:\Programs\sgbd\OracleXE\app\oracle\product\11.2.0\client\bin;D:\Programs\sgbd\OracleXE\app\oracle\product\11.2.0\server\bin;...;D:\Programs\javascript\node.js\;D:\Programs\utilitaires\Git\cmd

Переконайтеся, що:

  • шлях до папки встановлення [node.js] вказано правильно (тут D:\Programs\javascript\node.js);
  • шлях до виконуваного файлу клієнта Git вказано правильно (тут D:\Programs\utilitaires\Git\cmd);

9.8.4. Налаштування [Webstorm]

Тепер перевіримо налаштування [Webstorm]

Вище виберіть опцію [1]. Список вже встановлених модулів [node.js] відображається у [2]. Цей список повинен містити лише рядок [3] модуля [bower], якщо ви дотримувалися попередньої процедури встановлення.

9.9. Встановлення емулятора для Android

Емулятори, що постачаються разом із SDK для Android, працюють повільно, що відбиває бажання ними користуватися. Компанія [Genymotion] пропонує набагато продуктивніший емулятор. Він доступний на URL [https://cloud.genymotion.com/page/launchpad/download/]

(лютий 2014 року).

Щоб отримати версію для особистого користування, вам доведеться зареєструватися. Завантажте продукт [Genymotion] разом із віртуальною машиною VirtualBox;

Image

Встановіть, а потім запустіть [Genymotion]. Після цього завантажте образ для планшета або телефону:

  • у [1] додайте віртуальний термінал;
  • у [2] виберіть один або кілька терміналів для встановлення. Ви можете уточнити список, вказавши бажану версію Android ([3]), а також модель терміналу ([4]);
  • після завершення завантаження ви отримаєте [5] список віртуальних терміналів, які ви можете використовувати для тестування своїх додатків для Android;