Старши JAVA програмиране: кръст-платформа програми, написани бележка



Java език, за да пишат приложения, използвайки най-големите предимства е, че "една компилация, тече навсякъде", но това не означава, че всички Java програми са на различни платформи функции, в действителност, като значителна част от програмата на Java не е в други операционни системиправилно, как да напиша един наистина по-платформа Java програма?По-долу е подготовката на кръст-платформа Java програми са някои от нещата да се отбележи:

Подготовка на прилагането на различни платформи Java, можете да изберете да JDK1.0, 1.1,1.2, или подкрепата си GUI инструменти за разработка, като например: Jbuilder, Visual възраст за Java и т.н., но трябва да обърнат внимание на вашата програма на Java може да използва ядро Java API пакетиАко искате да използвате от трети страни пакет библиотека, библиотеката трябва пакет, разработен от основните пакети Java, или процедури за освобождаване, когато имат подкрепата на този клас пакети библиотека Java JVM публикува.С други думи, вашата програма трябва да бъде 100% чист Java.Като пример, Visual J + + не е чиста Java, на Visual J + + програма не може да бъде написана на платформено-независими.

Независимо дали сте с помощта на JDK или други инструменти за развитие, по време на компилация възможности трябва да бъдат отворени всички предупреждения, така че компилатора може да бъде колкото е възможно по-заявление, че платформата и дава предупреждение.Въпреки, че няма време на компилация предупреждения не може да гарантира, че грешката трябва да бъде по-платформа програма, но процедурата не е наред с предупреждения могат да са платформено независими.

В програмата при използване на един метод, да проучи документа, уверете се, че използването на метода, не е посочена в документа, е остаряла методи са (Отхвърлени метод), нито пък е заложен в документа не е посочен метод (без документи метод).

Опитайте се да не излезе излизане метод на програмата Java да използва java.lang.System.Изход начини за прекратяване на JVM, за прекратяване на програмата, но ако тече друга програма, Java, използват метод ще позволи излизане на програмата е било затворено, което очевидно не е това, което искаме да видим.За да излезете от програмата Java в действителност, може да използвате destory () изход самостоятелен процес.За многонишковите програми, трябва да изключите всички не-демон тема.Само когато програмата отпадна единственият начин да излезете от програмата използва за напускане.

Избягвайте използването на местни методи и вътрешни правила, доколкото е възможно да напишете своето собствено функции със съответните клас Java, подтиснете този метод.Ако трябва да използвате алтернативни методи, можете да напишете сървър програма нарича метод, след което програмата ще напиша на програмата сървър като клиент, програма или разгледа CORBA (Common Object Заявка Брокер) структура на програмата.

Java, Delphi по подобен начин winexec, java.lang.runtime клас Exec метод като метод от своя страна е независима от платформата, но на поканата метод за управление и тези параметри са свързани с платформатаПоради това, в подготовката на програми за да се избегне, ако искате да се обадите други програми, те трябва да позволи на потребителите да зададете команда и нейните параметри.Например, можете да се обадите notepad.exe в прозорците процедура трябва да се обадите на VI в Linux в програмата.

Програмиране на цялата информация в кодекса трябва да се използва ASCII набор от символи, тъй като не всички операционни системи поддържат Unicode кодова таблица, която за по-платформа Java програми, които не може да се каже на китайски софтуер е голям лоши новини.

Да не се твърди кодирани в програмата, всички константи, свързани с платформа, като линията сепаратор, разделител файл, разделител пътя и т.н., тези константи са различни на различните платформи, като например файл разделител, е в UNIX и MAC"/" от прозорците е "", ако искате да използвате тези константи, трябва jdava.util.Properties методи на клас getProperty, като java.util.Properties.getProperty ("file.separator") могат да получат разделител файл,getProperty ("line.separator") връща ред сепаратор, getProperty ("path.separator") връщане разделител път.

При подготовката на приложения за различни платформи в Мрежата, не използвайте java.net.InetAddress клас getHostName получени име на хост, защото на различните платформи на друг формат и име на хост е най-добре да се използва getAddress се на същия адрес IP формат, от друга страна, програматаВсички името на хоста да се замени с IP адреса, като www.javafan.net необходими, за да заменят съответните адрес.

Процедури, свързани с файловите операции Забележка: Не е трудно кодирани в пътя програма файл, и 8, по същите причини, но това е особено важно, така че отделно.Освен това различни платформи, използвани за знаци на името на файла и максималните изисквания на името на файла дължина са различни, на време, за да напишете програма да се използва общ характер, тъй като кодовото име ASCII на файла и не може да бъде платформа със същото име вече съществува в програмата, в противен случай щеконфликт.

Ако вашата програма е програма, GUI написани на използване на компонентите AWT не може да бъде произволно зададете размера и местоположението на компонент, трябва да използват Java за оформление мениджър (оформление мениджър), да създадат и управляват размера и местоположението на визуалните компоненти, илиструктурата може да доведе до объркване.

Поради различни операционни системи, различни машини, системата поддържа цвят и размер на екрана и резолюцията са различни, как да се получат тези атрибути?Клас могат да получат необходимата използване на java.awt.Systemcolor цвят, като клас рамка inactiveCaption прозорец в заглавие на събитието е цвета на фона, менюто е цветът на фона на менюто.В getScreenResolution да използвате java.awt.Toolkit "пиксела на инч" като единици на резолюцията екран.GetScreenSize клас могат да получат размера на екрана (инчове), loadSystemColors могат да се изброят всички цветове система.

Някои от тези съображения от препоръки, някои от дългия си опит в писане на Java програми, аз вярвам, вашата програма ще помогне за дизайн