Java

Vikipediya, azad ensiklopediya
Naviqasiyaya keç Axtarışa keç
Java
Loqonun şəkli
Paradiqmalar Strukturlu proqramlaşdırma, Obyekt yönümlü proqramlaşdırma, Refleksiya
Yaradılma tarixi 1995
Müəlliflər Ceyms Qoslinq, Sun Microsystems
Tərtibatçılar Sun Microsystems, Oracle[1]
Fayl sonluğu .java, .class, .jar, .jad və ya .jmod
Sonuncu versiyası
  • Java SE 23
Təsirlənib C++, C, Ada dili, Smalltalk, Objective-C, Oberon, Eiffel, C#, Niklaus Virt
oracle.com/java/
Vikianbarın loqosu Vikianbarda əlaqəli mediafayllar

JavaSun Microsystems şirkəti tərəfindən təqdim olunan obyektyönlü proqramlaşdırma dilinə və texnologiyalara verilən ümumi ad. Java proqram dili struktur və sintaksisinə görə C proqram dilinə çox yaxındır. Rəsmi olaraq 23 may 1995-ci ildə təqdim olunmuşdur.

Başlanğıcda Oak ("palıd") adlandırılan bu dil Ceyms Qoslinq (ing. James Gosling) tərəfindən məişət cihazlarının proqramlaşdırılması üçün yaradılmışdı. Daha sonra bu ad Java ilə əvəz olundu və server proqram təminatının yazılması üçün istifadə olunmağa başladı. Bu proqramlaşdırma dili Java kofe markasının şərəfinə adlandırılmışdır və buna görə də onun rəsmi embleminin üzərində fincanda buxarlanan kofe təsvir olunmuşdur.

Java obyektyönümlü proqramlaşdırma dilidir, yəni bütün kodlar siniflərdə(class) təyin edilir və həmin siniflərin çoxu obyektlərə çevrilə bilir. Javadan əvvəlki dillər prosessual(procedural) idi, hansı ki o dillərdə metodlar(routines) var idi,lakin siniflər yox idi. Java həmçinin sinif daxilində fuksional proqramlaşdırmaya da imkan verir, lakin obyekt yönümlü olması Java`nın əsas xüsusiyyətidir. Java kodları JVM daxilində çalışdırılır (run). Hər hansı bir Java proqramı main() metodunun execution`u(işə salınması,çalışdırılması) ilə başladılır. Java yaddaş sızıntısının(memory leaks) qarşısın alır və yaddaşı özü idarə edir[2].

Java platformasının təsnifatı

[redaktə | vikimətni redaktə et]

Java daxilində bir neçə əsas ailə texnologiyaları mövcuddur:

  • Java SE — Java Standard Edition, Java əsas nəşri, bu nəşrdə Java Runtime Environment, kompilyatorlar, API vardır; İstifadəçi əlavələrin yaradılması üçün və ilk növbədə stolüstü sistemlər üçün münasibdir.
  • Java EE — Java Enterprise Edition, Müəssisə səviyyəsində proqram təminatının yaradılması üçün spesifikasiyalar yığını şəklindədir.
  • Java ME — Java Micro Edition, Java Micro Edition, bu qurğularda, məsələn mobil telefonlarda, qurulanlar sistemləri, hesablama gücü ilə məhdud istifadə üçün yaradılıb.
  • JavaFX — Növbəti addım olan kimi təkamülündə Java Platform Rich Client texnologiyası; Korporativ əlavələr və biznesin qrafik interfeys yaradılması üçün nəzərdə tutulub.
  • Java Card — Texnologiya ilə emal imkanları çox məhdud həcm yerinə, smart-kartlar və digər qurğularda işləyən proqramlar üçün təhlükəsiz mühit yaradır.

Java dilinin təkamülü

[redaktə | vikimətni redaktə et]
Java dilinin
yaradılmış versiyaları
İl
1.0 23 yanvar 1996
1.1 19 fevral 1997
1.2 8 dekabr 1998
1.3 8 may 2000
1.4 6 fevral 2004
5.0 30 sentyabr 2004
6 11 dekabr 2006
7[3] 7 iyul 2011
7 yenilənmə 1[4] 18 oktyabr 2011
7 yenilənmə 2[5] 12 dekabr 2011
7 yenilənmə 3[6] 14 fevral 2012
8[7] 18 mart2014
9 21 sentyabr 2017

JavaScript və Java

[redaktə | vikimətni redaktə et]

JavaScript və Java arasında heç bir qohumluq yoxdur. Buna baxmayaraq Java eləcə də C dilinə çox oxşardır.

JavaScript klient skriptləşdirmə dilidir. JavaScript internet səhifənin dinamik imkanlarını genişləndirmək məqsədilə istifadə olunur. JavaScript dilində yazılmış modul HTML faylına alt proqram kimi inteqrasiya edilir və standart əmr vasitəsilə HTML kodunun uyğun sətrindən çağırılır. Veb brauzerdə (veb səyyahda) qurulmuş dil interpretatoru hipermətnin həm kodunu, həm də skriptini bütöv sənəd kimi qəbul edərək hər iki verilənləri eyni zamanda emal edir.

Java isə JavaScriptdən fərqli olaraq ondan istifadə edən səhifəyə inteqrasiya olunmur. Sərbəst əlavə (proqram) kimi mövcuddur, elmi dildə desək apletdir. Bu dildən istifadə edərkən aplet uyğun əmr vasitəsilə HTML faylından çağırılmasına baxmayaraq onun yüklənməsi, inisializə olunması və yerinə yetirilməsi fon rejimində ayrıca proqram kimi olur.

C++ dilinin mürəkkəbliyi və obyekt orientasiyalı olmayan xüsusiyyətləri bu dilin əsas səbəblərdən biridir. Digər başlıca səbəb hər hansı platformada kompayl edilən kodun başqa platformlarda da dəyişdirilmədən işlədilə bilməsinə olan ehtiyacdır. Dilin bu xüsusiyyəti Java Virtual Maşını sayəsində həyata keçirilir. Java dili mürəkkəbliyi aradan qaldırmaq üçün bir çox C++ xüsusiyyətini – çox köklü irsiyyət, şablonlar (yeni versiyalarda şablonlar daxil edilib), pointerləri özünə daxil etmir. Bundan başqa dildə C++ da olmayan tullantı təmizləmə mexanizmi(garbage collector) mövcuddur.

Java texnologiyasının köməyi ilə səhifəyə interaktiv elementlər daxil etmək, sürüşkən pəncərələrin və qurulmuş freymlərin formatlarını bütünlüklə nəzarətdə saxlamaq mümkündür. Bu dil vasitəsilə "saat", "qaçan sətr", digər animasiyalar və çat yaratmaq mümkündür.

Üstün cəhəti: serverdə Java proqramının işini təmin etmək məqsədilə əlavə modullarının yüklənmə və qurulmasının lazım olmamasıdır.

Mənfi cəhəti: Java dilinin kompilyasiyasını dəstəkləməyən köhnə versiyalı veb brauzerlərlə (veb səyyahlarla) işləyən istifadəçilər bu dildə yaradılmış obyektləri görə bilmirlər.

Əsas imkanları

[redaktə | vikimətni redaktə et]
  • avtomatik yaddaş idarəetməsi;
  • müstəsna hallarda bacarıqların geniş emalı;
  • daxil etmə — xaric etmə filtrasiyası vasitələrinin zəngin komplekti;
  • standart kolleksiyanın yığımı: massiv, sıra və s.
  • şəbəkə proqramları üçün sadə alətlər mövcudluğu;
  • Siniflərin mövcudluğu, HTML sorğularının və çağırışların yerinə yetirməyə imkan verir;
  • Dil vasitələri quraşdırılmış axınlar üçün əlavələrin yaradılması;

Java dilində yazılmış proqramın misalı

[redaktə | vikimətni redaktə et]

Proqram "Hello, world!" yazısını göstərir:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, world!");
    }
}
  • Jon Byous, "Java technology: The early years". 2005.
  • James Gosling, "A brief history of the Green project. Java.net", 2007.
  • Tim Lindholm and Frank Yellin. "The Java Virtual Machine specification, second edition". Addison-Wesley, 1999.
  1. https://www.oracle.com/java/.
  2. OCA JAVA SE 8 Programmer I, səh.6,39-40
  3. "JDK 7". 2021-01-08 tarixində arxivləşdirilib. İstifadə tarixi: 2014-09-26.
  4. "Java™ SE 7 Update 1". 2019-06-29 tarixində arxivləşdirilib. İstifadə tarixi: 2014-09-26.
  5. "Java™ SE 7 Update 2". 2020-05-08 tarixində arxivləşdirilib. İstifadə tarixi: 2014-09-26.
  6. "Java™ SE 7 Update 3". 2019-11-08 tarixində arxivləşdirilib. İstifadə tarixi: 2014-09-26.
  7. "JSR 337: JavaTM SE 8 Release Contents". 2020-11-11 tarixində arxivləşdirilib. İstifadə tarixi: 2014-09-26.

Xarici keçidlər

[redaktə | vikimətni redaktə et]