ASP.NET Core, Angular i Bootstrap
Kompletny przybornik front-end developera
Dobry webdeveloper to wszechstronny webdeveloper. Nie może poprzestawać na
znajomości jednego języka i umiejętności korzystania z jednej, konkretnej technologii.
Co więcej, rozpowszechnianie się jednostronicowych aplikacji internetowych (ang. Single
Page Application, SPA) zaciera wyraźną do niedawna różnicę między pracą programisty
back-endu a obowiązkami programisty front-endu. Programiści back-endu muszą dziś
poznawać narzędzia do niedawna uznawane za typowe w przyborniku programisty front-endu,
takie jak wybrane frameworki JavaScriptu. Powinni też nieźle sobie radzić z
technologią CSS. Do tego muszą możliwie szybko zorientować się, które języki i
frameworki najlepiej sprostają potrzebom konkretnego projektu.
Ta książka jest przeznaczona dla projektantów, którzy chcą poznać narzędzia do
programowania front-endu i nauczyć się ich efektywnego użytkowania w połączeniu z
ASP.NET Core MVC. Zawiera najlepsze praktyki tworzenia front-endu i praktyczną wiedzę
dotyczącą programowania za pomocą ASP.NET Core MVC. Znalazła się tu również
prezentacja najpopularniejszych frameworków i narzędzi służących do tworzenia
front-endu, takich jak Angular, Bootstrap, NuGet, Bower, WebPack, Gulp i Azure, ponadto omówiono
wprowadzone w Visual Studio 2017 nowe funkcje przeznaczone do tego celu. Przedstawiono także
rozwiązania, które umożliwiają wykorzystywanie .NET Core na platformie macOS. Poszczególne
koncepcje zostały zilustrowane przejrzystymi fragmentami przykładowego kodu.
W tej książce między innymi:
zwięzłe wprowadzenie do ASP.NET Core MVC
praca z Angularem w Visual Studio
Bootstrap i responsywność stron internetowych
narzędzia i technologie przydatne do programowania front-endu
zintegrowane podejście do etapów testowania, kompilowania i wdrażania aplikacji
O autorze 11
O recenzencie technicznym 13
Podziękowania 15
Przedmowa 17
Wprowadzenie 19
1. Co nowego w ASP.NET Core MVC? 25
- Prawidłowe nazywanie rzeczy po imieniu 26
- ASP.NET Core 26
- .NET Core 26
- Visual Studio Code 26
- Visual Studio 2017 27
- Wersje omówione w książce 27
- Krótka historia oprogramowania internetowego Microsoft .NET 27
- ASP.NET Web Forms 28
- ASP.NET MVC 28
- ASP.NET Web API 29
- OWIN i Katana 29
- Pojawienie się ASP.NET Core i .NET Core 30
- .NET Core 30
- Rozpoczęcie pracy z .NET Core 31
- Narzędzie wiersza poleceń 31
- Wprowadzenie do ASP.NET 32
- Ogólne przedstawienie nowego projektu aplikacji ASP.NET Core MVC 32
- OWIN 36
- Anatomia aplikacji ASP.NET Core 38
- Nowe podstawowe funkcje ASP.NET Core 40
- Środowisko 40
- Wstrzykiwanie zależności 42
- Rejestrowanie danych 44
- Konfiguracja 46
- Ogólny opis wybranego oprogramowania pośredniczącego ASP.NET Core 50
- Pakiet Diagnostics 50
- Udostępnianie plików statycznych 51
- Frameworki aplikacji 52
- ASP.NET Core MVC 52
- Używanie frameworka MVC wewnątrz ASP.NET Core 52
- Używanie wstrzykiwania zależności w kontrolerach 54
- Komponent widoku 55
- Atrybut pomocniczy znacznika 57
- Szablon projektu API 61
- Podsumowanie 61
2. Zestaw narzędzi programisty front-endu 63
- Dodatkowe języki programowania, które należy znać 64
- Node.js 64
- JSON 65
- Sass i Less 66
- Przyszłość języka JavaScript 68
- TypeScript 68
- Frameworki JavaScriptu 70
- Angular 70
- Knockout 72
- React 73
- jQuery 75
- Frameworki CSS 76
- Bootstrap 76
- Primer CSS 78
- Material Design Lite 78
- Semantic UI 79
- Menedżery pakietów 80
- NuGet 80
- Bower 81
- npm 82
- Struktura katalogów 83
- Menedżery zadań 84
- Podsumowanie 85
3. Angular w pigułce 87
- Koncepcje Angulara 89
- Język frameworka Angular 89
- Przygotowywanie projektu Angulara 90
- Używanie edytora internetowego 90
- Używanie projektu startowego 91
- Używanie narzędzia Angular CLI 91
- Struktura aplikacji Angular 92
- Punkt wejścia do aplikacji 92
- Moduł główny 92
- Komponent główny 93
- Kod HTML strony głównej 95
- Dołączanie danych 95
- Interpolacja 96
- Jednokierunkowe dołączanie danych 96
- Dołączanie zdarzenia 97
- Dwukierunkowe dołączanie danych 97
- Dyrektywa 98
- Usługa i wstrzykiwanie zależności 99
- Wiele komponentów 101
- Właściwości wejścia i wyjścia 103
- Komunikacja z back-endem 105
- Używanie modułu Http 106
- Użycie obiektu RxJS Observable 107
- Używanie Angulara wraz z ASP.NET MVC 110
- Połączenie projektów Angulara i ASP.NET Core 112
- Visual Studio 2017 i obsługa frameworka Angular 119
- Fragmenty kodu 119
- Lista IntelliSense w plikach TypeScriptu 120
- Lista IntelliSense w plikach HTML 120
- Podsumowanie 121
4. Bootstrap w pigułce 123
- Wprowadzenie do frameworka Bootstrap 124
- Instalowanie Bootstrapa 124
- Najważniejsze funkcje 125
- Style Bootstrapa 126
- System siatki 126
- Typografia 130
- Tabela 131
- Formularz 131
- Przycisk 133
- Komponenty 133
- Ikona glyphicon 133
- Rozwijane menu 134
- Grupa znacznika input 135
- Nawigacja 136
- Inne komponenty 142
- JavaScript 142
- Treść oparta na kartach 143
- Modalne okno dialogowe 144
- Podpowiedź i dymek 146
- Dostosowanie frameworka Bootstrap do własnych potrzeb za pomocą Less 148
- Dostosowanie do własnych potrzeb za pomocą witryny internetowej 148
- Dostosowanie do własnych potrzeb za pomocą Less 149
- Obsługa Bootstrapa w Visual Studio 2017 i ASP.NET Core 150
- Rozszerzenie Bootstrap Snippet Pack 152
- Rozszerzenie Glyphfriend 153
- Atrybut pomocniczy znacznika w ASP.NET Core 154
- Podsumowanie 155
5. Zarządzanie zależnościami za pomocą menedżerów NuGet i Bower 157
- Ogólne koncepcje 158
- Menedżer NuGet 159
- Pobieranie pakietów za pomocą NuGeta 159
- Publikowanie własnych pakietów 163
- Menedżer npm 165
- Instalowanie menedżera npm 165
- Używanie menedżera npm 165
- Gdzie są instalowane pakiety? 168
- Menedżer Bower 168
- Instalowanie menedżera Bower 168
- Pobieranie pakietów za pomocą Bowera 168
- Gdzie są instalowane pakiety? 170
- Tworzenie własnego pakietu 171
- Podsumowanie 171
6. Tworzenie aplikacji za pomocą narzędzi Gulp i webpack 173
- Na czym polega działanie systemu kompilacji front-endu? 174
- Dokładniejsze omówienie narzędzia Gulp 175
- Rozpoczęcie pracy z narzędziem Gulp 175
- Plik gulpfile.js 175
- Typowy plik kompilacji Gulp 177
- Więcej przepisów na Gulpa 179
- Sprawdzenie kodu JavaScriptu za pomocą wtyczki JSHint 180
- Wprowadzenie do narzędzia webpack 184
- Podstawowe koncepcje narzędzia webpack 184
- Używanie narzędzia webpack 184
- Kolejne możliwości narzędzia webpack 188
- Visual Studio 2017 i systemy kompilacji 189
- Rozszerzenie Bundler & Minifier 189
- Okno Eksplorator modułu uruchamiającego zadania 192
- Lista IntelliSense dla narzędzia Gulp 193
- Podsumowanie 194
7. Wdrażanie aplikacji ASP.NET Core 195
- Nowy model hostingu ASP.NET Core 195
- Wdrożenie w serwerze IIS 197
- Upewnienie się o dostępności serwera IIS 197
- Instalowanie AspNetCoreModule 199
- Publikowanie aplikacji za pomocą wiersza poleceń 199
- Utworzenie witryny internetowej 200
- Publikowanie aplikacji za pomocą Visual Studio 201
- Wdrażanie do Azure 202
- Wdrażanie do Azure za pomocą Visual Studio i metody Web Deploy 203
- Ciągłe wdrażanie do Azure za pomocą systemu git 206
- Wdrażanie do kontenera Docker 210
- Instalowanie obsługi Dockera 210
- Publikowanie obrazu Dockera 213
- Podsumowanie 214
8. Programowanie poza Windowsem 215
- Instalowanie .NET CORE w systemie macOS 216
- Tworzenie pierwszej aplikacji ASP.NET Core w systemie macOS 217
- Używanie narzędzia dotnet 217
- Używanie narzędzia Yeoman 220
- Visual Studio Code 222
- Konfigurowanie Visual Studio Code 222
- Funkcje programistyczne oferowane przez Visual Studio Code 223
- OmniSharp 229
- Inne środowiska IDE 229
- Używanie narzędzi działających w powłoce 230
- Podsumowanie 230
9. Zebranie wszystkiego w całość 231
- Tworzenie witryny internetowej wyświetlającej wyniki trójboju 232
- Tworzenie witryny administracyjnej 232
- Konfigurowanie Entity Framework 235
- Tworzenie stron obsługujących operacje CRUD 240
- Tworzenie witryny rejestracji 243
- Wyświetlanie wyników w czasie rzeczywistym 247
- Tworzenie działającej po stronie klienta aplikacji Angular 247
- Tworzenie API sieciowego 252
- Nawiązywanie połączenia z urządzeniami IoT 255
- Wdrażanie aplikacji 258
- Podsumowanie 260
Skorowidz 261
264 strony, oprawa miękka