Π ΠΈΡ. 3.1. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ .NET Compact Framework, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄ΠΎΠ²
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ NET Compact Framework ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΠΉ ΠΊΠΎΠ΄, ΠΎΡΠ²Π΅ΡΠ°ΡΡΠΈΠΉ Π·Π° Π·Π°Π³ΡΡΠ·ΠΊΡ, JIT-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΡΡ. ΠΠΌΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π±ΡΠ°ΡΡ Π½Π° ΡΠ΅Π±Ρ Π²ΡΡ ΡΠ΅ΡΠ½ΠΎΠ²ΡΡ ΡΠ°Π±ΠΎΡΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° ΡΠ·ΡΠΊΠ°Ρ C/C++ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠ°. ΠΠ° ΡΡΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²ΠΎΠ·Π»Π°Π³Π°Π΅ΡΡΡ Π·Π°Π΄Π°ΡΠ° ΡΡΠ°Π½ΡΠ»ΡΡΠΈΠΈ .NET Compact Framework ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π² ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠΎΡΠΌΠ°Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ JIT- ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ (just-in-time β ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½Π°Ρ). Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π»ΡΠ±ΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ ΠΈΠ· ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΊΠΎΠ΄, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠ·ΠΎΠ²Ρ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π½Π° ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ API-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ; ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ (thunking).
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ Π»ΡΠ±ΠΎΠ³ΠΎ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ, Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π΄ΠΎΠ»Ρ ΡΡΠΈΠ»ΠΈΠΉ Π½Π° ΡΡΠ°Π΄ΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΌ.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° .NET Compact Framework ΡΠ²Π»ΡΡΡΡΡ ΡΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ ΡΠ°ΡΡΡΡ, Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ. ΠΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ Π²Π°ΡΠΈΠ°Π½ΡΠ° .NET Framework Π΄Π»Ρ Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ², Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ .NET Compact Framework ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Ρ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ DLL-ΡΠ°ΠΉΠ»Π°Ρ . ΠΡΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡ Π½Π° Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ Π½Π° ΡΠ΅Π»Π΅Π²ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΡΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΈΠΌΠ΅Π½Π° System.DLL, Systems.Windows.Form.DLL ΠΈ System.Xml.DLL. ΠΠ° ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠ³ΡΡ ΠΈΠΌΠ΅ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π° Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠ΅ΠΉ ΡΠ΅Π»Π΅Π²ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ², ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈ ΡΡΠ΅ΡΠΎΠΌ Π²Π΅ΡΡΠΈΠΉ ΡΠ°ΠΉΠ»ΠΎΠ². Π ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΡΠΎΠΌΡ, ΠΊΠ°ΠΊ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°ΠΌΠΈ C/C++ ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΏΡΠ΅ΠΆΠ½ΠΈΠΌΠΈ (ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΌΠΈ Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ VB6 ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π½Π½ΠΈΡ Π²Π΅ΡΡΠΈΠΉ) ΠΊΠΎΠ΄Π°ΠΌΠΈ Π½Π° ΡΠ·ΡΠΊΠ΅ Visual Basic Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°Ρ ΠΈ ΡΠΈΠΏΠ°Ρ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.
Π’ΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΈΠΌΠ΅ΡΡ ΡΠΎ ΠΆΠ΅ DLL-ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅, ΡΡΠΎ ΠΈ ΡΠ°ΠΉΠ»Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΊΠΎΠ΄ΠΎΠ² C/C++, ΠΎΠ±ΡΡΡΠ½ΡΠ΅ΡΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ΠΌ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΏΡΠΈΠ²ΡΡΠ½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΠΊ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ²; ΠΏΡΠΈΡΠΎΠ΄Π° ΠΈΡ Π΄Π²ΠΎΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π΄ΡΡΠ³Π°Ρ, ΠΈ Π² ΡΠΎΡΡΠ°Π² ΠΈΡ ΠΈΠΌΠ΅Π½ Ρ ΡΠ°Π²Π½ΡΠΌ ΡΡΠΏΠ΅Ρ ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ Π»ΡΠ±ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅ ΡΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅. Π’ΠΎ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ² .NET Compact Framework ΠΎΠ±ΡΡΠ½ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡ Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² .NET Framework, ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΡΡΠ½ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΡΠ΄ΠΎΠ±ΡΡΠ²Π°. Π Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»Π΅Π½Ρ Π½Π° Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½Ρ Π² ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΉΠ», Π΅ΡΠ»ΠΈ Π² ΡΡΠΎΠΌ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ. Π Π±ΡΠ΄ΡΡΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌ, ΠΎΡΠ»ΠΈΡΠ½ΡΡ ΠΎΡ Windows, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠ±ΡΠ°Π½ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½ΡΠΌ.
ΠΠ±ΡΡΠ½ΠΎ Π΄Π΅ΡΠ°Π»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π·Π°Π΄Π°ΡΠΈ ΠΏΠΎΠΈΡΠΊΠ°, Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΎΠ±ΡΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ, ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ Π½Π° ΡΡΡΡΠΎΠΉΡΡΠ²Π΅, ΡΠ΅ΡΠ°ΡΡΡΡ ΡΡΠ΅Π΄ΠΎΠΉ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΡΠΈΡ DLL-ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ Π½Π°Π±ΠΎΡ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΠ΅Π½, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΡ ΠΊΠ»Π°ΡΡΡ ΠΈ ΡΠΈΠΏΡ. ΠΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΠ΅Π½, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΡ ΠΊΠ»Π°ΡΡΡ ΠΈ ΡΠΈΠΏΡ, ΠΌΠΎΠ³ΡΡ ΡΠ»ΡΠΆΠΈΡΡ:
System.*
System.Xml.*
System.Data.*
System.Drawing.*
ΠΈ ΡΠΎΠΌΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅.
DLL-ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π° ΠΈΠΌΠ΅Π½ ΡΠ²ΡΠ·Π°Π½Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡΠΌΠΈ ΡΠΈΠΏΠ° "ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ"; ΠΎΠ΄ΠΈΠ½ DLL-ΡΠ°ΠΉΠ» ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΈΠΌΠ΅Π½Π° ΡΡΠ°Π·Ρ Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΠ΅Π½ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ, ΡΠ°ΠΉΠ» Foo.DLL ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΈΠΏΡ, ΠΎΡΠ½ΠΎΡΡΡΠΈΠ΅ΡΡ ΠΊΠ°ΠΊ ΠΊ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Ρ ΠΈΠΌΠ΅Π½ MyNamespace.*, ΡΠ°ΠΊ ΠΈ ΠΊ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Ρ ΠΈΠΌΠ΅Π½ SomeOtherNamespace.SomethingElse.*), Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ DLL-ΡΠ°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΈΠΌΠ΅Π½Π° Π΄Π»Ρ ΠΎΠ΄Π½ΠΈΡ ΠΈ ΡΠ΅Ρ ΠΆΠ΅ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΠ΅Π½ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±Π° ΡΠ°ΠΉΠ»Π° Foo.DLL ΠΈ Bar.DLL ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΡΠΈΠΏΡ Π΄Π»Ρ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΠ΅Π½ MyNamespace.* ΠΈ SomeOtherNamespace.SomethingElse.*). ΠΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π½Π°Π±ΠΎΡ ΠΈΠΌΠ΅Π½ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΏΠΎΠ΄Π»Π΅ΠΆΠ°ΡΠΈΡ ΠΏΡΠΎΡΠΌΠΎΡΡΡ Ρ ΡΠ΅Π»ΡΡ ΠΏΠΎΠΈΡΠΊΠ° ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΡΠΈΠΏΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π°ΠΌΠ΅ΡΠ΅Π²Π°Π΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ; ΡΡΠΈ ΠΈΠΌΠ΅Π½Π° ΠΏΡΠΈΠ½ΡΡΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ ΡΡΡΠ»ΠΊΠ°ΠΌΠΈ (references). ΠΡΠ»ΠΈ Π² ΠΊΠΎΠ΄Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ , Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌΠ΅ΡΡΡΡ ΡΡΡΠ»ΠΊΠΈ, Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΈΠΏΡ/ΠΌΠ΅ΡΠΎΠ΄Ρ/ΡΠ²ΠΎΠΉΡΡΠ²Π° Π½Π°ΠΉΡΠΈ Π½Π΅ ΡΠ΄Π°Π΅ΡΡΡ, Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² ΡΠ»ΡΡΠ°Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π²Π΅ΡΡΠΈΠΉ ΡΠΈΠΏΠΎΠ² Π² ΡΠ°Π·Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ ΡΠ°ΠΊΠΆΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ Π½Π΅ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΡΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠΈΠΏΠ°.
ΠΠΎ Π²ΡΠ΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠ»ΡΡΠ°ΡΡ , Π½Π΅ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΎΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΠΊΠ»Π°ΡΡΠΎΠ², Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌΠ΅ΡΡΡΡ ΡΡΡΠ»ΠΊΠΈ, ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ ΡΠΎΠΌ, Π² ΠΊΠ°ΠΊΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΡΠΎΡ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΊΠ»Π°ΡΡ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π΄ΡΠΌΠ°ΡΡ Π»ΠΈΡΡ ΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ² ΠΈΠΌΠ΅Π½, ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π²ΠΎΠΏΡΠΎΡ ΠΎ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΡΠΈΠΏΠΎΠ² Π² ΡΠΊΠ°Π·Π°Π½Π½ΡΡ ΡΠ°ΠΉΠ»Π°Ρ ΠΈΡ Π·Π°Π±ΠΎΡΠΈΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ²
ΠΠ°Π·ΠΎΠ²ΡΠ΅ ΠΊΠ»Π°ΡΡΡ β ΡΡΠΎ ΠΊΠ²ΠΈΠ½ΡΡΡΡΠ΅Π½ΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠ΅ ΡΠΈΠΏΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΠΏΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ . ΠΠ°Π·ΠΎΠ²ΡΠ΅ ΠΊΠ»Π°ΡΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΎΡΡΠ°Π²:
β ΠΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ , ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΡΠ½ΠΎΡΡΡΡΡ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°, ΡΡΡΠΎΠΊΠΈ, ΡΠΈΡΠ»Π° Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ, Π΄Π°ΡΠ°/Π²ΡΠ΅ΠΌΡ, ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ.
β Π‘ΡΠ΅Π΄ΡΡΠ²Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°-Π²ΡΠ²ΠΎΠ΄Π°, ΠΏΠΎΡΠΎΠΊΠΈ, ΡΠ΅ΡΠ΅Π²ΡΠ΅ ΡΠΎΠΊΠ΅ΡΡ.
β Π‘ΡΠ΅Π΄ΡΡΠ²Π° ΠΏΠΎΠΈΡΠΊΠ° ΡΠΈΠΏΠΎΠ², ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΈ ΡΠ²ΠΎΠΉΡΡΠ² Π² ΡΠ±ΠΎΡΠΊΠ°Ρ ΠΈ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ ΠΊ Π½ΠΈΠΌ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΡΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ (reflection).
β Π‘ΡΠ΅Π΄ΡΡΠ²Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΡΡΠΈΡΡΠ²Π°ΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ ΡΠ΅Π³ΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΠΈ ΠΌΠ΅ΡΡΠ½ΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΡ. ΠΡΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π°Π·ΡΠ²Π°ΡΡ Π³Π»ΠΎΠ±Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ (globalization).
ΠΡΡΠ΅ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ Π±Π°Π·ΠΎΠ²ΡΠΌΠΈ ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΠΎΠ²Π°Π½Ρ Π² ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°Ρ ΠΈΠΌΠ΅Π½:
System.*
System.Collections.*
System.ComponentModel.*
System.Diagnostics.Globalization.*
System.IO.*
System.Net.Sockets.*
System.Security.*
System.Text.*
System.Threading.*
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°
ΠΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΏΡΠ΅ΡΠ»Π΅Π΄ΠΎΠ²Π°Π»ΠΈΡΡ Π΄Π²Π΅ ΡΠ΅Π»ΠΈ: 1) ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΡΠΎΠ²Π½Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΡΡΠΈΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°ΠΊΠΈΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΠΊΠ°ΠΊ Button, PictureBox, ListView, TreeView, TabControl ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅, ΠΈ 2) ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ°ΡΡΡΠΎΠ²ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π³ΠΎ ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΠΊΠ°ΠΊ Π»ΠΈΠ½ΠΈΠΈ, ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΈ, ΡΠ΅ΠΊΡΡ ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡΡΡ Π² Π΄Π²ΡΡ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π°Ρ ΠΈΠΌΠ΅Π½:
β System.Drawing.* β ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΡ ΡΠΈΡΡΠ½ΠΊΠΎΠ².
β System.Windows.* β ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π°.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΠΎΠ² Web-ΡΠ»ΡΠΆΠ±
Web-ΡΠ»ΡΠΆΠ±Ρ β ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΌΠΈΡΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ . ΠΠΎ ΡΡΡΠ΅ΡΡΠ²Ρ, ΡΠ΅ΡΠ²Π΅Ρ Web-ΡΠ»ΡΠΆΠ±Ρ β ΡΡΠΎ Web-ΡΠ΅ΡΠ²Π΅Ρ, ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΠΉ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ, Π΄Π»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΊΠΎΡΠΎΡΡΠΌ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ·ΡΠΊΠ° ΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ XML. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π½Π° ΡΠ·ΡΠΊΠ΅ XML ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠΌ SOAP, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π°Π±Π±ΡΠ΅Π²ΠΈΠ°ΡΡΡΡ ΠΎΡ Simple Object Access Protocol β ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ. ΠΠ»ΠΈΠ΅Π½Ρ Web-ΡΠ»ΡΠΆΠ±Ρ β ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡ Π²ΡΠ·ΠΎΠ²Ρ Ρ ΡΠ΅Π»ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ², ΠΏΠΎΡΡΠ»Π°Π΅ΠΌΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ°ΠΌ Web-ΡΠ»ΡΠΆΠ±, ΠΈ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΡΠ΅ ΠΎΡΠ²Π΅ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ SOAP. ΠΠ»Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΡΠ΅ΡΠ²Π΅ΡΡ Web-ΡΠ»ΡΠΆΠ± Π² ΠΎΡΠ²Π΅Ρ Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ Π·Π°ΠΏΡΠΎΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ WSDL-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ. WSDL β ΡΡΠΎ Π°Π±Π±ΡΠ΅Π²ΠΈΠ°ΡΡΡΠ° ΠΎΡ Web Service Description Language (ΡΠ·ΡΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠΉ Web-ΡΠ»ΡΠΆΠ±), ΠΈ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ SOAP, ΡΡΠΎΡ ΡΠ·ΡΠΊ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ, ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΠΏΠΎΠ²Π΅ΡΡ XML. WSDL ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ Web-ΡΠ»ΡΠΆΠ±ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ; Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΡΡΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» SOAP.
ΠΠ»ΡΡΠ΅Π²ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ .NET Framework Π΄Π»Ρ Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ² ΠΈ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ², ΡΠ°Π²Π½ΠΎ ΠΊΠ°ΠΊ ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Visual Studio .NET, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΡΠΎΡΠ° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Web-ΡΠ»ΡΠΆΠ± ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΡΠ»ΡΠ³. Π Visual Studio .NET ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° WSDL-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΏΡΠΎΡΡΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ²-Π·Π°ΠΌΠ΅ΡΡΠΈΡΠ΅Π»Π΅ΠΉ (proxy classes), ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Web-ΡΠ»ΡΠΆΠ±Π°ΠΌ. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π½Π°Π»ΠΈΡΠΈΡ ΡΠΏΠΎΠΌΡΠ½ΡΡΡΡ ΠΊΠ»Π°ΡΡΠΎΠ²-Π·Π°ΠΌΠ΅ΡΡΠΈΡΠ΅Π»Π΅ΠΉ Π²ΡΠ·ΠΎΠ² Web-ΡΠ»ΡΠΆΠ±Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΡΠ°Π»ΡΠ½ΠΎ ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΊ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΈ Π²ΡΠ·ΠΎΠ²Π° Π΅Π³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°.