[разпечатване] [коментар]

100 % Pure Java
Eмилиян Алексиев

Java - Какво толкова ? Какви са тези 100 % ? Какво е това кафе ?

Java е няколко неща - сорт кафе, име на остров и платформа за изграждане на междуплатформени приложения.

За кафето не мога да кажа дали е добро или не, но Java е страхотен практичен и удобен език за програмиране. Тук ще разгледаме общо по-важните характерни качества на езика/платформата Java.

IT индустрията се разраства с непредвидена скорост, и с нея се появяват стотици нови стандарти, хиляди продукти, всички те пригодени към дадена среда. Какъв е резулата от цялата тази бъркотия ? - Кошмар за програмистите, ИТ проектантите и най-важното потребителите. Именно това е основната причина Java да стане модерна дума в устата на ИТ специалисти, журналисти и програмисти - често оплювана, рядко разбрана правилно, с огромна поддръжка. Може да звучи парадоксално но не сме свидетели за първи път на парадокси - Java е факт. Всъщност фразата “100% Pure Java” е запазена марка на Sun Microsystems с която се обозначават приложенията сертифицирани с тест за съвместимост с Java спецификацията - гаранция за преносимостта на приложението между различните платформи и операционни системи. На тази тема ще се върнем по-късно и ще разгледаме по-подробно концепцията на Sun - “Ние даваме спецификация - вие правете останалото стига да е по-правилата”.
Основната идея на Java e приложение, написано на езика Java и компилирано да може да бъде пренесено на друга платформа или операционна система без да бъде прекомпилирано наново. Какъв е резултата ? - Спестяване от повторно евентуално пренаписване, икономия на програмистки труд, снижаване необходимостта от тестване на различни платформи, спестяване на време и от там на пари. Определено последното движи нещата в днешния свят. Цялата тази идея е дефинирана от Sun с фразата “Write once, run anywhere”. Именно това обещание накара милиони програмисти да се обърнат към този език. По последни данни има над 4 милиона платени програмисти на Java, над 20 000 издадени книги и безброй статии и ръководства включително в университети и училища.

Java е представена за първи път през 1995 година и е внедрена в набиращия скорост Netscape Navigator. Въпреки че първоначално идеята е била да се създаде абстрактна единна среда за писане на приложения за малки устройства - settop boxes, mini computers, и др. , времето налага и кара Java проектантите да се ориентират към WEB направлението в развитието на Java, а именно единствената тогава алтернатива за изпълнение на програмен код в web browser. А именно поради наличието на преносимост е удобна за използване в Интернет - където разнообразието от несъвместими системи (операционни системи, машини) е огромно, но въпреки това са обединени от общи мрежови протоколи. Тогава Java е единствена по рода си и предоставя изпълнение на клиентски програми изтеглени от страница в интернет. Единственото, което ви трябва е browser и инсталирана в него виртуална машина (тя се доставя по default в browser-а).

А какво точно представлява Java ? Това е първо среда - тя включва компилатор и виртуална машина. Компилаторът транслира програмни фрагменти написани на езика Java до междинен байт код, който след това се интерпретира от виртуалната машина. Тя може да се представи като въображаем компютър инсталиран в операционната ви система без значение каква е тя (Windows, UNIX, MacOS, Linux ..). Общо казано това е интерпретатор който разчита и транслира междинния байт код до специфичен за вашата машина или операционна система разбираем език. Към тази среда са добавени и редица средства за дебъгинг, генериране на документация, и други служебни иснтрументи (примерно keytool за генериране на двойка ключове).

В момента Java се прилага в различни ситуации и приложения - тя притежава голям дял от т.нар. application servers - платформи за изпълнение и поддъжане жизнения цикъл на web приложения (Jakarta, Websphere, iPlanet, Bea, Orion, Borland App Server и др.) Също голям напредък и развитие търпи в първоначалния си замисъл - приложение в малките устройства (Palm, GSM).
В последващи статии ще разгледаме много по-подробно всяко едно от приложенията на Java в съвременните технологии и това как се вписва тя в решенята на различни фирми.

Що е JDK ?
Това е комплекта приложения, компилатор и виртуална машина (runtime environment) необходим на Java програмиста да напише необходимата програма. Sun Microsystems решиха да кръстят версиите на JDK след 1.1.8 - Java 2 (1.2), така че ако сега почвате или за първи път чувате за Java най-вероятно ще чувате и четете за Java 2. Тя допълва останалите версии с интегриран в комплекта набор класове за графичен потребителски интерфеис Swing и доста подобрения и изгладени алгоритми във виртуалната машина, а и нови класове и функции в Java API-то в сравнение с предните версии - jdk 1.1.x, jdk 1.0.2.

Java 2 е разделена на три категории - за стандартни приложения (Java 2 Standard Edition), за фирмени приложения(Java 2 Enterprise Edition), за мобилни приложения (Java 2 Micro Edition).

Обект на повечето дискусии и теми ще е Java 2 SDK Standard Edition, въпреки че няма да пропукаме и някои новости и примерни приложения на Java 2 Enterprise (J2EE).

Текущата весия на JDK (SDK) e 1.3, а версия 1.3.1 е в процес на beta. Ако сте харесали идеята на Java, може да погледнете в поддържаната от Java отдела на Sun Microsystems - JavaSoft страница, посветена изцяло на технологиите, свързани с Java - http://www.javasoft.com или http://java.sun.com.
От там също може да си смъкнете последната версия на JDK и примерни програми, а както и да участвате в web форуми-те на тази тема.

Oчаквайте скоро темите:
100 % Обекти. 100 % Удоволстие. (Основи на обектното програмиране)
Помислете АБСТРАКТНО
Спорът. Слънцето срещу мекотелото (Sun vs Microsoft)
Swing - Графичен потребителски интерфейс. Основни положения.
JSP & Servlets - да си дойдем на думата.