NET CLR Ksiega eksperta.pdf
(
344 KB
)
Pobierz
IDZ DO
PRZYK£ADOWY ROZDZIA£
SPIS TRE CI
KATALOG KSI¥¯EK
KATALOG ONLINE
ZAMÓW DRUKOWANY KATALOG
.NET CLR.
Ksiêga eksperta
Autor: Kevin Burton
T³umaczenie: Marcin Jêdrysiak
ISBN: 83-7197-780-8
Tytu³ orygina³u:
.NET Common
Language Runtime Unleashed
Format: B5, stron: 868
„.NET CLR. Ksiêga eksperta” to ca³o ciowe opracowanie po wiêcone g³ównemu
sk³adnikowi platformy .NET Microsoftu, jakim jest Common Language Runtime. CLR
pozwala na korzystanie z dowolnych jêzyków programowania zgodnych z .NET
udostêpniaj¹c im wspólne us³ugi. Niezale¿nie od tego, czy uruchamiasz kod napisany
w VB, C#, zarz¹dzanym C++, JScripcie czy te¿ w dowolnym innym obs³ugiwanym przez
platformê .NET jêzyku — wykorzystywane s¹ funkcje i us³ugi CLR.
Tematy poruszone w ksi¹¿ce obejmuj¹ m.in.:
• Typy .NET i Common Type System (CTS)
• Strukturê i uk³ad metadanych podzespo³u .NET
• Wspó³pracê COM i COM+ z komponentami .NET
• Integracjê z bibliotekami Win32 DLL poprzez P/Invoke
• Zarz¹dzanie pamiêci¹ i zasobami w CLR
• Zarz¹dzanie i u¿ycie w¹tków w rodowisku .NET
• Tworzenie wydajnych aplikacji do obs³ugi sieci równorzêdnych
• Tworzenie rozproszonych aplikacji
• Interakcje aplikacji poprzez zdarzenia i delegaty
• Obs³ugê b³êdów w .NET przy u¿yciu wyj¹tków
• Tworzenie i obs³ugê bezpiecznych aplikacji dziêki zabezpieczeniom .NET
• Dynamiczne uzyskiwanie informacji o typach poprzez refleksjê
• U¿ycie narzêdzi do globalizacji i lokalizacji
• Usuwanie b³êdów aplikacji .NET
• Profilowanie aplikacji .NET
• Omówienie sk³adni C# i najwa¿niejszych kwestii zwi¹zanych z tym jêzykiem
• Przegl¹d bibliotek struktury .NET
• Tworzenie w³asnego hosta CLR
• Porównanie CLR i JVM
Je¿eli chcesz zajmowaæ siê pisaniem aplikacji opartych na .NET, „.NET CLR. Ksiêga
eksperta” stanowiæ bêdzie cenne uzupe³nienie Twojej wiedzy i pozwoli na lepsze
zrozumienie zasad, na których oparta jest ta platforma.
TWÓJ KOSZYK
DODAJ DO KOSZYKA
CENNIK I INFORMACJE
ZAMÓW INFORMACJE
O NOWO CIACH
ZAMÓW CENNIK
CZYTELNIA
FRAGMENTY KSI¥¯EK ONLINE
Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl
5RKU VTG EK
1 #WVQT\G
2T\GFOQYC
9UVúR
%\ú è + 5VTWMVWTC 0'6 K RQFUVCY[ %.4C
4Q\F\KC 9RTQYCF\GPKG FQ \CT\æF\CPGIQ TQFQYKUMC
Krótka historia CLR ..............................................................................................................................30
Omówienie zarządzanego środowiska wykonawczego.........................................................................30
Bezpieczeństwo typów ....................................................................................................................32
Pełne bezpieczeństwo......................................................................................................................34
Obsługa wielu języków ...................................................................................................................35
Wydajność i skalowalność ..............................................................................................................36
Wdra anie........................................................................................................................................37
Metadane i samoopisujący kod .......................................................................................................38
Oczyszczanie pamięci i zarządzanie zasobami ...............................................................................39
Ewolucja COM................................................................................................................................39
Obsługa wątków ..............................................................................................................................40
Obsługa sieci ...................................................................................................................................40
Zdarzenia .........................................................................................................................................40
Konsekwentna obsługa błędów .......................................................................................................40
Uzyskiwanie informacji o typie w czasie pracy aplikacji ...............................................................41
Globalizacja.....................................................................................................................................41
Usuwanie błędów i profilowanie.....................................................................................................41
Podsumowanie.......................................................................................................................................41
4Q\F\KC %QOOQP .CPIWCIG 4WPVKOG
Lú\[M K U[UVGO V[RÎY
Common Type System (CTS) ...............................................................................................................43
Typy wartości ..................................................................................................................................44
Typy odwołań..................................................................................................................................48
Cechy Common Language Specification ..............................................................................................56
Nazewnictwo ...................................................................................................................................56
Elementy składowe typu .................................................................................................................61
Właściwości ....................................................................................................................................64
Zdarzenia .........................................................................................................................................67
Tablice .............................................................................................................................................68
Wyliczenia.......................................................................................................................................68
Wyjątki ............................................................................................................................................69
Własne atrybuty...............................................................................................................................70
Podsumowanie.......................................................................................................................................72
0'6 %.4 -UKúIC GMURGTVC
4Q\F\KC %QOOQP .CPIWCIG 4WPVKOG
QOÎYKGPKG TQFQYKUMC Y[MQPCYE\GIQ
Wprowadzenie do środowiska wykonawczego .....................................................................................74
Uruchamianie metody............................................................................................................................75
Typy obsługiwane przez IL.............................................................................................................76
Wykonawczy wątek kontroli...........................................................................................................79
Sterowanie działaniem metody .......................................................................................................80
Podsumowanie.......................................................................................................................................89
%\ú è ++ -QORQPGPV[ %.4
4Q\F\KC 2QF\GURÎ
Przedstawienie podzespołu .NET ..........................................................................................................94
Niezale ność od języka programowania .........................................................................................95
Metadane — podstawa dla równoległego wdra ania i obsługi wielu wersji ..................................96
Metadane a dokładniejsze zabezpieczenia ......................................................................................96
Większa produktywność programisty .............................................................................................97
Bezproblemowa interakcja z niezarządzanymi interfejsami API....................................................97
Praca zdalna.....................................................................................................................................97
Tworzenie międzynarodowych wersji aplikacji..............................................................................97
Koszt metadanych ...........................................................................................................................98
Ogólna struktura podzespołu .................................................................................................................98
Szczegółowe omówienie struktury podzespołu...................................................................................103
Niezarządzany interfejs API i dostęp do metadanych podzespołu......................................................111
Fizyczna struktura podzespołu ............................................................................................................115
Tablica Module (0x00)..................................................................................................................119
Tablica TypeRef (0x01) ................................................................................................................121
Tablica TypeDef (0x02) ................................................................................................................123
Tablica MethodDef (0x06)............................................................................................................125
Tablica MemberRef (0x0A) ..........................................................................................................130
Tablica CustomAttribute (0x0C)...................................................................................................130
Tablica Assembly (0x20) ..............................................................................................................131
Tablica AssemblyRef (0x23) ........................................................................................................131
Podsumowanie.....................................................................................................................................132
4Q\F\KC 2QFUVCY[ Lú\[MC +PVGTOGFKCVG .CPIWCIG
Miejsce IL w procesie programowania ...............................................................................................133
Podręcznik ILDASM...........................................................................................................................134
Podstawy języka IL .............................................................................................................................135
Najczęściej u ywane polecenia IL ......................................................................................................139
Polecenia IL do ładowania wartości..............................................................................................139
Polecenia IL do składowania.........................................................................................................142
Polecenia IL do sterowania działaniem kodu................................................................................143
Polecenia operacji IL.....................................................................................................................147
Polecenia modelu obiektów IL......................................................................................................148
Podsumowanie.....................................................................................................................................149
5RKU VTG EK
4Q\F\KC 2WDNKMQYCPKG CRNKMCELK
Problemy z instalacją klienta Windows...............................................................................................151
Wdra anie i publikowanie aplikacji .NET ..........................................................................................153
Identyfikacja kodu poprzez silną nazwę..............................................................................................153
Wdra anie prywatnego podzespołu.....................................................................................................157
Instalacja współdzielonego kodu.........................................................................................................159
Wyszukiwanie podzespołów ...............................................................................................................162
Badanie plików zasad....................................................................................................................163
Sprawdzenie wcześniejszych odwołań do podzespołu .................................................................165
Sprawdzenie GAC.........................................................................................................................165
Wyszukiwanie podzespołu ............................................................................................................165
Administracja zasadami.......................................................................................................................166
Domyślna zasada wiązania............................................................................................................166
Zmiana zasady wiązania poprzez plik zasad aplikacji ..................................................................166
Zmiana zasady wiązania poprzez plik zasad wydawcy.................................................................168
Zmiana zasady wiązania poprzez plik zasad komputera...............................................................169
Podsumowanie.....................................................................................................................................170
%\ú è +++ 7U WIK Y[MQPCYE\G \CRGYPKCPG RT\G\ %.4
4Q\F\KC 9[MQT\[UV[YCPKG KUVPKGLæEGIQ MQFW RQRT\G\ 2+PXQMG
Omówienie P/Invoke ...........................................................................................................................173
Dlaczego współpraca z klasycznym kodem? ......................................................................................175
Niektóre inne metody współpracy z klasycznym kodem ....................................................................176
U ycie P/Invoke ..................................................................................................................................177
Deklaracja funkcji — atrybut DLLImport ....................................................................................177
Szeregowanie ................................................................................................................................180
U ycie zarządzanych rozszerzeń VC++........................................................................................190
Wpływ P/Invoke na wydajność aplikacji ............................................................................................194
Podsumowanie.....................................................................................................................................194
4Q\F\KC 7 [EKG %1/ K %1/ Y \CT\æF\CP[O MQF\KG
Runtime Callable Wrapper ..................................................................................................................196
Przykładowa aplikacja demonstrująca u ycie RCW.....................................................................198
Programowe generowanie podzespołu współpracy.............................................................................204
Późne wiązanie z komponentem COM ...............................................................................................206
Współpraca z elementami sterującymi ActiveX .................................................................................207
Współpraca z SOAP ............................................................................................................................211
Podsumowanie.....................................................................................................................................212
4Q\F\KC 7 [EKG \CT\æF\CPGIQ MQFW
LCMQ MQORQPGPVW %1/ K %1/
Dlaczego warto tworzyć komponent .NET zachowujący się jak składnik COM?..............................215
Podstawy współpracy niezarządzanego i zarządzanego kodu.............................................................216
Eksportowanie metadanych do biblioteki typów ..........................................................................217
Rejestracja informacji w bibliotece typów....................................................................................230
Demonstracja współpracy COM z klasą Arithmetic.....................................................................232
Demonstracja współpracy COM z Excelem .................................................................................232
Zaawansowane funkcje współpracy COM....................................................................................235
Podsumowanie.....................................................................................................................................240
0'6 %.4 -UKúIC GMURGTVC
4Q\F\KC <CT\æF\CPKG RCOKúEKæ K \CUQDCOK
Omówienie sposobu zarządzania zasobami w strukturze .NET..........................................................243
Porównanie alokacji w strukturze .NET i C-Runtime...................................................................247
Optymalizacja oczyszczania pamięci poprzez generacje..............................................................250
Finalizacja .....................................................................................................................................250
Zarządzanie zasobami poprzez obiekt Disposable........................................................................256
Du e obiekty........................................................................................................................................261
WeakReference lub wyścig z mechanizmem oczyszczania pamięci ..................................................262
Podsumowanie.....................................................................................................................................264
4Q\F\KC 1DU WIC YæVMÎY
Prezentacja wątków .............................................................................................................................266
Tworzenie i uruchamianie wątków ...............................................................................................266
Witaj świecie .................................................................................................................................268
Wielozakresowy delegat wątku.....................................................................................................268
Przekazywanie informacji do wątku .............................................................................................270
Inne operacje wykonywane na wątkach ..............................................................................................273
AppDomain .........................................................................................................................................275
Synchronizacja.....................................................................................................................................278
Monitor i Lock ..............................................................................................................................280
Zsynchronizowane zbiory .............................................................................................................282
Klasy synchronizacji wątków........................................................................................................282
Oczekiwanie poprzez WaitHandle ................................................................................................282
Klasa Interlocked...........................................................................................................................283
Słowo kluczowe volatile ...............................................................................................................283
Metoda Join ...................................................................................................................................283
Invoke, BeginInvoke oraz EndInvoke...........................................................................................283
Pierwszy przykład synchronizacji — obiad filozofów .................................................................284
Drugi przykład synchronizacji — koszyk z kolorowymi piłkami ................................................285
Pula wątków ........................................................................................................................................286
QueueUserWorkItem ....................................................................................................................286
RegisterWaitForSingleObject .......................................................................................................289
Podsumowanie.....................................................................................................................................291
4Q\F\KC 1DU WIC UKGEK
Krótka historia rozproszonych aplikacji..............................................................................................293
Tradycyjne gniazda..............................................................................................................................294
WinSock ..............................................................................................................................................295
Klasy sieciowe .NET ...........................................................................................................................295
Produktywne tworzenie oprogramowania sieciowego..................................................................296
Warstwowy stos sieci ....................................................................................................................296
Scenariusze dla aplikacji serwerowych i klienckich .....................................................................296
Elastyczność ..................................................................................................................................296
Zgodność ze standardami ..............................................................................................................296
Gniazdo w .NET ..................................................................................................................................297
Gniazdo UDP ................................................................................................................................297
Gniazdo TCP .................................................................................................................................306
Opcje Socket .................................................................................................................................311
U ycie IOControl ..........................................................................................................................316
Asynchroniczne operacje na gniazdach ........................................................................................317
Plik z chomika:
Smoke-Wood
Inne pliki z tego folderu:
JavaServer Faces Wydanie III(1).pdf
(596 KB)
Linux Najlepsze przepisy Wydanie II(1).pdf
(596 KB)
Macromedia FreeHand MX Oficjalny podrecznik(1).pdf
(588 KB)
Generator Macromedia Flash nastepny krok(1).pdf
(584 KB)
JavaServer Faces Wydanie III.pdf
(596 KB)
Inne foldery tego chomika:
- ✖ COMPANY OF HEROES 2 OFENSYWA W ARDENACH [PC]
- ✖ EVOLVE [PC]
- ✖ FAHRENHEIT REMASTERED [PC]
- ✖ LEGO BATMAN 3 POZA GOTHAM [PC]
- � ✔ F1 2014 (2014) XBOX360 - PL✔
Zgłoś jeśli
naruszono regulamin