• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Co i do czego jest lepsze: Java czy C#

VPS Starter Arubacloud
0 głosów
3,517 wizyt
pytanie zadane 20 lipca 2015 w Java przez NTXFN Gaduła (3,430 p.)
Co i do czego lepsze: Java czy C# ?

5 odpowiedzi

+5 głosów
odpowiedź 20 lipca 2015 przez Patrycjerz Mędrzec (192,340 p.)
Jeśli jesteś początkujący, to nie zaprzątaj sobie tym głowy, jaki język wybrać. Z doświadczenia wiem, że przez to ludzie tracą motywacje. Najważniejsze jest to, żeby pisać programy. Pisz w jakimkolwiek języku "głównego" nurtu, tzn. C++, Java, C# itp. Potem, gdy będziesz miał jakieś doświadczenie, to będziesz mógł myśleć, który język i które technologie ci odpowiadają. Nauczenie się składni danego języka to góra tydzień, więc nie myśl nad tym, tylko programuj :)
+1 głos
odpowiedź 20 lipca 2015 przez Dorion300 Szeryf (90,250 p.)
A w co celujesz? (Konkretnej)

Pełna Multiplatformowość czy w wydajność/skuteczność?

Jeśli to drugie to C#.

Java jest bardzo i to bardzo wieloplatformowa, ale składnia jest taka.....niewygodna jak dla mnie.

Jeśli chodzi o C# to działa aktualnie na Windows ale jest takie coś jak "Mono" która każda aplikacja napisana w C# (w tym okienkowe) mozna uruchomić ale znacząco (niemalże dwukrotnie) wolniej działa.

Warto jeszcze dodać że powstaje .NET Core 5, który jest nie tylko dla systemu Windows, ale i na Maca i Linux'a (C#)
komentarz 20 lipca 2015 przez adrian17 Ekspert (344,100 p.)
Dla bardzo wielu zastosowań różnica prędkości Mono nie ma żadnego znaczenia (A nawet jeśli ma, na przykład w grach, to aż tak się tym nie trzeba przejmować - spójrz na Unity).

Plus, Microsoft ostatnio mocno promuje Xamarin: http://puu.sh/j6qBN/79efaf9cc6.png
komentarz 20 lipca 2015 przez Dorion300 Szeryf (90,250 p.)
W sumie to raczej ma.

Ponieważ wyobraż sobie że masz zainstalowanych masę aplikacji napisanych w C#/.NET

Pięknie działa, mułek dalej wytrzymuje.

Zmieniasz system - krwotok z nosa.

Uważam że te "frameworki" "Systemy" i inne niskopoziomowe wspomagacze dużych aplikacji, powinni wyciskać ile się da jeśli chodzi o wydajność. (ale nie za bardzo)

Masz 2 lub 3 aplikacje?

ok nie czuć różnicy, trochę processor bardziej się męczy ale no cóź...taki klimat.

Jeśli chodzi o gry to podejrzewam że zawsze będą pisane do kodu binarnego a nie jakiegoś "frameworka".

Gdyby gra powstałaby na takim typowym frameworku jak ".NET Framework" to gra chodziłaby jak ten najnowszy Batman.
komentarz 20 lipca 2015 przez adrian17 Ekspert (344,100 p.)

ok nie czuć różnicy, trochę processor bardziej się męczy ale no cóź...taki klimat.

Kiedy mówiłem "Dla bardzo wielu zastosowań różnica prędkości Mono nie ma żadnego znaczenia" miałem na myśli aplikacje, w których masz maszy wybór między "zmęczeniem" procesora 0.1% z C++'em a 0.12% z C#. Nie mam na to liczb, ale zaryzykuję stwierdzenie że takie aplikacje stanowią znaczącą większość.

Oczywiście, rozumiem opinię że obecnie często ludzie za mało przykładają uwagę do wydajności, przez co niektóre aplikacje pracują wolniej niż zdrowy rozsądek by podpowiadał - i jak najbardziej się z tym zgadzam! Ale 1. często jest to wina programisty, 2. zdaję sobie sprawę że programista też ma ograniczone środki na stworzenie aplikacji i języki takie jak C# czy Java pozwalają to zrobić znacznie szybciej i z mniejszą ilością wpadek (patrz punkt 1.). 

Gdyby gra powstałaby na takim typowym frameworku jak ".NET Framework" to gra chodziłaby jak ten najnowszy Batman.

Najnowszy Batman chodzi na Unreal Enginie, napisanym w C++ie. Znowu, patrz punkt 1. - to, ile można wycisnąć z silnika, często zależy od programistów a nie silnika czy języka.

Tymczasem obecnie najpopularniejszy i najbardziej złożony city builder, Cities:Skylines, chodzi na Unity (Mono) a jesli wierzyć wymaganiom sprzętowym, pójdzie na XP z Core 2 Duo.

0 głosów
odpowiedź 20 lipca 2015 przez NTXFN Gaduła (3,430 p.)
Znam podstawy Java, ale chciałbym programować gry 3D.
komentarz 20 lipca 2015 przez Patrycjerz Mędrzec (192,340 p.)
Jeśli znasz już podstawy i wiesz "z czym się je ten chleb", to po prostu przeglądnij dostępność popularnych bibliotek 3D na różnych językach. Myślę, że chodzi ci o DirectX i OpenGL, tak?
komentarz 20 lipca 2015 przez Dorion300 Szeryf (90,250 p.)
No to może Unity cię zainteresuje?

Tam skrypty pisze się w C# i lub w js'sie.

 

A jeśli chodzi o javę to nikt ci nie zabroni pisać w niej gry.

Minecraft'a napisali i gra stała się bardzo popularna mimo Javy.
komentarz 20 lipca 2015 przez adrian17 Ekspert (344,100 p.)
(minecraft stał się popularny między innymi dzięki Javie, bo gry w Javie i C# moduje się znacznie, znacznie łatwiej niż gry skompilowane do bezpośrednio wykonywalnych binarek)
0 głosów
odpowiedź 20 lipca 2015 przez Magicone Nałogowiec (45,100 p.)
IMO, jedyne, czego c# może pozazdrościć javie to platform. ;)
komentarz 21 lipca 2015 przez Eryk Andrzejewski Mędrzec (164,260 p.)
Z pewnych źródeł wiem, że wirtualną maszynę javy instalują nawet na kartach sim :D
0 głosów
odpowiedź 20 lipca 2015 przez NTXFN Gaduła (3,430 p.)
Czyli Java do multiplatform a C# do Windowsa (dla mnie plusem jest to że od razu na Windows działa bez instatlacji czegoś więcej). Ale które byście wybrali ogólnie na ważniejsze programy ?
komentarz 20 lipca 2015 przez Patrycjerz Mędrzec (192,340 p.)
To i to potrzebuje maszyny wirtualnej, bo są językami wysokiego poziomu. Jeszcze raz mówię. Każdy z tych dwóch języków będzie dobry. Patrz lepiej na dostępność bibliotek na każdy z tych języków, bo właśnie na nich będziesz pracować. Kwestiami wydajnościowymi się nie przejmuj, bo proste gry nie wymagają przejmowania się takimi sprawami.
komentarz 20 lipca 2015 przez Dorion300 Szeryf (90,250 p.)

 Ale które byście wybrali ogólnie na ważniejsze programy ?

 Ja wybrałbym najprzyjemniejszy język do pisania ważnyh programów. (I tak którym bym umiał) (W moim przydku C#)

Ale taki jest mój wybór...

komentarz 21 lipca 2015 przez NTXFN Gaduła (3,430 p.)
No ale mi sie wydaje że do programów na windows to prostszy jest C# bo ma biblioteki i można zrobić tak: Class Object = new Class() {x=10, y=20};
komentarz 21 lipca 2015 przez NTXFN Gaduła (3,430 p.)
Ale musiałbym się go douczyć.
komentarz 21 lipca 2015 przez NTXFN Gaduła (3,430 p.)

Podobne pytania

0 głosów
6 odpowiedzi 4,656 wizyt
pytanie zadane 28 września 2016 w Java przez timati Bywalec (2,060 p.)
0 głosów
1 odpowiedź 1,097 wizyt
pytanie zadane 18 czerwca 2017 w Java przez atiro01 Bywalec (2,390 p.)
0 głosów
1 odpowiedź 4,566 wizyt
pytanie zadane 4 kwietnia 2020 w C i C++ przez tonn204 Mądrala (7,440 p.)

92,452 zapytań

141,262 odpowiedzi

319,085 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...