Znam C # i lubię przełączać się między systemami i używać Linuksa. Czy mogę używać C # do tworzenia aplikacji, które będą natywnie działać w systemie Linux? Co powinienem zrobić, aby wykorzystać moją wiedzę na temat C # w systemie Linux?
Zauważ, że specjalizuję się w Unity3D, ale nadal chcę tworzyć aplikacje Linux za pomocą C #.
Odpowiedzi:
Najprawdopodobniej natkniesz się na http://www.mono-project.com/
Jak mówi strona About Mono :
Do obsługiwanych platformach m.in. Linux.
źródło
Tak, możesz opracować oprogramowanie na Ubuntu, które samo będzie działało na Ubuntu, w języku C #. Zarówno Mono, jak i .NET Core obsługują systemy GNU / Linux , takie jak Ubuntu. (Możesz używać ich również w innych dystrybucjach , takich jak Debian, Raspbian, Fedora, CentOS, Arch, Gentoo itp.) Silnik gry Unity3D obsługuje również Ubuntu, jak zapewne wiesz. Unity3D zawiera Mono .
Wiele pakietów dla Ubuntu, które można zainstalować za pomocą menedżera pakietów Ubuntu z oficjalnie wspieranych przez społeczność źródeł oprogramowania, jest napisanych w C # i używa Mono. Obejmuje to odtwarzacz muzyki Banshee , aplikację do robienia notatek Tomboy , edytor grafiki rastrowej Pinta oraz menedżera haseł KeePass (od wersji 2).
Większość edytorów tekstu, takich jak Gedit, Vim i Emacs, wyróżnia składnię dla C #. MonoDevelop i Visual Studio Code to dwa popularne zintegrowane środowiska programistyczne działające w systemie Ubuntu i obsługujące programowanie w języku C #.
źródło
Więc tak. Wiedza na temat C # może być dzisiaj bardzo przydatna w systemach Linux.
źródło
Teraz możesz nawet tworzyć aplikacje oparte na XAML dla różnych platform (Linux, Mac, Windows, Android, iOS, UWP), używając .Net Core i nowego projektu o nazwie Avalonia. Avalonia jest w fazie beta, ale teraz działa całkiem dobrze. Jest podobny do WPF, ale z pewnymi ulepszeniami stylów CSS.
Wierzę, że Linux Avalonia obecnie atakuje Gtk, ale chcą przejść do czegoś innego. O tym jest wspomniane w tym filmie, ale osobiście nie mogłem zrozumieć, co powiedział: https://www.youtube.com/watch?v=WESJUJWBLJ0
źródło