Wątek zablokowany 2017-02-28 09:06 przez Ktos.

Java vs C# - co lepsze na aktualnym rynku

0

Witam serdecznie,
Na co Waszym zdaniem jest aktualnie większe zapotrzebowanie na rynku - na programistów C# czy JAVA?
Aktualnie od paru lat pracuję na php i już mi się "znudził" ten język i chciałbym przejść na coś nowego....
Zastanawiam się nad C# oraz JAVA. Co byście polecali? Czego łatwiej się nauczyć?

2

Wybierz cokolwiek. Co Ci po informacji, któy jest obecnie "lepszy", jak to się wszystko zmienia z tygodnia na tydzień? Niedawno widziałem głupią debatę "Python vs. R", "SAS vs. R", "C# vs Python" i inne, gdzie ludzie przerzucali się statystykami z KDNugetsa , IEEE i podobnych sondaży. A za miesiąc - musieli radośnie odszczekiwać, bo krzywe się pozmieniały. Java i .NET to solidne platformy, więc węź którąkolwiek i się jej ucz. Mnie w ogóle nie interesuje "co jest lepsze", bo w jednym mieście firmy zabijają się o .NETowców, w innym o Javowców, w branży A - o programistów COBOLa, a w branży B - Objective C, a w branży C - nawołują speców z PHP. Nie ma czegośtakiego jak "lepszy na rynku".

0

Rozumiem :) A co jest łatwiejsze do nauczenia? Z tego co widzę, to chyba JAVA ma mniejszy próg "wejścia" (mówię o stanowisku JUNIORa)?

0

obojetne.

Mi sie latwiej i przyjemniej pracuje z C#

0

Znowu? Serio?

0

Wielkiej różnicy nie ma. Popatrz może na liczbę ofert pracy w twojej okolicy? Bo z popularnością technologii bywa różnie. Np. w Krakowie pewnie łatwiej startować z Javą, ale w innym miejscu moze być odwrotnie.

0

W rejonie w którym mieszkam jest cienko z obiema technologiami ;) Więc i tak pewnie trzeba będzie się gdzieś przenieść.... ;) Dlatego zastanawiam się co ma większy sens w przypadku nauki od "zera" :)

0

Ja też wolę C#. Jest jakiś taki... przyjemniejszy.

0

Java miała zdechnąć milion razy, a nie zdechła, bo jest nieśmiertelna i dalej radzi sobie świetnie :]

Statystyki wskazują na to, że przeciętny (typowy) programista najwięcej zarobi w Javie i najłatwiej znajdzie pracę w Javie.

Zarobki: http://wynagrodzenia.pl/artykul/wynagrodzenia-programistow-w-2016-roku
Ilość ofert: Praca - Java 464 oferty, C# - 247 ofert (można by doliczyć .net 214 ofert, ale te zwykle się pokrywają z tymi z taga c#) - jest jeszcze niby JS 620 ofert, ale JSa wrzuca się w tagi gdzie popadnie i to zawyża mu statystyki,

0

Czego łatwiej się nauczyć?

"Don't wish it was easier, wish you were better".

3

A dlaczego ograniczasz się do tych dwóch języków?

W web czy REST masz do wyboru specjalizacje:

  • C# / .NET MVC
  • Java / JEE, Spring

Ale też:

  • Python / django, flask
  • node.js / MEAN
  • Angular.js
  • JVM / Groovy / Grails
  • JVM / Kotlin
  • JVM / Scala / Play, Scalatra
  • Elixir / Phoenix
  • Go

i pewnie jeszcze sporo innych.

0
vpiotr napisał(a):

A dlaczego ograniczasz się do tych dwóch języków?

W web czy REST masz do wyboru specjalizacje:

  • C# / .NET MVC
  • Java / JEE, Spring

Ale też:

  • Python / django, flask
  • node.js / MEAN
  • Angular.js
  • JVM / Groovy / Grails
  • JVM / Kotlin
  • JVM / Scala / Play, Scalatra
  • Elixir / Phoenix
  • Go

i pewnie jeszcze sporo innych.

Technologie na dolnej liście są duuuużo mniej popularne niż te wyżej. Oczywiście można się tego uczyć, ale ze świadomością, że to niszowa technologia i jest w niej dużo mniej pracy.

0
Wibowit napisał(a):

Statystyki wskazują na to, że przeciętny (typowy) programista najwięcej zarobi w Javie i najłatwiej znajdzie pracę w Javie.

A do tego ma trzy nogi i jednego cycka.

Chyba miałem zniechęcić do bycia przeciętnym, ale nie wiem czy przypadkiem skutek nie będzie odwrotny. ;)

0

Dokładnie, szukam czegoś bezpiecznego na "start" :) Nie jestem już studentem, mam rodzinę do utrzymania i dobrze by było iść w kierunku z którego da się na spokojnie wyżyć :)))))
Czyli generalnie jeśli pójdę w JAVĘ to będzie to bezpieczne rozwiązanie (wiadomo, na ten moment)? Na "start" wystarczy zapoznanie się z "czystą" JAVĄ, czy trzeba znać np. SPRING?

JAVA w tej chwili to aplikacje webowe prawda (w korporacjach itp) - nie "okienkowe"?

7

Java bez Springa to jak rak bez przerzutów.

0

A, zapomniałem - w 1 mc można nauczyć się COBOL-a (serio) i zacząć w nim pracę jako junior.
Ze względu na małą podaż programistów tego języka pracodawcy zwykle są przygotowani, że będą musieli douczać nowych pracowników.

0

a jeśli chodzi o poziom skomplikowania to który język jest Waszym zdaniem bardziej przystępny? :)

4

Przystępne? Java! Bo każdy większy program można uprościć do:

public static void main(String[] args) {
    throw new NullPointerException();
}

źródlo

0
Northwest napisał(a):

Dokładnie, szukam czegoś bezpiecznego na "start" :) Nie jestem już studentem, mam rodzinę do utrzymania i dobrze by było iść w kierunku z którego da się na spokojnie wyżyć :)))))
Czyli generalnie jeśli pójdę w JAVĘ to będzie to bezpieczne rozwiązanie (wiadomo, na ten moment)? Na "start" wystarczy zapoznanie się z "czystą" JAVĄ, czy trzeba znać np. SPRING?

JAVA w tej chwili to aplikacje webowe prawda (w korporacjach itp) - nie "okienkowe"?

Biznesowe aplikacje okienkowe to generalnie przeżytek, no chyba, że ktoś wlicza Microsoft Office, ale to jest wyjątek od reguły. Sama JavaFX jest też trochę zbugowana, Oracle niespecjalnie w nią inwestuje.

Spring natomiast jest czymś co jest podstawą przy szukaniu pracy - znajomość Springa to zawsze duży atut. Nie kodzę komercyjnie w Javie od 3 lat więc nawet nie wiem co polecić konkretnie ze Springa na początek, ale myślę, że sobie poradzisz.

Ze swojego punktu widzenia to odpuściłbym sobie jednak JPA/ Hibernate/ jakiekolwiek ORMy na początek, bo za dużo tam się dzieje w tle. Spring ma jakieś JDBC template i tego typu rzeczy, powinno spokojnie wystarczyć przez długi czas.

0

W czym aktualnie pracujesz (jeśli można zapytać)?
Java dla Juniora to wystarczą jakieś Video-kursy + np. jakieś "podstawy" z np.: http://helion.pl/ksiazki/java-kompendium-programisty-wydanie-ix-herbert-schildt,javkp9.htm#section4_shift ??

0

Biznesowe aplikacje okienkowe to generalnie przeżytek, no chyba, że ktoś wlicza Microsoft Office, ale to jest wyjątek od reguły. Sama JavaFX jest też trochę zbugowana, Oracle niespecjalnie w nią inwestuje.

Zależy od branży. W finansowej (w której pracuje) dużo aplikacji jest desktopowych bo web jest wciąż zbyt ograniczony, szczególnie jeżeli chodzi o wydajność. Ale ogólnie tendencja jest rzeczywiście na webowe aplikacje.

0

Póki co jeszcze zastanawiam się nad JAVA vs .NET.... JAVA wygląda dość skomplikowanie :( Tylko z kolei chyba łatwiej dostać jakaś pracę w JAVIA niż w .NET/ASP?

0

Technologie są zbliżone. Jeżeli będziesz dobrze znał Java to łatwo przejdziesz na C# i odwrotnie. Są nianse natomiast te języki są bardzo podobne do siebie.

0

tylko konfiguracja, ilość frameworków itp chyba jest cięższa do opanowania w JAVIE (póki co patrzę na to "z boku")

0

Frameworki, narzędzia, biblioteki również piszą programiści dlatego jeżeli jesteś doświadczony, masz obycie bardzo szybko się w nie wdrażasz. Dobrym programistą płacą m.in. za to, że jak się robi projekt to nie wybiera się narzędzi, które ktoś zna a takie, które najlepiej rozwiążą problem. Mój znajomy dostał projekt, który miał się opierać na Angularze. W dwa dni się go nauczył (chociaż wiadomo, nie został od razu spejcalistą).

0

to też racja :)

2
Northwest napisał(a):

tylko konfiguracja, ilość frameworków itp chyba jest cięższa do opanowania w JAVIE (póki co patrzę na to "z boku")

Za dużo masz strachu :) Ja podczas studiów pracowałem kilka miesięcy (3 m-ce stażu, potem 3 m-ce o dzieło) w Comarchu bez znajomości żadnego frameworka. Po studiach trafiłem do pracy gdzie używano Apache Tiles (wersja 1.x) jako frameworka webowego, którego nie znałem ani wtedy jak się zatrudniałem, ani wtedy jak odchodziłem. W kolejnej pracy interfejs był desktopowy w Swingu, więc dalej nie ogarnąłem w pracy żadnego Javowego frameworka webowego. Tylko hobbystycznie poznałem Apache Wicketa, ale nie miałem okazji użyć go komercyjnie.

Skoro pracujesz już kilka lat to staż na pewno odpada. Musisz celować w juniora lub regulara. Pasuje się więc czymś pochwalić. Moim zdaniem mógłbyś:

  • pouczyć się trochę Spring Frameworka i Angulara,
  • postawić własną stronę wizytówkę na tym,
    • vps można kupić za 9 zł miesięcznie na hekko.pl lub 15 zł miesięcznie na ovh.pl lub pewnie gdzie indziej za równie niskie kwoty
  • uczył się Springa dalej i rozbudowywał stronkę wpychając nowe ficzery (nawet gdyby nie miały sensu),

Nabrałbyś wtedy doświadczenia zarówno z językiem jak i najpopularniejszym frameworkiem Javowym, do tego mógłbyś opowiadać na rozmowach kwalifikacyjnych o tym co zaimplementowałeś we własnej stronce, z czym miałeś problemy, jak je rozwiązałeś etc Oczywiście do tego masz doświadczenie z PHP i tym też trzeba się chwalić - w końcu tworzenie aplikacji biznesowych ma wiele wspólnego nawet jeśli chodzi o zupełnie inne języki. Przede wszystkim wspólne dla wszystkich aplikacji są problemy na produkcji, a twoim zadaniem jest takie zaprojektowanie systemu, by był wystarczająco niezawodny, ewentualne problemy były wykryte najlepiej zanim będą widoczne dla klientów, a jeśli nie to by ich naprawa była w miarę szybka.

0

@Wibowit: słusznie podkreśliłeś ten błąd z "programistOM" - wstydzę się go, ale niestety jako anonim nie miałem już możliwości edycji postu.

@Northwest ewentualnie możesz nie ruszać Javy i pobawić się C# i MVC. Świetnie IDE: Visual Studio 2017 masz za darmo, gotowe do zabawy bez żadnych konfiguracji. Po prostu klikasz Nowy projekt -> Web (MVC) i zaczynasz zabawę. Jest to jedna z zalet .NET że po prostu działa i nie tracisz czasu na zabawy z środowiskiem.

0

Jest to jedna z zalet .NET że po prostu działa i nie tracisz czasu na zabawy z środowiskiem.

No. Zaletą jest też to, że programy się kompilują i uruchamiają.

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