Wiele osób pyta jakie książki polecam do nauki aplikacji webowych w C#. Chodzi oczywiście o technologię ASP.NET. To co przygotowałem dzisiaj to Recenzja książki Pro ASP.NET Core MVC. Jej autorem jest Adam Freeman. Jeśli znasz tego autora to wiesz, że jest świetny.
Jest jedna super książka na ten temat.
Dlatego napisałem wczoraj jej recenzję.
Ta książka to Pro ASP.NET Core MVC, Adam Freeman
Dlaczego akurat ta książka?
Bo ta książka pozwoliła mi zostać programistą .NET.Pro ASP.NET Core MVC to świetny przewodnik po ASP.NET dla początkujących. A natknąłem się na nią w księgarni około 8 lat temu. Tytuł zaczyna się od słowa Pro. Pro, jak profesjonalista. Któż nie chce być pro? Charakterystyczna czarna okładka wydawnictwa Apress od razu zapowiada wartościowe treści. I tak rzeczywiście jest. Książka jest podzielona na rozdziały w odpowiedniej kolejności,. Oprócz wiedzy dotyczącej stricte aplikacji webowych jest zawsze kontekst. Dlatego dowiesz się z niej tego co wielu autorów pomija – czyli kontekst. Książka jest dopracowana i idealna jako wprowadzenie do tematu programowania aplikacji internetowych w języku C#.
Kim jest autor?
Adam Freeman swoją pierwszą książkę o programowaniu napisał w 1996 roku. Jest autorem ponad 30 książek na temat programowania. Wiele z nich dotyczy aplikacji webowych. Pisze zarówno o backendzie(ASP.NET, LINQ, Docker, Entity Framework) jak i frontendzie (Angular, Typescript, React, jQuery). Moim zdaniem jego największa zaletą jest styl jakim się posługuje. Jest jasny, precyzyjny i zrozumiały. Książki Adama Freemana zawsze dobrze mi się czytało.
O czym jest ta książka?
Książka dostarcza więcej wiedzy niż bym się spodziewał. Jest ona nie tylko o aplikacjach webowych ASP.NET ale wprowadza mnóstwo wartościowej wiedzy z zakresu platformy .NET. A więc jest coś czego nie ma w innych książkach o programowaniu, czyli szerszy kontekst. Pozwala to ugruntować naszą wiedzę z wielu dziedzin programowania w .NET.
Książka jest podzielona na 31 rozdziałów. Pierwsze rozdziały są doskonałe dla osób początkujących. Znajdziemy w niej instrukcje krok po kroku jak zainstalować Visual Studio, Co to jest ASP.NET, jak działa wzorzec projektowy MVC, Co to są kontrolery, widoku, Razor. Są też dobre praktyki w języku C#, co też stanowi wartościowy dodatek. Adam Freeman tłumaczy od podstaw czym są pakiety Nuget oraz jak należy tworzyć architekturę aplikacji.
Następnie poznajemy zasady tworzenia testów jednostkowych. Uczymy się też jak zbudować aplikację komunikującą się z bazą danych. I nic dziwnego bo Adam Freeman napisał również książkę o Entity Framework. Jest równie dobra.
Ponadto jest mowa o bezpieczeństwie aplikacji i o Visual Studio Code. Poza tym jest o budowaniu widoków HTML, tworzeniu usług sieciowych (czyli web API), walidacji danych wejściowych czy o zarządzaniu rolami i użytkownikami w aplikacjach.
Mogę potwierdzić, że te tematy zawarte w tej książce odzwierciedlają to czym programista .NET zajmuje się na co dzień.
Lepiej wybrać wersję polską czy angielską?
To zależy. Jeśli znasz angielski to wybierz wersję po angielsku. Warto zapłacić więcej.
Potraktuj polski przekład jako ostateczność. Dlaczego? Bo polskie wydania, tłumaczone przez wydawnictwo Helion są delikatnie mówiąc – fatalne. Niestety tłumaczenia mają często rozwlekły styl (tłumacz chyba dostaje pieniądze za ilość słów) i nie zachowują sensu zdań.
Może pokażę przykład. Spójrzmy na oryginał oraz 2 tłumaczenia wydane w Polsce.
Wersja angielska
In the previous chapters, I built quick and simple MVC applications. I described the MVC pattern, the essential C# features, and the kinds of tools that good MVC developers require. Now it is time to put everything together and build a simple but realistic e-commerce application.
Wersja polska – wydanie pierwsze (36 słów)
Zbudowaliśmy już pierwszą prostą aplikację MVC. Zapoznaliśmy się z wzorcem MVC. Przypomnieliśmy najważniejsze funkcje C# oraz przedstawiliśmy narzędzia wykorzystywane przez dobrych programistów MVC.Teraz czas połączyć to wszystko i zbudować kompletną i realistyczną aplikację handlu elektronicznego.
Wersja polska – wydanie siódme (38 słów)
W poprzednich rozdziałach zbudowałeś już pierwsze proste aplikacje MVC. Zapoznałeś się z wzorcem MVC. Przedstawiłem najważniejsze funkcje C# oraz narzędzia wykorzystywane przez dobrych programistów MVC. Teraz czas połączyć to wszystko i zbudować kompletną i realistyczną aplikację typu e-commerce.
Jak widzisz dwa tłumaczenia tego samego tekstu różnią się ilością słów. Ale to jest jeszcze do przełknięcia. Problem pojawia się kiedy Adam Freeman w oryginale posługuje się pierwszą osobą (ang. I built), czyli “zbudowałem” natomiast oba tłumaczenia zmieniają sens zdania: “zbudowaliśmy” albo “zbudowałeś”. I takich przykładów jest mnóstwo.
Dygresja: Niska jakość tłumaczeń wydawnictwa Helion
Inną sprawą jest to, że w polskich tłumaczeniach oferowanych przez wydawnictwo Helion zdarzają się błędy niemal na każdej stronie. Spójrzmy na fragment tłumaczenia książki „Clean Architecture” autorstwa Roberta C. Martina. Sam przeczytaj i zastanów się czy to rozumiesz o co chodziło autorowi. Ja nie rozumiem.
W tym przykładzie tłumacz napisał: „Nie pokrywaj konkretnych funkcji„. Ale kto tak mówi? Gwarantuje Ci, że jeśli na spotkaniu programistów powiesz: „A może byśmy pokryli konkretną funkcję?” to zapadnie niezręczna cisza, po czym ktoś zapyta czy chodzi Ci o pokrycie testami jednostkowymi.
Ale o co w tym akapicie chodzi? Nie wiem. Mogę tylko zgadywać, że chodzi o nadpisywanie funkcji w klasie dziedziczącej (stąd mój komentarz napisany długopisem). A może chodzi o użycie funkcji w innym miejscu. Z tego tłumaczenia nie umiem wywnioskować jaki miał być sens.
Podsumowując: jeśli możesz to sięgnij po oryginał. Unikaj przekładów wydawnictwa Helion jak ognia.
Dla kogo jest ta książka?
Wróćmy do naszej książki: Pro ASP.NET Core MVC.
To obowiązkowa pozycja dla osób początkujących, które znają już język C# i podstawy programowania obiektowego. Natomiast jeśli jeszcze nie znasz podstaw języka C# i nie posługujesz się klasami, to na początek polecam Ci moje darmowe artykuły na temat języka C#. Drugim krokiem będzie opanowanie zasad projektowania obiektowego. Pomoże Ci w tym mój darmowy kurs video Programowanie Obiektowe w języku C#.
Z tą książką jest trochę jak z nauką w szkole – ułatwi Ci zbudowanie fundamentów wiedzy o aplikacjach webowych ASP.NET MVC, które później możesz rozbudować.
Sprawdź, może ta książka zmieni też Twoją karierę.
Gdzie kupić książkę?
Książkę po angielsku możesz kupić tutaj.
Książkę po polski możesz kupić tutaj.
Chcesz nauczyć się programować w środowisku .NET?