Java czy C#?

0

Ciężko jest mi się zdecydować między Javą a C#. Co byście mi polecili na początek? Przytoczę wywód takiego jednego gościa na temat wyższości C# nad Javą:

Zależy. Pod względem opłacalności na rynku pracy Java wypada lepiej. Niemniej jak jesteś dobrym programistą C#, który ma jakiś talent i zawzięcie to też Cię wszędzie chętnie zatrudnią a z C# przejście na Javę jest niemalże bardziej lajtowe niż z C++ na C#, gdzie musisz się oduczać nawyków nieprawidłowych nabytych podczas nauki C/C++. Wiem dobrze o tym, bo pamiętam jak długo przez jakiś czas programowałem w C# i chciałem nagle coś napisać w Javie to wystarczył rzut okiem na dokumentację i wszystko poszło jak z górki. A to, że C# jest tylko pod Windowsa to jest jeden z największych błędnych mitów. Jest przecież Xamarin, ASP.NET, Unity3d, Universal Platform, Azure chociaż fakt faktem ciężko będzie Ci np. zrobić serwer ASP.NET na Linuxie czy napisać na Ubuntu aplikację pod Azure, więc ten argument może jedynie mieć takie uzasadnienie, że Microsoft dba o swój monopol i nie zamierza wspierać developmentu aplikacji C# na Linuxie czy Mac OS X (o ile się nie mylę o Apple ma swój język Swift i Objective-C).

Co sądzicie o tym? Czy to ma sens? Niby pod Linuxa jest Mono Develop ale ono jest kiepskie, więc może on i ma rację. Czy to dobry pomysł ciągnąć C# i Javę równolegle?

0

Jak Linux to Java - nawet nie ma się nad czym zastanawiać. Niby Mono wspiera C# ale są to już stare wersje języka. Używając Mono zawsze jest się w tyle za tym co wprowadza MS do platformy .NET.

0

To zdanie jest dość nie aktualne:

Microsoft dba o swój monopol i nie zamierza wspierać developmentu aplikacji C# na Linuxie czy Mac OS X

M$ coraz bardziej się otwiera, jest .NET Foundation, DNX/.NET Core. Co prawda jest to wciąż w fazie rozwoju ale za rok, dwa już myślę że spokojnie będzie można tego używać do czegoś więcej niż do zabawy.

Niby pod Linuxa jest Mono Develop ale ono jest kiepskie

Zawsze możesz zerknąć na Visual Studio Code: https://code.visualstudio.com/

4

@vscommunity hubot weź ty się może po prostu zacznij uczyć czegokolwiek?

0

Ale w co Ty konkretnie celujesz? Zadajesz tak ogólne pytanie bez podania swoich oczekiwań/celów. Zastanów się czy na początek nauki wieloplatformowość jest w ogóle Twoim nadrzędnym celem.

0

W pewnym sensie tak. Fajnie byłoby móc przenosić aplikacje między Androidem, Linuxem, Windowsem, Mac OS X, Windows Phone czy iOS-em. Chciałbym również mieć dostęp do popularnych frameworków, bibliotek i wzorców projektowych. C# ciągnę już od dłuższego czasu, ze dwa lata. Umiem posługiwać się interfejsami, klasami, strumieniami, GUI, timerami, socketami itp. W Javie mam mniejsze doświadczenie niż w C#. Chciałem się tylko zapytać czy na obecnym etapie warto przechodzić na inny język. Przerobiłem wszystkie tutoriale Unity3d i teraz jestem w trakcie wykonywania tych projektów z tutoriali. Teraz tworzę projekt o nazwie OGL oparty na ASP.NET MVC i C#.

1

MS sie otwiera ale nie nadrobi czasu blyskawicznie.

Wedlug mnie jeden czy drugi jezyk dobry. Do web net czy spring\jee. Jedno i drugie raczej spoko.

Skupilbym sie na roznicach, np. Ze java poki co jest bardziej portable, jest android. C# lepsze na desktopa, mozna gry w unity robic.

Visuals studio code na linuxie jest straszliwie biedne, sublime duzo bardziej funkcjonalne.

Hejtstop idiotycznej wojnie java vs c#...

W wolnej chwili zamierzam pouczyc sie c# jako javowiec.

1

Windows Phone jest martwe, nie ma sensu w ogóle brać tego pod uwagę.

0

Ale xamarin to dobre posuniecie.

0

Zdecydowanie lepszym jest pisanie osobno aplikacji dla Androida i iOSa.

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