Darmowa dostawa od 150,00 zł
ASP.NET Core 2 i Angular 5. Przewodnik dla Full-Stack Web Developera
Promocja Okazja

ASP.NET Core 2 i Angular 5. Przewodnik dla Full-Stack Web Developera

  • Wydawca: Helion Rok wydania: 2018 Oprawa: miękka ISBN: 9788328346437 Ilość stron: 472 Format: 17,5 x 23,5 cm
Rozmiar

71,10 zł

brutto / 1szt.
Najniższa cena z 30 dni przed obniżką: 79,00 zł / szt.-10%
Cena regularna: 79,00 zł / szt.-10%
Cena katalogowa:
Możesz kupić za pkt.
z
Produkt dostępny w bardzo dużej ilości
Skontaktuj się z obsługą sklepu, aby oszacować czas przygotowania tego produktu do wysyłki.
Produkt dostępny w bardzo dużej ilości
Wysyłka
14 dni na łatwy zwrot
Sprawdź, w którym sklepie obejrzysz i kupisz od ręki
ASP.NET Core 2 i Angular 5. Przewodnik dla Full-Stack Web Developera
ASP.NET Core 2 i Angular 5. Przewodnik dla Full-Stack Web Developera
Bezpieczne zakupy
Odroczone płatności. Kup teraz, zapłać później, jeżeli nie zwrócisz
Kup teraz, zapłać później - 4 kroki
Przy wyborze formy płatności, wybierz PayPo.PayPo - kup teraz, zapłać za 30 dni
PayPo opłaci twój rachunek w sklepie.
Na stronie PayPo sprawdź swoje dane i podaj pesel.
Po otrzymaniu zakupów decydujesz co ci pasuje, a co nie. Możesz zwrócić część albo całość zamówienia - wtedy zmniejszy się też kwota do zapłaty PayPo.
W ciągu 30 dni od zakupu płacisz PayPo za swoje zakupy bez żadnych dodatkowych kosztów. Jeśli chcesz, rozkładasz swoją płatność na raty.
Po zakupie otrzymasz pkt.

Framework ASP.NET Core odzwierciedla zmianę podejścia do technologii strony klienta: niezależność od platformy sprzętowej, łatwiejsze prowadzenie testów jednostkowych i rozbudowa tworzonych systemów. Kolejna wersja frameworka odzwierciedla dalszą ewolucję koncepcji: od aplikacji, które miały być reaktywne i responsywne, do progresywnej realizacji zadań. Również technologia strony serwera poczyniła postępy w zakresie stabilności i wydajności pracy, co w widoczny sposób przyczyniło się do radykalnych zmian kolejnych wersji Angulara. Poprzednie wersje ASP.NET Core i Angulara były znakomitą propozycją dla projektantów całościowych rozwiązań. Czy bezproblemowe stosowanie obu tych narzędzi będzie możliwe w przypadku ich najnowszych wersji?

Dzięki tej książce dowiesz się, w jaki sposób zrealizować kompleksowy projekt aplikacji internetowej, zapewniając efektywną pracę jej części klienckiej i serwerowej za pomocą frameworków ASP.NET Core 2 i Angular 5. Dowiesz się, jak zapewnić obsługę wywołań API oraz routingu po stronie serwera, czym jest dowiązanie dwukierunkowe, jak wykorzystać obiekty Observable i jak wstrzykiwać zależności. Nauczysz się stosować framework Entity Framework Core do tworzenia modelu danych, a framework Bootstrap i narzędzie LESS do nadania odpowiednich stylów. Poznasz różne techniki uwierzytelniania klientów, w tym protokół OAuth 2. Dowiesz się też, jak poprawnie skonfigurować mechanizm odwrotnego pośrednika miedzy serwerami IIS i Kestrel.

W tej książce między innymi:

  • Solidne wprowadzenie do frameworków i przygotowanie środowiska pracy
  • Entity Framework Core i implementacja modelu danych
  • Nowoczesne podejście do interfejsu graficznego
  • Zaawansowane funkcje formularzy, w tym walidacja i weryfikacja danych
  • Uwierzytelnianie i autoryzacja oraz praca z tokenami
  • Wdrażanie aplikacji w środowisku produkcyjnym

Nowoczesne aplikacje: oszałamiająca wydajność, wszechobecna prostota!

O autorze

Valerio De Sanctis od kilkunastu lat zarządza projektami budowania profesjonalnych witryn internetowych. Zdobył również spore doświadczenie w branży finansowej i w ubezpieczeniach. Specjalizuje się w implementacji i utrzymaniu rozwiązań wykorzystujących technologię .NET. Współpracował między innymi z London Stock Exchange Group, Zurich Insurance Group, Allianz, Generali, Harmonie Mutuelle, AIG, QBE, Marsh & McLennan, Lloyd's, Honda Motor, FCA Group, Luxottica, ANSA, Saipem, ENI, Enel, Terna, Banzai Media, Virgilio.it, Repubblica.it i Corriere.it.

 

Spis treści

  • Zespół wydania oryginalnego
  • O autorze
  • O redaktorach merytorycznych
  • Wstęp
    • Zawartość książki
    • Oprogramowanie wymagane do wykonania przykładów
    • Do kogo skierowana jest ta książka?
    • Konwencje typograficzne
    • Pomoce dla czytelnika
      • Przykładowy kod
  • Rozdział 1. Przygotowanie środowiska
    • Dwóch graczy, jeden cel
      • Rewolucja ASP.NET
      • Co nowego w Angularze?
    • Podejście od początku do końca
    • Aplikacja typu SPA
      • Typowe funkcjonalności nowoczesnych aplikacji SPA
      • Oczekiwania właściciela produktu
    • Projekt przykładowej aplikacji SPA
      • Wizja
        • To nie będzie typowa aplikacja Witaj, świecie
        • Aplikacja TestMakerFree
      • Podstawowe funkcjonalności i wymagania
    • Przygotowanie środowiska pracy
      • Uwaga pomyśl, zanim to zrobisz
        • Mit niedziałającego kodu
        • Pozostań otwarty na nowości, ale wprowadzaj je odpowiedzialnie
        • Wersje narzędzi i bibliotek
      • Konfiguracja projektu
        • Alternatywna konfiguracja z wykorzystaniem wiersza poleceń
        • Test konfiguracji środowiska
    • Poznawanie projektu
      • Pliki konfiguracyjne
        • Plik Program.cs
        • Plik Startup.cs
        • Plik appsettings.json
        • Plik package.json
          • Aktualizacja (lub dezaktualizacja) Angulara
          • Aktualizacja (lub dezaktualizacja) pozostałych pakietów
        • Plik tsconfig.json
        • Pliki konfiguracyjne narzędzia Webpack
          • Aktualizacja pliku webpack.config.js
          • Uaktualnienie pliku webpack.config.vendor.js
          • Dlaczego warto korzystać z dynamicznego mechanizmu pakowania modułów?
          • Odświeżenie plików generowanych przez Webpack
      • Kod po stronie serwerowej
        • Plik Controllers/HomeController.cs
        • Plik Controllers/SampleDataController.cs
        • Folder /Views/
      • Kod po stronie klienckiej
        • Folder /ClientApp/app/
    • Przygotowanie projektu
      • Pamięć podręczna i pliki statyczne
        • Mechanizm stosowany w przeszłości
        • Powrót do przyszłości
        • Czas na test
          • Podejście z użyciem silnego typowania
      • Czyszczenie aplikacji klienckiej
        • Ograniczenie liczby komponentów
        • Klasy AppModule
        • Aktualizacja NavMenu
    • Odnośniki
    • Poruszana tematyka
    • Podsumowanie
  • Rozdział 2. Część serwerowa wykorzystująca .NET Core
    • Przepływ danych
      • Zadania modelu widoku
    • Pierwszy model widoku
      • Klasa QuizViewModel
      • Klasa QuizController
        • Dodatkowe metody akcji
          • Metoda ByTitle
          • Metoda Random()
        • Sprawdzenie, czy wszystko działa
    • Dodawanie pozostałych kontrolerów
      • Klasa QuestionViewModel
      • Klasa QuestionController
      • Klasa AnswerViewModel
      • Klasa AnswerController
      • Klasa ResultViewModel
      • Klasa ResultController
    • Działanie routingu
      • Definiowanie routingu
        • Routing dawniej i dziś
        • Obsługa routingu w .NET Core
          • Trzy sposoby routingu
      • Dodawanie nowych ścieżek
        • Atrapa dostawcy danych
    • Obsługa pojedynczych elementów
    • Poruszana tematyka
    • Podsumowanie
  • Rozdział 3. Część kliencka korzystająca z frameworka Angular
    • Wzorzec nawigacji
    • Powiązanie ogół-szczegóły
      • Kliencka część interfejsu dotyczącego quizu
      • Komponent QuizListComponent
        • Nowa klasa HttpClient
          • Porównanie ze starszym standardem
          • Jak zainstalować klasę HttpClient?
          • Jak jej użyć?
          • Wstrzyknięcie jako zależności
          • Pobranie i subskrypcja
        • Metoda onSelect()
        • Plik szablonu
        • Plik arkusza stylów
        • Dodanie komponentu
          • Plik modułu (klasa AppModule)
          • Szablon komponentu HomeComponent
        • Test
      • Klasa QuizComponent
        • Dodanie plików komponentu
        • Dodanie komponentu
        • Test
    • Dołączanie dodatkowych list
      • Wiele instancji jednego komponentu
        • Testowanie i debugowanie
        • Interfejs OnInit i zdarzenia cyklu życia
        • Implementacja metody ngOnInit
        • Testowanie poprawionej wersji
    • Dwukierunkowe dowiązanie danych
      • Wyłączenie dwukierunkowego dowiązania danych
    • Routing po stronie klienckiej
      • Strategie PathLocationStrategy i HashLocationStrategy
      • Refaktoryzacja aplikacji
      • Rejestracja nowej ścieżki
        • Aktualizacja komponentu QuizComponent
          • Pobranie identyfikatora quizu
          • Dodanie obiektu HttpClient
          • Pobieranie danych
        • Aktualizacja komponentu QuizListComponent
        • Test routingu
      • Dodanie nowych komponentów
        • Komponent AboutComponent
        • Komponent LoginComponent
        • Komponent PageNotFoundComponent
        • Aktualizacja klasy AppModule
    • Test całej aplikacji
    • Poruszana tematyka
    • Podsumowanie
  • Rozdział 4. Model danych wykorzystujący Entity Framework Core
    • Przygotowania
      • Instalacja Entity Framework Core
      • Podejścia do modelowania danych
        • Najpierw model
        • Najpierw baza danych
        • Najpierw kod
        • Podjęcie decyzji
    • Tworzenie encji
      • Klasa ApplicationUser
      • Klasa Quiz
      • Klasa Question
      • Klasa Answer
      • Klasa Result
    • Definiowanie relacji
      • Wzorzec leniwego wczytywania danych w relacjach jeden-do-wielu
    • Konfiguracja obiektu DbContext
    • Strategie inicjalizacji bazy danych
      • Wybór bazy danych
      • Aktualizacja pliku appsettings.json
      • Tworzenie bazy danych
        • Aktualizacja pliku Startup.cs
      • Dodanie migracji początkowej
        • Błąd braku pliku
        • Działanie mechanizmu migracji
    • Implementacja wypełniania bazy danymi
      • Utworzenie klasy DbSeeder
      • Użycie DbSeeder w Startup.cs
      • Wypełnienie bazy danymi początkowymi
    • Aktualizacja klasy QuizController
      • Narzędzie Mapster
        • Instalacja
        • Podstawy użycia
        • Aktualizacja klasy
      • Testowanie dostawcy danych
    • Poruszana tematyka
    • Podsumowanie
  • Rozdział 5. Interakcje po stronie klienckiej
    • Dodawanie, aktualizacja i usuwanie quizów
      • Aktualizacja klasy QuizController
      • Dostosowanie części klienckiej
        • Dodanie komponentu QuizEditController
        • Aktywacja trybu edycji
          • Obsługa zdarzeń lub linki routera
          • Dodanie ścieżki edycji
        • Implementacja funkcjonalności usuwania
          • Kilka słów o obiektach Observable
      • Pierwszy test poważnej interakcji klienta z serwerem
      • Przepływ komunikacji między klientem i serwerem
    • Pytania, odpowiedzi i wyniki
      • Zadania po stronie serwerowej
        • Klasa QuestionController
        • Klasa AnswerController
        • Klasa ResultController
        • Klasa BaseApiController
          • Zastosowanie klasy BaseApiController
      • Zadania po stronie klienckiej
        • Dodanie interfejsów
        • Komponent QuestionListComponent
          • Wprowadzenie do metody ngOnChanges()
          • Dlaczego powinniśmy się tym przejmować?
          • Plik szablonu
          • Dodanie referencji
        • Komponent QuestionEditComponent
          • Referencje i routing
        • Komponent AnswerListComponent
        • Komponent AnswerEditComponent
          • Plik szablonu
          • Referencje i routing
        • Komponent ResultListComponent
          • Referencje i routing
        • Komponent ResultEditComponent
    • Pełnowymiarowy test aplikacji
    • Poruszana tematyka
    • Podsumowanie
  • Rozdział 6. Arkusze stylów i układ interfejsu graficznego
    • Czy jest aż tak źle?
    • Wprowadzenie do LESS
      • Języki arkuszy stylów
      • CSS
        • Przykładowy kod CSS
      • Czym jest LESS i dlaczego warto go używać?
        • Zmienne
        • Dyrektywy importu
        • Zagnieżdżanie selektorów
        • Domieszki (mixin)
        • Pseudoklasa :extend
      • Dokumentacja LESS
      • Sass, Stylus i inne możliwości
    • Implementacja LESS
      • Instalacja kompilatora LESS
      • Kompilacja plików LESS za pomocą narzędzia Webpack
    • Samodzielne definiowanie stylów kontra użycie frameworka CSS
      • Podejście zróbmy wszystko sami
        • Zalety
        • Wady
      • Podejście wykorzystujące framework CSS
        • Zalety
        • Wady
      • Wnioski
    • Praca z Bootstrapem
      • Zmiana motywu
        • Przebudowanie plików dystrybucyjnych zewnętrznych dostawców
          • Usunięcie folderu /wwwroot/dist/
          • Uaktualnienie pliku .csproj
          • Utworzenie pliku update-webpack.bat
        • Sprawdzenie nowego motywu
      • Zmiana struktury interfejsu użytkownika
        • Komponent AppComponent
        • Komponent NavMenuComponent
        • Komponent QuizSearchComponent
          • Rejestracja komponentu QuizSearchComponent
        • Plik SVG z logo
        • Szybki test
      • Stylowanie komponentów
        • Enkapsulacja CSS
          • Wbudowana enkapsulacja wykorzystująca Shadow DOM
          • Wyłączenie enkapsulacji
        • Komponent HomeComponent
        • Komponent QuizListComponent
          • Następny test interfejsu użytkownika
        • Komponent QuizComponent
          • Test interfejsu użytkownika
        • Komponent QuizEditComponent
        • Komponenty pytania, odpowiedzi i wyniku
          • Przyciski i ikony
          • Tabele i elementy div
          • Formularze i pola tekstowe
      • Całościowy test zmian interfejsu
    • Poruszana tematyka
    • Podsumowanie
  • Rozdział 7. Formularze i weryfikacja danych
    • Walidacja danych
      • Formularze we frameworku Angular
        • Formularze sterowane szablonami
          • Zalety
          • Wady
        • Formularze sterowane modelem
      • Pierwszy reaktywny formularz
        • Dodanie referencji do ReactiveFormsModule
        • Uaktualnienie komponentu QuizEditComponent
        • Dodanie walidatorów
          • Dodanie skrótów
      • Uaktualnienie komponentów
        • Komponent QuestionEditComponent
        • Komponent AnswerEditComponent
        • Komponent ResultEditComponent
    • Debugowanie i testowanie
      • Jak wygląda model formularza?
        • Operator potoku
      • Reagowanie na zmiany
        • Obserwowanie obiektu Observable
        • Rozbudowa dziennika aktywności
      • Debugowanie po stronie klienta
      • Testy jednostkowe formularzy
    • Poruszana tematyka
    • Podsumowanie
  • Rozdział 8. Uwierzytelnianie i autoryzacja
    • Uwierzytelniać czy tego nie robić?
      • Uwierzytelnianie
        • Uwierzytelnianie przy udziale strony trzeciej
          • Wzlot i upadek OpenID
          • OpenID Connect
      • Autoryzacja
        • Autoryzacja przy udziale strony trzeciej
      • Rozwiązania własne czy firm trzecich?
    • Mechanizmy uwierzytelniania wbudowane w .NET Core
      • Konfiguracja .NET Core Identity
        • Konfiguracja usługi Identity
        • Klasa ApplicationUser jako klasa potomna
        • Uaktualnienie klasy DbContext
        • Modyfikacja klasy DbSeeder
          • Kilka słów na temat zadań asynchronicznych i blokad wzajemnych
    • Aktualizacja bazy danych
      • Dodanie migracji dotyczącej usługi Identity
      • Zastosowanie migracji
        • Opcja 1. aktualizacja
        • Opcja 2. usunięcie i ponowne utworzenie
      • Wypełnienie bazy danymi
    • Sposoby uwierzytelniania
      • Sesje
      • Tokeny
      • Sygnatury
      • Uwierzytelnianie dwuetapowe
      • Wnioski
    • Implementacja uwierzytelniania JWT
      • Dodanie usługi uwierzytelniania do klasy startowej
      • Aktualizacja plików AppSettings
      • Klasa TokenController
        • Aktualizacja klasy BaseApiController
          • Aktualizacja kontrolerów dziedziczących po klasie bazowej
        • Dodanie klasy TokenController
        • Klasa TokenRequestViewModel
        • Klasa TokenResponseViewModel
        • Test narzędziem Postman
      • Formularz logowania w Angularze
        • Interfejs TokenResponse
        • Klasa AuthService
          • Aktualizacja klasy AppModule
        • Nowa wersja komponentu LoginComponent
          • Pierwszy test logowania
        • Dodanie tokena do nagłówka żądania HTTP
          • Klasa AuthInterceptor
          • Dodanie AuthInterceptor do AppModule
    • Wymuszenie autoryzacji
      • Dostosowanie klienta
        • Komponent NavMenuComponent
        • Komponent QuizComponent
      • Ochrona serwera
        • Pobranie identyfikatora aktualnego użytkownika
      • Sprawdzenie uwierzytelniania na styku klient-serwer
    • Poruszana tematyka
    • Podsumowanie
  • Rozdział 9. Tematy zaawansowane
    • Wygasanie tokena i tokeny odświeżania
      • Czym jest token odświeżania?
      • Zadania po stronie serwerowej
        • Dodanie encji dla tokena
          • Aktualizacja encji użytkownika
          • Aktualizacja ApplicationDbContext
          • Przygotowanie i zastosowanie migracji w EF Core
        • Implementacja tokena odświeżania
          • Aktualizacja klasy TokenResponseViewModel
          • Aktualizacja klasy TokenRequestViewModel
          • Aktualizacja klasy TokenController
      • Zadania po stronie klienckiej
        • Aktualizacja interfejsu TokenResponse
        • Aktualizacja klasy AuthService
        • Dodanie klasy AuthResponseInterceptor
          • Dodanie nowej klasy AuthResponseInterceptor do AppModule
      • Test działania aplikacji
    • Rejestracja nowego użytkownika
      • Zadania po stronie serwerowej
        • Klasa UserController
        • Klasa UserViewModel
      • Zadania po stronie klienckiej
        • Interfejs User
        • Klasa RegisterComponent
          • Własne walidatory
          • Pliki szablonu i arkusza stylów
        • Plik AppModule
        • Komponent LoginComponent
        • Komponent NavMenu
      • Test działania aplikacji
    • Uwierzytelnianie dzięki firmom trzecim
      • Działanie uwierzytelniania OAuth2
        • Mechanizm jawny czy niejawny?
          • Zalety i wady podejścia niejawnego
          • Zalety i wady podejścia jawnego
        • Wnioski
      • Logowanie do Facebooka
        • Tworzenie aplikacji Facebooka
      • Mechanizm niejawny
        • Aktualizacja klasy TokenController
          • Dodanie metody GenerateRandomPassword()
        • Dodanie komponentu LoginFacebookComponent
          • Działanie stref
          • Dodanie pliku szablonu
          • Aktualizacja AppModule
          • Użycie komponentu LoginFacebookComponent
        • Test działania aplikacji
      • Mechanizm jawny
        • Instalacja pakietu Authentication.Facebook
        • Konfiguracja usługi uwierzytelniania poprzez Facebooka
        • Aktualizacja pliku appsettings.json
        • Aktualizacja klasy TokenController
          • Metoda ExternalLogin
          • Dodanie klasy SignInManager
          • Metoda ExternalLoginCallback
        • Komponent LoginExternalProvider
          • Aktualizacja AppModule
          • Użycie komponentu LoginExternalProvidersComponent
        • Test działania aplikacji
    • Poruszana tematyka
    • Podsumowanie
  • Rozdział 10. Prace wykończeniowe i wdrożenie
    • Przejście na SQL Server
      • Instalacja SQL Server 2017 Express Edition
      • Instalacja SQL Server Management Studio
        • Konfiguracja bazy danych
          • Zmiana sposobu uwierzytelniania
          • Dodanie bazy danych TestMakerFree
          • Dodanie nowego użytkownika dla bazy danych
          • Powiązanie loginu z bazą danych
      • Dodanie konfiguracji połączenia z bazą SQL Server
        • Modyfikacja konfiguracji połączenia z bazą danych
      • Dodanie produkcyjnego adresu URL u zewnętrznych dostawców
      • Aktualizacja pliku launchSettings.json
    • Publikacja aplikacji internetowej
      • Tworzenie profilu publikacji
        • Publikacja poprzez protokół FTP
        • Profil publikacji do folderu
      • Publikacja aplikacji internetowej
    • Konfiguracja serwera i IIS
      • Instalacja modułu ASP.NET Core dla IIS
      • Dodanie nowej witryny
      • Konfiguracja puli aplikacji
    • Uruchamianie silnika
      • Analiza typowych błędów po wdrożeniu
        • Przeanalizowanie komunikatu w przeglądarce
          • Plik web.config
        • Narzędzie Event Viewer
        • Moduł logowania w ASP.NET Core
        • Sprawdzenie serwera Kestrel
          • Uruchomienie serwera Kestrel w Visual Studio
        • Wyłączenie renderowania po stronie serwera
    • Poruszana tematyka
    • Podsumowanie
Marka
Autor
Valerio De Sanctis
ISBN
9788328346437
Potrzebujesz pomocy? Masz pytania?Zadaj pytanie a my odpowiemy niezwłocznie, najciekawsze pytania i odpowiedzi publikując dla innych.
Zapytaj o produkt
Jeżeli powyższy opis jest dla Ciebie niewystarczający, prześlij nam swoje pytanie odnośnie tego produktu. Postaramy się odpowiedzieć tak szybko jak tylko będzie to możliwe. Dane są przetwarzane zgodnie z polityką prywatności. Przesyłając je, akceptujesz jej postanowienia.
Napisz swoją opinię
Twoja ocena:
5/5
Dodaj własne zdjęcie produktu:
pixel