Java (бағдарламалау тілі)

**Java** —  Sun Microsystems компаниясының жасап шығарған объектіге-бағытталған бағдарламалау тілі. Java қосымшалары әдетте арнайы байт-кодта компиляцияланады, сол себепті олар кез келген виртуалды Java-машинасында (JVM) компьютерлік архитектурасына тәуелсіз орындалады. Ресми шығу күні — 23 мамыр 1995 жыл. Әзірлеуді Java қауымдастық процесі арқылы ұйымдастырылған қауымдастық жүргізеді, тілі және оны жүзеге асыратын негізгі технологиялар GPL лицензиясы бойынша таратылады. Сауда белгісіне құқықтар Oracle корпорациясына тиесілі.

## Айтылуы, атаудың қолдануы
Айтылуы жөнінде қазақ тілінде басқа тілдердегі сияқты екі бір-бірінен ажыратылған қағида пайда болды: ағылшын тілінен алынған  («джава») және Ява аралының айтылуына сәйкес келетін дәстүрлі-халықтық «ява». Sun компаниясы ағылшындық айтылуды бүкіл әлемде ұстанады.
Java — деп тек ғана тілді ғана емес, сонымен қатар осы тіл негізінде жасайтын және орындайтын платформаны атайды. Бастапқыда тіл Oak («емен») болып аталған және оны Джеймс Гослинг тұрмыстық электрондық құрылғыларды бағдарламалау үшін жасаған болатын. Біраз уақыт өткеннен кейін тілдің атын JAVA деп ауыстырады және оны клиенттік қосымшаларды және серверлік бағдарламалық қамтаманы жасау үшін қолдана бастады. Кейбір бағдарламалаушылардың сүйікті кофе маркасы Java құрметіне аталды. Сол себепті тілдің эмблемасында түтіндеп тұрған кофесі бар шынаяқ бейнеленген. Сонымен қатар осы java атауының шығу тегі туралы басқа да нұсқалар бар.

## Тілдің негізгі ерекшеліктері
Java - дағы бағдарламалар, байттық кодты өндейтін және жабдықтамаға нұсқамаларды беретін интерпретатор болып табылатын (JVM) Java виртуалды машинасында орындалатын байт-кодқа трансляцияланады.

Java VM ортасының тұжырымдамасы мен әртүрлі іске асыруларына негізделген идеялар көптеген энтузиастарды виртуалды машинада орындалатын бағдарламаларды жасау үшін қолдануға болатын тілдер тізімін кеңейтуге шабыттандырды. Бұл идеялар Microsoft компаниясының NET платформасының негізін қалаған CLI жалпы тілдік инфрақұрылымының сипаттамасында да көрініс тапты.

## Бағдарламалау ерекшеліктері
Бағдарламалау - қандай да бір тілде код құру процесі, бұл код арнайы бағдарлама - транслятор арқылы файлға өзгертіледі. 
Транслятордың екі типі бар: компилятор және интерпретатор. 
Компилятор код тілінде жазылған мәтінді файлға аударады. Ал интерпретатор код тілінде жазылған мәтінді машиналық кодқа ауыстырады да оның орындалуын қамтамасыз етеді.
Java - компиляциалайтын тіл болып табылады. Javaда бағдарламалаудың жақсы жақтарының негізгісін айта кетсек, кодтың ауысу ерекшелігі:

**Java тіліндегі КОД  –→(арнайы бағдарлама - транслятор)–→БАЙТТЫҚ КОД –→ (JVM – Java Virtual Machine) –→МАШИНАЛЫҚ КОД

, сондықтан бұл тілде жазылған бағдарлама кез келген жүйеде кез келген компьютерде жұмыс істей алады, тек ол компьютерде JVM орнатылған болуы керек. Осыдан Javaда жазылған бағдарламалардың жақсы қасиеті - әр түрлі компьютерлерде жұмыс істей алу қабілеттілігі туады.
==Java платформаларының классификациясы==
Java ішінде технологиялардың бірнеше негізгі топтары бар: 

***Java SE** — Java Standard Edition, Java негізгі басылымы, API, Java Runtime Environment компиляторлары бар; қолданушылық қосымшалар жасауға келтірілген, ең алдымен — үстелдік жүйелер.

***Java EE** — Java Enterprise Edition, кәсіпорын деңгейіндегі бағдарламалық жабдықтамалар жасауға арналған арнайы құралдар жиыны болып табылады.

***Java ME** — Java Micro Edition, есептеуіш қабілеттері шектелген құрылғыларда қолдануға арналған, мысалы ұялы телефондар, қалталық дербес компьютерлар, кіріктірме жүйелер.

***JavaFX** — Java эволюциясының Rich Client Platform ретіндегі келесі қадам технологияся; ббірлестіктің қосымшалары мен бизнестың графикалық интерфейстерін жасауға арналған.

***Java Card''' — смарт-карталар мен жад көлемі мен өңдеу қабілеті өте шектеулі басқа да құрылғалырда жұмыс істейтін қосымшалардың қауіпсіз ортасын құратын технология.
## Негізгі мүмкіндіктері
* жадты автоматты түрде басқару;
*ерекше жағдайларды өңдеудің кеңейтілген мүмкіндіктер;
*енгізу/шығару фильтрация құралдарының бай жиыны;
*стандартты топтамалар жиыны: массив, тізім, стек және т.б.;
*желілік қосымшалар (оның ішінде RMI протоколын қолдану) жасау қарапайым құралдар болуы;
*HTTP-сұраныстар орындау мен жауаптарды өңдеуге мүмкіндік беретін кластар болуы;
*тілге кіріктірілген көпағымды қосымшалар жасау құралдары;
*дерекқорға унифицияланған рұқсат: 
:*жекелеген SQL-сұраныстардың деңгейінде —  JDBC, SQLJ негізінде;
:* дерекқорды сақтау қабілеті бар объекттер концепциясы деңгейінде  —  Java Data Objects (ағл.) және Java Persistence API негізінде;
*жалпыламаларды қолдау(1.5 нұсұасынан бастап);
*бағдарламалардың паралелді орындалуы;

## Сілттемелер


Санат:Объектіге-бағытталған бағдарламалау
Санат:Бағдарламалау тілдері
Санат:Интернет
Санат:Java (бағдарламалау тілі)
Санат:Java (платформасы)
Санат:Oracle