Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Greške
  • Programi za Java programiranje i edukaciju. Java razvojna okruženja

Programi za Java programiranje i edukaciju. Java razvojna okruženja

Gotovo sve knjige i tutorijali o Javi za početnike počinju opisom OOP-a: koliko je odličan i kako je sjajan. Jasno je, budući da je svako drugo programiranje jednostavno nemoguće u Javi, osim objektno orijentisanog programiranja, prvo se predlaže savladavanje 40..80 stranica suludih analogija sa hijerarhijom mačaka/pasa/pataka/automobila, a tek nakon toga da se predlaže da se napiše “Zdravo, svijete!” . :-)

U isto vrijeme, vrijedno je napomenuti da se apsolutno sav Java trening temelji na najprimitivnijem izlazu rezultata na konzolu. To nije konzolna aplikacija u uobičajenom smislu, odnosno izlaz nekih podataka red po red. Pa, na primjer, Turbo Pascal 3.0 je izašao 1985. godine i već je imao podršku za grafičke modove. 1990. godine pojavio se Turbo Vision - vrlo kul stvar - a la Windows samo za DOS. A u Javi 2018. moguć je samo izlaz na konzolu. A sada je sav taj entuzijazam i hladnokrvnost nekako razbijen već na pozornici „Zdravo, svijete!“ ... Vjerovatno je gore samo zabava na programabilnom kalkulatoru MK-61 ili MK-52 - ali šta? postoji isti izlaz red po red.

Ali, najsmješnije je to što u Javi zapravo možete kreirati programe pomoću vizualnog programiranja! Za ovo sam saznao tek kada sam pročitao (ili bolje rečeno upoznao) knjigu od 500 stranica, gdje je u jednom od posljednjih poglavlja odjednom postalo jasno da postoje normalni GUI (grafički korisnički interfejsi) za Javu i da možete dizajnirati programi sa dugmadima, poljima za unos i normalnim menijima. Pitanje je: zašto ste provodili toliko vremena na ovoj jadnoj konzoli kada ste mogli sve da radite lepo i uredno odjednom?

Nakon što sam proveo nekoliko dana proučavajući ovo pitanje, otkrio sam nekoliko smiješnih nijansi.

Prvo- Postoje tri tipa GUI za Javu (biblioteke): A.W.T., Swing(ko je smislio ova imena?) i JavaFX.

Danas (Java 8 i 9) svi su uključeni u JDK paket: to jest, sve radi iz kutije i ne morate se mučiti sa njihovom instalacijom. Ovo je veliki plus.

Ali, AWT je prva i vrlo stara implementacija, tako da ne morate da je koristite. Općenito - nije košer. Swing takođe nije košer, jer tu nešto nije u redu i programi su užasno spori zbog toga. Neću reći preciznije, nisam to razumio, ali izgleda da više zvanično više ne razvija nekoliko verzija. Ali JavaFX bruji i naša svijetla budućnost.

Postoji još jedna takva grozota - java applets, one koje rade u pretraživaču i istovremeno ga „okače“ čvrsto, baš kao i Flash, samo gore. Srećom, ove / te stvari / stvari se praktično više ne koriste, pa je besmisleno trošiti vrijeme na njihovo proučavanje.

Dakle, jedina stvar na koju vrijedi potrošiti vrijeme je JavaFX.

drugi trenutak. Nije tako jednostavno. Uzmite u obzir Delphi (ili Visual Studio, Lazarus, bilo šta). Čak i za "zelenog" početnika, kreiranje jednostavnog programa (jedno dugme i tekstualno polje za izlaz) će ići ovako:

  • start Delphi;
  • automatski se kreira novi projekat sa glavnom formom;
  • odaberite dugme na paleti komponenti i postavite ga na obrazac; sve je vizuelno
  • na sličan način bacamo tekstualno polje na obrazac;
  • ako je potrebno, u panelu sa svojstvima možete odrediti tekst gumba, dimenzije itd.;
  • pokrenite - Delphi će ponuditi da sačuvate, sačuvate.

Odnosno, nismo napisali ni jednu liniju koda, IDE je sve uradila sama. Ako pogledate generirani kod, ne možete ga nazvati jednostavnim – ovdje je već potrebno određeno znanje, ali Delphi je dovoljno pametan da razumije kako se radi s njim.

Ako želimo da dodamo neku radnju, na primjer, kada kliknemo na dugme, ispunimo tekstualno polje frazom "Bok!", onda radimo ovo:

  • dvaput kliknite na dugme (ili izaberite događaj onClick);
  • Delphi kreira kod rukovaoca za ovaj događaj i baca nas u editor;
  • ukucavamo ime tekstualnog polja i Delphi daje nagoveštaje na osnovu kojih se možete kretati šta i kako da radite.

Dakle, opet, IDE je obavio sav težak posao.

Ali to je na drugim jezicima, Java ide svojim putem. Da biste kreirali dugme u JavaFX-u, morate ručno kreirati Stage - „pozorišnu scenu“ (naziv je sasvim ozbiljan!) I na njima mjesto scene (Scene). To je neki kontejner u koji su drugi elementi već ugrađeni.

Ovo pretpostavlja da svaki element i svako njegovo svojstvo moraju biti programirani pojedinačno. Evo primjera za dva dugmeta i jednu oznaku iz moje knjige tutoriala

Odgovor = nova oznaka("Pritisnite dugme"); Button btnUp = new Button("Gore"); Button btnDown = new Button("Down"); btnUp.setOnAction(novi EventHandler () ( public void handle(ActionEvent ae) ( response.setText("Pritisnuli ste gore."); ) )); btnDown.setOnAction(novi EventHandler () ( public void handle(ActionEvent ae) ( response.setText("Pritisli ste dole."); ) )); rootNode.getChildren().addAll(btnUp, btnDown, odgovor); ...

Kada postoji desetak dugmadi, plus 20 stavki menija, plus 30 drugih komponenti, kod se neće činiti malim. I to bez koda koji je odgovoran za dodatna svojstva, kao što su poravnanje, veličina, font... I ovo sekunda označava da JavaFX tutorijali pokazuju kako pisati "fx kod" olovkama. Čežnja, jednom rečju...

Ali, evo spasa treća nijansa. Ispostavilo se da su pametni ljudi (očigledno upoznati sa punopravnim IDE-ovima) razvili drugačiju vrstu aplikacije, gdje je deskriptivna xml datoteka pod nazivom fxml, a takvi programi se mijenjaju kao " FXML JavaFX aplikacije»

Za mene je prilično iznenađujuće da učenje Jave ne počinje samo sa takvim aplikacijama. Iako nije Delphi, ipak je milion miliona puta bolji od rada sa konzolom i punjenja glave drugim glupostima o tome zašto treba da koristite stotinu redova sa OOP-om gde je na drugim jezicima potrebna jedna jednostavna procedura. ;-)

Sad ozbiljno. Ako nikada niste programirali u Javi, onda to možete isprobati odmah. Zapravo je prilično cool, iako je potrebno neko vrijeme da se naviknete na programe. Ako imate iskustva sa "vizuelnim IDE-ovima", onda još bolje - upoznajte mnogo ljudi koje poznajete.

JDK

Java mora biti instalirana na računaru. Neću davati linkove kako to učiniti - Google će pomoći, jer je sve previše jednostavno.

IDE

U Javi ne postoji jedan program - razvojno okruženje, tako da postoje primjeri na webu iz različitih programa. Najprimitivniji poput Notepad++ pogodni su samo za izlaz na konzoli, ali ako uzmemo u obzir nešto ozbiljnije, onda se izdvajaju samo tri kandidata: NetBeans, Eclipse i IntelliJ IDEA.

NetBeans- najjednostavniji program koji se brzo pokreće (u odnosu na ostale) i radi prilično dobro.

Eklipsa- takođe dobra opcija, moćnija od NetBeansa, ali slabija od IntelliJ IDEA.

IntelliJ IDEA- izgleda najbolje, ali morate to platiti brzinom rada. Vrijedi napomenuti da je Android Studio baziran na IntelliJ IDEA, ali je iz nekog razloga studio mnogo sporiji.

Važna stvar je vezana za programiranje za Android. Od ova tri IDE-a, samo IntelliJ IDEA je manje-više pogodna za ovo. Na webu postoji mnogo materijala o programiranju za Android u Eclipseu, ali svi su zastarjeli - nemojte gubiti vrijeme na pokretanje starog ADT dodatka i pokušavajući bilo što učiniti s njim. Možda će stari Android SDK raditi, ali svi novi ne.

Pokazaću vam kako da napravite FXML JavaFX aplikaciju u sva tri programa, ali pre nego što počnete, morate da instalirate još jedan program: SceneBuilder (koristite verziju Java 8). Ovo je ključni program u kojem se, zapravo, izvodi sva vizualna konstrukcija. SceneBuilder može raditi samostalno bez IDE-a, tako da ga možete pokrenuti i vidjeti kako radi. Izlaz će biti fxml datoteka koja sadrži sve potrebne oznake. Ova datoteka se koristi u IDE-u, umjesto pisanja megatona koda. :-)

TK

Program koji kreirate biće vrlo jednostavan - dugme i tekstualno polje. Kada kliknete na dugme, neka se u tekstualno polje doda tekst “Zdravo!”.

U svakom programu morate unaprijed registrirati postavku - koju koristi JDK. Ako ne možete shvatiti kako to učiniti, proguglajte.

NetBeans

Prije početka rada potrebno je povezati SceneBuilder: Usluga - Opcije - Java - JavaFX - Početna stranica Scene Builder. Odaberite direktorij programa. Podešavanje je potrebno izvršiti samo jednom. Ovo se odnosi na sve IDE.

Kreirajte novi projekat, gdje trebate odabrati "FXML JavaFX aplikacija".

Kliknemo na "Finish" i, nakon nekog rada od strane NetBeansa, vidimo gotove datoteke:

  • Myfx.java- ovo je glavni fajl, koji, u stvari, pokreće ceo program.
  • FXMLDocumentController.java- ovo je "kontroler", gdje će se uglavnom programirati.
  • FXMLDocument.fxml- ova datoteka pohranjuje vizualni dio.

Sada pokrenite program. Prvo će ići montaža i kompilacija (prilično brzo), nakon čega će se pojaviti prozor našeg programa.

Ovo je super, jer nismo napisali ni jednu liniju koda, ali već imamo program sa radnim dugmetom. :-)

Ako ste ispravno naveli putanju do SceneBuilder-a, možete odabrati stavku menija "otvoreno" u dosijeu FXMLDocument.fxml. Ista stvar se dešava ako dvaput kliknete. SceneBuilder će se otvoriti. Ako nema stavke, onda putanja nije ispravna, provjerite postavku.

Princip rada u SceneBuilder-u je isti za sve IDE, tako da ću za sada opisati samo opšte tačke, a onda ćete sami shvatiti.

Vrijedi napomenuti da nakon uređivanja datoteke ne morate zatvoriti SceneBuilder. Samo trebate sačuvati (Ctrl + S) i prebaciti se na IDE - on će sam pokupiti promjene.

Prozor SceneBuilder-a podijeljen je u tri dijela:

  • lijevo - skupovi komponenti, hijerarhija i kontroler, gdje je naznačena glavna klasa (ovo je važno!)
  • u centru je sama forma, gde se odvija vizuelna konstrukcija.
  • desno - svojstva komponenti, podijeljena u tri kartice (ovo je uvjetna podjela). Kartica Kod je odgovorna za ono što će se koristiti u java datoteci.

Izgradnja FX programa mora početi sa kontejnerom. U ovom primjeru korišten je NetBeans AnchorPane. Prilično je zgodno, omogućava vam da postavite "ispravna" uvlačenja za ugniježđene elemente. tab Kontejneri sadrži i druge posude s kojima možete sami vježbati (ja nisam savladao ni pola :-)).

Hijerarhija komponenti je vrlo zgodna stvar koja vam omogućava da brzo odaberete željeni element.

Prema zadatku, trebalo bi da imamo polje za tekst. NetBeans koristi Label, ali nećemo ništa ukloniti, samo dodati novi element TextField na obrascu (proizvoljno po vašem ukusu).

Pregled je moguć u SceneBuilderu (Ctrl+P). U ovom načinu rada se prikazuje samo forma i svi elementi "bez java programiranja".

Sada važna stvar: da bismo mogli koristiti komponentu u java programu (u našem kodu), moraju se uraditi dvije stvari.

Prvi je da provjerite da li je naveden ispravan kontroler. U našem slučaju, NetBeans je već sve uradio sam i specificirao myfx.FXMLDocumentController.

Kao što vidite, ovo je kontroler iz datoteke FXMLDocumentController.java(paket.kontroler). IDE to ne navodi uvijek, ali je važno jer ga fxml fajl (tačnije, java kod) koristi za povezivanje.

Druga tačka - korištena komponenta mora imati svoj ID - ovo je parametar fx:id. Ovdje sam naznačio textField1.

Žuti trokut će se pojaviti na vrhu poruke da navodno nema veze između ovog ID-a i kontrolera. Zanemarite ga za sada, o tome ćemo kasnije.

Dugme koje će popuniti tekstualno polje takođe mora imati sopstveni ID, kao i metod događaja onAction (ovo je događaj glavne komponente, a ne onClick, kao u Delphiju). NetBeans se već pobrinuo za ovo, tako da ne moramo ništa pisati.

Na ovoj vizuelnoj konstrukciji se može završiti. Sačuvajte i prebacite se na NetBeans. Vidimo da je fajl FXMLDocument.fxml promijenjeno: dodano textField1:

Sada moramo nekako koristiti tekstualno polje u java kodu. Za razliku od Delphija, NetBeans ne kreira nikakav kod za ovo, pa ćemo ga morati dodati na "poluručni" način. Da bi to uradili, različiti IDE koriste različite metode, ali opšti princip je da morate da postavite kursor na željeno polje u uređivaču i uradite neke "akcija". U NetBeans-u se zove Instalirajte kontroler na meniju Izvor. (Da, Java ima velikih problema sa imenovanjem...)

Nakon izvršenja ove naredbe, ona će ići na datoteku FXMLDocumentController.java, gdje će deklaracija varijable biti dodana kodu textField1:

Obratite pažnju na "@FXML" - ova napomena ukazuje da se kod na neki način koristi u FXML-u. Nakon ovih promjena, SceneBuilder više neće izdavati upozorenje kao žuti trokut prije. Ako ponovo pokrenete SceneBuilder, ovo možete provjeriti.

Pokrećemo program za izvršenje za test. Sada je naš zadatak da popunimo tekstualno polje klikom na dugme. Kao što ste već shvatili metodu handleButtonAction samo radim pravi posao. U njega dodajemo:

TextField1.setText("Zdravo!");

Obratite pažnju na to kako radi završetak koda nakon što se pritisne tačka.

Dok kucate, NetBeans će suziti područje prijedloga iz kojeg možete birati. Ova karakteristika olakšava život programerima, jer postoji previše opcija i to vam omogućava da izbjegnete razne vrste sintaktičkih grešaka prilikom kucanja.

Ova karakteristika je prisutna u svim IDE-ovima, iako postoje razlike u implementaciji i upotrebi.

Pokrećemo program i vidimo da sve radi kako treba.

Pa, morali smo napisati samo jednu liniju koda i izvršiti nekoliko dodatnih radnji u uređivaču.

Eklipsa

Eclipseu je potrebno malo duže da se pokrene nego NetBeans. Prvo morate odrediti putanju do SceneBuilder-a. Ovo se radi u Prozor - Postavke - JavaFX.

Obratite pažnju i na činjenicu da je Eclipse neruski program (ne znam ni da li postoji rusifikator za njega).

Kreirajte novi projekat i odaberite JavaFX.

Kliknite Sljedeći i idite na stranicu postavki. Ovdje sam naveo naziv projekta, kao i prije myfx(Imam različite direktorije projekta za različite IDE, tako da se ne preklapaju).

Ovdje trebate odabrati tip aplikacije, tip kontejnera i naziv kontrolera. Kliknite Završi i Eclipse brzo generiše kostur našeg budućeg programa.

Ovdje je sve vrlo slično, samo je dodat još jedan fajl application.css- da, da, u JavaFX-u možete koristiti CSS da prilagodite izgled! Eclipse je odmah generirao kod za vezu za ovu datoteku.

Pokrenite program i uvjerite se da nema grešaka.

Za razliku od NetBeans-a, ovo je potpuno prazan obrazac. Otvorimo ga u SceneBuilder-u koristeći kontekstni meni.

I ovdje vidimo da nema forme. Ali, u stvari, jeste - samo se podrazumevano koristi izračunata veličina (visina i širina), koja je u ovom slučaju nula. Nema komponenti! U našem slučaju to nije baš ono što nam treba, pa ćemo izabrati BorderPane na hijerarhijskoj listi i u svojstvima Pref Width i Pref Height postavimo neke vrijednosti. Ova svojstva postavljaju "željenu" širinu i visinu. Nakon toga, obrazac se odmah "pojavljuje".

BorderPane kontejner se sastoji od 4 dijela: gornjeg, desnog, donjeg, lijevog i središnjeg. Komponente treba postaviti u različite dijelove - njihov položaj će ovisiti o tome kada se promijeni veličina prozora.

Ovdje je prilično teško objasniti riječima, samo pokušajte da postavite neke dugmad, a zatim promijenite veličinu prozora u pregledu.

Nisam postao previše pametan i postavio sam tekstualno polje na vrh i dugme u sredini.

Sada provjerite da li je kontroler specificiran: u ovom slučaju application.SampleController- Eclipse je uradio posao za nas.

Sada moramo navesti id za naše elemente. Za dugme koje sam postavio btn1, i tekstualno polje textField1. Opet imamo poruku "žuti trougao".

Za dugme navedite metodu za događaj - btn1Click.

Sačuvajte i vratite se u Eclipse. Vidjet ćemo da je fajl Sample.fxml ažurirano, ali su se ikone upozorenja pojavile pored nekih redova.

Ovde je situacija potpuno ista kao u NetBeans-u - potrebno je da izvršite promene u "poluručnom" režimu. U Eclipseu, ovo se radi pomoću kontekstnog menija na drugom dugmetu miša: Quick Fix ili interventni taster ctrl+1(što je zgodnije).

Istovremeno se pojavljuje nagovještaj o namjeravanoj radnji. Na primjer za textField1 predlaže se dodavanje identifikatora kontroleru:

a za dugme postoji i metoda rukovanja događajima:

U isto vrijeme, Eclipse malo usporava i promjene se ne prikazuju odmah na ekranu. Ovdje se trebate ili prebaciti na datoteku kontrolera ili pričekati malo. Kao rezultat toga, željene promjene će biti dodane u kod i ikone upozorenja će nestati.

Dodajmo naš kod kao što smo to učinili prije u NetBeans-u.

Obratite pažnju na više intelektualnog rada autodovršavanja. U automatskom načinu rada malo usporava, ali ako pritisnete Ctrl+razmak(ista kombinacija se koristi u mnogim IDE-ovima), takođe vam omogućava da dobijete dobru pomoć.

Započnimo naš program.

I zapisujemo još jedan IDE na naš račun. :-)

IntelliJ IDEA

IntelliJ IDEA se pokreće prilično sporo, možete imati vremena da provjerite svoju poštu. :-)

Opet navedite putanju do SceneBuilder-a: File-Settings:

I navedite njegovo ime (kao i obično - myfx):

IntelliJ IDEA će se inicijalizirati i vidjet ćemo poznata tri fajla. Pokrenimo program da provjerimo greške.

Postoji i prazan obrazac, ali je naveden naziv programa. Ako pogledate kod Main.java, vidjet ćemo liniju:

PrimaryStage.setTitle("Hello World");

Ovo je naslov aplikacije. U drugim IDE-ovima ova linija nedostaje, ali sada znamo čemu služi “pozorišna pozornica”. ;-)

Prebacite se na SceneBuilder (slično Eclipse): sa drugim dugmetom miša morate odabrati Otvorite u SceneBuilderu.

Ovdje je također prazan obrazac, ali sa kontejnerom GridPane. Instaliraj Pref Width i Pref Height za prikaz obrasca.

Sam po sebi, GridPane je a la mreža ćelija za elemente. Mislim da nema smisla ponavljati ovdje - sve radnje će biti slične:

  • dugme za postavljanje i testno polje,
  • dajte im identifikaciju
  • za dugme registrirajte metodu za obradu klika,
  • ne zaboravite provjeriti je li naveden kontroler ( uzorak.Kontroler).

Zatvorite SceneBuilder i vratite se na IntelliJ IDEA. Ovdje morate dodati identifikatore id koda, a također kreirati metodu za reakciju na klik na dugme.

IntelliJ IDEA nudi dva načina za to. Prvi - kada pređete mišem preko "problema", pojavit će se savjet na koji možete kliknuti:

Drugi je vrući taster Alt+Enter

Svaki put kada dodate, prelazite na datoteku kontrolera, gdje možete odmah vidjeti promjene.

Istovremeno, imajte na umu da red "@FXML" nije dodan. Ako ga ručno dodamo ispred varijabli i metode, tada će IntelliJ IDEA odmah ponuditi dodavanje potrebne java klase:

Generalno, IntelliJ IDEA pokazuje prilično dobru domišljatost i djeluje kao pomoćnik u pisanju koda. I to radi samostalno bez ikakvih dodatnih pritisaka na dugme.

Pa, dodajmo naš kod za rukovalac i pokrenimo program:

Odlično, sve radi!

Ukupno

Glavni zaključak - Vizuelno programiranje je moguće u Javi. Možda nije savršeno, ali je sasvim prikladno, posebno za početnike. Učenje jezika je mnogo interesantnije kada postoji neki opipljiv rezultat - OOP, klase i ostali trikovi su dobri, ali bolje je početi sa dugmadima, poljima za unos, menijima i svime što podrazumeva normalan program. A konzola je dosadna i nezanimljiva.

Donio sam tri IDE ne slučajno. Postoji mnogo Java primjera na webu, i svi su za različite programe. Lično, još se nisam odlučio za svoje preferencije, jer svi imaju i pluse i minuse. Vjerovatno treba raditi sa svima, onda će biti jasno.

Ali, ključna stvar je mogućnost rada sa SceneBuilder-om. Izgradnja forme u JavaFX-u se malo razlikuje od istog Delphija, prvenstveno u korišćenju složenih kontejnera (mogu se ugniježditi jedan u drugi). Stoga bi se prvo trebali pozabaviti njima, nakon čega već možete preuzeti same komponente.

Vrijeme je da pređete s jezičnih funkcija na programe koji će vam pomoći da brže i ispravnije pišete kod. Razvojno okruženje (IDE - Integrated Development Environment) uključuje:

  • editor koda;
  • kompajler;
  • kolektor;
  • debugger.

Neka razvojna okruženja sadrže sve ovo iz kutije, druga se dovode u ovaj status povezivanjem dodataka i modula. Evo 10 najboljih IDE-a za Javu danas.

IntelliJ IDEA

Opis: Jedno od najfunkcionalnijih okruženja za razvoj java, opremljeno sistemom intelektualne pomoći u pisanju koda. Na osnovu konteksta, IDEA prilagođava način rada automatskog dovršavanja i dostupnost alata. Obilje alata omogućava vam da ubrzate razvoj, na primjer, koristeći obrasce i ponavljanja, kao i da povećate performanse konačnog programa. Ogroman broj dodataka i dodataka za bilo koji zadatak čini IDEA java razvojno okruženje gotovo idealnim alatom.

Cijena: 499 USD za prvu godinu rada.

NetBeans

Opis: Pozicionirano od strane proizvođača kao razvojno okruženje koje podržava sve najnovije Java karakteristike, omogućavajući vam pisanje koda bez grešaka zahvaljujući alatu FindBug. Web stranica, dokumentacija i sam IDE za java na ruskom. Možda najmoćnije besplatno Java razvojno okruženje.

Cijena: besplatno.

Ova lista Java IDE-a je daleko od potpune i pokriva samo najpopularnije predstavnike. Stoga, prije nego što odaberete favorit, zapamtite da je najbolje java razvojno okruženje ono koje vam omogućava da riješite trenutni problem uz minimalan trud i sa najboljim rezultatom.

Od autora: Među svim jezicima koji se koriste u web razvoju, Java je najosjetljivija. Ovaj PL karakterizira složena sintaksa, visoka tipizacija podataka i otpornost na greške. Zato je ovaj alat za Javu - IDE toliko tražen. Razvojno okruženje pomaže da se zaobiđu zamke koje čekaju programera koji piše u uređivaču teksta. Ako ne želite da prolazite kroz dug i trnovit put pisanja teksta, dobrodošli u pregled vrhunskih razvojnih okruženja najprikladnijih za jezik kafe.

Potreban je IDE za razvoj

Java je jedan od onih jezika za koje razvojno okruženje nije hir pojedinih stručnjaka, već pravo sredstvo za preživljavanje. Složeni jezik se ne može pročitati i izvršiti dok svi elementi sistema nisu pravilno konfigurisani. Ponekad je web programeru teško razumjeti zašto mu je potreban tako glomazan i produktivan softver. Svi web jezici poput HTML/CSS, JavaScript i PHP mogu se implementirati bez dodatnog softvera (iako postoji čak i najplaćeniji IDE za potonji - PHPStorm). Ali, čim dođe do Jave, sve dolazi na svoje mjesto. Dugi i složeni kodni dokumenti prkose ručnoj organizaciji.

Ali, kao i uvijek, postoje protivnici ideologije. Neki programeri nazivaju IDE "štake" koje su potrebne samo manje obučenim programerima. Za njih je preuzimanje razvojnog okruženja kao varanje o osnovama. Nažalost, ovaj pristup može ostaviti programere iza evolucije programiranja: veliki korporativni projekti, poput visoko funkcionalnih web aplikacija, zahtijevaju blisku interakciju između članova tima, brzo pokretanje i otklanjanje grešaka koda. Štaviše, vještina rada sa glavnim IDE-ima je kriterij za zapošljavanje na najboljim pozicijama.

Naravno, postoje oni koji mogu izgraditi svoje programerske alate tako dobro da punopravni IDE postane nepotreban. Bilo kako bilo, razvojno okruženje troši resurse uređaja koji su potrebni da bi se osiguralo da ostali programski alati rade. Ovo je posebno vidljivo u zastarjelim verzijama Windows/Linuxa – čim se pokrene razvojno okruženje, ostali resursi stagniraju.

Web programeri gotovo uvijek preferiraju uređivače teksta. Lakši su i omogućavaju vam da kreirate rješenja na kolenima. Nema dodatnih alata, nije potrebna duboka konfiguracija, a raspon softvera je mnogo širi. Ovaj pogled zadržavaju web programeri sve dok ne počnu sa Javom.

Želim da izaberem program

Područje programiranja nudi mnoga rješenja za kreiranje punopravnog koda. To se posebno odnosi na različita razvojna okruženja. Nisu samo velike kompanije poput Oraclea te koje grade IDE. Rad na takvom softveru u pravilu je prerogativ profesionalaca koji žele optimizirati svoje aktivnosti. Upravo to se dogodilo Visual Studio-u: jedan od najboljih IDE-a svih vremena. Microsoft, koji je u punom zamahu uveo verziju Windows-a u novom vijeku, jednostavno je predstavio svoje alate u jednoj aplikaciji. Sada je VS izbor miliona.

Nažalost, ne možete to nazvati "za Java programere". Ne, to uopće ne znači da neće biti moguće napisati nešto na Javi u ovom razvojnom okruženju: čak postoje i posebne ekstenzije. Samo što je više fokusiran na C, C# i neke druge Microsoft proizvode. Java ima svoj vrhunski IDE, koji ćemo danas predstaviti. Ali, prvo, treba da shvatimo kakvu vrstu idealnog IDE želimo da vidimo (u skladu sa).

Prvo, možete odmah odlučiti da oni koji rade na mreži nisu prikladni za Java programere. Oni će stvoriti probleme u tumačenju, a stalna zamrzavanja samo će obeshrabriti programiranje. Pametnije rješenje bi bilo preuzimanje jednog od danas predstavljenih softvera. Bolje je jednom kliknuti na preuzimanje nego stalno trpjeti greške. Era cloud IDE-a tek dolazi.

Takođe, Java razvojno okruženje mora podržavati brojne tehnologije koje su neophodne za efikasno kodiranje. Među njima su jezici virtuelnih mašina Java: prvenstveno Java 10, ali i Groovy i Scala. Kontrola verzija je također jedna od ključnih tačaka. Sam Git neće biti dovoljan: potrebni su vam Mercurial, SVN i drugi. Nemoguće je pogoditi koji će biti popularan za nekoliko godina (Git, naravno ☺). Web programer će imati koristi od podrške širokom spektru jezika, uključujući PL baze podataka, web jezike, i front-end (TS, JS, HTML) i back-end (jedan od popularnih jezika opšte namjene). Budući da je karakteristika JVM-a konverzija riječi programskog jezika u bajt kod, potrebni su i moćni tumači. Oni su ti koji mogu učiniti Javu brzom u teoriji, brzom u praksi.

Pa, naravno, kao i sam Java jezik, razvojno okruženje za njega mora biti višeplatformsko. Sva druga rješenja ometaju razvoj programera. Pošto je izabrao Javu, izabrao je univerzalnost.

Tri slona Java razvoja

Kao i uvijek, tu su prva tri i svi ostali. Ovo se već koristi u industriji web razvoja i nećemo mijenjati tradiciju. Prednost našeg pregleda je što neće biti plaćenog softvera (skoro). Svako razvojno okruženje možete besplatno preuzeti sa službene web stranice. Također, to će biti jedna od onih top ljestvica na kojoj subjektivno biramo pobjednika. Pa, možete sabrati svoju odluku, na osnovu vašeg iskustva i naših zaključaka.

Ideja za web razvoj

IntelliJ IDEA je IDE koji je izdao JetBrains baziran na Java virtuelnoj mašini. Samo okruženje je takođe napisano na Javi i delimično na Pythonu i namenjeno je njima. Odmah su se identifikovali kao okruženje za Javu, još 2001. Tada je razvojno okruženje uvelo čitavu biblioteku alata za refaktorisanje, što je odmah dovelo IDEA na vrh. Programeri su napravili izbor ne toliko u korist pogodnosti, koliko u korist produktivnosti. Neke rutinske operacije u potpunosti obavlja razvojno okruženje.

Obećali smo da danas neće biti plaćenog softvera. Ali istina je da ultimativna verzija IDEA-e ima svoju cijenu, iako beznačajnu (do 500 dolara), kao za IDE. Ako ste profesionalni javist koji zarađuje od 20 dolara na sat, ovo je sitnica. Inače, samo u paketu Ultimate programer će moći da radi sa Java EE platformom.

Ali postoji i besplatna verzija IDEA-e, koja nije skraćena verzija. Da, neke funkcije nedostaju, ali jezička podrška je slična komercijalnoj verziji. Zgodno je napisati svoje prve linije koda na njemu i proširiti ga dodacima.

Savremeni trendovi i pristupi u web razvoju

Naučite algoritam za brzi rast od nule u izgradnji web stranica

IDEA je jedno od onih razvojnih okruženja koje se može nazvati zaista pametnim. Umjesto popravki i isticanja, koje ima čak i najjednostavniji uređivač teksta, IDEA nudi automatsko dovršavanje: fragmenti gotovog programa generiraju se u rukama programera. Nije vredno ni spominjati da će se sve zagrade i druge sintaktičke dobrote automatski zatvoriti. A ako nešto krene po zlu i IDEA ne može riješiti problem, odmah će signalizirati Java programeru s druge strane ekrana.

Podmićivanje i refaktorisanje, koje se javlja odmah na nekoliko jezika. Javisisti znaju da kod nikada nije čista Java, posebno kada je u pitanju razvoj weba. Ovo uključuje jezike baze podataka, hipertekst i tako dalje. U ovom trenutku, IDEA radi ono što mnogi još nisu u stanju: analizom pisanog programa, IDE odvaja jezike jedan od drugog i analizira ih zasebno.

Program ima dobro implementirane prečice na koje ćete se, naravno, morati naviknuti. Ali, čim se sve dogodi, produktivnost se preokreće. Oni također mogu uzrokovati otklanjanje grešaka koda koji se javlja u sljedećem prozoru.

Razvojno okruženje ističe se po tome što stalno proširuje broj podržanih tehnologija. Međutim, programeri ne ovise mnogo o ovim ažuriranjima. U svakom trenutku mogu preuzeti odgovarajući dodatak.

Eclipse IDE

Ovo razvojno okruženje je popularno ne samo među Java programerima, već i među web programerima općenito. Značajna prednost u odnosu na IDEA svakako će biti cijena - Eclipse je potpuno besplatan, kao i dodaci za njega. Inače, kreatori razvojnog okruženja nisu planirali da se takmiče sa IDEA-om: želeli su da zasene uspeh koji je Visual Studio dobio. U određenoj mjeri su i uspjeli: prosječni web programeri gotovo uvijek preferiraju Eclipse.

Šta je još bolje od IDEJE? Besplatan pristup Java EE. Dostupan je odmah, bez dodatnih plaćanja i instaliranja dodataka. Usput, o posljednjem. Njihovo instaliranje u Eclipse je značajan zadatak. Mogu se "svađati" jedni s drugima, uzrokujući neugodnosti programeru. Ali pozitivna stvar je njihov broj. Savjetujemo vam da odaberete zvanične, jer je na taj način manja vjerovatnoća da će početi u sukobu sa razvojnim okruženjem.

Eclipse je dizajniran za vas da ga personalizirate za sebe. Stoga vas prvo iskustvo sa IDE može odgurnuti od dalje upotrebe. Taj rijedak slučaj kada je potreban priručnik za jedno od najboljih razvojnih okruženja. Na sreću, ima ih dosta na YouTube-u.

NetBeans

Ovo je razvojno okruženje koje je rođeno iz pera kreatora Jave - Sun Microsystem. Željeli su stvoriti najbolje rješenje za svoj jezik, pa su dizajnirali IDE koji nije samo prijateljski sa Windows-om.

Na našoj listi, to je najviše multiplatformski. NetBeans se može pokrenuti ne samo na gornjim osovinama, već i na bilo kojem drugom uređaju koji je opremljen JVM-om. Odmah se može vidjeti pristup Sunca: htjeli su da njihov jezik radi na svim uređajima (od kompjutera do mašine za pranje veša). Naravno, "grah" je nazvan službenim razvojnim okruženjem za Javu, iako ono nije tako dobro. Danas na NetBeans-u radi Oracle, koji je preuzeo Sun.

NetBeans je pametan kao IDEA, sposoban za pametno refaktorisanje. Sistem se nosi sa ovim zadatkom mnogo bolje od Eclipsea, ali lošije od IDEA.

Kao što možete shvatiti iz obima rečenog, IDEA će biti proglašena najboljom. Evo liste razloga:

razumijevanje programiranja. Niko ne može tako brzo kodirati i popraviti greške kao IDEA;

efikasnost refaktoriranja;

Cijena. Da, Eclipse je potpuno besplatan. Ali ne biste kupovali lošu hranu samo zato što je jeftinija, zar ne?

Ovo je naša vizija! Inače, Oracle u svom arsenalu ima još jedan IDE koji se zove JDeveloper – potpuno skrojen za Javu. Probajte i sami donesite zaključke. I imamo sve!

Savremeni trendovi i pristupi u web razvoju

Naučite algoritam za brzi rast od nule u izgradnji web stranica

Nakon instaliranja svih potrebnih komponenti, vrijeme je da napravite izbor uz pomoć kojeg će se odvijati razvoj programa.

Ovdje postoje dva načina: ili radite sa JDK direktno preko komandne linije, ili koristite integrirano razvojno okruženje. Razmotrimo obje ove opcije.

Prevođenje izvornog koda preko komandne linije

Jedna od opcija je da se cijeli programski kod zadrži u uređivaču teksta, a zatim prevede izvorni Java kod u bajt kod preko komandne linije i zatim pokrene ovaj bajt kod.

Ispod je redoslijed radnji:

1. Sačuvajte naš izvorni kod u *.java formatu (slika 2.1).

2. Pokrenite komandnu liniju i unesite fasciklu sa izvornim Java kodom (slika 2.2).

3. Koristeći komandu Javac, kompajliramo izvorni Java - kod u bajt - kod (slika 2.3).

4. Pokrenite bajt kod koristeći Java komandu (slika 2.4).

Slika 2.1 – Čuvanje izvornog koda

Slika 2.2 – Putanja do foldera na komandnoj liniji

Slika 2.3 - Prevođenje u bajt kod

Slika 2.4 - Pokretanje bajtkoda

Metoda je dobra, ali pri razvoju ozbiljnih aplikacija se malo koristi. Za male projekte sve je u redu - kompajliramo sav izvorni kod i pokrenemo prevedeni bajt kod. Ali ako projekat već ima više od deset datoteka izvornog koda u svojoj hijerarhiji, onda je ručno kompajliranje izuzetno nezgodno i usporava proces razvoja. U ove svrhe preporučuje se korištenje integriranih razvojnih okruženja.

Java IDE

Kompajliranje Java koda iz komandne linije može izgledati kao naporno, ali je ipak neophodna vještina. Samim praćenjem osnovnih JDK koraka možete dobiti bolju predstavu o tome kako funkcionira razvojno okruženje. Najčešće se preporučuje da pre instaliranja bilo kog IDE (integrisano razvojno okruženje) naučite kako da radite sa Java JDK preko komandne linije.

Međutim, nakon savladavanja osnovnih koraka izvršavanja Java programa, vjerovatno ćete htjeti koristiti okruženje za profesionalni razvoj.

Nedavno su takva okruženja postala toliko moćna i zgodna da sada jednostavno nema smisla bez njih.Najčešći IDE za Javu danas su: Eclipse, NetBeans i IDEA. Svaki od ovih medija ima svoje prednosti i mane. Lično sam se iz nekog razloga odlučio na Eclipse IDE. Prvo, ovo okruženje ima veoma zgodne prečice. Pod njim, ogroman broj programskih alata je besplatno dostupan. Čak je i tako velika korporacija kao što je Google lično napisala mnogo alata za Eclipse. Prilikom razvoja, na primjer, pod Android OS-om, teško je pronaći najbolji IDE - za Eclipse je besplatno dostupan vrlo moćan Android SDK na kojem je razvijeno više od jedne generacije Android aplikacija.

Da biste preuzeli ovaj IDE, trebate slijediti link http://www.eclipse.org/downloads/ i odabrati jedno od predloženih rješenja (slika 2.5).

Slika 2.5 - Predložena Eclipse rješenja

Ukupno se nudi oko dvanaest rješenja za programere različitih smjerova. Kao što vidite, izbor je prilično velik. Za svoj zadatak izabrao sam standardni Eclipse Standard paket. Zatim izaberite željeni operativni sistem sa arhitekturom (slika 2.6) i počinje besplatno preuzimanje ovog okruženja.

Slika 2.6 – Odabir željenog OS i arhitekture

Za više od decenije istorije Java jezika, nije se promenila nijedna generacija integrisanih razvojnih okruženja (Integrated Development Environment - IDE). Evolucija IDE alata je zbog mnogih faktora, čija se ukupnost naziva informatička tehnologija, uključujući softverske i hardverske komponente, kao i razvoj samog jezika, koji se dešava ne samo dubinski, optimizacija nekih karakteristika, što jasno demonstrira dolazak novih Swing biblioteka umjesto zastarjelih.AWT, ali i "u širinu", to je pojava JSP tehnologija, veća integracija sa DBMS i aplikacijskim serverima, podrška za Spring, Hibernate tehnologije itd.

I ako su prvi IDE alati, u današnjem shvaćanju, predstavljali primitivni uređivač teksta koji je služio samo za skup izvornih kodova, a sav ostatak posla, od kompilacije do konačnog sklapanja projekta, morao je da se obavlja ručno, onda su današnji moderni uređaji zapravo multifunkcionalni uređaji koji preuzimaju na sebe ne samo uobičajene funkcije, već i niz dodatnih, počevši od automatskog generiranja Javadoc-a, refaktoriranja, profiliranja, UML dizajna, klijenta za povezivanje na bilo koji DBMS, pa sve do takve egzotične koje nisu vezane za proces razvoja, kao što je provjera pravopisa.

Naravno, da je cena za sve ove "pogodnosti" povećani zahtevi za računarskim resursima. Postoji mišljenje da 80% korisnika koristi mogućnosti postojećeg softvera samo za 20%, to se može projektovati i na IDE alate. Budući da samo programer koji se razvija na odgovarajućoj tehnologiji više od jedne godine može cijeniti sve njihove prednosti. A programerima početnicima je teško adekvatno procijeniti ovaj ili onaj alat, pa se u pravilu njegov neovisni izbor događa prema dva kriterija - intuitivnoj razumljivosti sučelja i različitim karakteristikama vremenskih resursa, kao što su učitavanje, kompajliranje, pokretanje , zauzeti RAM. Zaista, u početku su potrebni samo kompajler, debager i sama Java mašina.

Stoga je svrha ovog članka da sagleda postojeće tržište IDE alata za razvoj programa koristeći Java jezik, identifikujući prednosti i slabosti svakog od njih prema različitim kriterijima, na osnovu analize rezultata projekta: „Testiranje i analiza okruženja za razvoj softvera za Javu" ("Testiranje i analiza IDE za Javu" (TAIDEJ)), koju smo organizovali mi, grupa za koordinaciju sajta i koja se odvijala od 01.01.2006. do 01.09.2006. www.site.

Projekat je bio podijeljen u nekoliko faza. U prvoj fazi smo razvili upitnik, tabelu 2, i sastavili listu Java IDE-ova, tabela 3, koji su razvijeni od pojave jezika Java2 do danas, uključujući veze do oba IDE alata koje svi čuju, i prilično egzotične. Ova lista se povremeno ažurira zahvaljujući našim članovima. Ovdje želimo izraziti duboku zahvalnost svim učesnicima projekta, kao i svima onima koji su nas diskutovali i konstruktivno kritikovali na forumima, tabela 1

Tabela 1. Java - forumi
Java - Forum na Sources.Ru
RSDNhttp://www.rsdn.ru/?forum
Forumi - Juga.Ruhttp://forum.juga.ru/
IT arhivski forumihttp://www.javable.com/forum
Java Forumi - Java programiranjehttp://forum.java.sun.com/
java.net Forumihttp://forums.java.net
javalobby.orghttp://www.javalobby.org/java/forums
JavaWorldhttp://www.javaworld.com/javaforums
Kompjuterski forum Ru.Boardhttp://forum.ru-board.com
Programiranje - iXBT Hardver BBShttp://forum.ixbt.com
JUG KPI Forumhttp://jug.in.ntu-kpi.kiev.ua/forum
CITForumhttp://forum.citforum.ru
Realcoding.NEThttp://forums.realcoding.net

U izradi upitnika pokušali smo da saznamo sljedeće:

  1. trend promjene preferencija programera, budući da su nekada uspješni alati ili potpuno prestali da se razvijaju ili su iz nekog razloga kompanije koje su ih razvijale zastale s puta, pa su mnogi morali da prelaze sa jednog IDE alata na drugi;
  2. kako je programer izabrao ovo ili ono sredstvo;
  3. kako programer ocjenjuje alate s kojima je radio na skali od pet tačaka;
Tabela 2. Upitnik

Dalji zadaci su bili obrada i analiza dobijenih statističkih informacija, procena „intenziteta resursa“ popularnih alata. Osim toga, pripremljeni su pregledi nekih alata i objavljeni na web stranici projekta.

Tabela 3. Lista IDE-ova za Javu.
ImeProizvođačWeb stranica proizvoda
1 Applet Designer ProfessionalTVObjectshttp://www.tvobjects.com/
2 ApptivityProgress Softwarehttp://apptivity.progress.com/
3 Awesume Jawa 1.0Awesume Interactive Designhttp://www.awesume.se/en/index.htm
4 bluettebesplatni RAD Java alathttp://blue.donga.ac.kr/bluette/
5 BongoMarimbahttp://www.marimba.com/
6 Clarion Internet EditionTop Speed ​​Corporationhttp://www.topspeed.com/
7 CodeWarrior ProMetroWerkshttp://www.metrowerks.com/desktop/pro/
8 Cosmo codeSGIhttp://www.sgi.com/Products/cosmo/code/index.html
9 ED za WindowsSoft As It Getshttp://www.getsoft.com/ed_java.html
10 EliksirElixir Technology Pte Ltdhttp://www.elixir.com.sg/
11 Free BuilderFreeBuilder kolektivhttp://www.freebuilder.com/
12 GRASPProjekat GRASPhttp://www.eng.auburn.edu/grasp/
13 GrinderParadigm Exchangehttp://www.tpex.com/features.htm
14 HyperwireKinetixhttp://www.ktx.com/
15 Jamba AnimatorInterleafhttp://www.jamba.com/
16 JambaInterleafhttp://www.jamba.com/
17 JavaManHartWarehttp://homepage.dave-world.net/~hartware/
18 Java StudioSun Microsystemshttp://www.sun.com/
19 KopljaKorak naprijedhttp://www.ozemail.com.au/~stepsoft/
20 JaWizInfinityEdge Systemshttp://www.infinityedge.com/
21 JBuilderInprisehttp://www.inprise.com/jbuilder/
22 JDesignerProBulletProofhttp://www.bulletproof.com/
23 JDE za EmacsPaul Kinnucanhttp://sunsite.auc.dk/jde/
24 JADI SujalShahhttp://dan.hcf.jhu.edu/sujal/winjadi/
25 JIGS Cubedhttp://www.scubed.cc/
26 JipeEnvision Internet Serviceshttp://www.users.globalnet.co.uk/~eis/jipe.htm
27 JpadModelWorkshttp://www.modelworks.com/
28 KalimantanReal Time Enterprises, Inc.http://www.real-time.com/java/kalimantan/index.html
29 KAWATEK-TOOLS Inc.http://www.tek-tools.com/kawa/
30 lavaDan Pagehttp://www.hnet.demon.co.uk/products/lava/index.html
31 Lemurdizajn ostrvahttp://www.island-design.co.uk/
32 NetBeansNetBeans Inc.http://www.netbeans.com/
33 OEM 1.0Inovativni softverhttp://www.isg.de/OEW/Java/
34 DIJELOVI za JavuObjectSharehttp://www.objectshare.com/p4j/p4j2info.htm
35 PowerJSybasehttp://www.sybase.com/products/powerj/
36 Roasterprirodna inteligencijahttp://www.roaster.com/roaster/
37 SNiFF+Uzmi Five Softwarehttp://www.takefive.com/sniff/
38 DuheVisNet Limitedhttp://www.evis.net/
39 supercedeSuper Cede, Inc.http://www.supercede.com/
40 visajImperial Software Technologyhttp://www.ist.co.uk/
41 Vision JadeVision Softwarehttp://www.visionsoft.com/
42 VisualAge za JavuIBMhttp://www.software.ibm.com/ad/vajava/
43 visual cafeSymantechttp://cafe.symantec.com/
44 Visual J++Microsofthttp://www.microsoft.com/visulj/
45 Platforma za web aplikacijeSilverStreamhttp://www.silverstream.com/products/main/main_f.htm
46 Java WebIDEChami.comhttp://www.chami.com/webide/
47 Izbrisatisoftwarebuero m&bhttp://www.softwarebuero.de/wipeout-eng.html
48 IntelliJ IDEAIntelliJ IDEAhttp://www.jetbrains.com/idea/
49 Eklipsaeclipse.orghttp://www.eclipse.org
50 JDeveloperOraclehttp://www.oracle.com/technology/products/jdev/index.html
51 JCreatorXinox softverhttp://www.jcreator.com/
52 jEditjEdithttp://www.jedit.org/
53 X RazvojOmnicore softverhttp://www.omnicore.com/
54 Gel IDEGExperts Inc.http://www.gexperts.com/
55 IBM Web Sphere Studio programer aplikacijaIBM softverhttp://www-306.ibm.com/software/awdtools/studioappdev/
56 produžitiNOVELLhttp://www.novell.com/products/extend/

Prvo, način distribucije, odnosno IDE se može podijeliti na plaćene (JBuilder, Visual Cafe...) i besplatne (NetBeans, Eclipse, Gel), koje svako može preuzeti sa web stranice proizvođača.

Odlučili smo da izdvojimo drugu klasifikacionu karakteristiku ne na osnovu nekih specifičnih mogućnosti, jer bi, prema ovoj osobini, vjerovatno bilo moguće podijeliti IDE na beskonačnost, već iz ukupnosti mogućnosti samog alata, i njegove zahtjeve za resursima. Naravno, u ovom slučaju, prisustvo graditelja vizuelnog interfejsa je na prvom mestu, što zauzvrat postavlja određene zahteve za resurse.

Po ovom kriteriju možete odabrati alate koji nemaju vizualni alat za GUI razvoj (jednostavno), na primjer Gel, JCreator, a koji imaju (kompleks) - JBuilder, Idea.

Shodno tome, prvi u RAM-u tokom rada zauzimaju manje od 30 MB, a drugi više od 100 MB. Što se tiče samih alata za vizualni razvoj, prema mom iskustvu i mišljenju mnogih kolega programera sa dugogodišnjim iskustvom, njihova upotreba nije uvijek opravdana za programere početnike, iako se čini da olakšavaju razvoj s jedne strane, ali s druge strane. ruke otežavaju konceptualno razumijevanje takvih osnovnih stvari. Swing biblioteke kao što su layout manageri, rukovanje događajima, itd.

Takođe, u projekat je bila uključena grupa studenata DSTU-a (posebno želim da pomenem Yegorenkova V. i Lagutina D.), koji su tek počeli da studiraju OOP, čiji su zadaci bili da se upoznaju sa IDE za Java, da ih instaliraju. , popravljaju parametre prilikom učitavanja, daju svoje komentare i, na kraju, samostalan izbor sredstava za početni rad. Rezultati testa su sažeti u tabeli 4.

Tabela 4. Rezultati testiranja IDE alata
ParametriGelJScreator 3.5JBuilder XIdeja 5NetBeans 4.1
Vrijeme instalacije1 sek1-1,5 sek58 sec22 sec50sec
veličina instaliranog paketa10,3 MB6.49 MB332 MB157 MB118 MB
Veličina distribucije4.21 MB3.6 MB178 MB51.6 MB46.4Mb
lansirati5s1-1,5 sek9 sek6 sek6 sek
Zauzeti prostor u RAM-u17828 Kb12960 Kb74128 Kb65604 Kb61409 Kb
Količina korištene virtualne memorije9020 Kb14960 Kb78588 Kb76416 Kb70406 Kb

* Mašina bazirana na: CPU Athlon64 3000+; RAM - 1024MB DDR-SDRAM (pc3200)

Nakon toga je održan seminar na kojem su sumirani rezultati rada, uslijed čega je ustanovljeno da u početnoj fazi rada, kada se odvija proces proučavanja sintaksičkih osobina jezika, nema potrebe za da koristite karakteristike koje predstavljaju složeni IDE, iako su, naravno, mnogi ljudi zainteresovani za načine da brzo razviju interfejs, pošto je ova funkcija najintuitivnija i odmah vam omogućava da dobijete rezultate. Ali, kao što znate, razvoj sučelja je sastavni, ali ne i najvažniji dio aplikacije. A povećani zahtjevi za resursima kod složenih IDE-a, posebno s obzirom da nemaju svi studenti kućne računare sa čak 512 MB RAM-a, daju neosporne prednosti jednostavnim IDE-ovima, pa je Gel prepoznat kao lider među studentima iz svih dostupnih IDE-a.

Ime% glasovaOcjena
1 JBuilder21.47 3.0
2 Eklipsa16.64 3.3
3 NetBeans14.22 2.9
4 IntelliJ IDEA11.66 3.5
5 JDeveloper7.11 2.8
6 Visual J++5.26 1.8
7 JCreator4.26 2.3
8 VisualAge za Javu3.69 2.8
9 Java Studio3.41 2.0

Polazeći od toga, analiziraćemo sa kojih pozicija programer pristupa nezavisnom izboru sredstava.

  1. Interfejs. Ovo je prva komponenta sa kojom se korisnik susreće nakon instalacije i koja formira prvi utisak o programu, a na osnovu koje se može napraviti konačan izbor. Ovdje se ne procjenjuje samo cjelokupni dizajn, iako, naravno, na određeni način utiče, već i pogodnost uređenja i konfigurisanja komponenti kao što su prozor izvornog koda, prozor projekta itd.
  2. Podešavanje. Shodno tome, nakon instalacije i prvog pokretanja razvojnog okruženja, vrši se njegova konfiguracija, tj. naznačene su staze na kojima se nalaze instalirani SDK, DOCS, J2EE. U ovoj komponenti se po pravilu ne uočavaju značajne razlike. Štoviše, moderni alati u pravilu samostalno određuju instalirane komponente.
  3. Editor koda. Postavljanje prikaza izvornih kodova u pravilu se također ne razlikuje po raznolikosti, u bilo kojem alatu možete lako podesiti veličinu i veličinu fonta, kao i boju. Važna prednost je prisustvo pomoćnika kada se, kada se miš "zamrzne" na bilo kojoj varijabli ili metodi, pojavi prilično detaljan ToolTip (kontekstni prozor) u kojem se proširuju svi parametri objekta. Tu je i puno ugodnih sitnica, izlaz numeracije redova, prikaz strukture klase, prikaz simbola pasusa, provjera pravopisa.

Analizirajući, prema ovim karakteristikama, sve trenutno postojeće IDE - alate, možete vidjeti da između njih nema bitnih razlika, osim u dizajnu interfejsa, a očigledno je da je koncept pogodnosti subjektivan.

Analiza rezultata ankete, tabele 5.6. Kao što je gore opisano, u našem istraživanju sredstva su podijeljena u dvije grupe, ona koja su ranije korištena i ona koja se trenutno koriste. I ako među sredstvima koja su se koristila u prošlosti postoji raznovrsnost, odabrali smo sredstva koja su dobila više od 3% glasova od ukupnog broja ispitanika koji su učestvovali u anketi, onda među onima koja se trenutno koriste nema takva raznolikost, a mi smo bili primorani da smanjimo postotak glasova, a uprkos tome, oni nisu dobili veliku raznolikost.

Kao što vidite, "jednostavan" IDE alat JCreator je nepromjenjiv učesnik u odabiru, to je očigledno zbog činjenice da je prilično lako naučiti i nije zahtjevno za resurse, stoga je popularan među programerima početnicima. JBuilder je pao u nemilost, očigledno zato što ga besplatni alati kao što su Eclipse i NetBeans nadmašuju. Eclipse treba priznati kao neprikosnovenog lidera, jer nije izgubio svoje prilično visoke pozicije, već je čak dodao. Popularnost JDeveloper-a treba pripisati njegovom fokusu na Oracle bazu podataka. Popularnost IntelliJ IDEA je zbog činjenice da su programeri u određenom trenutku uspjeli predstaviti proizvod sa moćnim karakteristikama, a već nekoliko godina prilično uspješno održavaju njegov brend na visokom nivou, što je i potvrđeno. po visokim ocjenama korisnika.

Generalno, treba napomenuti da su rezultati ocjenjivanja bili predvidljivi, pitanje se ticalo samo raspodjele mjesta, a iznenađenje za autore je bilo da je NetBeans osvojio relativno mali postotak glasova, posebno s obzirom na mogućnosti najnovije verzije .

Analiza razloga za odabir IDE alata pokazala je da se izbor alata prve generacije obično vršio nasumično ili na osnovu rezultata nezavisne analize, što je prirodno, budući da je u to vrijeme proces formiranja i samog jezika. i razvojni alati su se odvijali. Sredstva druge generacije odabrana su uglavnom kao rezultat nezavisne analize ili savjeta prijatelja. To je, očigledno, zbog činjenice da se do tada formirao i krug profesionalnih Java programera i tržište za glavne programere IDE alata.

Tabela 7. Razlozi za odabir IDE

Tako su danas lideri među Java IDE razvojnim alatima IntelliJ IDEA, Eclipse i NetBeans. Generalno, svi imaju približno istu funkcionalnost i prilično je teško ocijeniti koji je najbolji. Stoga, prilikom odabira alata, očito, morate se fokusirati na IDE na kojem se projekt razvija, ako se programer pridruži razvojnom timu, ili odabrati najpristupačniji ako planirate razvijati samostalan projekat.

Spisak korištenih izvora

  1. Zhmailov B.B. Prednosti i nedostaci razvoja Java programa bez upotrebe IDE alata. Časopis "Bilten računarskih i informacionih tehnologija" №6, 2006
  2. , Sergey Berdachuk, "Oracle JDeveloper 10g - Java razvojno okruženje"
  3. , Alexey Litvinyuk, "Uvod u Eclipse integrisano razvojno okruženje"
  4. , Alexander Demyanenko, "Kratak pregled IDE - Jbuilder"
  5. , Alexander Demyanenko, "Kratak pregled IDE - Idea"
  6. , Boris Zhmailov, "Pregled IDE - Gel"
  7. , Pregled automatizovanih alata za refaktorisanje u Java IDE

Top Related Articles