ksiazki24h.pl
wprowadź własne kryteria wyszukiwania książek: (jak szukać?)
Twój koszyk:   0 zł   zamówienie wysyłkowe >>>
Strona główna > opis książki

C# 8.0 KOMPLETNY PRZEWODNIK DLA PRAKTYKÓW


MICHAELIS M.

wydawnictwo: HELION , rok wydania 2021, wydanie VII

cena netto: 156.45 Twoja cena  148,63 zł + 5% vat - dodaj do koszyka

C# 8.0

Kompletny przewodnik dla praktyków


C# jest jednym z najlepszych dzieł Microsoftu - cechuje go dojrzałość, prostota i nowoczesność. Został zaprojektowany jako język obiektowy i konsekwentnie jest rozwijany. Służy do tworzenia aplikacji sieciowych, mikrousług, aplikacji desktopowych, oprogramowania dla urządzeń mobilnych i internetu rzeczy. Ponadto C# jest językiem otwartym, pozwalającym na pisanie kodu bezpiecznego, przejrzystego, wydajnego i prostego w konserwacji. W wersji 8.0 pojawiły się funkcjonalności, które jeszcze bardziej usprawniają pracę programisty.

To siódme, zaktualizowane i uzupełnione wydanie jednego z najlepszych podręczników programowania, docenianego przez programistów na każdym poziomie zaawansowania. Poza znakomitym samouczkiem języka C# znalazły się tu informacje o poszczególnych metodykach programowania. Książka zawiera także omówienie nowości w C#: typów referencyjnych dopuszczających wartość null, indeksów, przedziałów, rozbudowanego dopasowywania do wzorca, strumieni asynchronicznych i innych. Treść jest uporządkowana i przejrzysta, co nadaje podręcznikowi przystępną formę, a zawarte w nim wskazówki pomagają w ograniczeniu liczby błędów w kodzie.

W książce między innymi:

  • istotne konstrukcje w C#
  • techniki programowania obiektowego w C#, w tym klasy, dziedziczenie i interfejsy
  • typy generyczne, delegaty, wyrażenia lambda oraz refleksje i atrybuty
  • strumienie asynchroniczne
  • przetwarzanie równoległe i wielowątkowość
  • współdziałanie z kodem niezarządzanym

Spis rysunków 11
Spis tabel 13
Przedmowa 15
Wprowadzenie 17
O autorze 28
Podziękowania 29

1. Wprowadzenie do języka C# 31

Witaj, świecie 32
Podstawy składni języka C# 42
Korzystanie ze zmiennych 49
Dane wejściowe i wyjściowe w konsoli 52
Wykonywanie kodu w środowisku zarządzanym iplatforma CLI 59
Różne wersje platformy .NET 63
Podsumowanie 67

2. Typy danych 69

Podstawowe typy liczbowe 69
Inne podstawowe typy 77
Konwersje typów danych 91
Podsumowanie 97

3. Jeszcze o typach danych 99

Kategorie typów 99
Deklarowanie typów umożliwiających stosowanie wartości null 102
Zmienne lokalne z niejawnie określanym typem danych 106
Krotki 108
Tablice 114
Podsumowanie 130

4. Operatory i przepływ sterowania 131

Operatory 132
Zarządzanie przepływem sterowania 145
Bloki kodu ({}) 150
Bloki kodu, zasięgi i przestrzenie deklaracji 152
Wyrażenia logiczne 154
Programowanie z użyciem wartości null 158
Operatory bitowe (<<, >>, |, &, ^, ~) 164
Instrukcje związane z przepływem sterowania - ciąg dalszy 169
Instrukcje skoku 179
Dyrektywy preprocesora języka C# 184
Podsumowanie 191

5. Metody i parametry 193

Wywoływanie metody 194
Deklarowanie metody 199
Dyrektywa using 204
Zwracane wartości i parametry metody Main() 208
Zaawansowane parametry metod 211
Rekurencja 220
Przeciążanie metod 223
Parametry opcjonalne 226
Podstawowa obsługa błędów z wykorzystaniem wyjątków 229
Podsumowanie 241

6. Klasy 243

Deklarowanie klasy i tworzenie jej instancji 246
Pola instancji 249
Metody instancji 251
Stosowanie słowa kluczowego this 252
Modyfikatory dostępu 258
Właściwości 260
Konstruktory 274
Konstruktory a właściwości typów referencyjnych niedopuszczających wartości null 283
Atrybuty dopuszczające wartość null 286
Dekonstruktory 288
Składowe statyczne 290
Metody rozszerzające 298
Hermetyzacja danych 299
Klasy zagnieżdżone 302
Klasy częściowe 304
Podsumowanie 308

7. Dziedziczenie 309

Tworzenie klas pochodnych 310
Przesłanianie składowych z klas bazowych 318
Klasy abstrakcyjne 328
Wszystkie klasy są pochodne od System.Object 334
Dopasowanie do wzorca za pomocą operatora is 335
Dopasowanie do wzorca w wyrażeniu switch 340
Unikaj dopasowania do wzorca, gdy możliwy jest polimorfizm 341
Podsumowanie 343

8. Interfejsy 345

Wprowadzenie do interfejsów 346
Polimorfizm oparty na interfejsach 347
Implementacja interfejsu 351
Przekształcanie między klasą z implementacją i interfejsami 356
Dziedziczenie interfejsów 356
Dziedziczenie po wielu interfejsach 359
Metody rozszerzające i interfejsy 359
Zarządzanie wersjami 361
Metody rozszerzające a domyślne składowe interfejsu 374
Interfejsy a klasy abstrakcyjne 375
Interfejsy a atrybuty 377
Podsumowanie 377

9. Typy bezpośrednie 379

Struktury 383
Opakowywanie 388
Wyliczenia 395
Podsumowanie 405

10. Dobrze uformowane typy 407

Przesłanianie składowych z klasy object 407
Przeciążanie operatorów 418
Wskazywanie innych podzespołów 425
Hermetyzacja typów 431
Definiowanie przestrzeni nazw 433
Komentarze XML-owe 436
Odzyskiwanie pamięci 440
Porządkowanie zasobów 443
Leniwe inicjowanie 455
Podsumowanie 457

11. Obsługa wyjątków 459

Wiele typów wyjątków 459
Przechwytywanie wyjątków 462
Ponowne zgłaszanie przetwarzanego wyjątku 463
Ogólny blok catch 465
Wskazówki związane z obsługą wyjątków 466
Definiowanie niestandardowych wyjątków 469
Ponowne zgłaszanie opakowanego wyjątku 471
Podsumowanie 475

12. Typy generyczne 477

Język C# bez typów generycznych 478
Wprowadzenie do typów generycznych 482
Ograniczenia 493
Metody generyczne 507
Kowariancja i kontrawariancja 511
Wewnętrzne mechanizmy typów generycznych 517
Podsumowanie 521

13. Delegaty i wyrażenia lambda 523

Wprowadzenie do delegatów 524
Deklarowanie typu delegata 527
Wyrażenia lambda 534
Lambdy w postaci instrukcji 535
Metody anonimowe 539
Delegaty nie zapewniają równości strukturalnej 541
Zmienne zewnętrzne 543
Drzewo wyrażeń 547
Podsumowanie 553

14. Zdarzenia 555

Implementacja wzorca publikuj-subskrybuj za pomocą delegatów typu multicast 556
Zdarzenia 569
Podsumowanie 578

15. Interfejsy kolekcji ze standardowymi operatorami kwerend 579

Inicjatory kolekcji 580
Interfejs IEnumerablesprawia, że klasa staje się kolekcją 582
Standardowe operatory kwerend 587
Typy anonimowe w technologii LINQ 615
Podsumowanie 622

16. Technologia LINQ i wyrażenia z kwerendami 623

Wprowadzenie do wyrażeń z kwerendami 624
Wyrażenia z kwerendą to tylko wywołania metod 639
Podsumowanie 641

17. Tworzenie niestandardowych kolekcji 643

Inne interfejsy implementowane w kolekcjach 644
Podstawowe klasy kolekcji 646
Udostępnianie indeksera 661
Zwracanie wartości null lub pustej kolekcji 664
Iteratory 665
Podsumowanie 677

18. Refleksja, atrybuty i programowanie dynamiczne 679

Mechanizm refleksji 680
Operator nameof 689
Atrybuty 690
Programowanie z wykorzystaniem obiektów dynamicznych 705
Podsumowanie 714

19. Wprowadzenie do wielowątkowości 717

Podstawy wielowątkowości 719
Zadania asynchroniczne 724
Anulowanie zadania 741
Używanie przestrzeni nazw System.Threading 746
Podsumowanie 748

20. Programowanie z wykorzystaniem wzorca TAP 749

Synchroniczne wykonywanie operacji o wysokiej latencji 750
Asynchroniczne wywoływanie operacji o dużej latencji za pomocą biblioteki TPL 752
Asynchroniczność oparta na zadaniach oraz instrukcjach async i await 756
Dodanie możliwości zwracania typu ValueTaskw metodach asynchronicznych 761
Strumienie asynchroniczne 763
Interfejs IAsyncDisposable a deklaracje i instrukcje await using 766
Używanie technologii LINQ razem z interfejsem IAsyncEnumerable 767
Zwracanie wartości void w metodach asynchronicznych 769
Asynchroniczne lambdy i funkcje lokalne 772
Programy szeregujące zadania i kontekst synchronizacji 777
Modyfikatory async i await w programach z interfejsem użytkownika z systemu Windows 779
Podsumowanie 782

21. Równoległe iteracje 783

Równoległe wykonywanie iteracji pętli 783
Równoległe wykonywanie kwerend LINQ 791
Podsumowanie 796

22. Synchronizowanie wątków 797

Po co stosować synchronizację? 798
Zegary 822
Podsumowanie 823

23. Współdziałanie między platformami i niezabezpieczony kod 825

Mechanizm P/Invoke 826
Wskaźniki i adresy 837
Wykonywanie niezabezpieczonego kodu za pomocą delegata 845
Podsumowanie 846

24. Standard CLI 847

Definiowanie standardu CLI 847
Implementacje standardu CLI 848
Specyfikacja .NET Standard 851
Biblioteka BCL 851
Kompilacja kodu w języku C# na kod maszynowy 852
Środowisko uruchomieniowe 853
Podzespoły, manifesty i moduły 857
Język Common Intermediate Language 859
Common Type System 860
Common Language Specification 861
Metadane 861
Architektura .NET Native i kompilacja AOT 862
Podsumowanie 862

864 strony, oprawa twarda

Po otrzymaniu zamówienia poinformujemy,
czy wybrany tytuł polskojęzyczny lub anglojęzyczny jest aktualnie na półce księgarni.

 
Wszelkie prawa zastrzeżone PROPRESS sp. z o.o. 2012-2022