среда, 27 мая 2015 г.

0-2. Пора кодить

output - выводить
input - вводить
print - печатать
static - статический
main - главный, основной
compile - компилировать
compiler - компилятор
interpreter - интерпретатор
Как выглядит код на java?
Что такое функция main?
Как создать простейшее java-приложение?
Что такое компилятор?
Что такое интерпретатор?
Что такое кодировка?



Ну что,  давайте напишем сразу что-нибудь простенькое на java, чтобы пробудить аппетит.
Процесс создания простейшего приложения включает 3 этапа:
  1. Редактирование файла исходного кода в текстовом редакторе или специальной программе, упрощающей жизнь программисту - таких программ немало.
  2. Компиляцию файла с исходным кодом
  3. Запуск скомпилированного класса

Для начала посмотрим на код самого простого java-приложения, выводящего на экран (в консоль) текст "Hello World".

HelloWorldApp.java
public class HelloWorldApp {

    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

Это исходный код, то есть то, что пишет программист. Здесь дано описание некоторого класса HelloWorldApp. Как видите, исходный код - это человекочитаемый текст, написанный по определенным правилам. Правила определяют допустимые слова и символы, их последовательность, а так же их значение - в итоге мы получаем код на языке программирования, понятном компилятору.
Компилятор  - это программа, которая превращает исходный код в байт-код, понятный машине, точнее, как в нашем случае, интерпретатору байт-кода, встроенному в JVM.
Интерпретатор - это программа, которая обрабатывает код  и сразу его выполняет.

То есть  java предусматривает промежуточный платформонезависимый байт-код, благодаря которому после компиляции мы получаем приложение, которое можно запустить на любом компьютере, где установлена виртуальная машина java (JVM). Надо заметить, что это справедливо не для всех языков программирования.

Итак, давайте просто откроем текстовый редактор (блокнот) и скопируем  в него код HelloWorldApp.java. Файл сохраняем как, d://devstart/0/HelloWorldApp.java.


Далее запускаем командную строку (Run - > cmd). С помощью команды cd (change directory - сменить каталог) переходим в каталог, куда сохранили HelloWorldApp.java. Затем запускаем компилятор javac
Подсказка: Работая в командной строке пользуйтесь стрелками вверх\вниз для перебора ранее запущенных команд. Чтобы вставить текст, кликните по заголовку окна правой кнопкой мыши выберите Edit -> Paste.

с:\>cd d:/devstart/0

d:\devstart\0>%JAVA_HOME%/bin/javac HelloWorldApp.java

В результате рядом с HelloWorldApp.javа должен появиться файл  HelloWorldApp.class - тот самый байт-код. Пробуем его запустить:

d:\devstart\0>%JAVA_HOME%/bin/java HelloWorldApp

Результатом должна быть строка

 Hello World!

Заметьте, что аргумент утилиты java - это имя класса, а не имя файла с байт-кодом. Команда java запустила JVM, которая выполнила приложение и завершила работу.




Теперь можно посмотреть поближе на тот код, который мы запустили.

Наше приложение состоит из одного класса, в котором есть только одна функция - main. Функция main по другому называется точкой вода в программу. В реальной жизни приложения состоят из десятков, сотен и даже тысяч классов, но у каждого приложения должна быть как минимум одна точка входа  -  некоторый класс с функцией main, принимающая на вход массив строк (String[])

Попробуйте добавить строчку "How are you?" к тому, что уже выводится, изменив тело функции. Чтобы вывод выглядел так:
Hello World!
How are you?

После изменения скомпилируйте и снова запустите приложение.

Если вы хотите вывести текст на русском языке, или иероглифы, то придется немного познакомиться с понятием кодировка: каждому символу(букве, цифре, точке, кракозябре) в компьютере соответствует последовательность из 0 и 1. Но проблема в том, что кодировки придумывались независимо разными организациями и различаются даже длиной последовательностей. Для некоторых кодировок, например, длины последовательсти хватило только на цифры, латинские буквы и некоторые символы. Поэтому текстовые файлы, содержащие, например, русские буквы, можно сохранить не в каждой кодировке.
Исходный код java - это тоже текстовые файлы, для них принято использовать кодировку UTF-8.
То есть нужно сохранить наш файл HelloWorldApp.java в кодировке UTF-8. Однако для этого лучше не использовать Notepad, который добавляет некоторые "невидимые" данные в начало файла (и уж тем более не используйте Word). На самом деле программисты практически не пользуются обычным блокнотом.  O том, в чем можно писать код - в следующей статье.

Комментариев нет:

Отправить комментарий