C# 6.0 i MVC 5. Tworzenie nowoczesnych portali internetowych
Book information
Description
Poznaj najlepsze narzędzia Microsoftu do tworzenia aplikacji webowych Możliwości języka C# w zakresie tworzenia aplikacji internetowych Platformy i narzędzia ułatwiające budowanie i wdrażanie aplikacji webowych Praktyczne sposoby tworzenia aplikacji WWW i serwisów internetowych Dynamiczny rozwój sieci i jej wkraczanie w coraz to nowe obszary życia pozwala nam korzystać z większości usług z dowolnego miejsca na świecie i za pośrednictwem każdego urządzenia z dostępem do internetu. Aby użytkownik mógł swobodnie poruszać się po sieci, konieczne jest rozwijanie coraz bardziej zaawansowanych, wygodniejszych i szybszych aplikacji internetowych działających po stronie serwera. Do niedawna większość aplikacji tego rodzaju była pisana w takich językach, jak PHP, Python lub Java, obecnie natomiast ogromną popularność zdobywają w tej dziedzinie język C# i platforma MVC. Jeśli dysponujesz ogólną wiedzą na temat programowania i baz danych, opanowałeś lub właśnie opanowujesz podstawy języka C# i chcesz poznać platformę MVC oraz możliwości, jakie oferuje ona w zakresie tworzenia aplikacji webowych, sięgnij po tę książkę. Nie stanowi ona klasycznego podręcznika do programowania, lecz raczej zbiór praktycznych wskazówek i objaśnień pozwalających w krótkim czasie rozpocząć przygodę z tworzeniem aplikacji internetowych, a następnie logicznie ją kontynuować. Dzięki lekturze krok po kroku poznasz proces powstawania kodu aplikacji i jego wdrażania przy użyciu różnych narzędzi. Poznaj świat aplikacji internetowych! Podstawy języka C# i jego możliwości Wzorce projektowe i architektoniczne oraz ich stosowanie Możliwości webowych platform firmy Microsoft Tworzenie aplikacji i serwisów internetowych oraz ich wdrażanie Optymalizowanie aplikacji pod kątem wymagań wyszukiwarek i serwisów społecznościowych Budowa własnego portalu Buduj doskonałe serwisy internetowe w języku C# z platformą MVC! Spis treści......Page 3 Wstęp......Page 15 Wprowadzenie do języka C#......Page 19 C# 3.0 (.NET Framework 3.5, Visual Studio 2008)......Page 20 Konwencje......Page 21 Wcięcia......Page 22 Komentarze......Page 23 Puste linie......Page 24 Konwencje nazewnicze......Page 25 Typy......Page 26 Deklaracja zmiennej......Page 27 Inicjalizacja zmiennej......Page 28 Stałe i zmienne tylko do odczytu......Page 29 Literały......Page 30 Konwersje typów i rzutowanie......Page 31 Opakowywanie (boxing) i rozpakowywanie (unboxing)......Page 32 Wartości zerowe oraz typy dopuszczające wartości zerowe......Page 33 Tablice......Page 34 Łańcuchy......Page 36 Kolekcje......Page 37 Operator trójargumentowy ?:......Page 38 Instrukcja if......Page 40 Instrukcja switch......Page 41 Pętla do while......Page 43 Pętla for......Page 44 Instrukcje skoku......Page 45 Klasy......Page 46 Obiekty Pola......Page 48 Metody......Page 49 Właściwości......Page 52 Abstrakcja......Page 53 Dziedziczenie......Page 54 Polimorfizm......Page 55 Przeciążanie operatorów......Page 56 Przeciążanie operatorów konwersji......Page 57 Przeciążanie operatorów logicznych......Page 58 Przeciążanie operatorów arytmetycznych......Page 60 Indeksatory......Page 61 Klasa System.Object......Page 63 Konstruktor i destruktor......Page 64 Podział na generacje (przechowywanie obiektów w pamięci)......Page 66 Struktury......Page 67 Interfejsy......Page 68 Jawna implementacja interfejsu......Page 69 Interfejs IDisposable......Page 70 Słowo kluczowe using......Page 71 Delegaty......Page 72 Wyrażenia lambda......Page 74 Zdarzenia......Page 75 Dyrektywy preprocesora......Page 76 Zgłaszanie wyjątków......Page 77 Instrukcje checked i unchecked......Page 78 Zagnieżdżanie przestrzeni nazw......Page 79 Dyrektywa using......Page 81 Aliasy......Page 82 Typy, metody, klasy i kolekcje uogólnione (generyczne)......Page 83 Klasy generyczne......Page 84 Interfejs IDictionary — słownik......Page 86 Interfejs IList......Page 87 Interfejs IQueryable......Page 88 Wyrażenia regularne......Page 89 Data i czas......Page 90 Operacje wejścia, wyjścia, foldery i pliki......Page 92 Mechanizm refleksji i atrybuty......Page 93 Atrybuty......Page 94 IEnumerable a IEnumerator......Page 96 Iteratory i słowo kluczowe yield return......Page 97 Inicjalizatory obiektów i kolekcji......Page 100 Drzewa wyrażeń......Page 101 Metody rozszerzające......Page 102 Metody i klasy częściowe......Page 103 Metody częściowe......Page 104 Typy anonimowe......Page 105 Słowa kluczowe this i base......Page 106 Typy dynamiczne......Page 107 Argumenty nazwane — Named Arguments......Page 110 Obsługa kontra- i kowariancji oraz słowa kluczowe in i out......Page 111 Leniwa inicjalizacja — Lazy Initialization......Page 114 Metody asynchroniczne — async i await......Page 118 Atrybuty Caller Info......Page 119 Automatyczna inicjalizacja właściwości — Initializers for Auto-properties......Page 120 Inicjalizatory słownikowe — Dictionary Initializer......Page 121 Wyrażenia dla metod — Method Expressions......Page 122 Jednoargumentowe sprawdzanie wartości null — Monadic Null Checking......Page 123 Literały binarne i separatory cyfr — Binary Literals, Digit Separators......Page 124 Architektura wielowarstwowa......Page 125 Architektura n-warstwowa......Page 126 MVC......Page 127 Domain Model, MVC Model i ViewModel — porównanie......Page 128 MVP......Page 129 Presenter......Page 130 MVC, MVP i MVVM......Page 131 DDD SOA......Page 132 EDA......Page 133 Struktura .NET......Page 135 CLI......Page 136 CIL CLR DLR......Page 137 Implementacje .NET......Page 138 WPF......Page 139 Data Member......Page 140 Silverlight......Page 142 Hostowanie aplikacji w Azure......Page 143 Service Bus Relay......Page 144 ASP.NET Web Forms......Page 145 ADO.NET......Page 146 .NET Framework Data Provider......Page 147 LINQ to XML......Page 148 LINQ to Entities......Page 149 Składnia metod — Method Syntax......Page 150 PLINQ......Page 151 NHibernate......Page 153 Alternatywa dla Entity Framework i NHibernate......Page 154 Porównanie różnych podejść......Page 157 Model dla podejścia Code First......Page 158 Nowości wprowadzone w EF 5......Page 159 Krótki opis baz relacyjnych......Page 160 Relacja „jeden do jednego”......Page 161 Relacja „wiele do wielu”......Page 162 Metody Attach i Detach......Page 165 Relacje poprzez klucz obcy — FK Association......Page 166 Relacje niezależne — Independent Association......Page 167 Wczytywanie zachłanne — Eager Loading......Page 168 Wczytywanie leniwe — Lazy Loading......Page 169 Problem N+1......Page 170 Odroczone i natychmiastowe wykonanie......Page 171 Entity SQL......Page 172 Bezpośrednie zapytania SQL do bazy (Direct/RAW SQL) i procedury składowane w EF......Page 173 Transakcje w EF......Page 174 Dynamiczne śledzenie zmian — Dynamic Change Tracking (proxy)......Page 175 Zarządzanie operacjami współbieżnymi......Page 176 Kaskadowe usuwanie — Cascade Delete......Page 177 TPT......Page 178 SQL Logging......Page 179 Code First Fluent API i Data Annotations......Page 180 Migracje......Page 182 Metoda Seed......Page 183 ASP.NET MVC 2......Page 185 ASP.NET MVC 5......Page 186 Struktura projektu......Page 187 Konwencje a ASP.NET MVC......Page 188 Podstawowe obiekty tworzone dla każdego żądania......Page 189 HttpApplication......Page 190 HttpHandler a HttpModule......Page 193 Typy rezultatu......Page 194 Żądanie POST......Page 196 Filtry akcji......Page 197 Zasady odnajdywania widoków......Page 200 Widoki częściowe......Page 201 Razor......Page 202 Dodatkowe właściwości silnika Razor......Page 203 ViewBag, ViewData i TempData......Page 204 Widoki typowane — Strongly Typed Views......Page 205 HTML helpery......Page 208 Paczki skryptów i minimalizacja — Script/CSS Bundling and Minification......Page 209 Sekcje......Page 211 Ignorowanie ścieżek......Page 214 Routing na podstawie atrybutów......Page 215 Prefiksy......Page 216 Nazywanie ścieżek i generowanie linków po nazwie ścieżki Obszary......Page 217 ViewModel......Page 218 Walidacja......Page 222 Generowanie kontrolerów......Page 223 Generowanie widoków......Page 227 Metody synchroniczne i asynchroniczne w MVC......Page 228 Słowa kluczowe — Async, Await, Task......Page 230 Cachowanie po stronie serwera — Server Side Caching......Page 231 Atrybut OutputCache......Page 232 Cachowanie rozproszone......Page 233 HTML 5 WebStorage......Page 234 Bezpieczeństwo......Page 235 Cross-Site Request Forgery......Page 236 Over-Posting — parametr binding......Page 237 Nadpisywanie metody OnException() w kontrolerze......Page 238 HandleError na poziomie kontrolerów i akcji......Page 239 Logowanie globalne za pomocą osobnych narzędzi......Page 240 Uwierzytelnianie......Page 241 Stan aplikacji......Page 242 Ciasteczka Sesje......Page 243 ASP.NET Identity......Page 244 WIF i uwierzytelnianie za pomocą claimów......Page 245 Strona ufająca — Relying Party......Page 246 Federated Authentication......Page 247 Windows ACS......Page 248 OpenId......Page 249 OpenAuth......Page 250 Web API 2......Page 251 Web API a ASP.NET MVC......Page 252 SOAP REST......Page 253 OData......Page 254 CORS......Page 255 Uruchamianie CORS w Web API......Page 256 Mapowanie żądań na akcje bądź metody w kontrolerze Web API......Page 257 Typy rezultatu w Web API......Page 258 HttpResponseMessage......Page 259 Inny dowolny typ z aplikacji......Page 260 Pobieranie danych po stronie klienta (JavaScript, jQuery, AJAX)......Page 261 Wersjonowanie w Web API......Page 262 Kategorie dla modułów dostępnych w IIS......Page 263 Microsoft SQL Server 2014......Page 264 Ceny licencji SQL Server 2014......Page 265 Nowości w SQL Server 2014......Page 266 Licencjonowanie Windows Server 2012......Page 267 Microsoft Visual Studio 2013 Ultimate......Page 268 Nowości w Visual Studio 2013......Page 269 Browser Link......Page 270 JSON Editor i JavaScript......Page 271 Najważniejsze skróty klawiszowe......Page 272 Wzorzec IoC......Page 277 Przykładowa aplikacja......Page 278 Etap 1. Krok 1. Tworzenie nowego projektu i aktualizacja pakietów......Page 279 Etap 1. Krok 2. Utworzenie modelu danych......Page 283 Klasa Kategoria......Page 286 Klasa Uzytkownik......Page 287 Etap 1. Krok 3. Tworzenie klasy kontekstu......Page 290 Etap 1. Krok 4. Przenoszenie warstwy modelu do osobnego projektu......Page 294 Dodawanie referencji pomiędzy projektami......Page 296 Ustawienie projektu startowego......Page 297 Instalacja bibliotek dla nowego projektu......Page 298 Przenoszenie plików z modelem do osobnej warstwy (projektu)......Page 299 Instalacja migracji......Page 300 Konfiguracja migracji......Page 301 Tworzenie migracji początkowej......Page 302 Uruchomienie pierwszej migracji......Page 305 Metoda Seed()......Page 306 Zmiany w modelu i kolejna migracja......Page 309 Praca z błędami i niespójnością w migracjach......Page 310 Dodawanie kontrolera z widokami......Page 311 Pierwsze uruchomienie aplikacji i routing......Page 316 Lista ogłoszeń (akcja Index) — aktualizacja widoku/wyglądu strony......Page 317 Lista ogłoszeń a pobieranie danych......Page 321 Optymalizacja listy ogłoszeń......Page 322 Etap 2. Krok 2. Debugowanie oraz metody AsNoTracking() i ToList()......Page 324 Metoda ToList() i odroczone wykonanie (Deferred Execution)......Page 325 Metoda AsNoTracking()......Page 326 Poprawa wyglądu strony za pomocą Twitter Bootstrap......Page 329 Podświetlanie wierszy za pomocą CSS......Page 330 Optymalizacja pod kątem pozycjonowania — SEO......Page 331 Etap 2. Podsumowanie......Page 333 Przeniesienie metody do repozytorium......Page 334 Wstrzykiwanie repozytorium poprzez konstruktor w kontrolerze......Page 336 Tworzenie interfejsu dla repozytorium......Page 337 Instalacja kontenera IoC Unity......Page 338 Wstrzykiwanie kontekstu do repozytorium......Page 340 Etap 3. Podsumowanie......Page 341 Metoda Details() w repozytorium......Page 342 Aktualizacja i optymalizacja SEO dla widoku Details......Page 343 Delete......Page 345 Create......Page 353 Edit......Page 359 Etap 4. Krok 2. Aktualizacja szablonu _Layout.cshtml......Page 365 Etap 4. Krok 3. Widoki częściowe — PartialViews......Page 366 Uwierzytelnianie i logowanie przez portale......Page 369 Autoryzacja — role......Page 372 Zabezpieczanie akcji......Page 373 Etap 5. Podsumowanie......Page 380 Stronicowanie......Page 381 Sortowanie......Page 388 Etap 6. Podsumowanie......Page 392 Zakładka Moje ogłoszenia......Page 393 Cache......Page 394 Kategorie......Page 395 Zastosowanie HTML helpera — Html.Action......Page 402 Zastosowanie ViewModel......Page 403 Etap 7. Podsumowanie......Page 406 Użycie attribute routingu......Page 407 Dodatek na AspNetMvc.pl......Page 409 Etap 9. Dodatek — tworzenie modelu dla podejścia Model First......Page 410 Publikacja systemu na zewnętrznym serwerze hostingowym......Page 415 Dodawanie domeny......Page 416 Konfiguracja witryny......Page 418 Tworzenie bazy danych......Page 421 Połączenie z bazą danych poprzez SQL Server Management Studio......Page 422 Wdrażanie aplikacji na serwer za pomocą Microsoft Visual Studio......Page 423 Zasada pojedynczej odpowiedzialności (SRP)......Page 427 Zasada podstawienia Liskov (LSP)......Page 428 Zasada separacji interfejsów (ISP)......Page 429 Zasada odwrócenia zależności (DIP)......Page 431 GRASP......Page 432 Low Coupling......Page 433 Pure Fabrication......Page 434 DRY......Page 435 Separation of Concern......Page 436 Manifest Agile......Page 437 eXtreme Programming......Page 439 TDD......Page 440 HTTP......Page 443 SSL/TLS......Page 447 Rodzaje certyfikatów......Page 449 Certyfikat w praktyce......Page 450 HTML 5......Page 453 Sekcje......Page 457 Nowe typy pól formularza......Page 458 Znaczniki......Page 459 Server Side Events......Page 461 WebSockets......Page 462 Drag and Drop......Page 463 Geolokalizacja......Page 465 CSS 3......Page 466 Nowe selektory......Page 471 Nowe własności......Page 472 CSS 4......Page 473 Metody dostępne w DOM......Page 477 Poziomy DOM......Page 479 Składnia języka......Page 480 Możliwości JavaScriptu......Page 483 JQuery......Page 484 Selektory i filtry......Page 485 Zdarzenia......Page 487 Metody......Page 488 Przechodzenie po elementach HTML......Page 489 JQuery Mobile......Page 490 AJAX......Page 491 JSON......Page 492 XMLHttpRequest......Page 493 AJAX w jQuery......Page 494 Dodate E. Bazy nierelacyjne......Page 497 RavenDB......Page 498 Metatagi......Page 499 Znaczniki HTML......Page 500 Linkowanie......Page 501 Skrypty katalogów......Page 502 Schemat koła......Page 503 Gwiazda......Page 504 „Długi ogon”......Page 505 robots.txt......Page 506 sitemap.xml......Page 507 .htaccess......Page 508 Sandbox......Page 509 Pingwin......Page 510 Narzędzia do pracy z tekstem......Page 511 Półautomaty, „dodawarki” i automaty do postowania......Page 512 Inne narzędzia......Page 513 Skorowidz......Page 515 przewodnik-konta......Page 0 Bez nazwy4......Page 528 Bez nazwy4......Page 532 Bez nazwy4......Page 533 Bez nazwy4......Page 529 Bez nazwy4......Page 530 Bez nazwy4......Page 531
Similar books
C# 6.0 i MVC 5. Tworzenie nowoczesnych portali internetowych
2015 · PDF
C# 6.0 i MVC 5. Tworzenie nowoczesnych portali internetowych
2015 · EPUB
C# 6.0 i MVC 5. Tworzenie nowoczesnych portali internetowych
2015 · EPUB
Kwantechizm - elementarz doktrynalny mechaniki kwantowej
Kwintesencja wszystkiego. Dwanaście eksperymentów, które zmieniły nasz świat
2024 · PDF
Pieśń komórek. Nowa epoka medycyny
2024 · PDF
Serce Europy
2014 · PDF
Depresja. Jak pokonać śmiertelny smutek
2021 · PDF