JavaRush /Blog Java /Random-MS /Eclipse, NetBeans atau IntelliJ IDEA? Memilih IDE untuk p...
Bender
Tahap
Маунтин-Вью

Eclipse, NetBeans atau IntelliJ IDEA? Memilih IDE untuk pembangunan Java

Diterbitkan dalam kumpulan
Eclipse, NetBeans atau IntelliJ IDEA?  Memilih IDE untuk pembangunan Java - 1Kami membentangkan kepada perhatian anda adaptasi artikel oleh Martin Heller, pengaturcara dan editor sumber JavaWorld. Anda mungkin pernah mendengar tentang tiga IDE paling popular untuk pembangunan Java. 90 peratus pengaturcara industri menggunakan sama ada Eclipse, NetBeans atau IntelliJ IDEA, dan setiap IDE ini mempunyai kelebihan dan kekurangannya sendiri. Dalam artikel ini kami akan cuba menerangkannya supaya anda faham yang mana satu yang sesuai untuk anda. Walaupun, sudah tentu, adalah lebih baik untuk mencuba ketiga-tiga di tempat kerja dan mengetahui apa yang paling sesuai untuk anda. Tiada ulasan boleh menggantikan ini.

Apakah persekitaran pembangunan?

Jawapan yang sangat ringkas ialah persekitaran pembangunan ialah program atau berbilang program yang anda gunakan untuk mencipta program. Proses ini sebenarnya termasuk menulis kod, menyahpepijatnya, melancarkannya dan menyepadukannya dengan sistem kawalan versi. Jika pembangun terdahulu sering menggunakan editor teks ringkas (kadangkala walaupun tanpa penyerlahan sintaks), seperti Notepad dan baris arahan, kini mereka paling kerap menggunakan pemproses semua-dalam-satu, persekitaran pembangunan bersepadu atau IDE.

Apakah IDE?

Persekitaran pembangunan bersepadu atau dalam bahasa Inggeris Persekitaran pembangunan bersepadu - IDE - ialah program yang mengandungi alatan untuk pembangunan perisian. Biasanya, persekitaran pembangunan moden termasuk:
  • Penyunting teks dengan penonjolan kod;
  • penyusun atau penterjemah;
  • Pelayar Kelas, Pemeriksa Objek dan Rajah Hierarki Kelas;
  • alat automasi pemasangan;
  • penyahpepijat;
  • alat untuk penyepaduan dengan sistem kawalan versi (Git);
  • alat untuk memudahkan reka bentuk antara muka pengguna grafik.
Saya pernah bekerja dengan IDE ini sebelum ini, tetapi untuk kajian ini saya memasang IntelliJ IDEA Ultimate 2016.2, Eclipse Neon Java EE dan NetBeans 8.1 Java EE pada komputer riba MacBook Pro. Saya menguji IDE pada beberapa projek Java sumber terbuka.

Apa yang Diharapkan daripada IDE

IDE moden untuk "pembangun Java yang sihat" harus menyokong Java 8, Scala, Groovy, serta bahasa mesin maya Java lain yang kerap digunakannya. Sokongan untuk pelayan aplikasi utama dan rangka kerja web yang paling popular, termasuk Spring MVC, JSF, Struts, GWT, Play, Wicket, Grails dan Vaadin, juga berguna. IDE mesti serasi dengan mana-mana binaan sistem kawalan versi, seperti Ant, Maven atau Gradle, bersama-sama dengan Git, SVN, CVS, Mercurial atau Bazaar. Selain itu, untuk persekitaran pembangunan adalah penting untuk dapat bekerja dengan pangkalan data dan lapisan pelanggan tindanan anda, untuk mempunyai sokongan untuk JavaScript terbina dalam, TypeScript, HTML, SQL, Halaman JavaServer, Hibernate, serta Kegigihan Java. API. Akhir sekali, adalah logik untuk berharap bahawa IDE akan membolehkan anda mengedit, mencipta, nyahpepijat dan menguji sistem tanpa tekanan yang tidak perlu. Sebaik-baiknya, persekitaran pembangunan menyokong bukan sahaja penyiapan kod pintar, tetapi juga pemfaktoran semula pintar dan metrik kod. Dalam kebanyakan kes, ia berguna untuk menyokong rangka kerja dan stub ujian. Jika pasukan anda menggunakan sistem tiket dan CI/CD, anda memerlukan IDE untuk dapat menyambung kepada mereka. Dan tentukan sama ada anda memerlukan penggunaan dan penyahpepijatan dalam bekas dan awan. Kami telah menyenaraikan hanya jangkaan asas (mungkin anda mempunyai sesuatu untuk ditambah), dan sekarang mari kita lihat dengan lebih dekat pesaing kami.

IDEA IntelliJ

Eclipse, NetBeans atau IntelliJ IDEA?  Memilih IDE untuk pembangunan Java - 2Dari segi ciri dan harga, IntelliJ IDEA terdapat dalam dua versi: edisi Komuniti percuma dan edisi Ultimate berbayar dengan fungsi lanjutan. Edisi komuniti direka untuk pembangunan JVM dan Android. Versi percuma menyokong Java, Kotlin, Groovy dan Scala; Android; Maven, Gradle dan SBT; berfungsi dengan sistem kawalan versi Git, SVN, Mercurial dan CVS. Edisi muktamad sesuai untuk pembangunan web dan perusahaan. Versi IDE ini bukan sahaja berfungsi dengan Git, SVN, Mercurial dan CVS, tetapi juga dengan Perforce, ClearCase dan TFS; di dalamnya anda boleh menulis dalam JavaScript dan TypeScript; Sememangnya, terdapat sokongan untuk Java EE, Spring, GWT, Vaadin, Play, Grails dan beberapa rangka kerja lain. Dan, sudah tentu, kami tidak boleh melakukannya tanpa SQL dan alat untuk bekerja dengan pangkalan data. Idea yang membimbing pembangun IDE ini apabila membentuk dasar penetapan harga ialah versi komersilnya (Ultimate) akan mengambil tempatnya pada komputer profesional, yang menyebabkan produktiviti mereka akan meningkat. Jika pengaturcara Java memperoleh $50 ribu setiap tahun (atau lebih), pulangan pelaburan yang dibelanjakan untuk IDE IntelliJ IDEA berbayar ($500 untuk langganan tahunan) akan berlaku dengan sangat cepat disebabkan oleh pecutan sedikit pun kerjanya. Pada tahun-tahun berikutnya, harga untuk perniagaan jatuh, untuk pemula dan pekerja bebas harganya jauh lebih rendah, dan untuk pelajar, guru, juara Java dan pembangun sumber terbuka ia adalah percuma sepenuhnya. IntelliJ IDEA mengagumkan dengan pemahaman kod yang mendalam, ergonomik pintar, ciri pembangunan terbina dalam dan sokongan berbilang bahasa. Eclipse, NetBeans atau IntelliJ IDEA?  Memilih IDE untuk pembangunan Java - 3
Rajah 1. IntelliJ IDEA menunjukkan bilangan amaran dan tekaan berdasarkan analisis statistik kod Java. Anda boleh mengkaji andaian dengan lebih terperinci dengan mengklik padanya, seperti yang ditunjukkan dalam gambar; dalam banyak kes anda akan menerima senarai dengan pilihan dan pilihan pembetulan.

Pemahaman yang mendalam tentang kod

Penonjolan sintaks dan penyiapan kod mudah adalah perkara biasa untuk mana-mana editor Java moden. IDEA pergi lebih jauh dengan menawarkan "pelengkapan automatik pintar." Istilah ini bermaksud bahawa persekitaran pembangunan menunjukkan senarai simbol yang paling berkaitan yang boleh digunakan dalam konteks tertentu. Senarai simbol bergantung bukan sahaja pada konteks seperti itu, yang "diterima secara umum", tetapi pada gaya pengaturcaraan pembangun, pada kekerapan dia menggunakan pengendali tertentu. "Penyelesaian Rantaian" malah menunjukkan senarai simbol berkenaan yang dibenarkan melalui kaedah atau pemeroleh dalam konteks semasa. Selain itu, untuk ahli statik atau pemalar, IDEA secara automatik menambah sebarang pernyataan import yang diperlukan. Dalam semua kes autolengkap, IDEA cuba meneka jenis simbol pada masa jalan, memperhalusi pemilihannya dan juga menggunakan jenis hantaran jika perlu. Kod Java selalunya menyertakan coretan daripada bahasa lain sebagai rentetan. IDEA boleh menyuntik kod SQL, XPath, HTML, CSS atau JavaScript ke dalam literal rentetan Java. Dalam pengertian ini, IDE boleh memfaktorkan semula kod dalam pelbagai bahasa. Contohnya, jika anda menamakan semula kelas dalam pemetaan JPA, IDEA akan mengemas kini entiti JPA dan kelas ekspresi yang sepadan. Apabila memfaktorkan semula sekeping kod, pembangun mempunyai satu keinginan (agak semula jadi): agar semua pendua kod ini turut difaktorkan semula. IDEA Ultimate mencari pendua dan serpihan yang serupa dan juga menggunakan pemfaktoran semula padanya. IntelliJ IDEA menghuraikan kod apabila dimuatkan dan terus semasa anda memasukkannya. Ia menunjukkan masalah yang disyaki (seperti dalam imej kami di atas) dan secara pilihan menawarkan senarai kemungkinan pembetulan pantas kepada masalah yang ditemui.

Ergonomik

Eclipse, NetBeans atau IntelliJ IDEA?  Memilih IDE untuk pembangunan Java - 4IntelliJ IDEA direka bentuk supaya tidak menjatuhkan pembangun daripada keadaan produktiviti yang mengalir apabila dia sudah berada di dalamnya. Tetingkap Projek, ditunjukkan dalam gambar pertama di sebelah kiri, hilang dengan klik tetikus mudah supaya pengaturcara boleh memfokus pada tetingkap editor kod. Untuk semua tindakan yang diperlukan semasa menulis kod, terdapat kombinasi kekunci untuk memanggilnya dengan cepat, termasuk mentakrifkan simbol dalam tetingkap timbul. Pada mulanya, semua kombinasi ini sukar untuk diingat, tetapi secara beransur-ansur anda terbiasa dengannya dan hanya menggunakannya. Walau bagaimanapun, walaupun pengaturcara tidak menggunakan pintasan papan kekunci, seperti yang ditunjukkan oleh amalan, dia membiasakan diri bekerja dalam IDEA dengan mudah dan cepat. Saya ingin mengambil perhatian terutamanya penyahpepijat IDEA: nilai pembolehubah dipaparkan terus dalam tetingkap editor, bersebelahan dengan kod sumber yang sepadan. Apabila keadaan pembolehubah berubah, warna serlahan juga berubah.

Alat terbina dalam

IntelliJ IDEA menyediakan antara muka bersatu kepada kebanyakan sistem kawalan versi, termasuk Git, SVN, Mercurial, CVS, Perforce dan TFS. Anda boleh menguruskan perubahan secara terus dalam IDE, yang sangat mudah. Apabila saya menguji IDEA, saya mempunyai keinginan untuk mempunyai perubahan terkini dalam kod sumber dipaparkan dalam tetingkap editor sebagai anotasi (seperti yang berlaku, sebagai contoh, dalam Visual Studio). Ternyata, IDEA mempunyai pemalam khas untuk ini. IDEA juga disertakan dengan alat binaan, masa jalan ujian, alat liputan dan tetingkap terminal terbina dalam. IntelliJ tidak mempunyai profiler sendiri, tetapi profil pihak ketiga boleh disambungkan kepadanya menggunakan pemalam. Contohnya, YourKit, yang dicipta oleh bekas pembangun utama JetBrains, atau VisualVM (yang merupakan versi pembungkus semula NetBeans profiler). Penyahpepijatan dalam Java boleh menjadi menyakitkan apabila pelbagai perkara misteri berlaku pada kelas yang anda tidak mempunyai sumbernya. IDEA termasuk decompiler untuk kes sedemikian. Pengaturcaraan sebelah pelayan di Java memerlukan interaksi yang kerap dengan pangkalan data, jadi pengaturcara IDEA Ultimate akan menghargai kemudahan alatan untuk bekerja dengan SQL dan pangkalan data. Tetapi jika keupayaan mereka tidak mencukupi untuk seseorang, anda boleh membeli versi IDEA Ultimate dengan SQL IDE (DataGrip) terbina dalam. Walau bagaimanapun, ia akan lebih mahal sedikit daripada langganan IDEA Ultimate biasa. IntelliJ IDEA menyokong semua pelayan aplikasi JVM utama, dan membolehkan anda menggunakan dan nyahpepijat pada pelayan ini, yang menghapuskan kesukaran yang biasa kepada semua pengaturcara Java Enterprise. IDEA juga menyokong Docker (melalui pemalam yang menambahkan tetingkap alat Docker khas pada persekitaran pembangunan. Dengan cara ini, IDEA mempunyai banyak pemalam.  

Poliglot sebenar

IDEA telah mengembangkan sokongan kod untuk Spring, Java EE, Grails, Play, Android, GWT, Vaadin, Thymeleaf, Android, React, AngularJS dan rangka kerja lain. Anda mungkin perasan bahawa tidak semuanya adalah khusus Java. IDEA "memahami" bahasa lain terus dari kotak - Groovy, Kotlin, Scala, JavaScript, TypeScript dan SQL. Jika anda tidak melihat bahasa yang anda cari dalam senarai ini, pada masa ini terdapat 19 pemalam bahasa IntelliJ, khususnya menyokong R, Elm dan D.

IDE Eclipse

Eclipse, NetBeans atau IntelliJ IDEA?  Memilih IDE untuk pembangunan Java - 5 Kira-kira 10 tahun yang lalu, apabila ditanya tentang IDE terbaik, pembangun Java menjawab dengan yakin: Eclipse. Selama bertahun-tahun, persekitaran pembangunan ini dengan yakin memegang tapak tangan di kalangan IDE Java. Persekitaran ini adalah percuma sepenuhnya, sumber terbuka, ditulis terutamanya dalam Java. Walau bagaimanapun, seni bina modularnya membolehkan Eclipse digunakan dengan bahasa lain. Projek Eclipse, yang dimulakan oleh IBM, muncul pada tahun 2001. Mereka mahu menggantikan keluarga persekitaran pembangunan IBM Visual Age berdasarkan Smalltalk. Nah, matlamat utama, seperti namanya, adalah untuk mengatasi Microsoft Visual Studio (gerhana dalam bahasa Inggeris bermaksud eclipse). Mudah alih Java membantu Eclipse menjadi persekitaran merentas platform: IDE ini berjalan pada Linux, Mac OS X, Solaris dan Windows. Untuk lebih baik atau lebih teruk, Java Standard Widget Toolkit (SWT) sekurang-kurangnya sebahagiannya bertanggungjawab untuk rupa dan rasa Eclipse. Eclipse berhutang prestasinya (atau, seperti yang dikatakan oleh beberapa orang ramai, kekurangannya) kepada JVM. Eclipse berfungsi agak perlahan, kerana ia berakar pada perkakasan yang agak lama dan versi kuno JVM. Malah pada hari ini ia kelihatan perlahan, terutamanya jika anda melampirkan banyak pemalam padanya. Beberapa overhed sumber Eclipse boleh dikaitkan dengan pengkompil tambahan terbina dalam, yang berjalan apabila fail dimuatkan atau kod dikemas kini. Ini adalah perkara yang berguna; ia menangkap ralat semasa memasukkan teks. Tanpa mengira binaan, projek Eclipse mengekalkan model kandungan yang mengandungi maklumat tentang hierarki jenis, rujukan dan pengisytiharan unsur Java. Versi semasa Eclipse dipanggil Neon (4.6.0). Saya memasang Eclipse Java EE IDE untuk pembangun web (ini bukan satu-satunya pilihan, anda boleh memilih sesuatu yang lain). Ia mengandungi SDK Eclipse yang minimum dan pemalam ditambah atas permintaan. Ngomong-ngomong, bekerja dengan pemalam dalam IDE ini bukan untuk mereka yang lemah hati. Pemalam pihak ketiga sering bercanggah antara satu sama lain, walaupun spesifikasi rasmi mereka tidak mengatakan apa-apa tentang perkara ini. Eclipse, NetBeans atau IntelliJ IDEA?  Memilih IDE untuk pembangunan Java - 6
Rajah 2. Dari kiri ke kanan, terdapat empat bar alat Eclipse: Package Explorer, Java Editor, Java Class Structure dan Task List. Projek yang dimuatkan ke dalam Eclipse dalam rajah ini ialah rangka kerja ujian JUnit. Panel boleh ditukar dengan mudah.

Sokongan pemalam

Ekosistem pemalam Eclipse ialah kekuatan IDE dan salah satu masalah utamanya. Ia adalah kerana ketidakserasian pemalam yang kadangkala keseluruhan perhimpunan ranap, dan pengaturcara perlu mula bekerja semula. Pada masa ini terdapat lebih 1,700 pemalam yang ditulis untuk Eclipse, rasmi dan tidak rasmi, yang mungkin berfungsi dengan baik atau tidak. Pemalam Eclipse menyokong lebih daripada 100 bahasa pengaturcaraan dan hampir 200 rangka kerja pembangunan aplikasi. Kebanyakan pelayan Java juga disokong: jika anda menetapkan sambungan pelayan baharu daripada Eclipse, anda akan dibawa ke senarai folder vendor di mana anda akan menemui kira-kira 30 pelayan aplikasi. Akan ada sebanyak sembilan varian Apache Tomcat sahaja. Vendor komersial cenderung untuk menggabungkan penyelesaian mereka bersama-sama: contohnya, terdapat hanya satu item Red Hat JBoss Middleware, dan di dalamnya anda akan menemui alatan pelayan WildFly dan EAP, serta JBoss AS.

Mengedit, memfaktorkan semula dan menyahpepijat

Pengalaman pertama anda dengan Eclipse boleh mengelirukan malah mengelirukan. Langkah pertama ialah menyediakan Eclipse dan membiasakan diri dengan seni bina konsep ruang kerja, pandangan dan pandangannya. Ini semua ditentukan oleh pemalam yang telah anda pasang. Untuk pembangunan Java sebelah pelayan, anda mungkin akan menggunakan paparan penyemakan imbas Java, Java EE dan Java, paparan Package Explorer, paparan penyahpepijatan, paparan penyegerakan arahan alat web, paparan pembangunan pangkalan data dan paparan penyahpepijatan pangkalan data . Dalam amalan, semuanya masuk akal apabila anda membuka tingkap yang anda perlukan. Eclipse hampir selalu menawarkan beberapa cara untuk menyelesaikan masalah tertentu. Sebagai contoh, anda boleh melihat kod menggunakan perspektif penyemakan imbas Java. Apa yang perlu dipilih adalah soal citarasa dan pilihan. Carian Java khas membolehkan anda mencari pengisytiharan, rujukan dan kejadian pakej, jenis, kaedah, medan Java. Anda juga boleh menggunakan akses carian pantas dan pratonton. Corak kod biasa boleh dihasilkan daripada templat kod. Java Refactoring dalam Eclipse menyokong 23 operasi, bermula daripada operasi penamaan semula biasa kepada transformasi yang kurang jelas (seperti dalam buku Martin Fowler). Eclipse menyokong penyahpepijatan tempatan dan jauh, dengan syarat anda menggunakan JVM yang menyokong penyahpepijatan jauh. Penyahpepijatan adalah agak standard: anda menentukan titik putus dan kemudian melihat pembolehubah dalam tab nyahpepijat. Sudah tentu, anda boleh melangkah melalui kod anda dan menilai ungkapan. Eclipse mempunyai pangkalan data dokumentasi yang luas dari pelbagai peringkat umur, nilai dan kegunaan. Malangnya, mencari gambar dalam arahan yang tidak sepadan dengan versi semasa, contohnya, dengan antara muka dan susun atur butang yang lapuk, adalah kejadian biasa untuk IDE ini. Malangnya, masalah kemas kini dokumentasi lewat adalah sangat biasa untuk mana-mana projek kod sumber.

NetBeans

Eclipse, NetBeans atau IntelliJ IDEA?  Memilih IDE untuk pembangunan Java - 7NetBeans bermula sebagai projek pelajar universiti di Prague pada tahun 1996. Pada tahun 1997, IDE menjadi produk komersial, dan pada tahun 1999 ia dibeli oleh Sun Microsystems (ibu bapa Java) dan pada tahun berikutnya membentangkan keluaran sumber terbuka. Versi semasa 8.1 berjalan pada mesin yang menjalankan Windows, Mac OS X, Linux dan Solaris. Nah, pakej mudah alih boleh dijalankan pada mana-mana sistem yang mana mesin Java wujud. Saya memuat turun berkas Java EE untuk diri saya sendiri, ia adalah salah satu daripada enam pakej muat turun yang mungkin. Himpunan ini menyokong JavaScript dan HTML, GlassFish dan Tomcat, tetapi tidak menyokong PHP, C/C++/Fortran, Groovy dan Grails: ia boleh didapati dalam pakej "Semua Termasuk" (atau ringkasnya "Semua"). Walau bagaimanapun, jika saya mahu, saya boleh memuat turun sokongan untuk bahasa di atas pada bila-bila masa dengan memilih pemalam yang sesuai (atau mana-mana yang lain). NetBeans mempunyai lebih sedikit daripada mereka daripada Eclipse, tetapi mereka biasanya tidak bercanggah antara satu sama lain. Musim luruh ini, Oracle (yang memperoleh NetBeans selepas memperoleh Sun Microsystems) memutuskan untuk memindahkan persekitaran pembangunan ini di bawah sayap Yayasan Perisian Apache, bersama-sama dengan semua hak, kod sumber, tanda dagangan, domain "netbeans.org" dan beberapa infrastruktur lain elemen. Oleh itu, masa depan projek itu masih kabur, walaupun sistem itu sebelum ini mempunyai keistimewaan tertentu yang berkaitan. Oleh itu, NetBeanslah yang pertama menerima sokongan untuk Java 8 hampir sejurus selepas keluaran platform yang dikemas kini, dan dipanggil "IDE rasmi untuk Java 8." Walau bagaimanapun, sebulan selepas dikeluarkan, kelebihan ini telah hilang: pada masa itu IDE lain turut menerima sokongan untuk Java 8. Walau bagaimanapun, saya ingin menegaskan bahawa sokongan Java 8 NetBeans benar-benar bagus, dan IDE bagus untuk menganyam helah Java 8 ke dalam kod "lama". Penyunting, penganalisis kod dan penukarnya akan membantu pengaturcara menaik taraf kod menggunakan binaan tipikal Java 8 - ungkapan lambda, pengendali berfungsi dan rujukan kaedah. Pemalam JavaScript dalam NetBeans 8 melakukan kerja yang hebat dalam menyokong Node.js dan alatan JavaScript terkini seperti Gulp dan Mocha, serta menyokong penterjemah JavaScript Nashorn. Eclipse, NetBeans atau IntelliJ IDEA?  Memilih IDE untuk pembangunan Java - 8
Rajah 3. Di sini NetBeans menjalankan projek berasaskan Maven yang sama yang IntelliJ IDEA dibuka dalam Rajah 1. Perhatikan fungsi lanjutan dalam menu konteks dan submenu pemfaktoran semula

Penyuntingan dan pemfaktoran semula

NetBeans Editor menyokong bahasa, mengesan ralat semasa anda menaip dan membantu anda dengan petua alat dan penyiapan kod pintar. Mengikut perasaan subjektif, IDE mengatasi tugas ini lebih cepat daripada Eclipse, tetapi agak perlahan daripada IntelliJ IDEA. Di samping itu, NetBeans mempunyai rangkaian penuh alat pemfaktoran semula (seperti yang ditunjukkan dalam Rajah 3) yang membolehkan pengaturcara menstruktur semula kod tanpa memecahkannya, melakukan analisis sumber dan juga menawarkan pelbagai petunjuk untuk pembetulan pantas atau sambungan kod. NetBeans termasuk alat reka bentuk Swing GUI, yang dahulunya dikenali sebagai "Projek Matisse". Pembangun sangat menghargai alat pemfaktoran semula automatik Inspect & Transform, yang diperkenalkan dalam NetBeans 7.1. Ia membolehkan anda menganalisis kod projek dan membuat cadangan penambahbaikan. Walaupun secara peribadi, saya lebih suka menguji semua kod saya sendiri dengan ujian unit dahulu, dan kemudian menjalankan alat yang boleh membuat perubahan radikal. Saya telah berulang kali mengalami pelbagai pembetulan automatik yang membawa kepada akibat yang tidak boleh diperbaiki.

Membina, Menyahpepijat dan Pemprofilan

NetBeans mempunyai sokongan asli yang sangat baik untuk Maven dan Ant, serta pemalam untuk Gradle. Saya sangat gembira apabila saya mendapati bahawa projek Maven telah dianggap sebagai "asli" oleh sistem. Ini bermakna ia hanya boleh dibuka dan bukannya diimport. NetBeans juga mengandungi paparan grafik yang menarik (dan berguna) untuk kebergantungan Maven. Penyahpepijat Java NetBeans tidak buruk, tetapi ia disertakan dengan beberapa kaveat. Penyahpepijat visual yang berasingan membolehkan pengaturcara mengambil tangkapan skrin antara muka grafik pengguna dan meneroka antara muka aplikasi yang dibuat menggunakan JavaFX dan Swing. Pemprofil NetBeans menjadikannya lebih jelas cara CPU dan memori digunakan dan mempunyai alat yang sangat baik untuk mencari kebocoran memori.

IDE Java mana yang lebih baik? Perbandingan trio gergasi

Saya telah menggunakan ketiga-tiga IDE, Eclipse, NetBeans dan IntelliJ IDEA, selama bertahun-tahun dalam susunan kronologi yang disenaraikan. Setiap kali saya beralih kepada IDE yang berbeza, saya merasakan produktiviti saya meningkat. Tetapi walaupun saya yakin bahawa IDEA adalah pilihan terakhir saya, kadangkala saya terpaksa kembali ke salah satu daripada dua IDE yang tinggal. Ini berlaku, sebagai contoh, pada masa Eclipse adalah satu-satunya alat yang menyokong pembangunan Android (hari ini terdapat Android Studio, IDE rasmi semasa untuk Android, ia berdasarkan IntelliJ IDEA). Sudah tentu, ketiga-tiga IDE mempunyai peminat dan pengkritik mereka. Saya mengenali ramai pembangun Java yang menyukai IntelliJ IDEA, serta peminat setia Visual Studio C++ dan C#. Lebih kerap daripada tidak, mereka ini gembira dengan fakta bahawa produktiviti mereka telah meningkat dan kos langganan tahunan dibayar balik selepas hanya beberapa minggu menggunakan versi berbayar IDEA. Walau bagaimanapun, pengguna NetBeans dan Eclipse juga sering melekat pada alatan mereka dan tertanya-tanya mengapa pengaturcara lain sanggup membayar wang untuk IDEA. Saya akan menasihati pembangun Java baharu supaya menjauhi Eclipse. Walaupun fakta bahawa ia masih merupakan IDE yang paling popular untuk Java, ia adalah sukar untuk pemula: ia adalah mudah untuk tersesat di alam liar Eclipse, kedua-dua semasa penggunaan sistem dan semasa kerja harian. Eclipse mempunyai ekosistem pemalam yang paling luas daripada semua IDE, dan juga paling berkemungkinan ranap kerana memasang set pemalam yang sama ini yang tidak serasi. Malangnya, semasa menggunakan Eclipse, saya berulang kali terpaksa mengeluarkan satu lagi pemasangan IDE ini yang rosak dan memasang berkas "bersih". NetBeans bagus untuk kebanyakan pembangun, ia mempunyai profiler yang hebat, dan kadangkala saya menggunakannya. Walau bagaimanapun, saya lebih suka membayar untuk IntelliJ IDEA Ultimate. Dan masa depan NetBeans masih tidak jelas. Untuk pembangun Java baharu yang belum mempunyai bajet untuk membeli alatan, saya syorkan menggunakan NetBeans atau IntelliJ IDEA Community Edition bergantung pada keperluan mereka. Yang pertama patut dipilih untuk mereka yang mengekod pelayan Java, tetapi hanya jika anda tidak termasuk dalam kategori mereka yang boleh mendapatkan IntelliJ IDEA Ultimate secara percuma atau dengan diskaun yang besar (pelajar atau pengaturcara yang sedang membangunkan sumber terbuka projek).

IDE Java "Ringan".

Hari ini, kebanyakan pembangun Java menggunakan IDEA, NetBeans atau Eclipse, tetapi kadangkala terdapat keperluan untuk persekitaran pembangunan yang lebih ringan atau editor kod seperti Teks Sublime, emacs atau vim yang menyokong pemalam Java. Saya telah menyenaraikan pilihan yang munasabah di bawah untuk mereka yang mencari sesuatu yang lebih ringan:
  • DrJava — небольшая бесплатная среда разработки. Её создали для студентов Университета Райса, и она стала довольно популярной: DrJava загрузor уже более 2 млн раз. DrJava призвана развивать разработку, основанную на тестировании (test-driven development). Среда содержит «умный» редактор codeа, панель взаимодействия для оценки codeа applications, отладчик уровня источника и инструменты модульного тестирования.
  • BlueJ бесплатная среда разработки Java, созданная специалистами Кентского университета для начинающих программистов. Эта среда поддерживается Oracle. BlueJ отличается гораздо более лаконичным и простым интерфейсом, чем профессиональные IDE, такие, How NetBeans or Eclipse, и даже содержит специальный учебник по основам ООП.
  • JCreator — ещё одна небольшая Java IDE для Windows, написанная на C++ (из соображений увеличения производительности). Платная version Pro оснащена отладчиком, поддержкой Ant и code wizards, ну а бесплатная version (LE) — нет.
  • Eclipse Che — браузерная облачная IDE: Java, C++, JavaScript, Python, PHP, Ruby и SQL — список языков, которые она поддерживает. .

Выбор Java IDE в зависимости от проекта

Saya telah cuba menerangkan faedah penting bagi setiap tiga IDE Java yang paling penting dan secara ringkas menyebut saingan kecil mereka yang berguna. Untuk memilih persekitaran pembangunan Java yang betul, anda perlu menimbang kebaikan dan keburukan dan memadankannya dengan keperluan anda dan keperluan projek anda. Jika anda menyertai pasukan, adalah idea yang baik untuk menggunakan IDE yang sama seperti pembangun lain, walaupun ia tidak diperlukan. Jika pasukan anda mengehos sumber di GitHub, ia sememangnya lebih mudah jika IDE anda menyokong GitHub. Ya, anda boleh mengendalikan pemindahan kod tanpa IDE menggunakan klien GitHub atau baris arahan git. Tetapi sejauh manakah lompatan sedemikian berkesan antara sistem yang berbeza? Ia juga penting bahawa IDE menyokong sistem binaan. Sebagai contoh, jika ia Maven, anda tidak mungkin mahu membina semula sistem dalam Ant untuk ujian tempatan. Nasib baik, ketiga-tiga IDE Java yang besar menyokong Ant, Maven, dan Gradle, sama ada di luar kotak atau dengan pemalam. Tetapi untuk IDE "kecil" ini mungkin tidak benar. Ia adalah keinginan semula jadi untuk persekitaran pembangunan untuk menyokong versi JRE yang digunakan dalam projek. Jika versi tidak sepadan, terdapat kebarangkalian tinggi untuk mendapat banyak pepijat tambahan, yang, sebagai contoh, akan muncul dalam diri anda, tetapi tidak pada ahli pasukan lain. Tidak mungkin keadaan sedemikian akan memberi kesan yang baik kepada karma anda. Terus terang, ketidakkonsistenan JRE lebih berkemungkinan berlaku disebabkan ralat konfigurasi berbanding kekurangan sokongan IDE, melainkan IDE belum dikemas kini kepada versi baharu Java. Hanya percaya bahawa jika IDE anda menyokong sepenuhnya rangka kerja dan teknologi yang digunakan dalam projek, ia benar-benar membantu mempercepatkan kerja. Anda kemungkinan besar akan menguruskannya. Tetapi, jika IDE memahami cara penyataan JPA berkaitan dengan entiti JPA dan kelas ekspresi (seperti IntelliJ), anda akan menghabiskan lebih sedikit masa pada kod berkaitan JPA berbanding jika anda salah faham sepenuhnya. Nah, jika IDE menyokong rangka kerja ujian dan pelaksana kod yang digunakan untuk projek, anda boleh menjalankan ujian tanpa mengubah persekitaran kerja. Ini juga akan mempercepatkan proses pembangunan. Akhirnya, kerja berjalan lebih cepat jika IDE serasi dengan penjejakan pepijat dan sistem tiket projek. Sekali lagi, anda boleh menggunakan pelanggan kendiri atau web, katakan JIRA, tetapi sukar untuk tidak bersetuju bahawa menyemak tiket adalah lebih pantas tanpa menukar tetingkap, sambil kekal terus dalam IDE.

Percuma atau berbayar?

Selepas menguji IntelliJ IDEA Ultimate, saya mendapat perasaan persekitaran pembangunan yang betul. Sejenis Cadillac dunia IDE. Saya tidak akan mengatakan dengan jelas bahawa IDEA ialah IDE terbaik untuk Java, tetapi bagi saya itulah yang berlaku. Sekali lagi, walaupun ia bukan percuma, saya fikir keuntungan produktiviti daripada menggunakannya adalah berbaloi dengan langganan tahunan. Bagi pemula yang tidak mampu membeli langganan tahunan IntelliJ IDEA Ultimate, saya mengesyorkan menggunakan NetBeans dan bukannya Eclipse. Sudah tentu, ekosistem pemalam Eclipse hari ini jauh lebih maju daripada mana-mana IDE lain, tetapi ia sangat besar dan tidak terawat: pembangun pemula berisiko terperangkap di dalam hutan IDE, Java dan rendaman dalam kerja akan pudar ke latar belakang . juga menyentuh tentang alternatif "ringan", dua daripadanya dibangunkan khusus untuk tujuan pendidikan. Nah, jika anda baru mula belajar bahasa dan lebih suka persekitaran minimalis, mengapa tidak?
Komen
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION