C, PHP, VB, .NET

Дневникът на Филип Петров


* Въведение в Java

Публикувано на 12 септември 2009 в раздел ПИК3 Java.

Първоначално искаме да отбележим, че статиите в категория „Java“ са предназначени за хора, които са запознати с програмиране на C и C++. Няма да се спираме детайлно върху основите на езика – всичката теория, която се припокрива с програмиране на C и C++ ще приемаме, че е позната. Така например няма да уточняваме специално работят основните оператори, а просто ще ги изброим набързо.

Java е език за програмиране създаден през 1991г. (първоначално под името Oak, а след 1995г. Java). Основите на езика идват именно от споменатите езици C и C++. Синтаксисът на езика е много близък до C, а обектния модел е изключително близък до C++. Поради тази причина е изключително лесен преходът между тези езици.

Първоначално Java е измислен за писане на софтуер за обслужване на различни електронни устройства и неговата реализация за персонални компютри е била на заден план. Основният проблем който производителите от Sun са си поставили е платформената независимост. Широко популярният език за програмиране C++ на който те са стъпили като основа има един съществен недостатък – всяка една програма трябва да бъде компилирана до изпълним код. Това създава изключително много проблеми при писането на софтуер, който трябва да се изпълнява на различни устройства, защото те често имат различни типове процесори и архитектура. За да напише една програма на C++, която да бъде изпълнима както на телефони Motorola, така и на Ericsson е било нужно тя да бъде компилирана два пъти с два различни компилатора. Това е сериозна пречка за крайните програмисти.

Идеята стояща в Java е програмите да не се компилират до изпълним код, а до междинен, т.нар. „байткод“. За да бъдат изпълнени програмите, те се обработват от специална програма наречена „виртуална машина“. Така един и същи байткод може да бъде изпълняван на различни платформи по един и същи начин – единствено е нужно съответната платформа да има инсталиран собствен вариант на виртуална машина за Java. Така програмистите няма нужда да пишат отделни версии за своите програми за различните платформи. Освен предимството на платформената независимост, този подход носи и допълнителни преимущества относно сигурността. Виртуалните машини изпълняват байткода в защитена среда и така програми писани на Java трудно могат да навредят на друг софтуер от операционната система. Един от малкото недостатъци на този подход пък е, че нуждата от „докомпилиране“ на байткода от виртуалната машина до изпълним код довежда до малка загуба на производителност при стартиране на програмите.

С развитието на интернет от корпорацията Sun са забелязали, че там също започва да се наблюдава нужда от платформена независимост. Така те насочват езика Java към създаване на интернет приложения и за известно време успяват да се похвалят с лидерство в сферата на интернет програмирането. По-късно други езици като PHP и технологията .Net на Microsoft започват успешно да конкурират Java, но въпреки това и до ден днешен не може да се отрече една от лидерските позиции в тази сфера.

Както споменахме в началото Java е обектно-ориентиран език за програмиране. Това е модерният подход за програмиране от високо ниво, където логиката на програмите е фокусирана върху данните, а не върху програмния код. Както всеки език за ООП, така и Java се основава на четирите най-важни принципа:

  • Абстракция – обозначаване на характеристики, които отличават обектите един от друт.
  • Капсулиране – скриване на информацията за конкретната програмна реализация на даден обект и показване само на тези негови части, които влизат в практическа употреба за останалите обекти;
  • Полиморфизъм – възможност за извършване на функционално различни действия с едни и същи инструменти;
  • Наследяване – процес, при който един обект приема и разширява свойствата на друг.

В следващите статии ще разгледаме набързо основите на синтаксиса на езика и ще преминем по-подробно към същината на обектното програмиране. В началото много от статиите ще се припокриват с материала от статиите за C и C++, затова просто ще правим аналогии.

Преди да започнем ще е нужно да се сдобиете с „компилаторът“, който превръща код на Java до байткод. Системата за разработка на Java програми се нарича Java Development Kit (JDK). Ще използваме Java Standart Edition, която може да бъде изтеглена от следния адрес:

http://www.oracle.com/technetwork/java/javase/downloads/index.html

За изпълнение на програмите на вашия компютър (тоест споменатото „докомпилиране“ на байт код до изпълним) е нужно да инсталирате и Java Runtime Environment (JRE), която е налична на същия адрес и ще дойде като част от JDK.

Колкото до среда за разработка на програмите – налични са множество безплатни продукти. Най-популярните от тях са Eclipse и Netbeans и са предназначени за професионални разработки. За учебни цели обаче ние ще използваме една много „по-лека“ среда за разработка наречена DrJava. Кодът, който ще пишем тъй или иначе се компилира от компилаторът на JDK, а не от средата – затова средата за разработка е просто едно удобство и написаният код ще бъде валиден независимо от средата, която е използвана. Ентусиастите могат дори да използват и обикновен текстов редактор.

 



Добави коментар

Адресът на електронната поща няма да се публикува


*