Java jest szeroko stosowanym obiektowym językiem programowania i platformą oprogramowania. Działa na miliardach urządzeń, w tym na notebookach, urządzeniach mobilnych, konsolach do gier i wielu innych.

Posiadanie takich możliwości ma swoją cenę. Java może być trudna do nauczenia, z długą i skomplikowaną składnią. Jest pisany statycznie, co może być mniej wygodne. I chociaż jest niezależna od platformy, rozwój platformy przetwarzania w chmurze sprawia, że ​​niezależność jest mniej wygrana.

To tylko kilka powodów, dla których Java może wypadać z łask.

1. Java staje się coraz mniej popularna

Przede wszystkim wydaje się, że popularność Java powoli spada. Tak było przez lata jeden z najlepszych języków programowania do nauki, ale teraz nie jest to już modne. Oznacza to, że z biegiem czasu programiści będą pisać coraz mniej nowych aplikacji w Javie.

Ten trend oznacza, że ​​Java w końcu odejdzie. Firmy na całym świecie będą nadal zatrudniać programistów Java do obsługi starszych baz kodu, ale to nie będzie trwało wiecznie.

instagram viewer

Mimo to, jeśli chcesz skoncentrować swoją karierę na tworzeniu nowych rzeczy, a nie na utrzymywaniu istniejących programów, Java może nie być dla Ciebie najlepszym wyborem.

Język programowania maj 2022 r
Pyton 1
C 2
JavaScipt 3
C++ 4
C# 5
Visual Basic 6
Jawa 7
Język programowania 8
SQL 9
PHP 10

2. Java nie jest prosta

Java może być łatwa do nauczenia, ale nie jest prosta. Język jest łatwy do nauczenia, ponieważ kod Java jest łatwy do napisania, uporządkowania i skompilowania. Ale nie jest to proste, ponieważ kod napisany w Javie jest zwykle bardziej rozwlekły i bardziej żmudny w pisaniu.

Musisz go także skompilować, co sprawia, że ​​Java jest znacznie mniej wygodna niż języki takie jak Python. Tak więc, jeśli jesteś nowicjuszem, który uczy się kodować po raz pierwszy, Java nie jest dobrym językiem na początek.

Jeśli jesteś profesjonalistą, który chce produkować prosty, elegancki kod i szybko go wdrażać, Java również nie jest idealnym wyborem.

3. Gettery i setery

Gettery i settery są niemal obowiązkową częścią używania języka, a wiele frameworków zachęca do ich używania. Jednak metody pobierające i ustawiające w Javie mogą być niepotrzebnie gadatliwe.

Zarządzanie kodem ozdobionym getterami i setterami Java jest piekielnie skomplikowane. Brak sensownego rozwiązania problemu getterów i setterów to tylko wierzchołek góry lodowej.

publicznyklasaPojazd{
prywatny Strunowy kolor;

// Getter
publiczny Strunowy pobierz kolor(){
powrót kolor;
}

// Seter
publicznypróżniazestawKolor(Ciąg c){
Tenkolor = c;
}
}

4. Bez oblodzenia składniowego

Działasz na kolekcji. Chcesz pierwszy przedmiot. Co robisz? Oczywiście wywołujesz metodę zamiast używać common [] operator. Wszystko dlatego, że nie można przeciążać operatorów.

W przypadku praktycznie każdej operacji musisz użyć słownej nazwy metody, nawet jeśli wystarczyłby operator jednoznakowy.

Java obsługuje tę koncepcję; język pozwala łączyć ciągi znaków z + operatora np. Po prostu nie pozwala tobie, programiście, zrobić tego samego.

5. Deklarowanie wyjątków, które może generować metoda

Java wymaga zadeklarowania wyjątków, które może zgłosić metoda. Wydaje się to przydatne, prawda? Korzystając z danej metody, wiesz, czego się spodziewać.

Problem polega na tym, że kod jest żywym organizmem i zdarza się, że metoda, której używasz, zaczyna rzucać więcej wyjątków. Co się wtedy stanie? Twój kod właśnie przestał się kompilować.

Musisz poradzić sobie z sytuacją lub dodać wyjątek do listy zgłoszeń. Załóżmy, że API, którego używasz, nie zmienia się. Istnieje coś takiego jak RuntimeException w Javie. Jeśli twoja metoda może zgłosić ten wyjątek lub jednego z jego potomków, musisz to zadeklarować.

Wyjątki w Javie mogą powodować wiele problemów związanych z utrzymaniem kodu.

// Program Java demonstrujący użycie metody throw
klasaThrowExcep
{
statycznypróżnia zabawa()
{
próbować
{
rzucićnowy NullPointerException("demo");
}
złapać (NullPointerException e)
{
System.out.println("Złapany w zabawie ().");
rzucić mi; // ponowne zgłoszenie wyjątku
}
}

publiczny statycznypróżnia główny(Strunowy argumenty[])
{
próbować
{
zabawa();
}
złapać (NullPointerException e)
{
System.out.println("Złapany w głównym.");
}
}
}

6. Skomplikowane IDE

Programiści Java często używają IDE, takiego jak Eclipse lub IntelliJ. Te IDE są potężne, ale ich interakcja jest skomplikowana, szczególnie dla początkujących lub średniozaawansowanych programistów. Będziesz musiał włożyć dużo wysiłku w poznanie swojego środowiska IDE od wewnątrz i na zewnątrz, aby było ono dla Ciebie bardziej produktywne i mniej bolesne.

7. Niezależność platformy jest mniej ważna w 2022 roku

Fakt, że Java jest bardzo niezależna od platformy, ma dziś zapewne mniejsze znaczenie niż 10 czy 20 lat temu.

Powodem tego jest to, że żyjemy w świecie zdefiniowanym przez oprogramowanie. Obecnie maszyny wirtualne, kontenery i usługi w chmurze ułatwiają uruchamianie aplikacji w dowolnym miejscu, bez martwienia się o środowisko bazowe.

Innymi słowy, nie musisz zmieniać kodu, aby Twoja aplikacja działała tam, gdzie jej potrzebujesz. Zamiast tego możesz zmienić środowisko hostingu.

Nie oznacza to, że przenośność aplikacji nie ma już znaczenia. Po prostu nie jest tak krytyczny jak kiedyś, a to sprawia, że ​​​​Java jest nieco mniej ważna z powodu rozszerzenia.

8. Typowanie statyczne

Java sprawdza typ podczas kompilacji. Oznacza to, że musisz zadeklarować typ każdej zmiennej w czasie kompilacji. To samo dotyczy języków takich jak C i C++, ale inne języki, takie jak Scala i Haskell, oferują pewną formę wnioskowania o typie.

W przypadku typowania statycznego zmienne generalnie nie mogą zmieniać typów. To sprawia, że ​​​​składnia Java jest nieco skomplikowana, zwłaszcza podczas pisania kodu dla dużego projektu.

Wielu programistów woli Programowanie dynamiczne gdzie sprawdzanie typu odbywa się w czasie wykonywania. Oznacza to, że typ zmiennej może się zmieniać w trakcie jej istnienia.

Naucz się nowych języków programowania

Nie chodzi o to, że Java do niczego się nie nadaje, ale jej składnia jest niezgrabna i nie sprzyja czytaniu kodu. Zarządzanie zależnościami w Javie pozwala na nadużycia i prowadzi do trudnych do wykrycia błędów.

Technologia ciągle się zmienia, a programistom zawsze warto być na bieżąco z pojawiającymi się językami programowania. To, co jest modne dzisiaj, wkrótce może być wczorajszą wiadomością.