• Obniżka

C Sharp 10. Programowanie. Tworzenie aplikacji Windows, internetowych i biurowych - Ian Griffiths

Indeks: KSZ-22886 EAN: 9788383222066
Język C#, stworzony przez Microsoft ciągle rozwija się poprzez dodawanie nowych funkcjonalności i unowocześnień. Wydanie o oznaczeniu 10.0 różni się nieco od poprzednich wersji, dlatego opanowanie zasad jego działania oraz wykorzystywanych narzędzi jest konieczne, aby programowanie w C# pozostało efektywne i satysfakcjonujące. Z pomocą przychodzi przewodnik Iana Griffithsa, który wyczerpująco opisuje wprowadzone zmiany, nowe funkcjonalności przydatne w tworzeniu aplikacji, a także nowe możliwości bibliotek klas .NET.
C Sharp 10. Programowanie. Tworzenie aplikacji Windows, internetowych i biurowych - Ian Griffiths
109,00 zł -5%
103,55 zł
98,62 zł netto
Najniższa cena z 30 dni: 103,55 zł
Zapłać później
Producent: Helion

Opis produktu: C Sharp 10. Programowanie. Tworzenie aplikacji Windows, internetowych i biurowych - Ian Griffiths

Język C#, stworzony przez Microsoft ciągle rozwija się poprzez dodawanie nowych funkcjonalności i unowocześnień. Wydanie o oznaczeniu 10.0 różni się nieco od poprzednich wersji, dlatego opanowanie zasad jego działania oraz wykorzystywanych narzędzi jest konieczne, aby programowanie w C# pozostało efektywne i satysfakcjonujące. Z pomocą przychodzi przewodnik Iana Griffithsa, który wyczerpująco opisuje wprowadzone zmiany, nowe funkcjonalności przydatne w tworzeniu aplikacji, a także nowe możliwości bibliotek klas .NET. 

C Sharp 10. Programowanie. Tworzenie aplikacji Windows, internetowych i biurowych - Ian Griffiths.

Przewodnik po wydaniu 10.0 języka C#.

Informacje o książce

  • Tytuł oryginalny: Programming C# 10: Build Cloud, Web, and Desktop Applications
  • Autor: Ian Griffiths
  • Tłumaczenie: Piotr Rajca
  • ISBN: 978-83-832-2206-6
  • Rok wydania: 2023
  • Liczba stron: 800
  • Oprawa: miękka
  • Format: 165 x 235 mm
  • Wydawnictwo: Helion S.A.

Spis treści

Wstęp

1. Prezentacja C#

      • Dlaczego C#?
        • Kod zarządzany i CLR
        • Ogólność jest preferowana względem specjalizacji
      • Standardy oraz implementacje języka C#
        • Wiele .NET-ów
        • Cykle wydawnicze i wsparcie długoterminowe
        • Użycie .NET Standard w celu tworzenia projektów działających
      • Visual Studio, Visual Studio Code oraz JetBrains Rider
      • Anatomia prostego programu
        • Pisanie testu jednostkowego
        • Przestrzenie nazw
        • Klasy
        • Testy jednostkowe
      • Podsumowanie

2. Podstawy stosowania języka C#

      • Zmienne lokalne
        • Zakres
        • Niejednoznaczności nazw zmiennych
        • Instancje zmiennych lokalnych
      • Instrukcje i wyrażenia
        • Instrukcje
        • Wyrażenia
      • Komentarze i białe znaki
      • Dyrektywy preprocesora
        • Symbole kompilacji
        • Dyrektywy #error oraz #warning
        • Dyrektywa #line
        • Dyrektywa #pragma
        • Dyrektywa #nullable
        • Dyrektywy #region i #endregion
      • Podstawowe typy danych
        • Typy liczbowe
        • Wartości logiczne
        • Znaki i łańcuchy znaków
        • Krotki
        • Dynamic
        • Object
      • Operatory
      • Sterowanie przepływem
        • Decyzje logiczne przy użyciu instrukcji if
        • Wielokrotny wybór przy użyciu instrukcji switch
        • Pętle: while i do
        • Pętle znane z języka C
        • Przeglądanie kolekcji przy użyciu pętli foreach
      • Wzorce
        • Łączenie i negacja wzorców
        • Wzorce relacyjne
        • Uzyskiwanie większej dokładności dzięki użyciu when
        • Wzorce w wyrażeniach
      • Podsumowanie

3. Typy

      • Klasy
        • Składowe statyczne
        • Klasy statyczne
      • Rekordy
      • Typy referencyjne i wartość null
        • Eliminacja wartości pustych przy użyciu referencji, które ich nie akceptują
      • Struktury
        • Kiedy tworzyć typy wartościowe?
        • Gwarantowanie niezmienności
        • Typy record struct
      • Klasy, struktury, rekordy czy krotki?
      • Składowe
        • Dostępność
        • Pola
        • Konstruktory
        • Dekonstruktory
        • Metody
        • Właściwości
        • Operatory
        • Zdarzenia
        • Typy zagnieżdżone
      • Interfejsy
        • Domyślne implementacje metod w interfejsach
      • Typy wyliczeniowe
      • Inne typy
      • Typy anonimowe
      • Typy i metody częściowe
      • Podsumowanie

4. Typy ogólne

      • Typy ogólne
      • Ograniczenia
        • Ograniczenia typu
        • Ograniczenia typu referencyjnego
        • Ograniczenia typu wartościowego
        • Wszystkie typy w hierarchii wartościowe dzięki ograniczeniu unmanaged
        • Ograniczenie notnull
        • Inne specjalne ograniczenia typów
        • Stosowanie wielu ograniczeń
      • Wartości przypominające zero
      • Metody ogólne
        • Wnioskowanie typu
      • Typy ogólne i krotki
      • Tajniki typów ogólnych
      • Podsumowanie

5. Kolekcje

      • Tablice
        • Inicjalizacja tablic
        • Przeszukiwanie i sortowanie
        • Tablice wielowymiarowe
        • Kopiowanie i zmiana wielkości
      • List
      • Interfejsy list i sekwencji
      • Implementacja list i sekwencji
        • Implementacja IEnumerable przy użyciu iteratorów
        • Klasa Collection
        • Klasa ReadOnlyCollection
      • Odwołania do elementów z użyciem indeksów i zakresów
        • System.Index
        • System.Range
        • Obsługa indeksów i zakresów we własnych typach danych
      • Słowniki
        • Słowniki posortowane
      • Zbiory
      • Kolejki i stosy
      • Listy połączone
      • Kolekcje współbieżne
      • Kolekcje niezmienne
      • Podsumowanie

6. Dziedziczenie

      • Dziedziczenie i konwersje
      • Dziedziczenie interfejsów
      • Typy ogólne
        • Kowariancja i kontrawariancja
      • System.Object
        • Wszechobecne metody typu System.Object
      • Dostępność i dziedziczenie
      • Metody wirtualne
        • Metody abstrakcyjne
        • Dziedziczenie i wersje bibliotek
      • Metody i klasy ostateczne
      • Dostęp do składowych klas bazowych
      • Dziedziczenie i tworzenie obiektów
      • Rekordy
        • Rekordy, dziedziczenie i słowo kluczowe with
      • Specjalne typy bazowe
      • Podsumowanie

7. Cykl życia obiektów

      • Mechanizm odzyskiwania pamięci
        • Określanie osiągalności danych
        • Przypadkowe problemy mechanizmu odzyskiwania pamięci
        • Słabe referencje
        • Odzyskiwanie pamięci
        • Tryby odzyskiwania pamięci
        • Tymczasowe zawieszanie odzyskiwania pamięci
        • Przypadkowe utrudnianie scalania
        • Wymuszanie odzyskiwania pamięci
      • Destruktory i finalizacja
      • Interfejs IDisposable
        • Zwalnianie opcjonalne
      • Pakowanie
        • Pakowanie danych typu Nullable
      • Podsumowanie

8. Wyjątki

      • Źródła wyjątków
        • Wyjątki zgłaszane przez API
        • Błędy wykrywane przez środowisko uruchomieniowe
      • Obsługa wyjątków
        • Obiekty wyjątków
        • Wiele bloków catch
        • Filtry wyjątków
        • Zagnieżdżone bloki try
        • Bloki finally
      • Zgłaszanie wyjątków
        • Powtórne zgłaszanie wyjątków
        • Sposób na szybkie zakończenie aplikacji
      • Typy wyjątków
      • Wyjątki niestandardowe
      • Wyjątki nieobsługiwane
      • Podsumowanie

9. Delegaty, wyrażenia lambda i zdarzenia

      • Typy delegatów
        • Tworzenie delegatów
        • MulticastDelegate - delegaty zbiorowe
        • Wywoływanie delegatów
        • Popularne typy delegatów
        • Zgodność typów
        • Więcej niż składnia
      • Funkcje anonimowe
        • Przechwytywane zmienne
        • Wyrażenia lambda oraz drzewa wyrażeń
      • Zdarzenia
        • Standardowy wzorzec delegatów zdarzeń
        • Niestandardowe metody dodające i usuwające zdarzenia
        • Zdarzenia i mechanizm odzyskiwania pamięci
        • Zdarzenia a delegaty
      • Delegaty a interfejsy
      • Podsumowanie

10. LINQ

      • Wyrażenia zapytań
        • Jak są rozwijane wyrażenia zapytań
        • Obsługa wyrażeń zapytań
      • Przetwarzanie opóźnione
      • LINQ, typy ogólne oraz interfejs IQueryable
      • Standardowe operatory LINQ
        • Filtrowanie
        • Selekcja
        • Operator SelectMany
        • Podział na części
        • Określanie porządku
        • Testy zawierania
        • Asynchroniczne przetwarzanie natychmiastowe
        • Agregacja
        • Operacje na zbiorach
        • Operatory działające na całych sekwencjach z zachowaniem kolejności
        • Grupowanie
        • Złączenia
        • Konwersje
      • Generowanie sekwencji
      • Inne implementacje LINQ
        • Entity Framework Core
        • Parallel LINQ (PLINQ)
        • LINQ to XML
        • IAsyncEnumerable
        • Reactive Extensions
      • Podsumowanie

11. Reactive Extensions

      • Podstawowe interfejsy
        • Interfejs IObserver
        • Interfejs IObservable
      • Publikowanie i subskrypcja z wykorzystaniem delegatów
        • Tworzenie źródła przy wykorzystaniu delegatów
        • Subskrybowanie obserwowalnych źródeł przy użyciu delegatów
      • Generator sekwencji
        • Empty
        • Never
        • Return
        • Throw
        • Range
        • Repeat
        • Generate
      • Zapytania LINQ
        • Operatory grupowania
        • Operatory Join
        • Operator SelectMany
        • Agregacja oraz inne operatory zwracające jedną wartość
        • Operator Concat
      • Operatory biblioteki Rx
        • Merge
        • Operatory Buffer i Window
        • Operator Scan
        • Operator Amb
        • DistinctUntilChanged
      • Mechanizmy szeregujące
        • Określanie mechanizmów szeregujących
        • Wbudowane mechanizmy szeregujące
      • Tematy
        • Subject
        • BehaviorSubject
        • ReplaySubject
        • AsyncSubject
      • Dostosowanie
        • IEnumerable i IAsyncEnumerable
        • Zdarzenia .NET
        • API asynchroniczne
      • Operacje z uzależnieniami czasowymi
        • Interval
        • Timer
        • Timestamp
        • TimeInterval
        • Throttle
        • Sample
        • Timeout
        • Operatory okien czasowych
        • Delay
        • DelaySubscription
      • Reaqtor - Rx jako usługa
      • Podsumowanie

12. Podzespoły

      • Anatomia podzespołu
        • Metadane .NET
        • Zasoby
        • Podzespoły składające się z wielu plików
        • Inne możliwości formatu PE
      • Tożsamość typu
      • Wczytywanie podzespołów
        • Określanie podzespołów
        • Jawne wczytywanie podzespołów
        • Izolacja i obsługa wtyczek z użyciem typu AssemblyLoadContext
      • Nazwy podzespołów
        • Silne nazwy
        • Numer wersji
        • Numery wersji a wczytywanie podzespołów
        • Identyfikator kulturowy
      • Zabezpieczenia
      • Platformy docelowe i .NET Standard
      • Podsumowanie

13. Odzwierciedlanie

      • Typy odzwierciedlania
        • Assembly
        • Module
        • MemberInfo
        • Type i TypeInfo
        • MethodBase, ConstructorInfo oraz MethodInfo
        • ParameterInfo
        • FieldInfo
        • PropertyInfo
        • EventInfo
      • Konteksty odzwierciedlania
      • Podsumowanie

14. Atrybuty

      • Stosowanie atrybutów
        • Cele atrybutów
        • Atrybuty obsługiwane przez kompilator
        • Atrybuty obsługiwane przez CLR
      • Definiowanie i stosowanie atrybutów niestandardowych
        • Typy atrybutów
        • Pobieranie atrybutów
        • Wczytywanie jedynie metadanych
      • Podsumowanie

15. Pliki i strumienie

      • Klasa Stream
        • Położenie i poruszanie się w strumieniu
        • Opróżnianie strumienia
        • Kopiowanie
        • Length
        • Zwalnianie strumieni
        • Operacje asynchroniczne
        • Konkretne typy strumieni
        • Jeden typ, wiele zachowań
      • Dostęp swobodny i rozproszone/zebrane operacje wejścia-wyjścia bez klasy Stream
      • Typy operujące na tekstach
        • TextReader oraz TextWriter
        • Konkretne typy do odczytu i zapisu łańcuchów znaków
        • Kodowanie
      • Pliki i katalogi
        • Klasa FileStream
        • Klasa File
        • Klasa Directory
        • Klasa Path
        • Klasy FileInfo, DirectoryInfo oraz FileSystemInfo
        • Znane katalogi
      • Serializacja
        • Klasy BinaryReader i BinaryWriter
        • Serializacja CLR
        • JSON
      • Podsumowanie

16. Wielowątkowość

      • Wątki
        • Wątki, zmienne i wspólny stan
        • Pamięć lokalna wątku
        • Klasa Thread
        • Pula wątków
        • Powinowactwo do wątku oraz klasa SynchronizationContext
        • Klasa ExecutionContext
      • Synchronizacja
        • Monitory oraz słowo kluczowe lock
        • Klasa SpinLock
        • Blokady odczytu i zapisu
        • Obiekty zdarzeń
        • Klasa Barrier
        • Klasa CountdownEvent
        • Semafory
        • Muteksy
        • Klasa Interlocked
        • Leniwa inicjalizacja
        • Pozostałe klasy obsługujące działania współbieżne
      • Zadania
        • Klasy Task i Task
        • Kontynuacje
        • Mechanizmy szeregujące
        • Obsługa błędów
        • Niestandardowe zadania bezwątkowe
        • Związki zadanie nadrzędne - zadanie podrzędne
        • Zadania złożone
      • Inne wzorce asynchroniczne
      • Anulowanie
      • Równoległość
        • Klasa Parallel
        • Parallel LINQ
        • TPL Dataflow
      • Podsumowanie

17. Asynchroniczne cechy języka

      • Nowe słowa kluczowe: async i await
        • Konteksty wykonania i synchronizacji
        • Wykonywanie wielu operacji i pętli
        • Zwracanie obiektu Task
        • Stosowanie async w metodach zagnieżdżonych
      • Wzorzec słowa kluczowego await
      • Obsługa błędów
        • Weryfikacja poprawności argumentów
        • Wyjątki pojedyncze oraz grupy wyjątków
        • Operacje równoległe i nieobsłużone wyjątki
      • Podsumowanie

18. Wydajne użytkowanie pamięci

      • (Nie) kopiować!
      • Reprezentacja elementów sekwencyjnych przy użyciu Span
        • Metody pomocnicze
        • Tylko na stosie
      • Reprezentacja elementów sekwencyjnych przy użyciu Memory
      • ReadOnlySequence
      • Przetwarzanie strumieni danych przy użyciu potoków
        • Przetwarzanie danych JSON w ASP.NET Core
      • Podsumowanie

Skorowidz

Książka - Autor Ian Griffiths
Książka - ISBN 978-83-832-2206-6
Książka - Oprawa miękka
Książka - Wydawnictwo Helion S.A.
Tematyka C / C++ / C#
Szerokość opakowania 16.6 cm
Wysokość opakowania 23.6 cm
Głębokość opakowania 3.5 cm
Masa opakowania 0.988 kg

Jako pierwszy zadaj pytanie dotyczące tego produktu!

Klienci którzy zakupili ten produkt kupili również:

Produkty z tej samej kategorii: