Język C#. Programowanie. Wydanie III. Microsoft .NET Development Series
Autorzy: Anders Hejlsberg, Mads Torgersen, Scott Wiltamuth, Peter Golde
Data wydania: 02/2010
Stron: 784
Tytuł oryginału: The C# Programming
Tłumaczenie: Łukasz Suma
ISBN: 978-83-[zasłonięte]-2195-8
Format: B5
Oprawa: twarda
Numer z katalogu: 5140
Wydawnictwo Helion
Poznaj możliwości języka C# i twórz wysoko wydajne aplikacje
Jak używać instrukcji wyrażeń?
Jak korzystać z typów wyliczeniowych?
Jak definiować i stosować atrybuty?
Nowoczesny i bezpieczny język programowania C# posiada kilka cech, które ułatwiają opracowywanie solidnych i wydajnych aplikacji -- na przykład obsługę wyjątków, wymuszanie bezpieczeństwa typów lub mechanizm odzyskiwania pamięci, czyli automatyczne odzyskiwanie pamięci operacyjnej zajmowanej przez nieużywane obiekty. C# 3.0 oferuje możliwość programowania funkcjonalnego oraz technologię LINQ zapytań zintegrowanych z językiem, co znacząco poprawia wydajność pracy programisty.
Książka "Język C#. Programowanie. Wydanie III. Microsoft .NET Development Series" zawiera pełną specyfikację techniczną języka programowania C#, opatrzoną najnowszymi zaktualizowanymi informacjami, m.in. na temat inicjalizatorów obiektów i kolekcji, typów anonimowych czy wyrażeń lambda. Dzięki licznym komentarzom i praktycznym poradom, które uzupełniają główną treść podręcznika, szybko nauczysz się posługiwać zmiennymi, przeprowadzać konwersje funkcji i wyznaczać przeładowania. Dowiesz się, jak optymalnie i z fascynującym efektem końcowym wykorzystywać ten nowoczesny język programowania.
Typy i zmienne
Klasy i obiekty
Struktura leksykalna
Deklaracje struktur
Składowe
Konwersje i wyrażenia
Instrukcje i operatory
Tablice
Interfejsy
Kod nienadzorowany
Wskaźniki w wyrażeniach
Bufory o ustalonym rozmiarze
Dynamiczne alokowanie pamięci
Wykorzystaj wiedzę i doświadczenie najlepszych specjalistów, aby sprawnie posługiwać się językiem C#
Słowo wstępne 11
Przedmowa 13
O autorach 15
O komentatorach 17
1. Wprowadzenie 19
1.1. Witaj, świecie 20
1.2. Struktura programu 22
1.3. Typy i zmienne 24
1.4. Wyrażenia 29
1.5. Instrukcje 32
1.6. Klasy i obiekty 36
1.7. Struktury 59
1.8. Tablice 62
1.9. Interfejsy 64
1.10. Typy wyliczeniowe 66
1.11. Delegacje 68
1.12. Atrybuty 72
2. Struktura leksykalna 75
2.1. Programy 75
2.2. Gramatyka 75
2.3. Analiza leksykalna 77
2.4. Tokeny 81
2.5. Dyrektywy preprocesora 94
3. Podstawowe pojęcia 107
3.1. Uruchomienie aplikacji 107
3.2. Zakończenie aplikacji 108
3.3. Deklaracje 109
3.4. Składowe 113
3.5. Dostęp do składowych 115
3.6. Sygnatury i przeładowywanie 124
3.7. Zakresy 126
3.8. Przestrzeń nazw i nazwy typów 133
3.9. Automatyczne zarządzanie pamięcią 138
3.10. Kolejność wykonania 143
4. Typy 145
4.1. Typy wartościowe 146
4.2. Typy referencyjne 157
4.3. Pakowanie i rozpakowywanie 160
4.4. Typy skonstruowane 164
4.5. Parametry typu 168
4.6. Typy drzew wyrażeń 169
5. Zmienne 171
5.1. Kategorie zmiennych 171
5.2. Wartości domyślne 177
5.3. Ustalenie niewątpliwe 177
5.4. Referencje zmiennych 194
5.5. Niepodzielność referencji zmiennych 194
6. Konwersje 195
6.1. Konwersje niejawne 196
6.2. Konwersje jawne 202
6.3. Konwersje standardowe 210
6.4. Konwersje definiowane przez użytkownika 211
6.5. Konwersje funkcji anonimowych 216
6.6. Konwersje grup metod 223
7. Wyrażenia 227
7.1. Klasyfikacje wyrażeń 227
7.2. Operatory 230
7.3. Odnajdywanie składowych 239
7.4. Funkcje składowe 242
7.5. Wyrażenia podstawowe 262
7.6. Operatory jednoargumentowe 306
7.7. Operatory arytmetyczne 311
7.8. Operatory przesunięcia 320
7.9. Operatory relacyjne i testowania typu 322
7.10. Operatory logiczne 332
7.11. Logiczne operatory warunkowe 334
7.12. Operator łączenia pustego 337
7.13. Operator warunkowy 339
7.14. Wyrażenia funkcji anonimowych 340
7.15. Wyrażenia zapytań 350
7.16. Operatory przypisań 363
7.17. Wyrażenia 369
7.18. Wyrażenia stałe 369
7.19. Wyrażenia boole'owskie 371
8. Instrukcje 373
8.1. Punkty końcowe i osiągalność 374
8.2. Bloki 375
8.3. Instrukcja pusta 377
8.4. Instrukcje oznaczone 378
8.5. Instrukcje deklaracji 379
8.6. Instrukcje wyrażeń 383
8.7. Instrukcje wyboru 383
8.8. Instrukcje iteracji 390
8.9. Instrukcje skoku 398
8.10. Instrukcja try 405
8.11. Instrukcje checked i unchecked 409
8.12. Instrukcja lock 410
8.13. Instrukcja using 412
8.14. Instrukcja yield 414
9. Przestrzenie nazw 419
9.1. Jednostki kompilacji 419
9.2. Deklaracje przestrzeni nazw 420
9.3. Synonimy zewnętrzne 421
9.4. Dyrektywy używania 422
9.5. Składowe przestrzeni nazw 429
9.6. Deklaracje typów 429
9.7. Kwalifikatory synonimów przestrzeni nazw 430
10. Klasy 433
10.1. Deklaracje klas 433
10.2. Typy częściowe 446
10.3. Składowe klas 455
10.4. Stałe 469
10.5. Pola 471
10.6. Metody 481
10.7. Właściwości 503
10.8. Zdarzenia 516
10.9. Indeksatory 524
10.10. Operatory 528
10.11. Konstruktory instancji 535
10.12. Konstruktory statyczne 543
10.13. Destruktory 545
10.14. Iteratory 547
11. Struktury 563
11.1. Deklaracje struktur 563
11.2. Składowe struktury 565
11.3. Różnice między klasą a strukturą 565
11.4. Przykłady struktur 574
12. Tablice 579
12.1. Typy tablicowe 579
12.2. Tworzenie tablic 581
12.3. Dostęp do elementów tablic 582
12.4. Składowe tablic 582
12.5. Kowariancja tablic 582
12.6. Inicjalizatory tablic 583
13. Interfejsy 587
13.1. Deklaracje interfejsów 587
13.2. Składowe interfejsu 590
13.3. W pełni kwalifikowane nazwy składowych interfejsu 595
13.4. Implementacje interfejsów 596
14. Typy wyliczeniowe 611
14.1. Deklaracje typów wyliczeniowych 611
14.2. Modyfikatory typów wyliczeniowych 612
14.3. Składowe typów wyliczeniowych 612
14.4. Typ System.Enum 615
14.5. Wartości typów wyliczeniowych i związane z nimi operacje 616
15. Delegacje 617
15.1. Deklaracje delegacji 618
15.2. Zgodność delegacji 621
15.3. Realizacja delegacji 621
15.4. Wywołanie delegacji 622
16. Wyjątki 625
16.1. Przyczyny wyjątków 625
16.2. Klasa System.Exception 626
16.3. Sposób obsługi wyjątków 626
16.4. Najczęściej spotykane klasy wyjątków 627
17. Atrybuty 629
17.1. Klasy atrybutów 629
17.2. Specyfikacja atrybutu 633
17.3. Instancje atrybutów 639
17.4. Atrybuty zarezerwowane 641
17.5. Atrybuty umożliwiające współdziałanie 646
18. Kod nienadzorowany 649
18.1. Konteksty nienadzorowane 650
18.2. Typy wskaźnikowe 653
18.3. Zmienne utrwalone i ruchome 656
18.4. Konwersje wskaźników 657
18.5. Wskaźniki w wyrażeniach 660
18.6. Instrukcja fixed 667
18.7. Bufory o ustalonym rozmiarze 672
18.8. Alokacja na stosie 675
18.9. Dynamiczne alokowanie pamięci 677
A. Komentarze dokumentacji 679
A.1. Wprowadzenie 679
A.2. Zalecane znaczniki 681
A.3. Przetwarzanie pliku dokumentacji 691
A.4. Przykład 697
B. Gramatyka 703
B.1. Gramatyka leksykalna 703
B.2. Gramatyka składniowa 712
B.3. Rozszerzenia gramatyczne związane z kodem nienadzorowanym 742
C. Źródła informacji uzupełniających 747
Skorowidz 749
|