Веб программирование

Hello World

 
 

Всем привет!

Я решил создать первый урок по языку J2ME, на нём написаны все приложения на телефоны с Java.

Я раньше здесь был под ником Misha, выложил здесь 1 статью по vb6, но мой аккаунт теперь не существует.

Итак начнём создание привет мира:

1. Сначала надо установить среду программирования, если нету компьютера - то идите сюда, если же у вас есть компьютер - то тут сложнее (Старайтесь не делать пробелов в путях установки!!!):

    1)скачиваем этот архив, распаковываем и устанавливаем.

    2)скачиваем, распаковываем, устанавливаем.

    3)и опять скачиваем, распаковываем и устанавливаем.

2. Я сейчас буду показывать как делать проект в компьютерной среде, но потом выложу как работать с мобильной. Заходим в папку, где установлена последняя программа (например "C:WTK2.5.2"), открываем папку BIN, находим программу ktoolbar.exe и запускаем (можете поставить ярлык на неё, это и есть та самая среда программирования!)

если все правильно - должно появиться такое окно:

полюбовавшись окном нажимаем "New Project", делаем как у меня:

нажимаем "Create Project", появляется большое окно, кликаем слева "Required", опять делаем как у меня:

теперь объясняю - это типа свойств проекта в vb6,

MIDlet-Name  -  название, которое будет видно у пользователя в списке приложений

MIDlet-Vendor  -  автор приложения

MIDlet-Version  -  без комментариев...

Остальное пока не буду объяснять, нажимаем "ок" и видим такое окно:

всё, папки для проекта созданы! 1 адрес  - туда надо исходники ложить, 2 адрес - туда надо ложить ресурсы проекта (картинки, музыка, и др. файлы), 3 адрес - библиотеи

3. копируем 1 адрес, вставляем в проводнике windows и переходим туда, создаём файл "Main.java" - это и есть исходники, открываем его обычным блокнотом (хотя удобней использовать программу "Notepad ++"), и пишем этот код (не пугайтесь! :)  удалите комментарии, и вы увидите какой короткий код всё это делает):

/*Вот такие комментарии в j2me.
Внимание!!!Здесь важно соблюдать регистр букв! (конечно везде, кроме комментариев)
*/

import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
/*Подключаем нужные библиотеки*/

public class Main extends MIDlet{
/*Начало главного класса,
а раз он главный - наследуется от MIDlet (extendt MIDlet)*/

public Form f;
public Display d;
/*Объявляем переменные и объекты (что - то типа Dim в vb6),
но их ещё нельзя использовать, так как они не инициализированны,
этим и займёмся дальше.Form - тип объекта, у нас это форма (типа Form в vb6),
в неё можнодобавлять данные, например текст, и выводить на экран, их может быть
очень много (скока хватит памяти), но на экран можно вывести только 1
f - имя, которое мы ему присваиваем
Display - так, как мы не можем создать объект экрана (понятно почему),
мы потом просто получим на него ссылку в этот объект
d - имя, которое мы ему присваиваем*/

public Main(){}
/*Конструктор класса (даже в пустом виде он должен быть,
и код в нём выполняется самым первым во время запуска класса
в нём можно например инициализировать нужные объекты, создать переменные*/

public void startApp() {
/*Если написано слово void - то это метод (что - то типа sub в vb6), он ничего не возвращает,
а может только выполняться, а если надо чтобы возвращал - то пишем например String,
и в конце пишем return "Hello"; и эта функция возвратит нам "Hello"
Здеся у нас метод, который всегда должен быть в классе, который наследуется от MIDlet,
именно с этого метода и начинается работа приложения*/

if(d == null){
/*Если мы ещё не инициализировали дисплей - то начинаем инициализацию, дело в том, что
если пользователю позвонят на телефон или он нажмёт красную кнопку, а потом отмена - то
этот метод после возобновления работы будет вызываться заново :(
null означает пустоту, или не инициализированный объект.*/

f = new Form("Hello world!");
/*Соблюдайте регистр букв! Здесь мы инициализируем форму, и в качестве аргументов передаём
строку "Hello world!", этот аргумент будет у нас в заголовке формы (сверху экрана)*/

f.append("Hello world!");
/*Этот метод добавляет что - нибудь на форму, здесь мы добавляем строчку"Hello world!"*/

d = Display.getDisplay(this);
/*Дальше, чтобы вывести форму на экран нам как не странно нужен сам экран :)
Если серьёзно - то как я уже сказал мы не создаём экран, а получаем на него ссылку, поэтому
там написано getDisplay*/

d.setCurrent(f);
/*И наконец выводим форму на экран, для этого у Display есть метод setCurrent,в аргументы ему даём то,
что хотим показать (у нас форма)*/

}
/*Завершение блока "if", не забывайте правильно расставлять скобки или будут ошибки*/

}

public void pauseApp() {
/*Этот метод запускается тогда, когда пользователь только нажал красную кнопку и появилось окно
с вопросом "Точно выйти?" или когда только поступил звонок на телефон*/
}

public void destroyApp(boolean u) {
/*Это последний метод в работе приложения, он вызывается когда пользователь на окне с вопросом
"Точно выйти?" нажал "Да", он просто собират мусор и выключает приложение, здесь можно написать
например сохранение данных в какой - нибудь игре, если пользователь вдруг случайно нажал красную
кнопку. Этот метод можно вызвать искусственно destroyApp(true); это и есть аналог "End" в vb6!
*/

notifyDestroyed();
/*Собираем мусор, эта строчка всегда должна стоять здесь!*/

}

/*Внимание! все 3 метода (те, которые заканчиваются на "App") должны обязательно быть в главном классе!*/

}

Дальше сохраняем этот файл, переходим обратно в среду программирования (WTK), и нажимаем "Build", компилятор напишет, если есть ошибки, сверьтесь с моим кодом или скачайте исходник (rar):

Скачать файл [1653 кб]

если нет ошибок - то появится такой текст:

дальше жмём меню "Project -> Package -> Create Package", и компилятор создаст само приложение.

4. открываем адрес, который написал компилятор, и там будет готовое приложение! Его можете переносить в телефон, это думаю вы сами разберётесь)

но если вдруг вам лень переносить на телефон приложение - то перейдите обратно в WTK, нажмите "Run", появится такое окно:

в этом окне нажмите Enter, и ваше первое приложение запустится!

оно пока только выводит "Hello world!", но этого для начала достаточно.

Главная проблема кодинга на етом языке - то, что много телефонов просто ограничивают размер на загрузку игр, так например у меня если приложение весит больше 300 Кб - то покажется ошибка о слишком большом размере

И не забывайте соблюдать регистр букв!

На этом пока всё!

Пишите в комментариях если есть вопросы.

P.S. зацените моё приложение на этом языке (в архиве rar):

Скачать файл [157631 кб]

там, конечно много ошибок, и много не доработано, но я над ним работаю сейчас. Приложение мультискринное, но картинки у меня делятся по размеру экрана (например фон раб. стола), я засунул картинки 128х160, чтобы пошло у всех, картинки растягиваются + меньший размер будет


Есть вопросы? Спроси на нашем форуме!!
Coolhacker770 [29.03.2013 16:58]

Чукченька, уроки пишут, пишут, а не создают.

Mishin870390 [29.03.2013 18:11]

так - то нормально?

Coolhacker770 [29.03.2013 18:16]

Хммм... я, конечно, разговорных дел мастер, однако ж тут уместнее сделать вот такой вот безусловный переход:

jmp EverybodyLies

pskov-igor170 [05.06.2013 19:56]

Дайте среду для создания прог под Линукс убунту 12.10 или 13.04 (*.deb).

Mishin870390 [05.06.2013 20:08]

пиши в чат или на форум, здесь об java

Progers300 [05.06.2013 21:37]

Дайте среду для создания прог под Линукс убунту 12.10 или 13.04 (*.deb)

Тебе для какого языка?

Coolhacker770 [06.06.2013 08:29]

Edward, linux sucks, mac forever

Progers300 [06.06.2013 14:43]

Coolhacker
И что?

Shaggy20 [20.09.2013 12:35]

Не могу скачать ни файлы по первой и по третьей ссылкам...

Mishin870390 [20.09.2013 21:59]

... MalwareBytes Anti-Malware антивирус?)) отключи его, он запрещает rghost

Mishin870390 [20.09.2013 21:59]

у меня работает и даже грузит



Оставлять комментарии можно только зарегистрированным




Предупреждение: Вся информация представлена исключительно в образовательных целях.
Ни авторы, ни администрация не несут ответственности в случае ее использования в противозаконных целях.