Rider jest teraz darmowy — konfiguracja .NET 10 w 10 minut

JetBrains Rider od 2024 roku jest darmowy do użytku niekomercyjnego. Pokazuję, jak w kilka minut postawić czysty projekt Web API w .NET 10 i dlaczego przesiadam się z Visual Studio.

JAJarosław Armatys 6 min czytania
Wersja wideo tego wpisu — obejrzyj na YouTube

Visual Studio to potężne narzędzie, ale jeśli kiedykolwiek próbowałeś w nim pracować przez cały dzień na Macu albo męczyłeś się z jego kaprysami przy większym rozwiązaniu, wiesz, o czym mówię. Od kilku lat korzystam z JetBrains Rider i za każdym razem, gdy muszę wrócić do VS-a, mam wrażenie, że cofnąłem się w czasie. A od 2024 roku doszedł argument, który zabija dyskusję: Rider jest darmowy do użytku niekomercyjnego.

W tym wpisie pokażę ci, jak w dziesięć minut postawić czysty projekt Web API w .NET 10, który będzie startem dla wszystkich kolejnych materiałów z tej serii.

Darmowy Rider — co się zmieniło w 2024

Przez lata głównym argumentem „za" Visual Studio była cena. Community Edition — darmowe, w miarę kompletne, dla jednoosobowych projektów i nauki w zupełności wystarczające. Rider w tym porównaniu wypadał jak luksus: płatna subskrypcja JetBrains, niby niedroga, ale dla hobbysty albo studenta bariera wejścia realna.

W 2024 JetBrains zmienił model. Rider — tak samo jak WebStorm — dostał plan non-commercial use, czyli darmowy do nauki, projektów open source, hobbystycznych eksperymentów i tworzenia treści (YouTube, blog, kursy). Płacisz tylko wtedy, kiedy robisz na nim coś, na czym zarabiasz — w firmie, u klienta, w komercyjnym produkcie.

Visual Studio to świetny IDE, ale Rider mnie po prostu mniej frustruje. Nie walczę z narzędziem, tylko piszę kod.

Dla mnie to oznacza jedno: mogę śmiało polecać go początkującym, którzy zaczynają przygodę z .NET-em. Nie muszą przechodzić przez Community Edition tylko po to, żeby potem i tak w pracy przesiadać się na coś innego. Mogą od razu usiąść do tego samego narzędzia, na którym pracują seniorzy w wielu firmach.

Instalacja Rider — szybko i bezboleśnie

Proces jest banalny:

  1. Wchodzisz na jetbrains.com/rider.
  2. Klikasz Download, wybierasz system (macOS, Windows, Linux — wszystkie wspierane).
  3. Odpalasz instalator.
  4. Przy pierwszym uruchomieniu wybierasz plan Non-commercial use (jeśli nie odpalasz tego na komercyjnym projekcie).

Polecam pobrać Rider przez JetBrains Toolbox zamiast bezpośrednio. Toolbox to mały menadżer, który trzyma ci wszystkie IDE JetBrains w jednym miejscu i aktualizuje je w tle. Jeśli kiedyś dojdzie CLion, WebStorm albo DataGrip — masz je wszystkie pod jednym dachem.

Do Ridera przyda ci się jeszcze .NET 10 SDK. Pobierzesz go z dotnet.microsoft.com/download. Bez SDK Rider nie ma z czym pracować.

Pierwszy projekt Web API w .NET 10

Po włączeniu Ridera zobaczysz ekran startowy z listą ostatnio otwieranych projektów. Klikasz New Solution.

Po lewej stronie masz listę presetów — od pustej solucji, przez projekt konsolowy, bibliotekę klas, aż po aplikacje webowe. Nas interesuje ASP.NET Core Web Application.

Teraz konfiguracja — i tu kilka rzeczy, na które warto zwrócić uwagę:

  • Solution name — nadaj coś sensownego, np. Test albo nazwę projektu, który budujesz.
  • Project name — może być ten sam co solucja, ale lepiej wydzielić. Ja robię Test (solucja) + Project lub Api wewnątrz. Dzięki temu widzisz strukturę: jedna solucja, w środku potencjalnie wiele projektów.
  • Solution format — wybierz .slnx zamiast klasycznego .sln. To nowy, czytelniejszy format XML-owy, dużo wygodniejszy w obsłudze i w mergowaniu konfliktów w Gicie.
  • SDK — wybierz najnowsze dostępne. W momencie nagrywania to .NET 10.
  • Template — dla Web API wybierasz Web App (ASP.NET Core). Pomijasz dodatkowe opcje typu HTTPS czy OpenAPI — odtworzymy je później ręcznie, jeśli będą potrzebne.

Nie klikaj bezmyślnie „create repository" w kreatorze. Lepiej zainicjować gita później, kiedy wiesz, co chcesz commitować, a czego nie.

Klikasz Create. Rider mieli chwilę, restore'uje pakiety NuGet, otwiera solucję. Widzisz pięć plików:

  • Program.cs — punkt wejścia, minimal API style.
  • Project.http — plik do odpalania requestów HTTP bez Postmana.
  • appsettings.json — konfiguracja podstawowa.
  • appsettings.Development.json — konfiguracja dla środowiska dev.
  • Project.csproj — definicja projektu.

To jest twoja czysta baza. Nic więcej nie potrzebujesz, żeby zacząć.

Launch settings — czyszczenie startu

Jedna rzecz, którą robię zawsze po utworzeniu nowego projektu: wchodzę w Properties/launchSettings.json i sprzątam. Domyślnie Rider (i VS) tworzy trzy profile:

  • http — uruchamia aplikację na HTTP.
  • https — to samo, ale z certyfikatem self-signed.
  • IIS Express — stary, wyjątkowo zbędny.

Lokalnie nie potrzebuję HTTPS-a — certyfikat dev to więcej kłopotu niż pożytku. Zostawiam tylko profil http, zmieniam mu nazwę na Api (albo cokolwiek sensownego) i ustawiam launchBrowser na false, żeby mi się przeglądarka nie otwierała przy każdym F5.

Jeśli wolisz CLI, cała ta procedura sprowadza się do kilku komend:

dotnet new sln -n Test --format slnx
dotnet new webapi -n Project
dotnet sln add Project/Project.csproj
cd Project
dotnet run

Różnica? Rider zrobi ci to w GUI, ze wszystkimi domyślnymi ustawieniami i podpowiedziami. Ale jeśli pracujesz w CI/CD albo stawiasz projekty na VPS, warto znać też drogę przez dotnet.

Debug vs standard — codzienność z Riderem

Po odpaleniu projektu w trybie standardowym (zielony trójkąt) aplikacja startuje szybko, bez narzutu debuggera. Jeśli potrzebujesz zatrzymywać się na breakpointach, klikasz w zielonego robaczka obok — aplikacja startuje w trybie debug.

Rider ma jedną rzecz, która mnie w VS-ie zawsze irytowała: hot reload działa. Po prostu działa. Zmieniasz kod, zapisujesz, aplikacja odświeża zmiany bez restartu. W VS-ie przy dużych solucjach to loteria — raz zadziała, raz nie, raz wysypie proces.

Drugi plus: integracja z narzędziami JetBrains. dotTrace, dotMemory, DataGrip — wszystko gra ze sobą natywnie, bez wtyczek, bez konfiguracji.

Co tracisz, co zyskujesz względem Visual Studio

Zyskujesz:

  • Wydajność — Rider jest oparty o platformę IntelliJ, pisaną z myślą o dużych solucjach. W VS-ie przy 50+ projektach zaczyna się modlitwa do SSD. W Riderze po prostu działa.
  • Refaktoryzacje — ReSharper wbudowany. Rename, extract, inline, move — wszystko z poziomu skrótu Ctrl+Alt+Shift+T. W VS-ie musisz kupić ReSharpera osobno albo męczyć się z podstawowymi refaktorami z pudełka.
  • Cross-platform — macOS, Linux, Windows, to samo UI, te same skróty. Jeśli przesiadasz się między systemami, to bezcenne.
  • Git integration — po pierwszych 20 minutach w Riderowym Git UI VS-owe Team Explorer wygląda jak relikt.

Tracisz:

  • XAML designer — jeśli robisz WPF-a albo UWP z GUI designerem, Rider ma do tego słabą namiastkę. Prawdziwy projekt desktopowy na Riderze się nie uda.
  • Niektóre enterprise'owe funkcje — IntelliTrace, Live Unit Testing, zaawansowany profiler w VS Enterprise. Ale to zabawki, które 95% developerów i tak nigdy nie włącza.
  • Ekosystem rozszerzeń — VS ma więcej pluginów w Marketplace. Rider ma mniej, ale za to te, które są, działają porządnie.

Jeśli nie piszesz na co dzień WPF-a albo nie używasz VS Enterprise do zaawansowanego debugowania produkcyjnego, nie widzę żadnego realnego powodu, żeby nie dać Riderowi szansy. Szczególnie teraz, kiedy nic cię nie kosztuje.

Co dalej?

Ten projekt — czysty Web API w .NET 10 na Riderze — będzie startem każdego kolejnego odcinka z serii rekrutacyjnej. Zamiast za każdym razem zaczynać od zera, wracasz do tego szablonu i rozbudowujesz o konkretny temat: DI, middleware, autoryzację, testy, cokolwiek.

W następnym odcinku zajmiemy się formatem .slnx i porównamy go z klasycznym .sln — dlaczego warto się na niego przesiąść, kiedy jeszcze nie, i jakie ma to konsekwencje dla pracy zespołowej. Jeśli masz pytania albo chcesz, żebym pokazał coś konkretnego w Riderze, pisz w komentarzach pod filmem.

Tagi:#recruitment#dotnet#rider#ide#tooling

Masz pytanie do tego wpisu?

Napisz do mnie — chętnie porozmawiam o szczegółach technicznych, albo o tym jak zastosować to u Ciebie w projekcie.