Pytanie:
IntelliJ IDEA vs Eclipse vs NetBeans dla programowania w "czystej Javie"
leventov
2014-02-05 11:28:00 UTC
view on stackexchange narkive permalink

Ważne prywatne powiadomienie o wersji beta: to jest próbne pytanie do tej propozycji w metatagu: Zalecanie pytań „X kontra Y”.

Oczywiście IntelliJ IDEA, Eclipse i NetBeans to doskonałe wieloplatformowe środowiska IDE z dużą liczbą funkcji i wieloma wtyczkami dostosowanymi do wszelkich potrzeb. Wiem, że istnieją istotne różnice między nimi w przypadku programowania Java EE (IntellJ nie jest płatny ) i Android (wspierany przez IntelliJ Android Studio jest obsługiwany przez Google i wydaje się być nowym standardem).

Ale wybór jest trudniejszy, jeśli tworzę oprogramowanie w „czystej Javie”. Jakie wyjątkowe zalety ma każde z tych IDE, które mogą skłonić mnie do ich używania?

Powiedziałbym, że to pytanie jest zbyt szerokie, jeśli nie wyszczególnisz dokładniej swoich wymagań. Wokół „czystej javy” można zrobić wiele rzeczy. A co z pytaniem typu „Który edytor oferuje automatyczne pobieranie i importowanie plików JAR z repozytorium Maven po autouzupełnianiu?”
@NicolasRaoul, przeczytaj moją odpowiedź na meta. Mógłbym wymienić mnóstwo wymagań, ale wszystkie te IDE spełniają je wszystkie. Wybór Java IDE nie pomaga.
Czy możesz nam powiedzieć, jaki jest Twój system operacyjny. Chociaż wszystkie wymienione środowiska IDE są wieloplatformowe, nie zachowują się jednakowo w różnych systemach operacyjnych, głównie pod względem wydajności i stabilności
@IvayloSlavov, moją własną platformą jest Linux, ale nie chcę lokalizować pytania. ja. mi. Twoja odpowiedź może wyglądać tak: „IDE X jest lepsze niż konkurenci na platformie Y, ponieważ ...”
Dopóki nie zostanie to w pełni omówione na temat meta, nie sądzę, aby głosowanie za zamknięciem było właściwe
Jeden odpowiedź:
#1
+14
Ivaylo Slavov
2014-02-05 15:29:39 UTC
view on stackexchange narkive permalink

Będąc programistą oprogramowania Java, chętnie podzielę się z wami swoim osobistym doświadczeniem. Przede wszystkim muszę wspomnieć, że całe moje doświadczenie z powyższymi IDE dotyczy platformy Linux, ale widziałem, że to dotyczy tego systemu operacyjnego różni się od systemu Windows lub MAC. Ponadto, szanując Twoje ograniczenie „czystej Javy”, nie będę omawiać funkcji związanych z innymi językami / platformami itp., Które mogą być obsługiwane. A więc zaczynamy:

Eclipse

Dobre strony tego IDE to:

  • najbardziej atrakcyjne wizualnie jedna z trzech, osobista opinia
  • łatwa nawigacja po kodzie źródłowym
  • nawigacja między plikami maven pom, po kliknięciu zależności, zawiera podpowiedzi informacyjne
  • dobra struktura obszaru roboczego, pozwala na tworzenie zestawów roboczych - grup projektów w obszarze roboczym, dzięki czemu można skupić się na konkretnym zestawie roboczym zamiast na całym obszarze roboczym.
  • doskonałe debugowanie
  • wiele perspektyw (programowanie dedykowanych języków, takich jak Java, Spring, JavaScript, perspektywa debugowania itp.). Każda perspektywa ma własne ustawienia dotyczące widoków, położenia okien i narzędzi itp., Które są automatycznie zapamiętywane przez środowisko IDE. Dla mnie jest to cenna zaleta, chociaż konfiguracja jest obsługiwana tylko dla obszaru roboczego.
  • pozwala na łatwe importowanie i debugowanie kodu źródłowego stron trzecich. Czasami wymaga to ręcznego pobrania kodu, ale reszta jest dla mnie dość łatwa

Wady:

  • ładuje się wolno , niezdarny w interakcjach. Dzięki dodatkowym wtyczkom działa wolniej.
  • często się zawiesza, szczególnie na Linuksie (wersje Windows są bardziej niezawodne), dobrze jest zrestartować go za kilka dni.
  • pod Linux, wersje wyższe niż 3.0 opóźniają się o kilka sekund przed otwarciem dowolnego pliku znaczników (XML, JSF), co jest bardzo nieproduktywne.
  • wersje poniżej 3.0 nie mają powyższego problemu ze znacznikami, ale nie obsługują funkcji składni Java 1.7 (na przykład krótkie typy generyczne).
  • JSF nie ma funkcji auto zakończenie
  • Wersje dla komputerów Mac mają niespójne konwencje dotyczące skrótów, część z nich używa kombinacji Ctrl +? , a inne - FN +? . Użytkownicy zaznajomieni ze środowiskiem IDE w innych systemach operacyjnych na początku są sfrustrowani
  • przenoszenie plików między pakietami / projektami może być uciążliwe, ponieważ czasami kopiowanie (wycinanie) / wklejanie nie działa pracy, po prostu przeciągnij upuszczenie &

  • nagłe zawieszanie się po autouzupełnianiu, naprawione tylko przez ponowne uruchomienie IDE (można to obejść minimalizując i przywracając, ale polecenia menu i powiązane skróty klawiszowe przestają działać - tj. można edytować plik, ale nie można go zapisać. Mimo to kopiowanie i wklejanie do zewnętrznego edytora jest możliwe)

  • wewnętrzne procesy zadań IDE nie są niezawodne. Możliwe zawieszenie, niemożność zatrzymania lub nawet zakleszczenie, jeśli uruchamianych jest wiele zadań ze współdzielonymi zasobami (np. Wielokrotne odświeżanie repozytorium SVN, co powoduje więcej niż jeden proces odświeżania).

IntelliJ IDEA

Mam doświadczenie z tym IDE tylko w Linuksie, być może na innych platformach będą różnice, których może mi brakować

Zalety:

  • intuicyjny w użyciu
  • doskonała nawigacja w kodzie
  • obsługa projektów Eclipse (możliwość importowania ich jako projektów IDEA)
  • doskonała i rozwlekła refaktoryzacja
  • możliwość dostępu do lokalizacji pliku w systemie plików z widoku projektu przez menu prawego przycisku myszy (funkcja, której brakuje mi w eclipse)

Wady

  • dla wiosennych kontekstów XML nie rozpoznaje wszystkich atrybutów, mimo że pobrał zaimportowane schematy XML. Rzeczywistym problemem jest podświetlanie błędów, które może zmylić niedoświadczonych programistów
  • praca z Subversion (przeglądanie i synchronizacja zmian) nie jest tak intuicyjna jak w Eclipse
  • fałszywe kolorowanie składni błędów w plikach pom.xml przy używaniu właściwości maven zamiast literałów dla zależności (jak wersja liczba itp.). Może to zmylić niedoświadczonych ludzi.

NetBeans

Korzyści, jakie przychodzą mi do głowy:

  • do tworzenia aplikacji internetowych ma wbudowany serwer, który ułatwia hosting aplikacji internetowej do celów debugowania bez konieczności konfigurowania serwera zewnętrznego i wdrażania na nim.

Wada :

  • wolny czas ładowania

W przeszłości korzystałem z NetBeans i wolałem go od Eclipse, ponieważ w tamtym czasie było to więcej stabilny i zużywał mniej zasobów. Ale potem użyłem go, żeby odrabiać lekcje na uniwersytecie. Nie korzystałem z tego IDE w sposób profesjonalny , ponieważ moje środowiska pracy preferowały powyższe opcje dla Javy, dlatego nie zajmowałbym się porównaniami.

Mój osobisty wybór ma znaczenie dla Eclipse, ponieważ lepiej go znam, chociaż ma o wiele więcej wad. Wolę go ze względu na jego możliwości uporządkowania przestrzeni roboczej i umożliwienia lepszego skupienia się na bieżącym zadaniu. Jak powiedziałem, wiele perspektyw bardzo pomaga, ponieważ każdą skonfigurowałem tak, aby najlepiej pasowała do konkretnego zadania, nad którym pracuję. Podoba mi się również szczegółowe wyjście z Subversion, ponieważ ważne jest dla mnie prawidłowe śledzenie moich zatwierdzeń / aktualizacji.

IntelliJ IDEA ułatwia mi przystosowanie się do niego, chociaż jest rzeczywiście mniej inwazyjny i inteligentny. Automatycznie rozpoznaje wiele typów projektów i pyta Cię w danej chwili, czy coś wymaga dodatkowej konfiguracji. Na przykład, jeśli zaimportujesz projekt maven i nie ma on skonfigurowanego katalogu domowego mavena, zapyta Cię o to podczas próby wykonania zadań związanych z maven i zapamięta Twój wybór. Oczywiście IDE próbuje pomóc w jego skonfigurowaniu i odpowiednim użyciu. W połączeniu ze stabilnością i szybkością reakcji (w porównaniu z Eclipse) wydaje się, że jest o wiele bardziej niezawodnym środowiskiem. Muszę przyznać, że nie zagłębiałem się w szczegółowe dostosowywanie go, ale jest to kandydat na moje ulubione IDE.

Proszę, spróbujcie skupić się na różnicach. Na przykład nie ma potrzeby wspominać, że wszystkie te środowiska IDE są bezpłatne i wszystkie zajmują dużo pamięci (to jest Java). Oznaczaj najbardziej znaczące punkty * kursywą *.
@leventov ok, usunąłem pamięć i podkreśliłem to, co uważam za ważne
Wszystkie wymienione IDE obsługują wtyczki. http://plugins.jetbrains.com/?idea_ce
@MariuszS tak, tak jest. Wydaje mi się, że przegapiłem to w przypadku IntelliJ Idea, naprawionego teraz
Myślę, że powinieneś usunąć informacje o wtyczkach, wszystkie IDE są tutaj podobne.
@MariuszS, Zrobiłem, ale wydaje mi się, że zapomniałem napisać.


To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...