Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • Erori
  • Programe pentru programare și instruire Java. Medii de dezvoltare Java

Programe pentru programare și instruire Java. Medii de dezvoltare Java

Aproape toate cărțile și tutorialele despre Java pentru începători încep cu o descriere a OOP: cât de minunat și de magnific este. Este clar, deoarece în Java este pur și simplu imposibil să faci orice altă programare decât cea orientată pe obiecte, atunci mai întâi se propune să stăpânești 40..80 de pagini de analogii nebunești cu ierarhia pisici/câini/rățe/mașini și doar după aceea se propune să scrie „Hello, World!” . :-)

Este de remarcat faptul că absolut toate antrenamentele Java se bazează pe cea mai primitivă ieșire a rezultatului către consolă. Aceea nu este aplicație de consolăîn înțelegerea obișnuită, și anume ieșirea unor date linie cu linie. Ei bine, de exemplu, Turbo Pascal 3.0 a fost lansat în 1985 și avea deja suport pentru modurile grafice. În 1990, a apărut Turbo Vision - un lucru foarte tare - adica Windows doar pentru DOS. Și în Java în 2018, numai ieșirea din consolă este posibilă. Și tot acest entuziasm și răcoare este cumva spulberată deja la etapa „Bună ziua, lume!”... Singurul lucru mai rău este probabil să te distrezi pe un calculator programabil MK-61 sau MK-52 - dar ce? există aceeași ieșire linie cu linie.

Dar cel mai amuzant lucru este că în Java poți de fapt să creezi programe folosind programarea vizuală! Am aflat despre asta doar când am citit (sau mai bine zis m-am familiarizat cu) o carte de 500 de pagini, unde într-unul din ultimele capitole a devenit brusc clar că pentru Java există GUI-uri (interfețe grafice de utilizator) obișnuite și poți proiecta programe cu butoane, câmpuri de introducere și meniuri normale. Se pune întrebarea: de ce ai petrecut atât de mult timp chibzuind cu această consolă proastă când ai fi putut face totul frumos și îngrijit deodată?

După ce am petrecut câteva zile studiind această problemă, am aflat câteva nuanțe amuzante.

Primul- GUI pentru Java are trei tipuri (biblioteci): A.W.T., Leagăn(cine vine cu astfel de nume?) și JavaFX.

Astăzi (Java 8 și 9) toate sunt incluse în JDK: adică totul funcționează din cutie și nu trebuie să vă obosiți să le instalați. Acesta este un mare plus.

Dar AWT este prima și foarte veche implementare, așa că nu este nevoie să o folosești. În general - nu cușer. Swing nu este, de asemenea, cușer, pentru că ceva s-a încurcat acolo și programele sunt teribil de lente din cauza asta. Nu pot spune mai precis, nu am înțeles, dar se pare că nu mai este dezvoltat oficial pentru mai multe versiuni. Dar JavaFX este un zgomot și viitorul nostru strălucit.

Există o altă urâciune - applet-uri java, cele care funcționează în browser și în același timp îl „atârnă” strâns, la fel ca Flash, doar și mai rău. Din fericire, acest lucru/aceste lucruri/lucruri practic nu mai sunt folosite, așa că pierderea timpului studiindu-le este inutilă.

Deci, singurul lucru pe care merită să-l petreci timp este JavaFX.

Al doilea punct. Nu este atât de simplu. Să luăm în considerare Delphi (sau Visual Studio, Lazarus, nu contează). Chiar și pentru un începător „verde”, crearea unui program simplu (un buton și un câmp de text pentru ieșire) va decurge astfel:

  • lansează Delphi;
  • se creează automat un nou proiect cu formularul principal;
  • selectați un buton din paleta componentelor și plasați-l pe formular; totul este vizual
  • în mod similar, plasăm un câmp de text pe formular;
  • dacă este necesar, în panoul de proprietăți puteți specifica textul butonului, dimensiunile etc.;
  • lansare - Delphi se va oferi să salveze, să salveze.

Adică nu am scris o singură linie de cod, IDE-ul a făcut totul singur. Dacă te uiți la codul generat, nu îl poți numi simplu - necesită deja anumite cunoștințe, dar Delphi este suficient de inteligent pentru a înțelege cum să lucrezi cu el.

Dacă vrem să adăugăm o acțiune, de exemplu, când se face clic pe un buton, completați un câmp de text cu expresia „Bună ziua!”, atunci facem acest lucru:

  • faceți dublu clic pe butonul (sau selectați evenimentul onClick);
  • Delphi creează codul pentru acest handler de evenimente și ne transferă în editor;
  • introducem numele câmpului de text și Delphi oferă indicii care vă pot ajuta să vă dați seama ce să faceți și cum să faceți acest lucru.

Adică, din nou, IDE-ul a făcut toată treaba murdară.

Dar acest lucru este în alte limbi, Java își urmează drumul. Pentru a crea un buton în JavaFX, trebuie să creați manual un Stage - „scena de teatru” (numele este complet serios!) și pe ei plasează o scenă. Există un fel de container în care sunt deja plasate alte elemente.

Se presupune că fiecare element și fiecare dintre proprietățile sale trebuie programate individual. Iată un exemplu de două butoane și o etichetă din cartea mea de antrenament

Răspuns = new Label ("Apăsați un buton"); Button btnUp = new Button ("Sus"); Button btnDown = new Button ("Jos"); btnUp.setOnAction(noul EventHandler () ( public void handle(ActionEvent ae) ( response.setText("Ai apăsat Sus."); ) )); btnDown.setOnAction(noul EventHandler () ( public void handle(ActionEvent ae) ( response.setText("Ai apăsat în jos."); ) )); rootNode.getChildren().addAll(btnUp, btnDown, răspuns); ...

Când există o duzină de butoane, plus 20 de elemente de meniu, plus alte 30 de componente, codul nu va părea mic. Și asta fără codul care este responsabil pentru proprietăți suplimentare, cum ar fi alinierea, dimensiunile, fontul... Și aici este al doilea indică faptul că tutorialele JavaFX arată exact cum să scrieți manual „cod fx”. Melancolie, într-un cuvânt...

Dar aici vine harul mântuitor a treia nuanță. Se pare că oamenii inteligenți (aparent familiarizați cu IDE-urile cu drepturi depline) au dezvoltat un alt tip de aplicație, în care un fișier xml descriptiv numit fxml, iar astfel de programe sunt schimbate ca „ Aplicații FXML JavaFX»

Este absolut surprinzător pentru mine că învățarea Java nu începe cu astfel de aplicații. Chiar dacă nu este Delphi, este totuși de un milion de milioane de ori mai bine decât să lucrezi cu consola și să-ți umple capul cu alte gunoaie despre motivul pentru care trebuie să folosești sute de linii de POO, unde în alte limbi este nevoie de o procedură simplă. ;-)

Acum hai să fim serioși. Dacă nu ați programat niciodată în Java, puteți încerca chiar acum. De fapt, este destul de mișto, deși va dura puțin timp să te obișnuiești cu programele. Dacă aveți experiență cu „IDE-uri vizuale”, atunci și mai bine - veți întâlni o mulțime de oameni pe care îi cunoașteți.

JDK

Java trebuie să fie instalat pe computer. Nu voi oferi link-uri despre cum să faceți acest lucru - Google vă va ajuta, deoarece totul este prea simplu.

IDE

În Java nu există un singur program - mediul de dezvoltare, așa că există exemple pe Internet din diferite programe. Cele mai primitive, precum Notepad++, sunt potrivite doar pentru ieșirea pe consolă, dar dacă luăm în considerare ceva mai serios, atunci ies în evidență doar trei candidați: NetBeans, Eclipse și IntelliJ IDEA.

NetBeans- cel mai simplu program care se lanseaza rapid (fata de altii) si functioneaza destul de bine.

Eclipsă- de asemenea, o opțiune bună, mai puternică decât NetBeans, dar mai slabă decât IntelliJ IDEA.

IntelliJ IDEA- arată cel mai tare, dar trebuie să plătești pentru asta cu viteză. Este de remarcat faptul că Android Studio se bazează pe IntelliJ IDEA, dar din anumite motive studioul funcționează mult mai lent.

Un punct important este legat de programarea pentru Android. Dintre aceste trei IDE-uri, doar IntelliJ IDEA este mai mult sau mai puțin potrivit pentru asta. Există o mulțime de materiale pe Internet despre programarea pentru Android în Eclipse, dar toate sunt deja depășite - nu vă pierdeți timpul lansând un plugin ADT vechi și încercând să faceți măcar ceva cu el. Poate că vechiul SDK Android va funcționa, dar toate cele noi nu vor mai funcționa.

Vă voi arăta cum să creați o aplicație FXML JavaFX în toate cele trei programe, dar înainte de a începe, trebuie să instalați încă un program: SceneBuilder (utilizați versiunea Java 8). Acesta este programul cheie în care, de fapt, se realizează toată construcția vizuală. SceneBuilder Poate funcționa singur fără un IDE, așa că îl puteți rula și vedeți cum funcționează. Ieșirea va fi un fișier fxml care conține toate markupurile necesare. Acest fișier este folosit în IDE, în loc să scrie megatoni de cod. :-)

TK

Programul creat va fi foarte simplu - un buton și un câmp de text. Când faceți clic pe butonul, lăsați textul „Bună ziua!” să fie adăugat în câmpul de text.

În fiecare program, trebuie să specificați setarea în avans - cea folosită de JDK. Dacă nu vă puteți da seama cum să o faceți, căutați-l pe Google.

NetBeans

Înainte de a începe, trebuie să vă conectați SceneBuilder: Instrumente - Opțiuni - Java - JavaFX - Pagina de pornire a Scene Builder. Selectați directorul programului. Configurarea trebuie făcută o singură dată. Acest lucru se aplică tuturor IDE-urilor.

Creați un nou proiect în care trebuie să selectați „FXML JavaFX Application”.

Faceți clic pe „Finish” și, după ceva lucru de către NetBeans, vedem fișierele terminate:

  • Myfx.java- acesta este fișierul principal, care lansează de fapt întregul program.
  • FXMLDocumentController.java- acesta este „controlerul”, unde va avea loc cea mai mare parte a programării.
  • FXMLDocument.fxml- acest fișier stochează partea vizuală.

Acum rulați programul. Mai întâi, va avea loc asamblarea și compilarea (destul de rapid), după care va apărea fereastra programului nostru.

Acest lucru este grozav pentru că nu am scris o singură linie de cod, dar avem deja un program cu un buton de lucru. :-)

Dacă ați specificat corect calea către SceneBuilder, puteți selecta elementul de meniu "Deschis" la dosar FXMLDocument.fxml. Același lucru se va întâmpla dacă faceți dublu clic. Se va deschide SceneBuilder. Dacă nu există niciun element, atunci calea este specificată incorect, verificați setările.

Principiul de funcționare în SceneBuilder este același pentru toate IDE-urile, așa că deocamdată voi descrie doar puncte generale, apoi vă puteți da seama singur.

Este de remarcat faptul că, după editarea fișierului, nu trebuie să închideți SceneBuilder. Trebuie doar să salvați (Ctrl+S) și să comutați la IDE - acesta va prelua singur modificările.

Fereastra SceneBuilder este împărțită în trei părți:

  • în stânga sunt seturi de componente, ierarhie și controler, unde este indicată clasa principală (acest lucru este important!)
  • în centru se află forma însăși, unde are loc construcția vizuală.
  • în dreapta sunt proprietățile componente, împărțite în trei file (aceasta este o diviziune condiționată). Fila Cod este responsabilă pentru ceea ce va fi folosit în fișierul java.

Crearea de programe FX ar trebui să înceapă cu un container. În acest exemplu, NetBeans a folosit AnchorPane. Este destul de convenabil, permițându-vă să configurați indentarea „corectă” pentru elementele imbricate. Tab Containere contine si alte recipiente cu care te poti exersa pe cont propriu (n-am invatat nici macar jumatate din el :-)).

Ierarhia componentelor este un lucru foarte convenabil, permițându-vă să selectați rapid elementul dorit.

Conform termenilor caietului de sarcini, trebuie să avem un câmp de text. NetBeans folosește Label, dar nu vom elimina nimic, doar adăugăm un nou element TextField pe forma (arbitrar dupa gustul tau).

Previzualizarea este posibilă în SceneBuilder (Ctrl+P). În acest mod, doar forma și toate elementele sunt afișate „fără programare java”.

Acum un punct important: pentru a putea folosi o componentă într-un program java (în codul nostru), trebuie făcute două lucruri.

Prima este să verificați dacă este specificat controlerul corect. În cazul nostru, NetBeans însuși a făcut deja totul și a specificat myfx.FXMLDocumentController .

După cum puteți vedea, acesta este controlerul din fișier FXMLDocumentController.java(pachet.controler). IDE-urile nu indică întotdeauna acest lucru, dar acest lucru este important, deoarece fișierul fxml (mai precis, codul java) îl folosește pentru legare.

Al doilea punct este că componenta utilizată trebuie să aibă propriul ID - acesta este parametrul fx:id. Aici am indicat textField1.

Un mesaj triunghi galben va apărea în partea de sus, indicând că se presupune că nu există nicio legătură între acest id și controler. Nu-i acorda atenție momentan, vom vorbi despre asta mai târziu.

Butonul care va umple câmpul de text trebuie să aibă și propriul id, precum și o metodă de eveniment onAction (acesta este evenimentul principal al componentei, și nu onClick, ca în Delphi). NetBeans s-a ocupat deja de asta, așa că nu va trebui să scriem nimic.

În acest moment construcția vizuală poate fi finalizată. Salvați și comutați la NetBeans. Vedem că dosarul FXMLDocument.fxml schimbat: adaugat textField1:

Acum trebuie să folosim cumva câmpul de text în codul java. Spre deosebire de Delphi, NetBeans nu creează niciun cod pentru asta, așa că va trebui să-l adăugăm semi-manual. Pentru a face acest lucru, diferite IDE-uri folosesc metode diferite, dar principiul general este că trebuie să plasați cursorul pe câmpul dorit din editor și să efectuați câteva "acțiune". În NetBeans se numește Instalați controlerulîn meniu Sursă. (Da, Java are probleme mari cu denumirea...)

După executarea acestei comenzi, va avea loc o tranziție la fișier FXMLDocumentController.java, unde la cod va fi adăugată o declarație de variabilă textField1:

Rețineți „@FXML” - această adnotare indică faptul că codul este utilizat în FXML într-un fel. După aceste modificări, SceneBuilder nu va mai emite un avertisment așa cum a făcut anterior triunghiul galben. Dacă rulați din nou SceneBuilder, puteți verifica acest lucru.

Lansăm programul de execuție pentru test. Acum sarcina noastră este să completăm câmpul de text făcând clic pe butonul. După cum ați înțeles deja metoda handleButtonAction face exact treaba potrivită. Adăugăm în el:

TextField1.setText("Bună ziua!");

Fiți atenți la modul în care funcționează completarea codului după ce punctul este apăsat.

Pe măsură ce tastați, NetBeans va restrânge opțiunile de unde puteți selecta opțiunea dorită. Această caracteristică face viața foarte ușoară pentru programatori, deoarece există prea multe opțiuni și acest lucru vă permite să evitați diferite tipuri de erori de sintaxă la tastare.

Această caracteristică este prezentă în toate IDE-urile, deși există diferențe în implementare și utilizare.

Lansăm programul și vedem că totul funcționează așa cum trebuie.

A trebuit să scriem o singură linie de cod și să facem câțiva pași suplimentari în editor.

Eclipsă

Eclipse durează puțin mai mult să pornească decât NetBeans. Mai întâi trebuie să specificați calea către SceneBuilder. Acest lucru se face în Fereastra - Preferințe - JavaFX.

Vă rugăm să rețineți că Eclipse nu este un program rusesc (nici măcar nu știu dacă există o limbă rusă pentru el).

Creați un nou proiect și selectați JavaFX.

Clic Următorulși accesați pagina de setări. Aici am indicat denumirea proiectului, ca si pana acum myfx(Am directoare de proiecte diferite pentru diferite IDE-uri, astfel încât acestea să nu se suprapună unele cu altele).

Aici trebuie să selectați tipul de aplicație, tipul de container și numele controlerului. Clic finalizarea iar Eclipse generează rapid scheletul viitorului nostru program.

Totul aici este foarte asemănător, a mai fost adăugat un singur fișier aplicație.css- da, da, în JavaFX poți folosi CSS pentru a personaliza designul! Eclipse a generat imediat codul de conectare pentru acest fișier.

Să rulăm programul și să ne asigurăm că nu există erori.

Spre deosebire de NetBeans, acest formular este complet gol. Să-l deschidem în SceneBuilder folosind meniul contextual.

Și aici vedem că nu există formă. Dar, de fapt, există - doar că dimensiunea calculată (înălțime și lățime) este utilizată implicit, care în acest caz este zero. Nu există componente! În cazul nostru, nu este exact ceea ce avem nevoie, așa că vom selecta BorderPane în lista ierarhică și în proprietăți Lățimea prefȘi Pref Înălțime Să indicăm câteva valori. Aceste proprietăți specifică lățimea și înălțimea „dorite”. După aceasta, forma imediat „apare”.

Containerul BorderPane este format din 4 părți: sus, dreapta, jos, stânga și centru. Componentele ar trebui să fie plasate în părți diferite - poziția lor va depinde de aceasta atunci când dimensiunea ferestrei este schimbată.

Este destul de dificil de explicat în cuvinte, doar încercați să plasați câteva butoane, apoi redimensionați fereastra în previzualizare.

Nu m-am încântat prea mult și am plasat un câmp de text în partea de sus și un buton în centru.

Acum să verificăm dacă controlerul este specificat: în acest caz aplicație.SampleController- Eclipse a făcut treaba pentru noi.

Acum trebuie să specificăm id-ul pentru elementele noastre. Pentru butonul pe care l-am setat btn1, și câmpul de text textField1. Am primit din nou mesajul „triunghi galben”.

Pentru buton, specificam o metoda pentru eveniment - btn1Click.

Să salvăm și să revenim la Eclipse. Vom vedea că fișierul Sample.fxml actualizat, dar pictogramele de avertizare au apărut lângă unele rânduri.

Situația de aici este exact aceeași ca în NetBeans - trebuie să faceți editări într-un mod „semi-manual”. În Eclipse, acest lucru se face folosind meniul contextual pentru al doilea buton al mouse-ului: Soluție rapidă sau tastă rapidă Ctrl+1(oricare este mai convenabil).

În același timp, apare un indiciu despre acțiunea intenționată. De exemplu pentru textField1 Se propune adăugarea unui identificator la controlor:

iar pentru buton există și o metodă de gestionare a evenimentelor:

În același timp, Eclipse încetinește puțin și modificările nu sunt afișate imediat pe ecran. Aici trebuie fie să comutați la fișierul controlerului, fie să așteptați puțin. Ca urmare, modificările necesare vor fi adăugate codului și pictogramele de avertizare vor dispărea.

Să adăugăm codul nostru așa cum am făcut înainte în NetBeans.

Observați cum funcția de completare automată funcționează mai inteligent. În modul automat încetinește puțin, dar dacă apeși Ctrl+Spațiu(aceeași combinație este folosită în multe IDE-uri), acest lucru vă permite să obțineți ajutor bun.

Să lansăm programul nostru.

Și adăugăm un alt IDE la meritul nostru. :-)

IntelliJ IDEA

IntelliJ IDEA se lansează destul de lent, astfel încât să vă puteți verifica e-mailul. :-)

Din nou, specificați calea către SceneBuilder: Fișier - Setări:

Și indicați numele acestuia (ca de obicei - myfx):

IntelliJ IDEA se va inițializa și vom vedea cele trei fișiere deja familiare. Să rulăm programul pentru a verifica erorile.

Aceasta este, de asemenea, o formă goală, dar titlul programului este indicat. Dacă te uiți la cod Main.java, apoi vom vedea linia:

PrimaryStage.setTitle("Bună lume");

Acesta este titlul aplicației. În alte IDE-uri această linie lipsește, dar acum știm pentru ce este „scena teatrului”. ;-)

Comutați la SceneBuilder (similar cu Eclipse): cu al doilea buton al mouse-ului trebuie să selectați Deschideți în SceneBuilder.

Aici este și o formă goală, dar cu recipient GridPane. Instalare Lățimea prefȘi Pref Înălțime pentru a afișa formularul.

GridPane în sine este o grilă de celule pentru elemente. Cred că nu are rost să ne repetăm ​​- toate acțiunile vor fi similare:

  • plasați un buton și un câmp de testare,
  • atribuiți-le un ID,
  • pentru buton, specificați o metodă de procesare a clicului,
  • nu uitați să verificați dacă controlerul este specificat ( eşantion.Controller).

Închideți SceneBuilder și reveniți la IntelliJ IDEA. Aici trebuie să adăugați ID-uri la cod și, de asemenea, să creați o metodă de a reacționa la un clic pe buton.

IntelliJ IDEA oferă două moduri de a face acest lucru. În primul rând, când treceți mouse-ul peste „zona cu probleme”, va apărea un indiciu pe care puteți face clic pe:

Al doilea este o tastă rapidă Alt+Enter

De fiecare dată când îl adăugați, treceți la fișierul controlerului, unde puteți vedea imediat modificările.

În acest caz, rețineți că linia „@FXML” nu este adăugată. Dacă îl adăugăm manual înainte de variabile și metodă, atunci IntelliJ IDEA va oferi imediat să adauge clasa java necesară:

În general, IntelliJ IDEA dă dovadă de inteligență destul de bună și acționează ca asistent în scrierea codului. Și o face independent, fără apăsări inutile de butoane.

Ei bine, să adăugăm codul nostru pentru handler și să rulăm programul:

Super, totul funcționează!

Total

Concluzia principală este Programarea vizuală este posibilă în Java. Poate că nu este ideal, dar este destul de potrivit, mai ales pentru începători. Învățarea unei limbi este mult mai interesantă atunci când există un rezultat tangibil - OOP, cursurile și alte înțelepciuni sunt bune, dar este mai bine să începeți cu butoane, câmpuri de intrare, meniuri și tot ceea ce implică un program normal. Și consola este plictisitoare și neinteresantă.

Am adus trei IDE-uri nu întâmplător. Există o mulțime de exemple pe Internet pentru Java și toate sunt pentru diferite programe. Personal, încă nu m-am hotărât asupra preferinței mele, deoarece toate au atât argumente pro, cât și contra. Probabil că trebuie să lucrăm cu toată lumea, atunci va fi clar.

Dar punctul cheie este capacitatea de a lucra cu SceneBuilder. Construirea unui formular în JavaFX este ușor diferită de Delphi, în primul rând prin utilizarea containerelor complexe (pot fi imbricate unul în celălalt). Prin urmare, ar trebui să vă ocupați mai întâi de ele, apoi puteți prelua singuri componentele.

Este timpul să treceți de la caracteristicile limbajului la programe care vă vor ajuta să scrieți codul mai rapid și mai corect. Mediul de dezvoltare (IDE - Integrated Development Environment) include:

  • editor de cod;
  • compilator;
  • colector;
  • depanator

Unele medii de dezvoltare conțin toate acestea din cutie, altele sunt aduse în această stare prin conectarea pluginurilor și modulelor. Iată cele mai bune 10 IDE-uri pentru java astăzi.

IntelliJ IDEA

Descriere: Unul dintre cele mai funcționale medii pentru dezvoltarea java, echipat cu un sistem de asistență inteligentă la scrierea codului. Pe baza contextului, IDEA configurează modul în care funcționează completarea automată și disponibilitatea instrumentului. Abundența de instrumente vă permite să accelerați dezvoltarea, de exemplu folosind șabloane și iterații și, de asemenea, să creșteți productivitatea programului final. Un număr mare de pluginuri și suplimente pentru orice sarcină fac din mediul de dezvoltare IDEA java un instrument aproape ideal.

Cost: 499 USD pentru primul an de funcționare.

NetBeans

Descriere: Poziționat de producător ca un mediu de dezvoltare care acceptă toate cele mai recente caracteristici Java, permițându-vă să scrieți cod fără erori datorită instrumentului FindBug. Site-ul, documentația și IDE-ul în sine pentru java sunt în rusă. Poate cel mai puternic mediu de dezvoltare java gratuit.

Cost: Gratuit.

Această listă de IDE-uri java este departe de a fi completă și acoperă doar cei mai populari reprezentanți. Prin urmare, înainte de a alege un favorit, amintiți-vă că cel mai bun mediu de dezvoltare java este cel care vă permite să rezolvați problema actuală cu un efort minim și cu cel mai bun rezultat.

De la autor: Dintre toate limbajele care sunt folosite în dezvoltarea web, Java este cea mai sensibilă. Acest PL este caracterizat prin sintaxă complexă, tipare ridicată a datelor și imunitate la erori. De aceea, acest instrument pentru Java – IDE – este atât de popular. Mediul de dezvoltare ajută la evitarea capcanelor care îi așteaptă pe un programator care scrie într-un editor de text. Dacă nu doriți să mergeți pe drumul lung și spinos al unui scriitor de text, bine ați venit la recenzia noastră a celor mai bune medii de dezvoltare cele mai potrivite pentru limbajul cafelei.

Ai nevoie de un IDE pentru dezvoltare

Java este una dintre acele limbaje pentru care mediul de dezvoltare nu este un capriciu al specialiștilor individuali, ci un adevărat mijloc de supraviețuire. Limbajul complex nu poate fi citit sau executat până când toate elementele sistemului nu sunt configurate corect. Uneori, pentru un dezvoltator web este dificil să înțeleagă de ce are nevoie de un software atât de voluminos și puternic. Toate limbile web, cum ar fi HTML/CSS, JavaScript și PHP, pot fi implementate fără software suplimentar (deși există chiar și un IDE de top plătit pentru acesta din urmă - PHPStorm). Dar, de îndată ce vine vorba de Java, totul cade la locul său. Documentele de cod lungi și complexe nu pot fi organizate manual.

Dar, ca întotdeauna, există oponenți ai ideologiei. Unii dezvoltatori numesc IDE-urile „cârje” de care au nevoie doar programatorii slab pregătiți. Pentru ei, descărcarea unui mediu de dezvoltare este ca și cum a trăda principiile de bază. Din păcate, această abordare îl poate lăsa pe dezvoltator în urmă în evoluția programării: proiectele mari de întreprindere, cum ar fi aplicațiile web foarte funcționale, necesită o interacțiune strânsă între membrii echipei și lansarea și depanarea rapidă a codului. Mai mult, abilitatea de a lucra cu principalele IDE-uri este un criteriu de angajare în cele mai bune poziții.

Desigur, există cei care știu să-și ajusteze instrumentele de dezvoltare atât de bine încât un IDE cu drepturi depline devine inutil. Cu toate acestea, mediul de dezvoltare consumă resurse de dispozitiv care sunt necesare pentru a rula alte instrumente de dezvoltare. Acest lucru este vizibil mai ales în versiunile învechite de Windows/Linux - de îndată ce mediul de dezvoltare începe, alte resurse se confruntă cu stagnarea.

Dezvoltatorii online preferă aproape întotdeauna editorii de text. Sunt mai ușoare și vă permit să creați soluții pe genunchi. Nu există instrumente suplimentare, nu este necesară o configurare profundă, iar gama de software este mult mai largă. Aceasta este mentalitatea pe care o au programatorii web până când încep să lucreze cu Java.

Vreau să aleg un program

Domeniul de programare oferă multe soluții pentru crearea codului complet. Acest lucru este valabil mai ales pentru diferite medii de dezvoltare. Nu doar companiile mari precum Oracle creează IDE-uri. Lucrul la un astfel de software este de obicei apanajul profesioniștilor care doresc să-și optimizeze activitățile. Exact asta s-a întâmplat cu Visual Studio: unul dintre cele mai bune IDE-uri din toate timpurile. Microsoft, care era pregătit să introducă o versiune de Windows în noul secol, și-a prezentat pur și simplu instrumentele într-o singură aplicație. Acum VS este alegerea a milioane de oameni.

Din păcate, nu poate fi numit „pentru dezvoltatori Java”. Nu, asta nu înseamnă deloc că nu veți putea scrie ceva în Java în acest mediu de dezvoltare: există chiar extensii speciale. Este doar mai concentrat pe C, C# și pe alte produse Microsoft. Java are propriul său IDE de top, pe care îl vom prezenta astăzi. Dar, mai întâi, trebuie să înțelegem care dorim să fie IDE-ul ideal (în ton cu ).

În primul rând, puteți decide imediat că cele care funcționează online nu sunt potrivite pentru un dezvoltator Java. Vor crea probleme cu interpretarea, iar înghețarile constante nu vor face decât să descurajeze programarea. O soluție mai rezonabilă ar fi descărcarea unuia dintre software-urile prezentate astăzi. Este mai bine să faceți clic pe descărcare o dată decât să suportați în mod constant erori. Era IDE-urilor cloud este încă să vină.

De asemenea, mediul de dezvoltare Java trebuie să suporte o serie de tehnologii care sunt necesare pentru o codificare eficientă. Acestea includ limbaje Java pentru mașini virtuale: mai ales Java 10, dar și Groovy și Scala. Controlul versiunilor este, de asemenea, unul dintre punctele cheie. Numai Git nu va fi suficient: aveți nevoie de Mercurial, SVN și altele. Este imposibil de ghicit care va fi popular în câțiva ani (Git, desigur ☺). Un dezvoltator web ar beneficia de suport pentru o gamă largă de limbi, inclusiv baze de date PL, limbi web, atât front-end (TS, JS, HTML) cât și back-end (unul dintre limbajele de uz general populare). Deoarece JVM-ul este proiectat pentru a converti cuvintele limbajului de programare în cod octet, este nevoie și de interpreți puternici. Ei sunt cei care pot face Java rapid în teorie, rapid în practică.

Ei bine, și bineînțeles, ca și limbajul Java în sine, mediul de dezvoltare pentru acesta trebuie să fie multiplatformă. Toate celelalte soluții împiedică dezvoltarea programatorului. Din moment ce a ales Java, înseamnă că a ales universalitatea.

Cei trei elefanți ai dezvoltării Java

Ca întotdeauna, sunt primii trei și toți ceilalți. Industria dezvoltării web s-a obișnuit deja cu asta și nu vom schimba tradițiile. Avantajul recenziei noastre este că nu va exista software plătit (aproape). Puteți descărca gratuit fiecare mediu de dezvoltare de pe site-ul oficial. De asemenea, acesta va fi unul dintre acele topuri de top în care vom alege subiectiv un câștigător. Ei bine, vă puteți forma propria decizie pe baza experienței dvs. și a concluziilor noastre.

Idee pentru dezvoltare web

IntelliJ IDEA este un IDE publicat de JetBrains bazat pe Java Virtual Machine. Mediul în sine este, de asemenea, scris în Java și parțial în Python și este destinat acestora. Ei s-au identificat imediat ca un mediu pentru Java, încă din 2001. Apoi, mediul de dezvoltare a introdus o bibliotecă întreagă de instrumente de refactorizare, care a adus imediat IDEA în top. Dezvoltatorii au făcut o alegere nu atât în ​​favoarea comodității, cât în ​​favoarea productivității. Unele operațiuni de rutină sunt efectuate în întregime de mediul de dezvoltare.

Am promis că nu va exista software plătit astăzi. Dar adevărul este că versiunea finală a IDEA are costul ei, deși nesemnificativ (până la 500 USD), ca pentru un IDE. Dacă ești un Javaist profesionist care câștigă 20 USD pe oră sau mai mult, acesta este un fleac. Apropo, doar în pachetul Ultimate dezvoltatorul va avea posibilitatea de a lucra cu platforma Java EE.

Dar există și o versiune gratuită a IDEA, care nu poate fi numită o versiune redusă. Da, unele funcții lipsesc, dar suportul pentru limbă este similar cu versiunea comercială. Este convenabil să scrieți primele linii de cod și să le extindeți cu pluginuri.

Tendințe și abordări moderne în dezvoltarea web

Aflați algoritmul pentru creșterea rapidă de la zero în construirea site-ului web

IDEA este unul dintre acele medii de dezvoltare care pot fi numite cu adevărat inteligente. În loc de corecțiile și evidențierea pe care le are chiar și cel mai simplu editor de text, IDEA oferă completare automată: fragmente din programul finit sunt generate de dezvoltator. Nu mai merită nici măcar să vorbim despre faptul că toate parantezele și alte chifle sintactice vor fi închise automat. Și dacă ceva nu merge bine și IDEA nu poate gestiona problema, va alerta imediat dezvoltatorul Java de pe cealaltă parte a ecranului.

Refactorizarea care are loc în mai multe limbi simultan este, de asemenea, captivantă. Javaiștii știu că codul nu este niciodată Java pur, mai ales când vine vorba de dezvoltare web. Aceasta include limbile baze de date, hipertext și așa mai departe. În acest moment, IDEA face ceea ce mulți încă nu sunt capabili: analizând programul scris, IDE-ul separă limbile unul de celălalt și le analizează separat.

Programul are taste rapide bine implementate, cu care, desigur, va fi nevoie de ceva pentru a vă obișnui. Dar odată ce totul se întâmplă, productivitatea trece prin acoperiș. De asemenea, pot declanșa depanarea codului, care are loc în fereastra următoare.

Mediul de dezvoltare se remarcă și prin faptul că crește constant numărul de tehnologii suportate. Cu toate acestea, dezvoltatorii nu sunt foarte dependenți de aceste actualizări. Ei pot descărca oricând pluginul corespunzător.

IDE Eclipse

Acest mediu de dezvoltare este popular nu numai printre javaiști, ci și printre dezvoltatorii web în general. Un avantaj semnificativ față de IDEA va fi cu siguranță prețul - Eclipse este complet gratuit, la fel și suplimentele sale. Apropo, creatorii mediului de dezvoltare nu aveau planuri să concureze cu IDEA: au vrut să eclipseze succesul pe care l-a primit Visual Studio. Într-o oarecare măsură, au reușit: programatorii web medii preferă aproape întotdeauna Eclipse.

Ce este chiar mai bun decât IDEA? Acces gratuit la Java EE. Este disponibil imediat, fără plăți suplimentare sau instalarea de pluginuri. Apropo, despre acesta din urmă. Instalarea lor în Eclipse este o sarcină importantă. Se pot „certa” unul cu celălalt, provocând neplăceri dezvoltatorului. Dar lucrul pozitiv este numărul lor. Vă sfătuim să le alegeți pe cele oficiale, deoarece astfel sunt mai puține șanse ca acestea să intre în conflict cu mediul de dezvoltare.

Eclipse este conceput pentru ca dvs. să-l personalizați pentru a vă potrivi. Prin urmare, prima experiență cu un IDE poate descuraja utilizarea ulterioară. Acel caz rar când unul dintre cele mai bune medii de dezvoltare are nevoie de un manual. Din fericire, există o mulțime de ele pe YouTube.

NetBeans

Acesta este un mediu de dezvoltare care s-a născut din stiloul creatorilor Java - Sun Microsystem. Au vrut să creeze cea mai bună soluție pentru limba lor și, prin urmare, au conceput un IDE care este prietenos nu numai cu Windows.

Este cea mai multiplatformă de pe lista noastră. NetBeans poate fi rulat nu numai pe axele superioare, ci și pe orice alt dispozitiv care este echipat cu un JVM. Abordarea lui Sun este imediat evidentă: au vrut ca limbajul lor să funcționeze pe toate dispozitivele (de la un computer la o mașină de spălat). Desigur, „fasolea” a fost numită mediul oficial de dezvoltare pentru Java, deși nu este atât de bun. Astăzi, Oracle lucrează la NetBeans, care a achiziționat Sun.

NetBeans este la fel de inteligent ca IDEA, capabil de refactorizare inteligentă. Sistemul face față acestei sarcini mult mai bine decât Eclipse, dar mai rău decât IDEA.

După cum puteți înțelege din volumul celor spuse, IDEA va fi numită cea mai bună. Iată o listă de motive:

înțelegerea programării. Nimeni nu completează codul și remediază erorile mai repede decât IDEA;

eficiența refactorizării;

Preț. Da, Eclipse este complet gratuit. Dar nu ai cumpăra mâncare proastă doar pentru că este mai ieftină, nu-i așa?

Aceasta este viziunea noastră! Apropo, Oracle are un alt IDE în arsenalul său, numit JDeveloper - complet adaptat pentru Java. Încercați și trageți propriile concluzii. Și avem de toate!

Tendințe și abordări moderne în dezvoltarea web

Aflați algoritmul pentru creșterea rapidă de la zero în construirea site-ului web

După instalarea tuturor componentelor necesare, este timpul să alegeți cu ce programe vor fi dezvoltate.

Există două moduri: fie să lucrați cu JDK direct prin linia de comandă, fie să utilizați mediul de dezvoltare integrat. Să luăm în considerare ambele variante.

Compilarea codului sursă prin linia de comandă

O opțiune este să scrieți tot codul programului într-un editor de text și apoi să compilați codul Java sursă în cod octet prin linia de comandă și apoi să rulați acest cod octet.

Mai jos este secvența acțiunilor:

1. Salvați codul nostru sursă în format *.java (Figura 2.1).

2. Lansați linia de comandă și introduceți folderul cu codul Java sursă (Figura 2.2).

3. Folosind comanda Javac, compilăm codul Java sursă în cod octet (Figura 2.3).

4. Rulați codul octet folosind comanda Java (Figura 2.4).

Figura 2.1 - Salvarea codului sursă

Figura 2.2 - Calea către folder în linia de comandă

Figura 2.3 - Compilare la cod octet

Figura 2.4 - Running byte code

Metoda este bună, dar este puțin folosită atunci când se dezvoltă aplicații serioase. Pentru proiecte mici, totul este în regulă - compilam tot codul sursă și rulăm codul byte compilat. Dar dacă un proiect are deja mai mult de zece fișiere de cod sursă în ierarhia sa, atunci compilarea manuală este extrem de incomod și încetinește procesul de dezvoltare. În aceste scopuri, se recomandă utilizarea unor medii de dezvoltare integrate.

IDE Java

Compilarea codului Java din linia de comandă poate părea o sarcină greoaie, dar este totuși o abilitate esențială. Parcurgând singuri pașii de bază ai lucrului cu JDK, puteți obține o mai bună înțelegere a modului în care funcționează mediul de dezvoltare. Cel mai adesea, este foarte recomandat ca înainte de a instala orice IDE (mediu de dezvoltare integrat), să învățați cum să lucrați cu Java JDK prin linia de comandă.

Cu toate acestea, după ce stăpânești pașii de bază ai executării programelor Java, probabil că vei dori să folosești un mediu de dezvoltare profesională.

Recent, astfel de medii au devenit atât de puternice și convenabile încât acum pur și simplu nu mai are rost să se facă fără ele. Cele mai comune IDE-uri pentru Java astăzi sunt: ​​Eclipse, NetBeans și IDEA. Fiecare dintre aceste medii are propriile sale avantaje și dezavantaje. Personal, m-am stabilit pe IDE-ul Eclipse din anumite motive. În primul rând, acest mediu are taste rapide foarte convenabile. Sub acesta, un număr mare de instrumente pentru dezvoltatori sunt disponibile gratuit. Chiar și o corporație atât de mare precum Google a scris personal o mulțime de instrumente pentru Eclipse. Când dezvoltați, de exemplu, pentru sistemul de operare Android, este dificil să găsiți un IDE mai bun - pentru Eclipse există un SDK Android foarte puternic disponibil gratuit, pe care au fost dezvoltate mai mult de o generație de aplicații Android.

Pentru a descărca acest IDE, trebuie să urmați linkul http://www.eclipse.org/downloads/ și să selectați una dintre soluțiile propuse (Figura 2.5).

Figura 2.5 - Soluții Eclipse oferite

În total, sunt oferite aproximativ douăsprezece soluții pentru dezvoltatorii din diverse direcții. După cum puteți vedea, alegerea este destul de mare. Pentru sarcina mea, am ales pachetul standard Eclipse Standard. Apoi, selectați sistemul de operare dorit cu arhitectură (Figura 2.6) și începe descărcarea gratuită a acestui mediu.

Figura 2.6 - Selectarea sistemului de operare și a arhitecturii dorite

De-a lungul istoriei de peste zece ani a limbajului Java, nici o singură generație de medii de dezvoltare integrate (IDE) nu s-a schimbat. Evoluția instrumentelor IDE se datorează multor factori, a căror combinație se numește tehnologie informațională, care include componente software și hardware, precum și dezvoltarea limbajului în sine, care are loc nu numai în profunzime, optimizarea unor capacități, care este demonstrat clar de sosirea noilor biblioteci Swing în locul celor învechite AWT, dar și „în lățime”, aceasta este apariția tehnologiilor JSP, o mai mare integrare cu DBMS și servere de aplicații, suport pentru tehnologii Spring, Hibernate etc.

Și dacă primele instrumente IDE, în înțelegerea de astăzi, au fost un editor de text primitiv, care a servit doar pentru tastarea codurilor sursă, iar toate celelalte lucrări, de la compilare până la asamblarea finală a proiectului, trebuiau făcute manual, atunci cele moderne de astăzi sunt de fapt dispozitive multifuncționale care preiau. Include nu numai funcțiile obișnuite, ci și o serie de altele suplimentare, pornind de la crearea automată a Javadoc, refactoring, profiling, design UML, un client pentru conectarea la orice DBMS și terminând cu astfel de cele exotice care nu au legătură cu procesul de dezvoltare, cum ar fi verificarea ortografică.

Desigur, prețul de plătit pentru toate aceste „conveniențe” este cerințele crescute pentru resursele computerului. Există opinia că 80% dintre utilizatori folosesc doar 20% din capabilitățile software-ului existent; acest lucru poate fi proiectat și pe instrumentele IDE. Deoarece toate avantajele lor pot fi apreciate doar de un programator care a dezvoltat tehnologia adecvată de mulți ani. Și este dificil pentru programatorii începători să evalueze în mod adecvat acest sau acel instrument, prin urmare, de regulă, selecția sa independentă are loc în funcție de două criterii - claritatea intuitivă a interfeței și diverse caracteristici de timp și resurse, cum ar fi încărcarea, compilarea, lansarea. , și cantitatea de RAM ocupată. La urma urmei, la început aveți nevoie doar de un compilator, un depanator și mașina Java în sine.

Prin urmare, scopul acestui articol este de a trece în revistă piața existentă a instrumentelor IDE pentru dezvoltarea de programe folosind limbajul Java, identificând punctele forte și punctele slabe ale fiecăruia în funcție de diverse criterii, pe baza unei analize a rezultatelor proiectului: „Testarea și analiza mediilor de dezvoltare software pentru Java” („Testări și analize IDE pentru Java” (TAIDEJ)), care a fost organizată de noi, grupul de coordonare a site-ului și a avut loc în perioada 1 ianuarie 2006 – 1 septembrie 2006 pe site-ul www. site-ul.

Proiectul a fost împărțit în mai multe etape. În prima etapă, am elaborat un chestionar, Tabelul 2, și am compilat o listă de Java-IDE, Tabelul 3, care au fost dezvoltate de la apariția limbajului Java2 până în prezent, incluzând link-uri către ambele instrumente IDE pe care toată lumea le cunoaște și la cele destul de exotice. Această listă este actualizată periodic datorită participanților noștri. Aici dorim să ne exprimăm profunda recunoștință tuturor participanților la proiect, precum și tuturor celor care ne-au discutat și ne-au criticat constructiv pe forumuri, tabelul 1

Tabelul 1. Java - forumuri
Java - Forum pe Sources.Ru
RSDNhttp://www.rsdn.ru/?forum
Forumuri - Juga.Ruhttp://forum.juga.ru/
forumuri de arhivă IThttp://www.javable.com/forum
Forumuri Java - Programare Javahttp://forum.java.sun.com/
Forumuri java.nethttp://forums.java.net
Javalobby.orghttp://www.javalobby.org/java/forums
JavaWorldhttp://www.javaworld.com/javaforums
Forum computer Ru.Boardhttp://forum.ru-board.com
Programare - iXBT Hardware BBShttp://forum.ixbt.com
Forumul JUG KPIhttp://jug.in.ntu-kpi.kiev.ua/forum
CITForumhttp://forum.citforum.ru
Realcoding.NEThttp://forums.realcoding.net

La elaborarea chestionarului, am încercat să aflăm următoarele:

  1. tendința de schimbare a preferințelor programatorilor, deoarece odată instrumentele de succes fie au încetat cu totul să se dezvolte, fie dintr-un motiv oarecare companiile care le-au dezvoltat au dispărut și, prin urmare, mulți au fost nevoiți să treacă de la un instrument IDE la altul;
  2. cum a ales programatorul acesta sau acel instrument;
  3. modul în care programatorul evaluează instrumentele cu care a lucrat pe o scară de cinci puncte;
Tabelul 2. Chestionar

Alte sarcini au constat în procesarea și analizarea informațiilor statistice obținute și evaluarea „intensității resurselor” a instrumentelor populare. În plus, au fost pregătite recenzii ale unor instrumente și postate pe site-ul web al proiectului.

Tabelul 3. Lista IDE-urilor pentru Java.
NumeProducătorPagina web a produselor
1 Applet Designer ProfessionalTVObjectshttp://www.tvobjects.com/
2 AplicabilitateSoftware de progreshttp://apptivity.progress.com/
3 Awesume Jawa 1.0Awesume Interactive Designhttp://www.awesume.se/en/index.htm
4 Bluetteinstrument gratuit RAD Javahttp://blue.donga.ac.kr/bluette/
5 BongoMarimbahttp://www.marimba.com/
6 Clarion Internet EditionTopSpeed ​​​​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 pentru WindowsDevine moalehttp://www.getsoft.com/ed_java.html
10 ElixirElixir Technology Pte Ltdhttp://www.elixir.com.sg/
11 Constructor gratuitColectiv FreeBuilderhttp://www.freebuilder.com/
12 ÎNŢELEGEProiectul GRASPhttp://www.eng.auburn.edu/grasp/
13 PolizorSchimb de paradigmehttp://www.tpex.com/features.htm
14 HyperwireKinetixhttp://www.ktx.com/
15 Animator Jambaintercalarehttp://www.jamba.com/
16 Jambaintercalarehttp://www.jamba.com/
17 JavaManHartWarehttp://homepage.dave-world.net/~hartware/
18 Java StudioMicrosisteme solarehttp://www.sun.com/
19 SuliţăPas înaintehttp://www.ozemail.com.au/~stepsoft/
20 JaWizSisteme InfinityEdgehttp://www.infinityedge.com/
21 JBuilderInprisehttp://www.inprise.com/jbuilder/
22 JDesignerProAnti-glonthttp://www.bulletproof.com/
23 JDE pentru EmacsPaul Kinnucanhttp://sunsite.auc.dk/jde/
24 JADI SujalShahhttp://dan.hcf.jhu.edu/sujal/winjadi/
25 JIGS Cubhttp://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 LavăDan Pagehttp://www.hnet.demon.co.uk/products/lava/index.html
31 LemurDesign insulăhttp://www.island-design.co.uk/
32 NetBeansNetBeans, Inc.http://www.netbeans.com/
33 OEW 1.0Software inovatorhttp://www.isg.de/OEW/Java/
34 PARTS pentru JavaObjectSharehttp://www.objectshare.com/p4j/p4j2info.htm
35 PutereJSybasehttp://www.sybase.com/products/powerj/
36 CuptorInteligența naturalăhttp://www.roaster.com/roaster/
37 SNiFF+Software-ul TakeFivehttp://www.takefive.com/sniff/
38 SpiriteVisNet Limitedhttp://www.evis.net/
39 SuperCedeSuperCede, Inc.http://www.supercede.com/
40 VisajTehnologia software imperialăhttp://www.ist.co.uk/
41 Vision JadeSoftware pentru viziunehttp://www.vision-soft.com/
42 VisualAge pentru JavaIBMhttp://www.software.ibm.com/ad/vajava/
43 Visual CafeSymantechttp://cafe.symantec.com/
44 Visual J++Microsofthttp://www.microsoft.com/visualj/
45 Platforma de aplicații webSilverStreamhttp://www.silverstream.com/products/main/main_f.htm
46 Java WebIDEChami.comhttp://www.chami.com/webide/
47 Nimicisoftwarebuero m&bhttp://www.softwarebuero.de/wipeout-eng.html
48 IntelliJ IDEAIntelliJ IDEAhttp://www.jetbrains.com/idea/
49 Eclipsăeclipse.orghttp://www.eclipse.org
50 JDeveloperOracolhttp://www.oracle.com/technology/products/jdev/index.html
51 JCreatorSoftware Xinoxhttp://www.jcreator.com/
52 jEditjEdithttp://www.jedit.org/
53 X-DevelopSoftware-ul Omnicorehttp://www.omnicore.com/
54 Gel IDEGExperts Inchttp://www.gexperts.com/
55 Dezvoltator de aplicații IBM Web Sphere StudioSoftware IBMhttp://www-306.ibm.com/software/awdtools/studioappdev/
56 extindeNOVELLhttp://www.novell.com/products/extend/

În primul rând, metoda de distribuție, respectiv, IDE-urile pot fi împărțite în plătite (JBuilder, Visual Cafe...) și gratuite (NetBeans, Eclipse, Gel), pe care oricine le poate descărca de pe site-ul producătorului.

Am decis să evidențiem cel de-al doilea criteriu de clasificare nu pe baza unor capacități specifice, deoarece, pe această bază, probabil că ar fi posibil să se împartă IDE-ul la infinit, ci din totalitatea capabilităților instrumentului în sine și cerințele sale. asupra resurselor. Desigur, în acest caz, prezența unui constructor de interfețe vizuale este pe primul loc, care, la rândul său, propune anumite cerințe pentru resurse.

Pe baza acestui criteriu, putem distinge instrumentele care nu au un instrument vizual pentru dezvoltarea GUI (simplu), de exemplu Gel, JCreator, și cele care au (complex) JBuilder, Idea.

În consecință, primii ocupă mai puțin de 30 MB de RAM în timpul funcționării, iar cei din urmă mai mult de 100 MB. În ceea ce privește instrumentele de dezvoltare vizuală în sine, din experiența mea și în opinia multor colegi programatori cu mulți ani de experiență, utilizarea lor nu este întotdeauna justificată pentru programatorii începători, deși par să faciliteze dezvoltarea pe de o parte, ci pe de altă parte. pe de altă parte, fac dificilă înțelegerea conceptuală a unor astfel de lucruri de bază Bibliotecile Swing cum ar fi managerii de plasare, procesarea evenimentelor etc.

De asemenea, în proiect a fost implicat un grup de studenți DSTU (aș dori în special să menționez Egorenkov V. și Lagutin D.), care tocmai începuseră să studieze OOP, ale căror sarcini erau să se familiarizeze cu IDE-ul pentru Java, să le instaleze , remediați parametrii la încărcare, emiteți comentariile și în cele din urmă propria alegere a mijloacelor pentru munca inițială. Rezultatele testelor sunt rezumate în tabelul 4.

Tabelul 4. Rezultatele testării instrumentelor IDE
OpțiuniGeIJСreator 3.5JBuilder XIdeea 5NetBeans 4.1
Timp de instalare1 sec1-1,5 sec58 sec22 sec50 sec
dimensiunea pachetului instalat10,3 MB6,49 MB332 MB157 MB118 MB
Mărimea distribuției4,21 MB3,6 MB178 MB51,6 MB46,4 MB
Lansa5s1-1,5 sec9 sec6 sec6 sec
Volumul ocupat în RAM17828 KB12960 KB74128 KB65604 KB61409 Kb
Amprenta memoriei virtuale9020 KB14960 KB78588 KB76416 KB70406 Kb

* Configurația de bază a fost bazată pe o mașină bazată pe: CPU Athlon64 3000+; RAM - 1024 MB DDR-SDRAM (pc3200)

După care a avut loc un seminar în cadrul căruia s-au rezumat rezultatele lucrării, în urma căruia s-a stabilit că în stadiul inițial al lucrării, când este în desfășurare procesul de studiere a trăsăturilor sintactice ale limbii, există nu este nevoie să utilizați capabilitățile pe care le oferă IDE-urile complexe, deși, desigur, mulți sunt interesați de modalități de a dezvolta rapid o interfață, deoarece această opțiune este cea mai intuitivă și vă permite să obțineți imediat rezultate. Dar, după cum știți, dezvoltarea interfeței este o parte integrantă, dar nu cea mai importantă a aplicației. Iar cerințele crescute de resurse de la IDE-urile complexe, mai ales ținând cont de faptul că nu toți elevii au computere de acasă cu chiar și 512 MB de RAM, oferă avantaje incontestabile IDE-urilor simple, așa că Gel a fost recunoscut drept lider printre studenți, dintre toate IDE-urile disponibile. .

Nume% din voturiNota
1 JBuilder21.47 3.0
2 Eclipsă16.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 pentru Java3.69 2.8
9 Java Studio3.41 2.0

Pe baza acestui lucru, să analizăm din ce poziții abordează un programator alegerea independentă a unui instrument.

  1. Interfață. Aceasta este prima componentă pe care utilizatorul o întâlnește după instalare și care formează prima impresie a programului și pe baza căreia se poate face alegerea finală. Aici, nu este evaluat doar designul general, deși, desigur, afectează și într-un anumit fel, ci și confortul locației și configurației unor componente precum fereastra codului sursă, fereastra proiectului etc.
  2. Înființat. În consecință, după instalarea și lansarea mediului de dezvoltare pentru prima dată, acesta este configurat, adică sunt indicate căile unde se află SDK-ul instalat, DOCS, J2EE. De regulă, nu se observă diferențe semnificative în această componentă. În plus, instrumentele moderne, de regulă, determină independent componentele instalate.
  3. Editor de cod. Configurarea afișajului codurilor sursă, de regulă, nu este, de asemenea, foarte diversă; în orice instrument puteți personaliza cu ușurință fontul și dimensiunea acestuia, precum și culoarea. Un avantaj important este prezența unui asistent atunci când, atunci când mouse-ul „se blochează” pe orice variabilă sau metodă, apare un ToolTip (fereastra contextuală) destul de detaliat în care toți parametrii obiectului sunt extinși și descriși. Există, de asemenea, o mulțime de lucruri mici drăguțe, afișarea numerotării liniilor, afișarea structurii clasei, afișarea simbolurilor de paragraf și verificarea ortografică.

Analizând, pe baza acestor caracteristici, toate instrumentele IDE care există astăzi, puteți observa că nu există diferențe semnificative între ele în afară de designul interfeței și evident că conceptul de comoditate este subiectiv.

Analiza rezultatelor sondajului, tabelele 5,6. După cum este descris mai sus, în sondajul nostru, fondurile au fost împărțite în două grupuri, cele care au fost utilizate anterior și cele care sunt utilizate în prezent. Și dacă printre instrumentele care au fost folosite în trecut există diversitate, am selectat instrumente care au primit mai mult de 3% din voturi din numărul total de participanți la sondaj, atunci printre cele care sunt utilizate în prezent nu există o astfel de diversitate, și am fost forțați să reducem procentul de voturi și, chiar și în ciuda acestui lucru, nu am primit prea multă varietate.

După cum puteți vedea, un participant constant la selecții este instrumentul IDE „simplu” JCreator, acest lucru se explică aparent prin faptul că este destul de ușor de învățat și nu necesită resurse, prin urmare este popular printre programatorii începători. JBuilder și-a pierdut poziția, acest lucru se datorează, evident, faptului că instrumente gratuite precum Eclipse și NetBeans au început să-l depășească în capacitățile lor. Eclipse ar trebui să fie recunoscut drept lider incontestabil, deoarece nu și-a pierdut poziția destul de înaltă, ci chiar a crescut. Popularitatea JDeveloper ar trebui să fie asociată cu concentrarea sa pe Oracle DBMS. Popularitatea IntelliJ IDEA se datorează faptului că, la un moment dat, dezvoltatorii au fost capabili să prezinte un produs cu capabilități puternice, iar de câțiva ani au avut destul succes în menținerea mărcii sale la un nivel înalt, ceea ce este confirmat și de evaluările ridicate ale utilizatorilor.

În general, trebuie remarcat faptul că rezultatele ratingului au fost previzibile, întrebarea se referea doar la distribuția locurilor, iar o surpriză pentru autori a fost că NetBeans a primit un procent relativ mic de voturi, mai ales având în vedere capacitățile celei mai recente versiuni. .

O analiză a motivelor alegerii unui instrument IDE a arătat că alegerea instrumentelor de prima generație a fost de obicei făcută întâmplător sau pe baza rezultatelor unei analize independente, ceea ce este firesc, deoarece la acel moment procesul de formare atât a limbajului în sine. iar instrumentele de dezvoltare au avut loc. Produsele de a doua generație au fost alese în principal ca urmare a unei analize independente sau a sfatului unui prieten. Se pare că acest lucru se datorează faptului că până atunci s-au format atât un cerc de programatori Java profesioniști, cât și o piață pentru dezvoltatorii principali de instrumente IDE.

Tabelul 7. Motive pentru alegerea unui IDE

Astfel, astăzi liderii dintre IDE-urile de dezvoltare Java sunt IntelliJ IDEA, Eclipse și NetBeans. În general, toate au aproximativ aceeași funcționalitate și este destul de dificil de evaluat care este cel mai bun. Prin urmare, atunci când alegeți un instrument, trebuie în mod evident să vă concentrați pe IDE-ul pe care este dezvoltat proiectul dacă programatorul se alătură unei echipe de dezvoltare sau să alegeți cel mai accesibil dacă intenționați să dezvoltați un proiect independent.

Lista surselor utilizate

  1. Zhmailov B.B. Avantajele și dezavantajele dezvoltării de programe Java fără utilizarea instrumentelor IDE. Revista „Buletinul Tehnologiilor Informatice și Informatice” Nr. 6, 2006.
  2. , Sergey Berdachuk,"Oracle JDeveloper 10g - Java Application Development Environment"
  3. , Alexey Litvinyuk, „Introducere în mediul de dezvoltare integrat Eclipse”
  4. , Alexander Demyanenko, „Scurtă prezentare a IDE - Jbuilder”
  5. , Alexander Demyanenko, „Scurtă prezentare a IDE - Idee”
  6. , Boris Zhmailov, „Scurtă prezentare a IDE - Gel”
  7. , Prezentare generală a instrumentelor de refactorizare automată în IDE-ul Java

Cele mai bune articole pe această temă