Java czy Python – co wybrać?

0

Siemanko. Mam mały problem. Od kilku miesięcy programuje w wolnym czasie w Pythonie. Ogarniam podstawy, jestem w stanie zrobić jakąś prostszą aplikację jednak waham się nad przejściem do innego języka - Java. Głównym powodem ku temu jest tworzenie aplikacji mobilnych/desktopowych oraz również webowych. poza tym patrząc na rynek pracy zauważyłem, że łatwiej jest dostać pracę jako programista Java aniżeli Python. Moglibyście mnie oświecić, podpowiedzieć jaką drogę powinienem obrać? Będę bardzo wdzięczny

1

Od kilku miesięcy programuje w wolnym czasie w Pythonie. (...) jednak waham się nad przejściem do innego języka - Java.

;)

1

Pytanie czy wolisz

print "hello"

czy

public class Hello {
    public static void main(String[] args) {
        System.out.prinltn("hello");
    }
}

Więcej ofert pracy i bardziej rozwklekła, statycznie typowana składnia czy dynamiczny język skryptowy, w którym trochę mniej ofert pracy, ale w zasadzie język bardzo popularny i uniwersalny (web dev, skrypty, obliczenia matematyczne etc.).

2

Statyczne typowanie ratuje tyłek jeśli musisz po kimś poprawiać - a w prawdziwej pracy zawsze się po kimś poprawia. Java ma świetne narzędzia do refaktorowania i statycznej analizy kodu. Jeśli wejdziesz w Pythonowy kod, który miał wielu ojców, a czasu na przeoranie kodu nie będzie to jedynym wyjściem będzie psucie kodu jeszcze bardziej. Oczywiście kod Javowy też można mocno popsuć wprowadzając cykliczne zależności, unikając wstrzykiwania zależności czy stosując magiczne frameworki oparte o refleksję czy wzbogacanie bajtkodu. Mimo wszystko jednak statyczne typowanie to podstawowa cecha, która umożliwia refaktoring na bieżąco.

Python to język, który sprawdza się przy pisaniu Hello Worldów i innych małych skryptów. Jak chcesz sprawdzić jak się koduje w dużych projektach to spróbuj dorobić coś do skomplikowanego projektu Pythonowego i skomplikowanego projektu Javowego. Następnie porównaj trudność wprowadzania zmian i jakość powstałego kodu.

0

@Wibowit

Python to język, który sprawdza się przy pisaniu Hello Worldów i innych małych skryptów.

Ehhh szkoda, że twórcy Dropboxa, Instagrama, Youtuba, Reddita, Mailmana, PayPala, EVE Online, Disqusa, itd nie wiedzieli o tej podstawowej mądrości :)

0

Kiedyś już ktoś pisał chyba o tym, że JavaScript służy jako język do budowania dużych aplikacji. Okazało się że w Node.JS napisano jakieś tam mikroserwisy, ale mielenie danych i skomplikowany backend był w innych językach. W tych firmach co podałeś jest najprawdopodobniej tak samo. Entuzjaści PHP podają Facebooka jako przykład dużego serwisu opartego o PHP. Prawda jest jednak taka, że PHP jest tam kulą u nogi i FB stworzył nawet własną mutację PHP o nazwie Hack, który jest PHPcem z dodatkowym statycznym typowaniem. Ponadto do mielenia danych FB używa C++, Javy, Erlanga i całej gamy różnych języków.

Własnościowy kod ma to do siebie, że zwykle kibice spoza firmy sobie nie zweryfikują jego postaci. Proponuję więc skupienie się na tym co jesteśmy w stanie obadać lub co już widzieliśmy na własne oczy.

PS:

Mailmana

Mailman to mały projekt.

1 użytkowników online, w tym zalogowanych: 0, gości: 1