C # (i ogólnie platforma .net) wygląda na to, że staje się dobrą opcją dla aplikacji do wielu celów:
- oficjalna platforma MS .net: tworzenie pełnych ciosów w systemie Windows, dev asp.net, Windows phone Dev itp.
mono i wszystkie jego pochodne: monotouch, monodroid: reszta świata. Te narzędzia są dziś RTM.
Czy to oznacza, że C # staje się dobrym językiem do kierowania na najpopularniejsze platformy: komputer, Internet i urządzenia mobilne?
- Czy nadal lepiej jest używać „rodzimego” języka platform docelowych (cel C, Java itp.)
- Czy to tylko ekran dymu i tylko marketingowy język?
Pamiętaj, że tak naprawdę jestem świadomy, że nie będę w stanie skopiować / wkleić kodu między platformami. Ale jestem pewien, że niższe warstwy aplikacji (modele, biznes itp.) Mogą być ponownie użyte, ale wiem, że będę musiał dostosować wyższe warstwy (Gui itp.) Do platformy. Mój cel koncentruje się bardziej na wymaganych umiejętnościach niż na dzieleniu się kodami technicznymi.
[edytuj] Jestem programistą ac # w firmie, która masowo używa c #. Dlatego mówiłem o c # w planie rozszerzenia zakresu platform docelowych w mojej firmie.
Microsoft .NET to oficjalna implementacja CLR, DLR, BCL, CLI i CLS. Inne firmy, grupy, społeczności lub grupy robocze nie są kojarzone z Microsoftem w taki sposób, że mogą mieć implementację 1: 1 najnowszego frameworka i wersji językowej.
Zasadniczo musisz przejrzeć funkcje języka i frameworka, które chcesz wykorzystać w konkretnym projekcie i sprawdzić, czy są one obecne w nieoficjalnych implementacjach .NET.
Jeśli oczekujesz jednorazowego rozwiązania i rozpowszechniasz je wszędzie, to się mylisz: musisz zrobić studium przypadku.
źródło
Używam C # w grach działających na urządzeniach XBOX i Windows, używam go w aplikacjach Compact Framework dla rozwiązań robotyki, używam MonoTouch dla iPada, mam niektóre aplikacje internetowe działające na Linuksie i kilka innych rozwiązań. Zwykle jest sposób, jak to zrobić na danej platformie. Warstwa rdzeniowa jest prawie taka sama dla większości z nich (rzeczywiście potrzebne jest studium przypadku). Problem - i uważam, że jest to problem szeregowy - dotyczy środowiska programistycznego. Jestem przyzwyczajony do Visual Studio i jego funkcji. Ale na przykład MonoDevelop doprowadza mnie do szału.
źródło