UVOD U JAVA PROGRAMIRANJE
Programski jezik JAVA je programski jezik nastao 1995 i razvijen je od firme SUN Microsystem. Kasnije ga je preuzeo Oracle.
To je jedan Objektno Orijentisani programski jezik, platformski nezavistan, lak za učenje, siguran za izvršavanje. |
Uvod u JAVA programiranje-video |
Kôd jednom napisan pomoću Java programskog jezika može se ponovo upotrebiti za izradu novih aplikacija. Java progamiranje podržava paralelno izvršavanje u više programskih niti, tako da u poređenju sa, recimo C programskim jezikom, koji se brže izvršava od Jave ako bi poredili izvršavanje u jednoj niti, programski jezik pisan u Javi bi se mogao brže izvršiti, s obzirom da se paralelno izvršavanjem to može ostvariti.
Objektno orijentisano programiranje
Sistemi u prirodi se sastoje od objekata koji ostvaruju među sobom određenu komunikaciju i stvaraju određene veze. Da bi se pisanje softvera približilo sistemima kakvim oni jesu u prirodi, pristupilo se pisanju objektno orijentisanih jezika. Objekti u prirodi imaju svoj identitet, atribute, ponašanje i stanje. Softverski kreirani objekti imaju takođe to isto. Objekti sa zajedničkim osobinama pripadaju istoj klasi, gde se ta klasa koristi kao šablon za kreiranje objekata. U klasama se zapisuju te zajedničke osobine objekata, pripadnika te klase. Takođe se kreiraju i metode unutar tih klasa koje opisuju ponašanje objekata. Trenutne vrednosti promenljivih koje se nalaze u klasi kao osobine klasa ili objekata, pripadnika te klase predstavljaju “stanje” tih promenljivih. Više o tome pročitajte u lekciji “Klase i Objekti”.
Treba imati u vidu da postoji biblioteka gotovih klasa API(Application Programming Interface) koje se nalaze u okviru java JRE, koja će biti instalirana naračunar pre pisanja aplikacija u JAVI.
Ove klase će se koristiti prilikom pisanja novih aplikacija. Dobro kreirane klase se takođe kasnije upotrebljavati ponovo u novim aplikacijama. Tako da može se reći da je JAVA osobinu ponovne upotrebljivosti.
Treba imati u vidu da postoji biblioteka gotovih klasa API(Application Programming Interface) koje se nalaze u okviru java JRE, koja će biti instalirana naračunar pre pisanja aplikacija u JAVI.
Ove klase će se koristiti prilikom pisanja novih aplikacija. Dobro kreirane klase se takođe kasnije upotrebljavati ponovo u novim aplikacijama. Tako da može se reći da je JAVA osobinu ponovne upotrebljivosti.
Upotreba Jave
Programski jezik JAVA se koristi za razvoj:
- Desktop aplikacija
- Pisanje kompleksnih poslovnih aplikacija(Enterprise)
- Web aplikacija
- Mobilnih aplikacija
- U robotici
- Ugrađenih sistema
- Igrica
Izdanja za javu
Java se najčešće može preuzet u sledećim izdanjima
- Java SE(Java Standard Edition). Koristi se za razvoj desktop aplikacija
- Java EE(Java Enterprise Edition). Koristi se za razvoj Enterprise aplikacija i Java web aplikacija
- Java ME( Java Micro Edition). Pogodna je za razvijanje mobilnih aplikacija.
- Java FX. Koristi se za razvijanje desktop , kao i bogatih internet aplikacija
Šta je aplikacija?
Pretpostavimo da smo dobili zadatak da napišemo aplikaciju koja treba da reši određen tj. prethodno definisan zadatak. Postoje brojni mogući zadaci koje aplikacije rešavaju, od raznih izračunavanja, obrad teksta, zvuka, slike, vođenje procesa u industriji, veštačke inteligencije, igrica i još mnogobrojnih primera.
Pri rešavanju tih zadataka programeri u okviru projekta u jednom ili više fajlova pišu instrukcije(naredbe) koje, kad se aplikacija dovrši i počne upotrebljavati, počnu da se izvršavaju nekim redosledom definisanom od strane programera. Izvršenjem tih instrukcija program će izvršavati pred nim postavljen zadatak, onaj zbog koga je takav program i pisan.
Pri rešavanju tih zadataka programeri u okviru projekta u jednom ili više fajlova pišu instrukcije(naredbe) koje, kad se aplikacija dovrši i počne upotrebljavati, počnu da se izvršavaju nekim redosledom definisanom od strane programera. Izvršenjem tih instrukcija program će izvršavati pred nim postavljen zadatak, onaj zbog koga je takav program i pisan.
Te instrukcije koje se pišu u nekom od programskih jezika npr. Java ili C++, treba da izvrši processor koji razume samo mašinski jezik (niz brojeva u binarnom obliku npr. 10001011 10000111 …). To znači da mora da postoji PREVODILAC tj. poseban program koji će prevesti instrukcije sa nekog programskog jezika(JAVE) na mašinski jezik. Postoje dva načina za prevođenje programa u različitim programskim jezicima, pomoću:
- Compiler-a. Na ovaj način se kompletan fajl odjednom prevodi
- Interpreter-a. Pomoću njega se instrukcije prevode jedna po jedna, tj. jedna se instrukcija prevede, a zatim izvrši, pa tek onda se uzima sledeća instrukcija itd.
U programskom jeziku JAVA postoje i kompajler i interpreter. Kompajler izvorne Java fajlove prevodi na izvršne tj. ".class" fajlove, odnosno na univerzalni bytecode, nezavisan od platforme. Java bytecode su zapravo platformski nezavisne instrukcije za javinu virtuelnu mašinu. Isti se može preneti i na mašinu sa drugim operativnim sistemom jer je na toj mašini instaliran odgovarajući interpreter koji odgovara toj mašini. On se pokreće kada se pokrene izvršavanje aplikacije. Nalazi se u okviru JDK-a tj. platforme za javu koja je instalira na mašini na kojoj će se program izvršiti. Na taj način se obezbeđuje, da pisanje koda u Javi bude nezavisno od platforme.
Put do kreiranja aplikacije
Izvorni kod. Instrukcije u programskom jeziku (npr. JAVA) se pišu u okviru nekog tekst editora, koji je obično u sklopu nekog od razvojnih alata za programiranje IDE(Integrated Development Environment). U programskom jeziku java izvorni kod se čuva u datotekama sa ekstenzijom “.java”.
Izvršni kod. Posle prevođenja programa kreiraju se novi fajlovi sa ekstenzijom “.class”.
Izvršni kod. Posle prevođenja programa kreiraju se novi fajlovi sa ekstenzijom “.class”.
Šta je potrebno da bi se kreirala aplikacija u Javi?
Da bi se kreirao neki program tj. aplikacija u Javi, na desktop računaru, potrebno je osim operativnog sistema instalirati i platform za javu : Java JDK(Java Development Kit).
Platforma za Javu u sebi sadrži:
Platforma za Javu u sebi sadrži:
- JVM-Java Virtuelnu Mašinu. Java virtuelna mašina je samo specifikacija koja će biti korišćena da obezbedi okruženje za izvršavanje javinih izvršnih fajlova(JRE). Ona treba da definiše učitavanje klasa odnosno ušitavač klasa(class loader), memoriju koja će biti obezbeđena pri izvršavanju aplikacija(java heep i java stack) i okruženje za izvršavanje izvršnih fajlova.
- Set softverskih alata koji pomažu razvoj aplikacija koji se na hard disku nalaze kao set biblioteka(jar) i drugih fajlova, koji se koriste za vreme izvršavanja, a koristi ih java virtuelna mašina.
Prethodna dva zajedno čine JRE (Java Runtime Environment).
Java JRE je dovoljna da bi se neka aplikacija napisana u Javi izvršila, ali za razvijanje aplikacije potrebno je JRE proširiti sa:
https://www.oracle.com/java/technologies/downloads/
Treba odabrati platformu za odgovarajući operativni sistem.
Iako je Java, kao programski jezik platformski nezavisna, što znači da se program pisan npr. na windows OS može izvršiti i na Linux OS i na Macintos OS, java JDK, JRE i Virtuelna Mašina su platformski zavisni. Implementacija JVM odgovara operativnom sistemu na kojem će biti instalirana.
Java JRE je dovoljna da bi se neka aplikacija napisana u Javi izvršila, ali za razvijanje aplikacije potrebno je JRE proširiti sa:
- Razvojnim alatima tako da to zajedno čini JDK odnosno javinu platformu.
https://www.oracle.com/java/technologies/downloads/
Treba odabrati platformu za odgovarajući operativni sistem.
Iako je Java, kao programski jezik platformski nezavisna, što znači da se program pisan npr. na windows OS može izvršiti i na Linux OS i na Macintos OS, java JDK, JRE i Virtuelna Mašina su platformski zavisni. Implementacija JVM odgovara operativnom sistemu na kojem će biti instalirana.
Pokretanje sa programske linije
U najgorem slučaju izvorni kod bi se mogao pisati u bilo kom tekst editoru, čak i u Notepad-u i zatim sačuvati negde negde na disku. Pod pretpostavkom da je java JDK instalirana, moglo bi se pokrenuti prevođenje(poziv da se izvrši compiler) sa komandne linije, pokretanjem programa javac i uz pretpostavku da se tekući folder promeni tako da u stvari to bude root direktorijum projekta. Npr. ako bi naziv fajla gde se nalazi izvorni kod zvao Program.java, onda bi komanda za prevođenje glasila:
javac Program.java
Posle prevođenja kreirao bi se fajl Program.class
Sledeća komanda pokreće Interpreter i izvršavanje programa:
Sledeća komanda pokreće Interpreter i izvršavanje programa:
java Program
Međutim, postoje mnogobrojni alati, odnosno razvojna okruženja za JAVU koji pomažu da se razvija aplikacija. U tim okruženjima postoji i editor teksta za kreiranje izvornog koda, alat za testiranje programa(izvršavanje), alat za otkrivanje grešaka (Debug) itd. Najčešće korišćeni IDE alati su:
- Eclipse
- Netbeans
- IntelijIDEA
- JCreator
- JBuilder
- XCode(za Macintosh)
Podaci su predmet obrade u programima. Svaki podatak ima određene osobine i tip podatka .
Tip podatka je određen skupom odrećenih vrednosti koje može da uzme podatak i skupom operacija koje mogu da se izvrše nad podatkom.
|
PODACIKako obezbediti memoriju za podatke, koji se tipovi podataka koriste u javi sa elementarnim primerima
|
Grafika u javi(GUI)
Simulacije iz fizike
Programski jezik JAVA je pogodan za kreiranje animacija, igrica, kao i simulacija iz oblasti fizike. Upotreba biblioteka OSP(Open Source Physics) kao i alata Easy Java Simulation omogućava fizičarima da prave simulacije fizičkih pojava. Više o tome pročitajte na sledećem linku: Java i simulacije u fizici