Macbook 16 a C#/.NET

0

Cześć, Jak wygląda sytuacja z programowanie w c#/.NET/ASP na macbooku? Szukam laptopa i na prawdę nie widzę nic sensownego na windows.. Myślałem nad surfacebook3 ale koszt jak macbook a procesor gorszy a karta graficzna niepotrzebne mi. Chyba ,że jesteście w stanie coś polecić na windows?

0

Kupowałem laptopa w kwietniu i wybór padł na HP Elitebook 840 G6 i7/32GB.
Na tę chwilę nie narzekam, dało się na nim otworzyć naprawdę wielką solucję z > 300 projektami i pracować z nią, tyle że trzeba było wyłączyć R# (nie mam niestety porównania do innych maszyn). Jedną z wad tego kompa jest włączający się czasem wentylator przy braku poważnego obciążenia przez co chwilami jest głośno. Poza tym sprawdza się bardzo dobrze.

0

Macbook Air to raczej nie da rady do takiego komercyjnego programowania, ale Pro to myśle spokojnie.

0

Mam pewno doświadczenie z .NET w nie-Windows, a konkretnie w Ubuntu Linux. Myślę, że na Mac sprawa będzie wyglądać podobnie.

Na Linux i OSX jest MonoDevelop, a także Xamarin Studio, nie wiem, czy to jest jeden i ten sam program pod różnymi nazwami, na Ubuntu pobrałem MonoDevelop z repozytorium wskazanego na https://www.monodevelop.com/download/ .

Jeśli chodzi o aplikacje .NET, to sprawa wygląda następująco:

  1. Konsolowe - generalnie nie ma prawie żadnych problemów, jedynie z jedną aplikacją wykorzystującą bardziej zaawansowane funkcje konsoli (kolory, buforowanie tekstu) miałem duże problemy.
  2. Używające okien - tu sprawa się nieco komplikuje, bo istnieją w zasadzie 3 biblioteki do okien:
    a. Windows Forms - Na Linux uruchamia się bez większego problemu, ale MonoDevelop nie zapewnia wsparcia w tworzeniu formatek.
    b. Windows Presentation Foundation - Niemożliwe do użycia w systemach innych niż Windows.
    c. GTK# - biblioteka utworzona przez autorów Mono, wspierana przez MonoDevelop, w systemie Windows należy ją doinstalować osobno.
  3. ASP.NET - akurat na Ubuntu tego nie przerabiałem, jednakże 5 lat temu na Raspberry Pi (system Raspbian) uruchomiłem wcześniej opracowaną aplikację ASP.NET z powodzeniem. Do tego był użyty FastCGI, skonfigurowany według znalezionych opisów. Aplikacja działała bez problemów po zainstalowaniu Mono.
  4. Co do .NET Core, to nie wypowiem się, bo tego nie znam, a nie chcę zgadywać, jak to wygląda i jak będzie działać.

W związku z powyższym, jak zdecydujesz się na Maca, to nie będziesz zmuszony do rezygnacji z C# i .NET, w większości przypadków praca w tej technologii będzie możliwa. Mogą być tylko pewne problemy z przeniesieniem istniejących aplikacji, bo albo trzeba trochę coś zmienić, albo trzeba dodać jakąś dodatkową bibliotekę (taką sytuację miałem z jedną aplikacją używająca bibliotek MailKit i MimeKit, musiałem dodać Bouncy.Castle). Przy opracowywaniu aplikacji od podstaw nie będzie problemu.

Ja programuję w C# w ramach hobby, niekomercyjnie, niedawno zmieniałem cały komputer i razem z tym zamieniłem Windows 8 na Ubuntu Linux, zmiany nie żałuję, lubię C# i nadal zamierzam z tego korzystać, równolegle z C++/Qt.

Jeżeli masz taką możliwość, to proponuję zainstalować Mac OS X na maszynie wirtualnej (niekoniecznie najnowszą dostępną wersję, na Allegro są oryginalne nośniki za kilkadziesiąt złotych, więc nie będziesz zmuszony do uzyskiwania nielegalnych wersji systemu z internetu) i sprawdzić, jakie będą możliwości.

2

Zależy jaki mak, jak poniżej 10k to może być problem z pracą, ludzie się paczą z grymasem, odwracają wzrok...

0
czysteskarpety napisał(a):

Zależy jaki mak, jak poniżej 10k to może być problem z pracą, ludzie się paczą z grymasem, odwracają wzrok...

Powyżej 10k, to różnice wydajnościowe pewnie się już zacierają, ale nie zmienia to faktu, że jak ktoś potrzebuje bardzo wydajny sprzęt, to powinien szukać komputera stacjonarnego, a laptopa kupuje ktoś, kto potrzebuje mieć możliwość przenoszenia komputera z miejsca na miejsce. Ale skoro wątek jest na temat wyboru kompa spośród dwóch laptopów, to widocznie autor potrzebuje przenosić z miejsca na miejsce.

0

Mam pewno doświadczenie z .NET w nie-Windows, a konkretnie w Ubuntu Linux. Myślę, że na Mac sprawa będzie wyglądać podobnie.

Nie do końca, bo na macOSa jest VS, a na Linuxa nie widziałem (jest wspomniane Mono albo VSC).

Wracając do tematu. Da się, a jak napotkasz ścianę to zawsze jest Parallels Desktop.

1
andrzejlisek napisał(a):

Na Linux i OSX jest MonoDevelop, a także Xamarin Studio, nie wiem, czy to jest jeden i ten sam program pod różnymi nazwami, na Ubuntu pobrałem MonoDevelop z repozytorium wskazanego na https://www.monodevelop.com/download/ .

Nie ma już Xamarin Studio, teraz zmieniło nazwę na Visual Studio for Mac, ale to w zasadzie tylko rebranding, bo nie ma z "dużym" VS wiele wspólnego. Ale jest też Rider od JetBrains, można obejrzeć, bo całkiem fajny produkt.

  1. Co do .NET Core, to nie wypowiem się, bo tego nie znam, a nie chcę zgadywać, jak to wygląda i jak będzie działać.

To ja się wypowiem - .NET Core dla macOS działa identycznie jak dla Windows. ASP.NET Core działa dobrze, nie zauważyłem żadnych różnic pomiędzy Windows, Linuksem i macOS, o ile się dobrze robi (np. nie ustawia na stałe ścieżek w rodzaju C:\). Poprzednie wersje ASP.NET MVC działały pod Mono, ale nie zawsze perfekcyjnie. WebForms nie wiem, bo nie próbowałem.

0

Podstawowa wada jest taka że wszystkie narzędzia GUI nie odpalą się na Linuxie. Mono co prawda próbowało zrobić WinForms ale słabo to działa. Narzędzia takie jak NuGet Package Explorer czy Azure NService Bus Explorer bo prostu się nie odpalą na Linuxie. Z pozytywów jeżeli ktoś jest masochistą i pracuje z PowerShell'em to jest on od niedawna dostępny na Linux'ach.

Rider jest bardzo dobrym IDE ale niestety wersji darmowej nie posiada (jedynie Trial), rozsądnym wyborem jest (jeszcze ciut niedorobione) VSCode ze swoim arsenałem wtyczek i rozszerzeń.

Jak ostatnio sprawdzałem to F# cały czas miał problemy z działaniem na Linuxach. Rok temu prosili jeszcze żeby sobie ręcznie skompilować całe środowisko za pomocą Mono. Może coś się poprawiło przez rok?

Jeżeli nie chcesz wychodzić poza Web'a i użyjesz VSCode to powinieneś daleko zajechać ale nigdy w tym setup'ie nie pracowałem na większych projektach.

PS. Użyłem słowa Linux ale jak wiadomo macOS jest Unixem i to co się odpala na Linuxie będzie działać i na macOS'ie

1

PowerShell dla masochistów, ale GUI nie. Ciekawa filozofia w programowaniu.

0

A mógłby ktoś podać wydajność jakiegoś większego projektu na Macbooku w oparciu o .NET / Core? Bo jestem ciekawy jakby to wyglądało. Ktoś może ma prywatnie? :)

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