Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Pogreške
  • Java programiranje i programi za učenje. Java razvojna okruženja

Java programiranje i programi za učenje. Java razvojna okruženja

Gotovo sve knjige i tutorijali o Javi za početnike počinju opisom OOP-a: kako je divan i kako je sjajan. Jasno je, budući da je u Javi bilo koje drugo programiranje jednostavno nemoguće osim objektno orijentirano, tada se u početku predlaže savladati 40..80 stranica ludih analogija s hijerohijom mačka/pas/patka/automobil, a tek nakon toga predlaže se da se napiše "Zdravo, svijet!" ... :-)

Treba napomenuti da se apsolutno sav Java trening temelji na najprimitivnijem izlazu rezultata na konzolu. To nije konzolna aplikacija u uobičajenom shvaćanju, naime izlaz nekih podataka red po redak. Pa, na primjer Turbo Pascal 3.0 izašao je 1985. i već je imao podršku za grafičke modove. 1990. godine pojavio se Turbo Vision - vrlo cool stvar - ala Windows samo za DOS. A u Javi 2018. moguć je samo izlaz na konzolu. A sada se sav taj entuzijazam i hladnokrvnost nekako razbija u komadiće već na pozornici "Hello, World!" postoji isti izlaz red po red.

Ali, smiješno je da u Javi zapravo možete kreirati programe pomoću vizualnog programiranja! Za to sam saznao tek kada sam pročitao (ili bolje rečeno upoznao) knjigu od 500 stranica, gdje se u jednom od posljednjih poglavlja odjednom pokazalo da postoje normalni GUI (grafičko korisničko sučelje) za Javu i možete dizajnirati programi s tipkama, poljima za unos i normalnim izbornicima... Postavlja se pitanje zašto ste tako dugo "petljali" po ovoj lošoj konzoli, kad ste mogli sve lijepo i uredno raditi odjednom?

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

Prvi- Postoje tri vrste GUI-ja za Javu (biblioteke): AWT, Swing(tko smišlja takva 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 s njihovom instalacijom. Ovo je veliki plus.

Ali, AWT je prva i vrlo stara implementacija, tako da je ne morate koristiti. Općenito, nije košer. Swing je također nekošer, jer tu nešto nije u redu i programi su zbog toga užasno spori. Točnije, neću reći, nisam ga razumio, ali čini se da više službeno ne razvija nekoliko verzija. Ali JavaFX je dobar i naša svijetla budućnost.

Postoji i takva grozota - java apleti, one koje rade u pregledniku i pritom ga čvrsto "vjese", otprilike kao Flash, samo gore. Nasreću, ovaj / ovi komad / komadi praktički se više ne koriste, pa je besmisleno gubiti vrijeme na njihovo proučavanje.

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

Drugi trenutak... Nije tako jednostavno. Uzmite u obzir Delphi (ili Visual Studio, Lazarus, nije važno). Čak i za "zelenog" početnika, stvaranje jednostavnog programa (jedan gumb i tekstualno polje za izlaz) funkcionirat će ovako:

  • pokrenite Delphi;
  • automatski se kreira novi projekt s glavnim obrascem;
  • odaberite gumb na paleti komponenti i stavite ga na obrazac; sve je vizualno
  • slično, bacamo tekstualno polje na obrazac;
  • ako je potrebno, u traci svojstava možete odrediti tekst gumba, dimenzije itd.;
  • pokrenuti - Delphi će ponuditi spremanje, spremanje.

Odnosno, nismo napisali niti jednu liniju koda, IDE je sve radio sam. Ako pogledate generirani kod, ne možete ga nazvati jednostavnim - ovdje je već potrebno neko znanje, ali Delphi je dovoljno pametan da razumije kako s njim raditi.

Ako želimo dodati neku radnju, na primjer, kada kliknemo na gumb, ispunimo tekstualno polje izrazom "Halo!", onda radimo ovo:

  • dvaput kliknite na gumb (ili odaberite događaj onClick);
  • Delphi kreira kod za rukovanje za ovaj događaj i stavlja nas u editor;
  • upisujemo naziv tekstualnog polja i Delphi daje savjete po kojima se možete kretati što i kako učiniti.

To jest, opet, IDE je obavio sav grubi posao.

Ali ovo je na drugim jezicima, Java ide svojim putem. Da biste stvorili gumb u JavaFX-u, morate ručno kreirati Stage - "kazališnu pozornicu" (naziv je sasvim ozbiljan!) I na njima mjesto scene (Scene). To je neka vrsta kontejnera u kojem su drugi elementi već ugniježđeni.

Pretpostavlja se da se svaki element i svako njegovo svojstvo mora programirati pojedinačno. Evo primjera za dva gumba i jednu oznaku iz mog vodiča.

Odgovor = nova oznaka ("Pritisnite gumb"); Gumb btnUp = novi gumb ("Gore"); Gumb btnDown = novi gumb ("Dolje"); btnUp.setOnAction (novi EventHandler () (javni void handle (ActionEvent ae) (response.setText ("Pritisnuli ste gore.");))); btnDown.setOnAction (novi EventHandler () (javni void handle (ActionEvent ae) (response.setText ("Pritisnuli ste dolje.");))); rootNode.getChildren (). addAll (btnUp, btnDown, odgovor); ...

Kada postoji desetak tipki, plus 20 stavki izbornika, 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čine, font... A ovo je drugi označava da vam priručnici za JavaFX pokazuju kako pisati "fx-code" olovkama. Čežnja, jednom riječju...

Ali, ovdje je spasonosno treća nijansa... Ispostavilo se da su pametni ljudi (očito upoznati s punopravnim IDE-ovima) razvili drugu vrstu aplikacija, gdje se deskriptivna xml datoteka koristi za generiranje "fx-koda", koji se zove fxml, a takvi se programi mijenjaju kao " FXML JavaFX aplikacije»

Potpuno me iznenađuje da učenje Jave ne počinje s ovakvim aplikacijama. Možda nije Delphi, ali ipak je milijun milijuna puta bolji od rada s konzolom i zamaranja drugim glupostima o tome zašto trebate koristiti stotine OOP redaka gdje je na drugim jezicima potrebna jedna jednostavna procedura. ;-)

Sad ozbiljno. Ako nikada niste programirali u Javi, možete to isprobati sada. Zapravo - prilično je kul, iako će trebati malo vremena da se svladate s programima. Ako imate iskustva s "vizualnim IDE-ovima", onda još bolje - upoznat ćete puno prijatelja.

JDK

Java mora biti instalirana na vašem računalu. Neću davati linkove kako to učiniti - google u pomoć, jer je sve prejednostavno.

IDE

Java nema niti jedan program – razvojno okruženje, pa na webu ima primjera iz različitih programa. Najprimitivniji, poput Notepada ++, prikladni su samo za izlaz na konzoli, ali ako uzmemo u obzir nešto ozbiljnije, onda se ističu samo tri kandidata: NetBeans, Eclipse i IntelliJ IDEA.

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

Zasjeniti je također dobra opcija, moćnija od NetBeansa, ali slabija od IntelliJ IDEA.

IntelliJ IDEJA- izgleda najkul, ali to morate platiti brzinom rada. Vrijedi napomenuti da se Android Studio temelji na IntelliJ IDEA, ali iz nekog razloga studio radi puno sporije.

Važna točka je vezana uz programiranje za Android. Od ova tri IDE-a, samo je IntelliJ IDEA više-manje prikladan za to. Na webu postoji puno materijala o programiranju za Android u Eclipseu, ali svi su već zastarjeli – nemojte gubiti vrijeme na pokretanje starog ADT plug-ina i pokušavajući s njim učiniti barem nešto. Možda će stari Android SDK raditi, ali svi novi neće.

Pokazat ću vam kako napraviti JavaFX FXML aplikaciju u sva tri programa, ali prije nego nastavite, morate instalirati 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 izradite bit će vrlo jednostavan - gumb i okvir za tekst. Kada kliknete na gumb, dodajte tekst "Pozdrav!" u tekstualno polje.

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: Alati - Opcije - Java - JavaFX - Početna stranica Scene Builder... Odaberite direktorij programa. Dovoljno je izvršiti podešavanje jednom. Ovo se odnosi na sve IDE-ove.

Napravite novi projekt gdje trebate odabrati "FXML JavaFX Application".

Kliknite "Završi" i nakon nekog rada NetBeansa vidimo gotove datoteke:

  • Myfx.java je glavna datoteka koja zapravo pokreće cijeli 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 niti jednu liniju koda, ali već imamo program s radnim gumbom. :-)

Ako ste ispravno naveli put do SceneBuilder-a, tada možete odabrati stavku izbornika "Otvorena" u spisu FXMLDocument.fxml... Isto će se dogoditi ako dvaput kliknete. Otvorit će se SceneBuilder. Ako nema stavke, onda put nije ispravan, provjerite postavku.

Princip rada u SceneBuilderu isti je za sve IDE, pa dok opisujem samo općenite točke, onda ćete sami to shvatiti.

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

Prozor SceneBuilder podijeljen je u tri dijela:

  • s lijeve strane - skupovi komponenti, hijerarhija i kontroler, gdje je naznačena glavna klasa (ovo je važno!)
  • u središtu je sama forma, gdje se odvija vizualna konstrukcija.
  • s desne strane - svojstva komponenti, podijeljena u tri kartice (ovo je uvjetna podjela). Kartica Code je odgovorna za ono što će se koristiti u java datoteci.

Izgradnja FX programa mora početi s kontejnerom. U ovom primjeru korišten je NetBeans Anchorpane... To je prilično zgodno, što vam omogućuje da prilagodite "ispravno" uvlačenje za ugniježđene elemente. Tab Kontejneri sadrži i druge posude s kojima možete sami vježbati (nisam još pola sam savladao :-)).

Hijerarhija komponenti je vrlo zgodna stvar koja vam omogućuje da brzo odaberete željenu stavku.

Prema uvjetima TK-a, moramo imati tekstualno polje. NetBeans koristi Label, ali nećemo ništa izbrisati, već samo dodati novu stavku Polje za tekst na oblik (proizvoljno po vašem ukusu).

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

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

Prvi je provjeriti je li naveden ispravan kontroler. U našem slučaju, NetBeans je već sve napravio i specificirao myfx.FXMLDocumentController.

Kao što vidite, ovo je kontroler iz datoteke FXMLDocumentController.java(paket.kontroler). IDE-ovi to ne navode uvijek, ali to je važno, budući da ga fxml datoteka (točnije java kod) koristi za povezivanje.

Druga točka - korištena komponenta mora imati vlastiti 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. Za sada ne obraćajte pažnju na to, o tome će se dalje raspravljati.

Gumb koji će ispuniti tekstualno polje također mora imati svoj vlastiti id, kao i metodu događaja onAction (ovo je glavni događaj komponente, a ne onClick, kao u Delphiju). NetBeans se već pobrinuo za to, tako da ne moramo ništa pisati.

Ovdje se vizualna konstrukcija može dovršiti. Spremite i prijeđite na NetBeans. Vidimo da je datoteka FXMLDocument.fxml promijenjeno: dodano textField1:

Sada moramo nekako koristiti tekstni okvir u java kodu. Za razliku od Delphija, NetBeans ne generira nikakav kod za ovo, pa ćemo ga morati dodati poluručno. Da biste to učinili, različiti IDE-ovi koriste različite metode, ali opći princip je da morate postaviti pokazivač na željeno polje u uređivaču i izvršiti neke "akcijski"... NetBeans to zove Instalirajte kontroler na jelovniku Izvor... (Da, Java ima velikih problema s imenovanjem...)

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

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

Pokrećemo program za izvršenje za test. Sada je naš zadatak ispuniti tekstualno polje klikom na gumb. Kao što ste već razumjeli metodu handleButtonAction samo radi posao. U njega dodajemo:

TextField1.setText ("Zdravo!");

Primijetite kako radi završetak koda nakon što se klikne na točku.

Dok tipkate, NetBeans će suziti prijedloge u kojima možete odabrati opciju koju želite. Ova značajka uvelike olakšava život programerima, budući da postoji previše opcija i to vam omogućuje izbjegavanje raznih vrsta sintaktičkih pogrešaka prilikom tipkanja.

Ova značajka je prisutna u svim IDE-ovima, iako postoje razlike u implementaciji i korištenju.

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

Morali smo napisati samo jedan redak koda i izvesti nekoliko dodatnih radnji u uređivaču.

Zasjeniti

Eclipseu je potrebno nešto duže za pokretanje od NetBeansa. Prvo morate odrediti put do SceneBuildera. Ovo se radi u Prozor - Postavke - JavaFX.

Također imajte na umu da je Eclipse nerusificirani program (ne znam ni postoji li rusifier za njega).

Napravite novi projekt i odaberite JavaFX.

Pritišćemo Sljedeći i dolazimo do stranice s postavkama. Ovdje sam naveo naziv projekta, kao i prije myfx(Imam različite direktorije projekta za različite IDE-ove, tako da se ne preklapaju jedan s drugim).

Ovdje trebate odabrati vrstu aplikacije, vrstu spremnika i naziv kontrolera. Pritišćemo Završi a Eclipse brzo generira kostur našeg budućeg programa.

Ovdje je sve vrlo slično, samo je dodana još jedna datoteka aplikacija.css- da, da, u JavaFX-u možete koristiti CSS za prilagođavanje izgleda! Eclipse je odmah generirao kod za vezu za ovu datoteku.

Pokrenimo program i provjerimo nema li grešaka.

Za razliku od NetBeansa, ovo je potpuno prazan obrazac. Otvorimo ga u SceneBuilderu pomoću kontekstnog izbornika.

I ovdje vidimo da nema forme. Ali, u stvari, jest - samo zadana vrijednost je 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 na hijerarhijskom popisu i u svojstvima odabrati BorderPane Pref Width i Pref Visina naznačiti ćemo neke vrijednosti. Ova svojstva postavljaju "željenu" širinu i visinu. Nakon toga, forma se odmah "manifestira".

BorderPane spremnik ima 4 dijela: gornji, desni, donji, lijevi i središnji. Komponente treba postaviti u različite dijelove - to će odrediti njihov položaj kada se promijeni veličina prozora.

Ovdje je to prilično teško objasniti riječima, samo pokušajte postaviti nekoliko gumba, a zatim promijenite veličinu prozora u pregledu.

Nisam postao previše pametan i stavio sam tekstualno polje na vrh, a gumb u sredinu.

Sada provjerimo je li naveden kontroler: u ovom slučaju aplikacija.SampleController“Eclipse je odradio posao umjesto nas.

Sada moramo odrediti id za naše elemente. Za gumb sam postavio btn1, i tekstualno polje textField1... Opet smo dobili poruku "žuti trokut".

Za gumb ćemo metodu ukazati na događaj - btn1Klik.

Spremimo i vratimo se na Eclipse. Vidjet ćemo da je datoteka Sample.fxml ažurirano, ali su se pored nekih redaka pojavile ikone upozorenja.

Ovdje je situacija potpuno ista kao u NetBeans-u - trebate napraviti promjene u "poluručnom" načinu rada. U Eclipseu se za to koristi kontekstni izbornik za drugu tipku miša: Brzi popravak ili prečac Ctrl + 1(što je zgodnije).

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

a za gumb postoji i metoda rukovanja događajima:

Istodobno, 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, potrebne promjene će biti dodane u kod i ikone upozorenja će nestati.

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

Obratite pažnju na inteligentniji rad automatskog dovršavanja. U automatskom načinu rada malo usporava, ali ako pritisnete Ctrl + razmak(ista kombinacija se koristi u mnogim IDE-ovima), također vam omogućuje da dobijete dobru pomoć.

Pokrećemo naš program.

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

IntelliJ IDEJA

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

Opet navedite put do SceneBuildera: Datoteka - Postavke:

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

IntelliJ IDEA će se inicijalizirati i vidjet ćemo već poznate tri datoteke. Pokrenimo program da provjerimo da nema grešaka.

Tu je i prazan obrazac, ali je naznačen naziv programa. Ako pogledate kod Glavna.java, tada ćemo vidjeti redak:

PrimaryStage.setTitle ("Hello World");

Ovo je naslov aplikacije. U drugim IDE-ovima ova linija nema, ali sada znamo čemu služi "kazališna pozornica". ;-)

Prijeđite na SceneBuilder (slično Eclipse): drugom tipkom miša trebate odabrati Otvorite u SceneBuilderu.

Postoji i prazan obrazac, ali sa spremnikom GridPane... Instalirati Pref Width i Pref Visina za prikaz obrasca.

Sam GridPane je ala mreža ćelija za elemente. Mislim da nema smisla ponavljati ovdje - sve će radnje biti iste:

  • postavite gumb i testno polje,
  • dodijeli im id,
  • za gumb registrirajte metodu za rukovanje klikom,
  • ne zaboravite provjeriti je li naveden kontroler ( uzorak.Kontroler).

Zatvorite SceneBuilder i vratite se na IntelliJ IDEA. Ovdje trebate dodati ID-ove kodu, kao i stvoriti metodu za odgovor na klikove na gumb.

IntelliJ IDEA nudi dva načina za to. Prvo, kada zadržite pokazivač miša iznad "problematskog područja", pojavit će se savjet na koji možete kliknuti:

Drugi je prečac Alt + Enter

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

Istodobno, imajte na umu da se redak "@FXML" ne dodaje. Ako ga ručno dodamo ispred varijabli i metode, IntelliJ IDEA će odmah ponuditi dodavanje potrebne java klase:

Općenito, IntelliJ IDEA pokazuje prilično dobru inteligenciju i djeluje kao pomoćnik u pisanju koda. I to radi samostalno bez nepotrebnih pritiskanja gumba.

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

Super, sve radi!

Ukupno

Glavni zahvat je vizualno programiranje je moguće u Javi... Možda nije idealno, ali je sasvim prikladno, pogotovo za početnike. Učenje jezika je puno zanimljivije kada postoji neki opipljiv rezultat - OOP, satovi i druge mudrosti - ovo je dobro, ali bolje je početi s tipkama, poljima za unos, izbornicima i svime što podrazumijeva normalan program. A konzola je dosadna i nezanimljiva.

Donio sam tri IDE s razlogom. Na webu postoji mnogo primjera za Javu i svi su za različite programe. Osobno, još se nisam odlučio za svoju preferenciju, jer svi imaju i prednosti i nedostatke. Vjerojatno treba raditi sa svima, onda će biti jasno.

No, ključna točka je mogućnost rada sa SceneBuilderom. Izgradnja obrasca u JavaFX-u malo se razlikuje od Delphi-ja, prvenstveno u korištenju složenih spremnika (mogu biti ugniježđeni jedan unutar drugog). Stoga se prvo trebate pozabaviti njima, nakon čega već možete preuzeti same komponente.

Vrijeme je da prijeđete sa značajki jezika na programe koji će vam pomoći da brže i ispravnije pišete kod. Razvojno okruženje (IDE - Integrirano razvojno okruženje) uključuje:

  • urednik koda;
  • prevodilac;
  • kolektor;
  • program za ispravljanje pogrešaka.

Neka razvojna okruženja sadrže sve to izvan kutije, druga su dovedena u ovaj status s povezanim dodacima i modulima. Evo 10 najboljih IDE-a za Javu danas.

IntelliJ IDEJA

Opis: Jedno od najfunkcionalnijih okruženja za razvoj java, opremljeno sustavom inteligentne pomoći u pisanju koda. Na temelju konteksta, IDEA podešava automatsko dovršavanje i dostupnost alata. Obilje alata omogućuje vam da ubrzate razvoj, na primjer pomoću uzoraka i ponavljanja, kao i da povećate produktivnost konačnog programa. Ogroman broj dodataka i dodataka za bilo koji zadatak čini IDEA java razvojno okruženje gotovo idealnim alatom.

Cijena: 499 dolara za prvu godinu rada.

NetBeans

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

Cijena: besplatno.

Ovaj popis Java IDE-a daleko je od potpune i pokriva samo najpopularnije predstavnike. Stoga, prije nego što odaberete favorit, zapamtite da je najbolje okruženje za razvoj java ono koje vam omogućuje da riješite trenutni problem uz minimalan trud i s najboljim rezultatom.

Od autora: Od svih jezika koji se koriste u web razvoju, Java je najosjetljivija. Ovaj PL karakterizira složena sintaksa, visoko tipizirani podaci i otpornost na pogreške. Zato je ovaj alat za Javu - IDE toliko tražen. Razvojno okruženje pomaže zaobići zamke koje čekaju programera koji piše u uređivaču teksta. Ako ne želite ići dugim i trnovitim putem pisca teksta, dobrodošli u pregled vrhunskih razvojnih okruženja najprikladnijih za jezik kave.

Za razvoj je potreban IDE

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 čitati i izvršavati sve dok svi elementi sustava nisu ispravno konfigurirani. Ponekad je web developeru 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 najbolje plaćeni IDE za potonje - PHPStorm). No, kada dođe do Jave, sve dolazi na svoje mjesto. Dugi i složeni kodni dokumenti ne podliježu ručnoj sistematizaciji.

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

Naravno, postoje oni koji znaju kako fino podesiti svoje programerske alate tako dobro da punopravni IDE postaje nepotreban. Kako god bilo, razvojno okruženje troši resurse uređaja koji su potrebni za napajanje ostalih razvojnih alata. To je posebno vidljivo u zastarjelim verzijama Windows/Linuxa - čim se razvojno okruženje pokrene, ostatak resursa doživljava stagnaciju.

Programeri na webu gotovo uvijek preferiraju uređivače teksta. Lakši su i omogućuju vam stvaranje rješenja na koljenu. Nema dodatnih alata, nije potrebna duboka prilagodba, a raspon softvera je puno širi. Ovo je pogled koji imaju web programeri dok ne počnu s Javom.

Želim odabrati program

Industrija programiranja nudi mnoga rješenja za generiranje cjelovitog koda. To posebno vrijedi za različita razvojna okruženja. Velike tvrtke poput Oraclea nisu jedine koje grade IDE. Rad na takvom softveru u pravilu je prerogativ profesionalaca koji žele optimizirati svoje aktivnosti. Upravo se to dogodilo s Visual Studiom: jednim od najboljih IDE-a svih vremena. Microsoft, koji se spremao uvesti verziju Windowsa u novo stoljeće, jednostavno je predstavio svoje alate u jednoj aplikaciji. Sada je VS izbor milijuna.

Nažalost, ne može se nazvati "za Java programere". Ne, to uopće ne znači da u ovom razvojnom okruženju neće biti moguće napisati nešto na Javi: postoje čak i posebna proširenja. Samo je više fokusiran na C, C# i neke druge Microsoftove proizvode. Java ima svoj vrhunski IDE, koji ćemo danas predstaviti. Ali, prvo, morate razumjeti što želimo vidjeti idealni IDE (suglasnik).

Prvo, možete odmah odlučiti da oni koji rade na mreži nisu prikladni za Java programera. Oni će stvoriti probleme s interpretacijom, a stalne ovisnosti samo će obeshrabriti želju za programiranjem. Razumnije rješenje bilo bi preuzimanje jednog od danas predstavljenih softvera. Bolje je jednom kliknuti za preuzimanje nego stalno trpjeti greške. Era IDE-a temeljenih na oblaku tek dolazi.

Također, Java IDE mora podržavati brojne tehnologije koje su potrebne za učinkovito kodiranje. To uključuje jezike virtualnih strojeva Java: prvenstveno Java 10, kao i Groovy i Scala. Kontrola verzija također je jedna od ključnih točaka. Sam Git neće biti dovoljan: trebate Mercurial, SVN i još mnogo toga. Nemoguće je pogoditi koji će biti popularan za koju godinu (Git, naravno ☺). Web programer će imati koristi od podrške širokom rasponu jezika, uključujući PL baze podataka, web jezike, i front (TS, JS, HTML) i backend (jedan od popularnih jezika opće namjene). Budući da je JVM poseban za pretvaranje riječi programskog jezika u bajt kod, potrebni su i moćni tumači. Oni mogu učiniti Javu brzom u teoriji, brzom u praksi.

Pa, i naravno, kao i sam jezik Java, razvojno okruženje za njega mora biti višeplatformsko. Sve ostale odluke ometaju razvoj programera. Budući da je odabrao Javu, onda je odabrao svestranost.

Tri slona razvoja Jave

Kao i uvijek, tri su najbolja i svi ostali. Industrija web razvoja je na to već navikla, a tradiciju nećemo mijenjati. Prednost naše recenzije je što neće biti plaćenog softvera (gotovo). Svako razvojno okruženje možete slobodno preuzeti sa službene stranice. Također, bit će to jedna od onih top ljestvica na kojoj ćemo subjektivno birati pobjednika. Pa, i možete dodati svoju odluku, na temelju svog iskustva i naših zaključaka.

Ideja za web razvoj

IntelliJ IDEA je IDE koji je izdao JetBrains na temelju Java Virtual Machine. Sama okolina također je napisana na Javi i dijelom u Pythonu, i namijenjena je njima. Odmah su se identificirali kao okruženje za Javu, još 2001. Tada je razvojno okruženje predstavilo cijelu biblioteku alata za refaktoriranje, što je IDEA-u odmah dovelo do vrha. Programeri su odabrali ne toliko u korist praktičnosti koliko u korist produktivnosti. Neke rutinske operacije u potpunosti izvodi 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$ po satu, ovo je sitnica. Inače, samo u paketu Ultimate programer će moći raditi s Java EE platformom.

Ali postoji i besplatna verzija IDEA-e, koja se ne može nazvati skraćenom verzijom. Da, neke značajke nedostaju, ali jezična podrška slična je komercijalnoj verziji. Zgodno je na njemu napisati svoje prve retke koda i proširiti ga dodacima.

Suvremeni trendovi i pristupi u web razvoju

Naučite algoritam brzog rasta od nule u izgradnji web mjesta

IDEA je jedno od onih razvojnih okruženja koje se može nazvati uistinu pametnim. Umjesto popravaka i isticanja koje ima čak i najjednostavniji uređivač teksta, IDEA nudi autodovršavanje: fragmenti gotovog programa generiraju se u rukama programera. Nepotrebno je reći da će se sve zagrade i drugi sintaktički dodaci automatski zatvoriti. A ako nešto krene po zlu i IDEA se ne nosi s problemom, odmah će signalizirati Java developeru s druge strane ekrana.

Refaktoring, koji se odvija na nekoliko jezika odjednom, također osvaja. Javisti znaju da kod nikada nije u čistoj Javi, pogotovo kada je u pitanju razvoj weba. To uključuje jezike baze podataka, hipertekst i tako dalje. U ovom trenutku, IDEA radi ono što mnogi još nisu sposobni: analizirajući napisani program, IDE odvaja jezike jedan od drugog i analizira ih zasebno.

Program ima dobro implementirane prečice na koje ćete se, naravno, morati naviknuti. Ali kada se sve ovo dogodi, produktivnost je izvan plana. Oni također mogu uzrokovati otklanjanje pogrešaka koda, što se događa u susjednom prozoru.

Razvojno okruženje ističe se i po tome što konstantno širi broj podržanih tehnologija. Međutim, programeri nisu jako ovisni o ovim ažuriranjima. U bilo kojem trenutku mogu preuzeti odgovarajući dodatak.

IDE Eclipse

Ovo razvojno okruženje popularno je ne samo među publicistima, već i među web developerima općenito. Cijena će svakako postati značajna prednost u odnosu na IDEA – Eclipse je potpuno besplatan, kao i dodaci za njega. Inače, u planovima kreatora razvojnog okruženja nije bilo rivalstva s IDEA-om: htjeli su zasjeniti uspjeh koji je Visual Studio ostvario. Donekle su i uspjeli: prosječni web programeri gotovo uvijek preferiraju Eclipse.

Što je još bolje od IDEJE? Besplatan pristup Javi EE. Dostupan je odmah, bez dodatnih plaćanja i instaliranja dodataka. Usput, o potonjem. Njihova instalacija u Eclipse značajan je zadatak. Mogu se "svađati" među sobom, uzrokujući neugodnosti programeru. Ali pozitivna stvar je njihov broj. Savjetujemo vam da odaberete službene, jer je na taj način manja vjerojatnost da će početi u sukobu s razvojnim okruženjem.

Eclipse je dizajniran za vas da ga personalizirate za sebe. Stoga vas prvo iskustvo s IDE-om može odgurnuti od daljnje upotrebe. Ovo je rijedak slučaj kada jednom od najboljih razvojnih okruženja treba priručnik. Na sreću, na YouTubeu ih ima puno.

NetBeans

Riječ je o razvojnom okruženju koje je rođeno iz pera kreatora Jave - Sun Microsystema. Željeli su stvoriti najbolje rješenje za svoj jezik, pa su dizajnirali IDE koji nije samo Windows friendly.

To je većina platformi na našem popisu. NetBeans se može pokretati ne samo na gornjim osovinama, već i na bilo kojem drugom uređaju koji je opremljen JVM-om. Sunov pristup je odmah vidljiv: htjeli su da njihov jezik radi na svim uređajima (od računala do perilica). Naravno, "grah" se naziva službenim Java razvojnim okruženjem, iako nije tako sjajno. Danas NetBeans razvija Oracle, koji je kupio Sun.

NetBeans je pametan kao IDEA, sposoban za pametno refaktoriranje. Sustav se s tim zadatkom nosi puno bolje od Eclipsea, ali lošije od IDEA-e.

Kao što možete razumjeti iz obima rečenog, najbolji će biti imenovan IDEJA. Evo popisa razloga:

razumijevanje programiranja. Nitko ne popunjava kod niti ispravlja greške tako brzo kao IDEA;

učinkovitost refaktoriranja;

cijena. Da, Eclipse je potpuno besplatan. Ali ne biste kupili lošu hranu samo zato što je jeftinija?

Ovo je naša vizija! Inače, Oracle u svom arsenalu ima još jedan IDE, koji se zove JDeveloper, koji je potpuno izoštren za Javu. Pokušajte i vi, pa sami donesite zaključke. A imamo sve!

Suvremeni trendovi i pristupi u web razvoju

Naučite algoritam brzog rasta od nule u izgradnji web mjesta

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

Postoje dva načina: ili radite s JDK-om izravno putem naredbenog retka ili koristite integrirano razvojno okruženje. Razmotrimo obje ove opcije.

Prevođenje izvornog koda putem naredbenog retka

Jedna od opcija je da unesete sav programski kod u uređivač teksta, a zatim preko naredbenog retka prevedete Java izvorni kod u bajt kod i zatim pokrenete ovaj bajt kod.

Ispod je slijed radnji:

1. Spremite naš izvorni kod u * .java formatu (slika 2.1).

2. Pokrenite naredbeni redak i unesite mapu s Java izvornim kodom (slika 2.2).

3. Koristeći naredbu Javac, prevedite Java izvorni kod u bajt kod (slika 2.3).

4. Pokrenite bajt kod pomoću Java naredbe (slika 2.4).

Slika 2.1 - Spremanje izvornog koda

Slika 2.2 – Put do mape u naredbenom retku

Slika 2.3 – Kompilacija u bajt – kod

Slika 2.4 – Početni bajt – kod

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

Java IDE

Kompajliranje Java koda iz naredbenog retka može se činiti glomaznim zadatkom, ali to je ipak bitna vještina. Samim praćenjem osnovnih koraka rada s JDK-om možete bolje razumjeti kako funkcionira razvojno okruženje. Najčešće se preporučuje da naučite kako raditi s Java JDK putem naredbenog retka prije nego instalirate bilo koji IDE (integrirano razvojno okruženje).

Međutim, nakon što savladate osnovne korake izvođenja Java programa, vjerojatno ćete htjeti koristiti okruženje za profesionalni razvoj.

Nedavno su ovi okviri postali toliko moćni i praktični da jednostavno nema smisla raditi bez njih.Najčešći IDE-ovi za Javu danas su: Eclipse, NetBeans i IDEA. Svako od ovih okruženja ima prednosti i nedostatke. Osobno sam se iz nekog razloga odlučio na Eclipse IDE. Prvo, ovo okruženje ima vrlo zgodne prečice. Pod njim je besplatno dostupan ogroman broj programskih alata. Čak je i tako velika korporacija kao što je Google osobno napisala puno alata za Eclipse. Prilikom razvoja, na primjer, za Android OS, teško je pronaći najbolji IDE - za Eclipse je slobodno dostupan vrlo moćan Android SDK na kojem je razvijeno više od jedne generacije Android aplikacija.

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

Slika 2.5 - Predložena rješenja za Eclipse

Ukupno se nudi oko dvanaest rješenja za programere različitih područja. Kao što vidite, izbor je dovoljno velik. Za svoj zadatak odabrao sam standardni paket Eclipse Standart. Zatim odabiremo potrebni operativni sustav s arhitekturom (slika 2.6) i počinje besplatno preuzimanje ovog okruženja.

Slika 2.6 - Odabir potrebnog OS-a i arhitekture

Tijekom više od deset godina povijesti jezika Java, nije se promijenila niti jedna generacija integriranog razvojnog okruženja (IDE). Evolucija IDE alata posljedica je brojnih čimbenika, čija se ukupnost naziva informacijskim tehnologijama, koje uključuju softverske i hardverske komponente, kao i razvoj samog jezika, koji se događa ne samo dubinski, optimizacija nekih značajki, što jasno demonstrira dolazak novih Swing biblioteka umjesto zastarjelih AWT, ali i „u širinu“, je pojava JSP tehnologija, veća integracija s DBMS i aplikacijskim poslužiteljima, podrška za Spring tehnologije, Hibernate itd.

A 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 završnog sastavljanja projekta, morao se obavljati ručno, onda su današnji moderni zapravo višenamjenski uređaji koji preuzimaju ne samo poznate funkcije, već i niz dodatnih, počevši od automatske izrade Javadoc-a, refaktoriranja, profiliranja, UML-dizajna, klijenta za spajanje na bilo koji DBMS, pa sve do takvih egzotično, nije povezano s procesom razvoja, kao što je provjera pravopisa.

Podrazumijeva se da je plaćanje za sve te "pogodnosti" povećani zahtjevi za računalnim resursima. Postoji mišljenje da 80% korisnika koristi mogućnosti postojećeg softvera samo 20%, to se također može projicirati na IDE - alate. Budući da sve njihove prednosti može procijeniti samo programer koji se više od godinu dana razvija na odgovarajućoj tehnologiji. A programerima početnicima teško je adekvatno procijeniti ovaj ili onaj alat, pa se u pravilu njegov neovisni izbor temelji na dva kriterija - intuitivnoj jasnoći sučelja i raznim karakteristikama vremenskih resursa, kao što su učitavanje, sastavljanje, pokretanje, zauzetu količinu RAM-a. Uostalom, u početku su vam potrebni samo prevodilac, program za ispravljanje pogrešaka i sam Java stroj.

Stoga je svrha ovog članka sagledati postojeće tržište IDE alata za razvoj programa na jeziku Java, identificirajući prednosti i nedostatke svakog od njih prema različitim kriterijima, a na temelju analize rezultata projekta: „Testiranje i analiza softverska razvojna okruženja za Javu" ("Testiranje i analiza IDE za Javu" (TAIDEJ)), koji smo organizirali mi, koordinacijska skupina stranice, a odvijao se od 01.01.2006. do 1.09.2006. na stranici www.site.

Projekt je bio podijeljen u nekoliko faza. U prvoj fazi razvili smo upitnik, tablicu 2, i sastavili popis Java-IDE-ova, tablica 3, koji su se razvijali od trenutka kada se jezik Java2 pojavio do danas, uključujući veze na oba IDE alata koje su svi čuli, i prilično egzotično. Zahvaljujući našim članovima, ovaj popis se povremeno ažurira. Ovdje želimo izraziti duboku zahvalnost svim sudionicima projekta, kao i svima onima koji su nas diskutirali i konstruktivno kritizirali na forumima, tablica 1

Tablica 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
Računalni forum Ru.Boardhttp://forum.ru-board.com
Programiranje - iXBT Hardware BBShttp://forum.ixbt.com
JUG KPI Forumhttp://jug.in.ntu-kpi.kiev.ua/forum
CITForumhttp://forum.citforum.ru
Realcoding.NEThttp://forums.realcoding.net

Prilikom izrade upitnika pokušali smo saznati sljedeće:

  1. tendencija promjene preferencija programera, budući da su se nekada uspješni alati ili potpuno prestali razvijati ili su se iz nekog razloga tvrtke koje su ih razvijale napustile, pa su se mnogi morali prebaciti s jednog IDE alata na drugi;
  2. kako je programer odabrao ovaj ili onaj alat;
  3. kako programer ocjenjuje alate s kojima je radio na ljestvici od pet stupnjeva;
Tablica 2. Upitnik

Daljnji zadaci bili su obrada i analiza dobivenih statističkih informacija, procjena "intenziteta resursa" popularnih alata. Osim toga, pripremljeni su pregledi nekih sredstava i objavljeni na web stranici projekta.

Tablica 3. Popis IDE-ova za Javu.
ImeProizvođačWeb stranica proizvoda
1 Applet Designer ProfessionalTVObjektihttp://www.tvobjects.com/
2 PrivlačnostSoftver za napredakhttp://apptivity.progress.com/
3 Awesume Jawa 1.0Awesume interaktivni dizajnhttp://www.awesume.se/en/index.htm
4 Bluettebesplatni RAD Java alathttp://blue.donga.ac.kr/bluette/
5 BongoMarimbahttp://www.marimba.com/
6 Clarion Internet EditionKorporacija TopSpeedhttp://www.topspeed.com/
7 CodeWarrior ProMetroWerkshttp://www.metrowerks.com/desktop/pro/
8 Cosmo kodSGIhttp://www.sgi.com/Products/cosmo/code/index.html
9 ED za WindowsMekana kako budehttp://www.getsoft.com/ed_java.html
10 EliksirElixir Technology Pte Ltdhttp://www.elixir.com.sg/
11 Besplatni graditeljFreeBuilder kolektivhttp://www.freebuilder.com/
12 SHVATITIProjekt GRASPhttp://www.eng.auburn.edu/grasp/
13 BrusilicaRazmjena paradigmihttp://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 KopljeKorak naprijedhttp://www.ozemail.com.au/~stepsoft/
20 JaWizInfinityEdge sustavihttp://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 SujalŠahhttp://dan.hcf.jhu.edu/sujal/winjadi/
25 JIGS Kockastihttp://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 otokahttp://www.island-design.co.uk/
32 NetBeansNetBeans, Inc.http://www.netbeans.com/
33 OEW 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 PržionicaPrirodna inteligencijahttp://www.roaster.com/roaster/
37 SNiFF +TakeFive softverhttp://www.takefive.com/sniff/
38 DuheVisNet Limitedhttp://www.evis.net/
39 SuperCedeSuperCede, Inc.http://www.supercede.com/
40 VisajImperial Software Technologyhttp://www.ist.co.uk/
41 Vizija žadaVision softverhttp://www.vision-soft.com/
42 VisualAge za JavuIBMhttp://www.software.ibm.com/ad/vajava/
43 Vizualni kafićSymantechttp://cafe.symantec.com/
44 Vizualni J ++Microsofthttp://www.microsoft.com/visualj/
45 Platforma za web aplikacijeSilverStreamhttp://www.silverstream.com/products/main/main_f.htm
46 Java WebIDEChami.comhttp://www.chami.com/webide/
47 Obrisatisoftwarebuero m & ampbhttp://www.softwarebuero.de/wipeout-eng.html
48 IntelliJ IDEJAIntelliJ IDEJAhttp://www.jetbrains.com/idea/
49 Zasjenitieclipse.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-RazvijanjeOmnicore softverhttp://www.omnicore.com/
54 Gel IDEGExperts Inchttp://www.gexperts.com/
55 IBM Web Sphere Studio programer aplikacijaIBM softverhttp://www-306.ibm.com/software/awdtools/studioappdev/
56 proširitiNOVELLhttp://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 svatko može preuzeti s web stranice proizvođača.

Odlučili smo istaknuti drugu klasifikacijsku značajku koja se ne temelji na nekim specifičnim mogućnostima, budući da bi, prema ovoj značajki, vjerojatno bilo moguće neograničeno dijeliti IDE, ali iz agregata mogućnosti samog alata i njegovih zahtjeva za resursima. Naravno, u ovom slučaju, prisutnost graditelja vizualnog sučelja je na prvom mjestu, što zauzvrat postavlja određene zahtjeve za resurse.

Po ovom kriteriju moguće je izdvojiti alate koji nemaju vizualni alat za razvoj GUI-ja (jednostavni), na primjer Gel, JCreator i koji imaju (složene) - JBuilder, Idea.

Sukladno tome, prvi u RAM-u tijekom rada zauzimaju manje od 30 MB, a drugi više od 100 MB. Što se samih alata za vizualni razvoj tiče, prema vlastitom iskustvu i mišljenju mnogih kolega programera s dugogodišnjim iskustvom, njihova upotreba nije uvijek opravdana za programere početnike, iako se čini da s jedne strane olakšavaju razvoj, ali, s druge strane, s druge strane, otežavaju konceptualizaciju takvih osnovnih stvari Swing knjižnica kao što su upravitelji izgleda, rukovanje događajima i još mnogo toga.

U projekt je bila uključena i grupa studenata DSTU-a (posebno bih istaknuo V. Egorenkova i D. Lagutina), koji su tek počeli studirati OOP, čiji su zadaci bili upoznati se s IDE za Javu, instalirati ga, popraviti parametre prilikom učitavanja, daju svoje komentare i, u konačnici, samostalan izbor sredstva za početni rad. Rezultati ispitivanja sažeti su u tablici 4.

Tablica 4. Rezultati testiranja IDE - alata
ParametriGeIJSreator 3.5JBuilder XIdeja 5NetBeans 4.1
Vrijeme ugradnje1 sek1-1,5 sek58 sek22 sek50 sekundi
veličina instaliranog paketa10,3 MB6,49 Mb332 MB157 Mb118 MB
Veličina distribucije4,21 Mb3,6 Mb178 Mb51,6 MB46,4 MB
Trčanje5s1-1,5 sek9 sek6 sek6 sek
Zauzeti prostor u RAM-u17828 Kb12960 Kb74128 Kb65604 Kb61409 Kb
Zauzeta količina virtualne memorije9020 Kb14960 Kb78588 Kb76416 Kb70406 Kb

* Za osnovnu konfiguraciju uzet je stroj baziran na: CPU Athlon64 3000+; RAM - 1024 MB DDR-SDRAM (pc3200)

Nakon toga održan je seminar na kojem su sumirani rezultati rada, uslijed čega je utvrđeno da u početnoj fazi rada, kada je u tijeku proces proučavanja sintaktičkih osobina jezika, postoji nema potrebe za korištenjem mogućnosti koje predstavljaju složeni IDE-ovi, iako su, naravno, mnogi bili zainteresirani za načine za brzi razvoj sučelja, budući da je ova značajka najintuitivnija i omogućuje vam da odmah dobijete rezultate. Ali, kao što znate, razvoj sučelja je sastavni, ali ne i najvažniji dio aplikacije. A povećani zahtjevi za resursima od strane složenih IDE-a, posebno s obzirom na činjenicu da kućna računala svih učenika nemaju niti 512 MB RAM-a, daju neosporne prednosti jednostavnom IDE-u, stoga je Gel prepoznat kao vodeći među studentima među svim dostupnim Ide.

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

Na temelju toga analizirajmo s kojih pozicija programer pristupa samostalnom izboru alata.

  1. Sučelje. To je prva komponenta s kojom se korisnik susreće nakon instalacije i koja stvara prvi dojam o programu, a na temelju koje se može napraviti konačan izbor. Ovdje se ne ocjenjuje samo opći dizajn, iako, naravno, na određeni način utječe i na pogodnost lokacije i konfiguracije komponenti kao što su prozor izvornog koda, prozor projekta itd.
  2. Prilagodba. Sukladno tome, nakon instalacije i prvog pokretanja razvojnog okruženja, ono se konfigurira, t.j. staze na kojima se nalaze instalirani SDK, DOCS, J2EE. U ovoj komponenti, u pravilu, nema značajnih razlika. Štoviše, moderni alati u pravilu samostalno određuju instalirane komponente.
  3. Urednik koda. Postavljanje prikaza izvornih kodova u pravilu se također ne razlikuje po raznolikosti, u bilo kojem alatu možete jednostavno prilagoditi veličinu točke i njezinu veličinu, kao i boju. Važna prednost je prisutnost pomoćnika kada se, kada miš "lebdi" na bilo kojoj varijabli ili metodi, pojavi prilično detaljan ToolTip (kontekstni prozor) u kojem se proširuje, opisuju se svi parametri objekta. Tu je i puno lijepih sitnica, izlaz numeriranja redaka, prikaz strukture klase, prikaz znakova paragrafa, provjera pravopisa.

Analizirajući, na temelju toga, sve IDE alate koji danas postoje, možete vidjeti da između njih nema značajnih razlika osim dizajna sučelja i, očito, koncept praktičnosti je subjektivan.

Analiza rezultata ankete, tablice 5.6. Kao što je gore opisano, u našem istraživanju alati su podijeljeni u dvije skupine, one koji su se ranije koristili i koji se trenutno koriste. I ako među sredstvima koja su se koristila u prošlosti postoji raznolikost, odabrali smo sredstva koja su dobila više od 3% glasova od ukupnog broja onih koji su sudjelovali u anketi, onda među onima koja se trenutno koriste nalazi se nema takve raznolikosti, a mi smo bili prisiljeni smanjiti postotak glasova, a čak i unatoč tome, oni nisu dobili veliku raznolikost.

Kao što možete vidjeti, "jednostavan" IDE alat JCreator stalni je sudionik u odabirima; to se očito objašnjava činjenicom da je prilično lako naučiti i ne zahtijeva puno resursa, stoga je popularan među programerima početnicima. JBuilder je izgubio tlo pod nogama, očito zato što su ga besplatni alati kao što su Eclipse i NetBeans počeli nadmašiti. Eclipse treba prepoznati kao neospornog lidera, jer nije izgubio svoje prilično visoke pozicije, već je čak dodao. Popularnost JDevelopera treba pripisati njegovom fokusu na Oracle DBMS. Popularnost IntelliJ IDEA je posljedica činjenice da su u određenom trenutku programeri uspjeli predstaviti proizvod s moćnim mogućnostima, a već nekoliko godina prilično uspješno održava svoj brend na visokoj razini, što je također potvrđuju visoke ocjene korisnika.

Općenito, valja napomenuti da su rezultati ocjenjivanja bili predvidljivi, pitanje se ticalo samo raspodjele mjesta, a iznenađenje za autore bilo je da je NetBeans dobio relativno mali postotak glasova, posebno s obzirom na mogućnosti Najnovija verzija.

Analiza razloga za odabir IDE alata pokazala je da je izbor alata prve generacije u pravilu bio slučajno ili prema rezultatima neovisne analize, što je prirodno, budući da je u to vrijeme proces odvijalo se formiranje i samog jezika i razvojnih alata. Sredstva druge generacije odabrana su uglavnom kao rezultat neovisne analize ili savjeta prijatelja. To je najvjerojatnije zbog činjenice da se u to vrijeme formirao i krug profesionalnih Java programera i tržište za glavne programere IDE alata.

Tablica 7. Razlozi za odabir IDE-a

Stoga su IntelliJ IDEA, Eclipse i NetBeans trenutni lideri među razvojnim alatima Java IDE. Općenito, svi imaju približno istu funkcionalnost, te je prilično teško procijeniti koji je najbolji. Stoga se pri odabiru alata, očito, morate usredotočiti na IDE na kojem se projekt razvija, ako se programer pridruži razvojnom timu, ili odabrati najpristupačniji ako planirate razviti samostalni projekt.

Popis korištenih izvora

  1. Zhmailov B.B. Prednosti i nedostaci razvoja Java programa bez korištenja IDE alata. Časopis "Bilten računalnih i informacijskih tehnologija" broj 6, 2006.
  2. , Sergey Berdachuk, "Oracle JDeveloper 10g - Java Application Development Environment"
  3. , Alexey Litvinyuk, "Uvod u integrirano razvojno okruženje Eclipse"
  4. , Alexander Demyanenko, "Kratak pregled IDE - Jbuilder"
  5. , Alexander Demyanenko, "IDE pregled - ideja"
  6. , Boris Zhmailov, "Kratak pregled IDE - Gel"
  7. .Pregled automatiziranih alata za refaktoriranje u Java IDE.

Vrhunski povezani članci