Recenzja książki ASP.NET Core 2 and Angular 5

Zapraszam na recenzję.

Szybka recenzja

Książka jest słaba. Ma charakter bardzo długiego 500 stronicowego postu na blogu opisującego jak stworzyć aplikację od zera z użyciem ASP.NET Cora 2 i Angulara 5. Tak jak to jest z postami na blogach tego typu, książka część rzeczy wyjaśnia, co się dzieje w kodzie a bardzo trudne rzeczy pomija lub w najlepszym razie daje długie, ciężko kopiujące się linki do stron (dlaczego jeszcze nikt nie wpadł aby w książkach drukować QR kody do linków), które wcale nie są pomocne, bo odsyłają często do dokumentacji technicznej. Plusem jest to, że wszystkie aspekty tworzenia aplikacji są wzięte pod uwagę. Od planu na aplikację przez odpowiednie wzorce projektowe aż do konkretnych implementacji wraz z pełnym spektrum wdrażania aplikacji na produkcję w tym integracja z MS SQL-em i IIS-em.

Recenzja

Kupiłem tą książkę przypadkowo i trochę przez pomyłkę. Wydawało mi się, że to jakaś gorąca nowość a okazało się, że to tłumaczenie na polski jest gorącą nowością a sama książka jest z 2017. Mimo wszystko w książce nie ma aż tak zaawansowanego kodu, żeby różnica między Angular-em 5 a 8 (nie dawno wyszła) była jakoś znacząco istotna.

Jeśli chodzi o sprawy merytoryczne to książka daje solidny pokaz tego jak powinno wyglądać planowanie, budowa i wdrażanie aplikacji. Dla początkujących może to być bardzo cenna wiedza, żeby pisząc nowe aplikację nie wrzucić sobie na głowę od razu wszystkich aspektów aplikacji tylko iść poklei. Właściwie w książce nie są pominięte żadne aspekty (co się często zdarza w innych tego typu książkach) tworzenia aplikacji. Skupienie się na takich aspektach jak, przejrzystość kodu, wzorce projektowe (SOLID), spory rozdział o autoryzacji przy użyciu(JSON Web Tokens ) do tego wprowadzenie logowania przez Facebook-a itp. Książka opisuje budowę aplikacji do tworzenia i przeprowadzenia quizów w formie pytań i odpowiedzi. Zaczyna dosłownie od zera a kończy na tym jak wdrożyć aplikację na serwer produkcyjny.

Książka omawia każdy aspekt w sposób praktyczny. Czyli jak trzeba napisać coś w Angularze to robi krótki kurs TypeScript-a, jeśli wprowadza autoryzację to robi krótki wykład na temat z czym to się je. Te krótkie wstępy są najlepszymi momentami w książce ponieważ stanowią realną, dobrze poukładaną wiedzę na dany temat. Oceniam to z perspektywy kogoś kto już wie jak to działa ale czasem brakuje mu zaplecza teoretycznego. Nie zawsze co prawda wyczerpuje to temat ale daje solidne podstawy. W książce jest dużo kodu na wielu stronach więc jest co czytać. Pod koniec kodu, jest wyjaśnienie autora o najciekawszych fragmentach w kodzie.

W książce dowiemy się o następujących technologiach:

  • ASP.Net Core 2
  • Angular 5
  • Entity Framework Core
  • LESS
  • TypeScript
  • JSON Web Tokens

Co się chwali to, że autor używa LESS-a a nie zwykłego CSS-a, to się rzadko zdarza a zawsze to cenna wiedza jak to szybko skonfigurować.

To dlaczego ta książka jest taka słaba?

Powiem krótko, to jest książka ala długi post na blogu. Czuć, że autorowi nie zależy na tym aby czytelnik się nauczył tylko na tym, żeby samemu dobrze utrwalić sobie wiedzę. To jest dość kontrowersyjne zdanie ale tak sam czuje jak ją czytałem. Autor wybiera sobie tematy o których piszę dużo (LESS, CSS, SAAS) a nie które całkowicie pomija podając informację, że to nie jest przedmiotem książki i daje linka do dokumentacji. Z niektórymi się zgadzam ale inne mógł by rozwinąć jednak.

Autor nie kończy biznesowo aplikacji. Pod koniec książki aplikacja właściwie nie robi tego co by się wydawało , że ma robić. Mniej więcej kończy to się w 3/4 projektu więc nie ma się poczucia, że to jest w pełni gotowa aplikacja.

Jest sporo magicznego kodu, który działa. Najbardziej widocznym przykładem jest rozdział o JSON Web Tokens. Konfiguracja w .NET Core jest po prostu wklejona na całą stronę i jest na końcu jest dosłownie omówienie tylko jednego pola z tego kodu. Nawet nie ma odnośnika do miejsca w którym można by znaleźć więcej informacji. Takich sytuacji jest więcej.

Omówienia pod koniec kodu są czasem nie wystarczające i trzeba włożyć trochę własnej pracy w to aby jakieś fragmenty kodu zrozumieć. To znaczy trzeba samemu sobie poszukać o co chodzi.

Kodu w książce jest bardzo dużo. Jest, tak mi się wydaje, więcej niż samego tekstu. Z tych 500 stron kod to połowa stron. Może to nie jest jakiś minus ale czasem z tego kodu nic się nie dowiadujemy, bo nie ma w nim nic ciekawego, co autor wiele razy sam stwierdza i nie omawia tego kodu.

Podsumowanie

Dla początkujących będzie to ciężka przeprawa przez nie do końca wyjaśniony kod a dla zaawansowanych będzie sprawiać wrażenie nie dosytu.

Polecam tą książkę tylko w sytuacji, jak będzie tania, myślę, że 30-40 zł to maksymalna ceną jaką można dać za taką książkę. Taka cena będzie oddawała prawdziwą wartość wiedzy, która jest w książce. Teraz jest po 50zł.

Moja ocena to 3/5 za 80 zł i 4/5 na 30 zł ; )