ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΡΠ»ΠΎΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ .NET (Π²ΠΊΠ»ΡΡΠ°Ρ Plnvoke) Π²ΡΡ ΠΎΠ΄ΠΈΡ Π·Π° ΡΠ°ΠΌΠΊΠΈ ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ. ΠΡΠ»ΠΈ Π²Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΎΡΠ²Π΅ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ Π²ΠΎΠΏΡΠΎΡΠ°, ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ ΠΊ ΠΌΠΎΠ΅ΠΉ ΠΊΠ½ΠΈΠ³Π΅ COM and .NET Interoperability (Apress, 2002).
ΠΠ»Π°Π²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ .NET (CLR, CTS ΠΈ CLS)
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π½Π°Π΅ΡΠ΅ ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°Ρ , ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅ΠΌΡΡ .NET, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΡΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΡ (ΠΈ Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·Π°Π½Π½ΡΡ ) ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡ ΡΡΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°: CLR, CTS ΠΈ CLS. Π‘ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° .NET ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ Π½ΠΎΠ²Π°Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ ΠΈ Π²ΡΠ΅ΠΎΠ±ΡΠ΅ΠΌΠ»ΡΡΠ°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ². Π‘Π»ΠΎΠΉ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π΄Π΅ΡΡ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ CLR (Common Language Runtime β ΠΎΠ±ΡΠ΅ΡΠ·ΡΠΊΠΎΠ²Π°Ρ ΡΡΠ΅Π΄Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ). ΠΠ»Π°Π²Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ CLR ΡΠ²Π»ΡΡΡΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ .NET-ΡΠΈΠΏΠ°ΠΌΠΈ ΠΏΠΎ Π²Π°ΡΠ΅ΠΌΡ ΡΠΊΠ°Π·Π°Π½ΠΈΡ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, CLR ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΡΡΠ΄ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ², ΡΠ°ΠΊΠΈΡ , ΠΊΠ°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΡΡ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ.
ΠΡΡΠ³ΠΈΠΌ ΡΡΡΠΎΠΈΡΠ΅Π»ΡΠ½ΡΠΌ Π±Π»ΠΎΠΊΠΎΠΌ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ.NET ΡΠ²Π»ΡΠ΅ΡΡΡ CTS (Common Type System β ΠΎΠ±ΡΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠΈΠΏΠΎΠ²). Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ CTS ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΠΏΠΈΡΡΠ²Π°ΡΡ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΡΡΠ΅Π΄ΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΠΊΠ°ΠΊ ΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠΎΠ³ΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ Ρ Π΄ΡΡΠ³ΠΎΠΌ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΡΡ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ .NET (Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΆΠ΅).
ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΉ ΡΠ·ΡΠΊ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ Ρ .NET, ΠΌΠΎΠΆΠ΅Ρ ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ CTS. Π ΡΠ²ΡΠ·ΠΈ Ρ ΡΡΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ CLS (Common Language Specification β ΠΎΠ±ΡΠ΅ΡΠ·ΡΠΊΠΎΠ²ΡΠ΅ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ), ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΎΠ±ΡΠΈΡ ΡΠΈΠΏΠΎΠ² ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΏΠΎΠ½ΡΡΠ½ΡΡ Π²ΡΠ΅ΠΌ ΡΠ·ΡΠΊΠ°ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΌ Ρ .NET. ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΠ΅ Π²Π°ΠΌΠΈ .NET-ΡΠΈΠΏΡ ΠΎΠΏΠΈΡΠ°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ CLS, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠ΅Π±ΡΠ²Π°ΡΡ Π² ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΡΡΠΈ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ ΡΠΌΠΎΠΆΠ΅Ρ Π»ΡΠ±ΠΎΠΉ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ Ρ .NET ΡΠ·ΡΠΊ. Π Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΠΈΠΏΡ Π΄Π°Π½Π½ΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, Π²ΡΡ ΠΎΠ΄ΡΡΠΈΠ΅ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Ρ CLS, Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°ΡΡ, ΡΡΠΎ Ρ Π²Π°ΡΠ΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ .NET-ΠΊΠΎΠ΄Π° ΡΠΌΠΎΠΆΠ΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΠΎΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ .NET.
Π ΠΎΠ»Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ²
Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΠΌ CLR ΠΈ CTS/CLS, ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° .NET ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ², Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π²ΡΠ΅ΠΌ ΡΠ·ΡΠΊΠ°ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ .NET. ΠΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΡΠ΅Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎΡΠΎΠΊΠΈ, ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠΉ Π²Π²ΠΎΠ΄-Π²ΡΠ²ΠΎΠ΄, Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π³ΡΠ°ΡΠΈΠΊΠΈ ΠΈ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ, Π½ΠΎ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΡΠ΄Π° ΡΠ΅ΡΠ²ΠΈΡΠΎΠ², Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΠΈΠΏΡ, ΡΠΏΡΠΎΡΠ°ΡΡΠΈΠ΅ Π΄ΠΎΡΡΡΠΏ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½ΡΡ , ΡΠ°Π±ΠΎΡΡ Ρ XML, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Web-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±ΡΡΠ½ΡΡ Π½Π°ΡΡΠΎΠ»ΡΠ½ΡΡ ΠΈ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ) ΠΊΠ»ΠΈΠ΅Π½ΡΠ°. Π‘Ρ Π΅ΠΌΠ° Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·Π΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρ CLR, CTS, CLS ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° ΡΠΈΡ. 1.1.
Π ΠΈΡ. 1.1. CLR, CTS, CLS ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π±Π°Π·ΠΎΠ²ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ²
Π ΠΎΠ»Ρ ΡΠ·ΡΠΊΠ° C#
Π‘ ΡΡΠ΅ΡΠΎΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ .NET ΡΠ°ΠΊ ΡΠ°Π΄ΠΈΠΊΠ°Π»ΡΠ½ΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, Microsoft ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π»Π° Π½ΠΎΠ²ΡΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, C# (ΠΏΡΠΎΠΈΠ·Π½ΠΎΡΠΈΡΡΡ "ΡΠΈ-Π΄ΠΈΠ΅Π·"), ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Ρ ΡΡΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΎΠΉ. Π―Π·ΡΠΊ C# ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ·ΡΠΊΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠΈΠΌ Π½Π° Java (Π½ΠΎ Π½Π΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠ½ΡΠΌ Π΅ΠΌΡ). ΠΠ΄Π½Π°ΠΊΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ C# "ΠΏΠ΅ΡΠ΅ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΌ" Π²Π°ΡΠΈΠ°Π½ΡΠΎΠΌ Java Π±ΡΠ΄Π΅Ρ Π½Π΅Π²Π΅ΡΠ½ΠΎ. C#, ΠΊΠ°ΠΊ ΠΈ Java, ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡΡ C++. Π’Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Java, C# ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ "ΡΠ°ΡΠΈΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ" Π²Π΅ΡΡΠΈΠ΅ΠΉ C++ β Π² ΠΊΠΎΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ², ΡΡΠΎ ΡΠ·ΡΠΊΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΌΠ΅ΠΉΡΡΠ²Π°.
ΠΠ½ΠΎΠ³ΠΈΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ C# ΠΏΠΎΡΡΡΠΎΠ΅Π½Ρ Ρ ΡΡΠ΅ΡΠΎΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ, ΠΏΡΠΈΠ½ΡΡΡΡ Π² Visual Basic 6.0 ΠΈ C++. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΠΊ ΠΈ Π² VB6, Π² C# ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΡΠΎΡΠΌΠ°Π»ΡΠ½ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΠΈΠΏΠΎΠ² (Π² ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ get ΠΈ set) ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² (ΡΠ΅ΡΠ΅Π· ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²). ΠΠΎΠ΄ΠΎΠ±Π½ΠΎ C++, Π² C# ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΡΡΠΊΡΡΡ, ΠΏΠ΅ΡΠ΅ΡΠ½Π΅ΠΉ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π° (ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ Π΄Π΅Π»Π΅Π³Π°ΡΠΎΠ²).
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ C# ΡΠ²Π»ΡΠ΅ΡΡΡ Π³ΠΈΠ±ΡΠΈΠ΄ΠΎΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΡΠ·ΡΠΊΠΎΠ², ΠΎΠ½ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ΄ΡΠΊΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°ΠΊ ΠΆΠ΅ "ΡΠΈΡΡ", ΠΊΠ°ΠΊ Java (Π΅ΡΠ»ΠΈ Π½Π΅ "ΡΠΈΡΠ΅"), ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊ ΠΆΠ΅ ΠΏΡΠΎΡΡ, ΠΊΠ°ΠΊ VB6, ΠΈ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΌΠΎΡΡΡ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡΡΡ, ΠΊΠ°ΠΊ C++ (Π±Π΅Π· ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ "ΡΠΆΠ°ΡΠ½ΡΡ " ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΉ). ΠΠΎ ΡΡΡΠΈ, ΡΠ·ΡΠΊ C# ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ (ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΡΡΡΠΈ ΠΈ Π²ΡΠ΅ΠΌ Π΄ΡΡΠ³ΠΈΠΌ ΡΠ·ΡΠΊΠ°ΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΌ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ .NET).
β’ ΠΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ! ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° C# ΠΎΠ±ΡΡΠ½ΠΎ Π½Π΅ ΡΡΠ΅Π±ΡΡΡ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌ (Ρ ΠΎΡΡ ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊ Π½ΠΈΠΌ Π΄ΠΎΡΡΡΠΏ Π½Π° Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΡΡΠ΅ΡΠ΅ ΡΡΠΎ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌ).
β’ ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ±ΠΎΡΠΊΡ ΠΌΡΡΠΎΡΠ°. ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ Π² C# Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ delete.
β’ Π€ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅ΡΠ½Π΅ΠΉ, ΡΡΡΡΠΊΡΡΡ ΠΈ ΡΠ²ΠΎΠΉΡΡΠ² ΠΊΠ»Π°ΡΡΠΎΠ².
β’ ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½Π°Ρ C++ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΡΠΈΠΏΠΎΠ², Π½ΠΎ Π±Π΅Π· Π»ΠΈΡΠ½ΠΈΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Π°ΠΌ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ "Π²ΠΎΠ·Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ *this Π΄Π»Ρ ΡΠ²ΡΠ·ΡΠ²Π°Π½ΠΈΡ").
β’ Π C# 2005 ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΡΡΠΎΠΈΡΡ ΠΎΠ±ΡΠΈΠ΅ ΡΠΈΠΏΡ ΠΈ ΠΎΠ±ΡΠΈΠ΅ ΡΠ»Π΅Π½Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ°, ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠ΅Π³ΠΎ Π½Π° ΡΠ°Π±Π»ΠΎΠ½Ρ C++.
β’ ΠΠΎΠ»Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅Ρ Π½ΠΈΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ².
β’ ΠΠΎΠ»Π½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π°ΡΠΏΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ (ΠΠΠ) ΡΠ΅ΡΠ΅Π· Π°ΡΡΠΈΠ±ΡΡΡ. ΠΡΠ° Π²Π΅ΡΠ²Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°Π·Π½Π°ΡΠ°ΡΡ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ ΡΠΈΠΏΠ°ΠΌ ΠΈ ΠΈΡ ΡΠ»Π΅Π½Π°ΠΌ, ΡΡΠΎΠ±Ρ ΡΡΠΎΡΠ½ΡΡΡ ΠΈΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠ°ΠΌΡΠΌ Π²Π°ΠΆΠ½ΡΠΌ Π΄Π»Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΡΠ·ΡΠΊΠ° C#, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ Microsoft Π² ΡΠ²ΡΠ·ΠΊΠ΅ Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΎΠΉ .NET, ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌΡΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ C# ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΡΠ΅Π΄Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ .NET (Π²Ρ Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ C# Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ "ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ" COM-ΡΠ΅ΡΠ²Π΅ΡΠ° ΠΈΠ»ΠΈ Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Win32 API). ΠΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠΌΠΈΠ½, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄Π»Ρ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ .NET, β ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄ (managed code). ΠΠΈΠ½Π°ΡΠ½ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ°ΠΊΠΎΠΉ ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄, Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΎΡΠ½ΡΠΌ Π±Π»ΠΎΠΊΠΎΠΌ (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΎΡΠ½ΡΡ Π±Π»ΠΎΠΊΠ°Ρ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΆΠ΅). Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡΡΡ ΡΡΠ΅Π΄ΠΎΠΉ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ .NET, Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π½Π΅ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ (unmanaged code).
ΠΡΡΠ³ΠΈΠ΅ ΡΠ·ΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ .NET
ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ C# ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ, ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ Π½Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ .NET. ΠΠΎΠ³Π΄Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ° .NET Π±ΡΠ»Π° Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π° ΠΎΠ±ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ Π½Π° ΠΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Microsoft Π² 2000 Π³ΠΎΠ΄Ρ, ΡΡΠ΄ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ ΠΎΠ±ΡΡΠ²ΠΈΠ»ΠΈ, ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠΆΠ΅ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π²Π΅ΡΡΠΈΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ², ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠ΅ Ρ .NET. ΠΠ° ΠΌΠΎΠΌΠ΅Π½Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ Π΄Π΅ΡΡΡΠΊΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π»ΠΈΡΡ Π²Π»ΠΈΡΠ½ΠΈΡ .NET. Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΡΡΠΈ ΡΠ·ΡΠΊΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡΡΡ Π² Visual Studio 2005 (C#, J#, Visual Basic .NET, Managed Extensions Π΄Π»Ρ C++ ΠΈ JScript .NET), ΠΈΠΌΠ΅ΡΡΡΡ ΡΠ°ΠΊΠΆΠ΅ .NET-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Π΄Π»Ρ Smalltalk, COBOL ΠΈ Pascal (ΡΡΠΎ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΠ΅ΡΠ΅ΡΠ΅Π½Ρ).
ΠΠ°ΡΠ΅ΡΠΈΠ°Π» ΡΡΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎΡΡΠΈ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΡΠ²ΡΡΠ΅Π½ ΡΠ·ΡΠΊΡ C#, Π½ΠΎ Π² ΡΠ°Π±Π». 1.1 ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠΏΠΈΡΠΎΠΊ Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΡ Ρ .NET, ΠΈ ΡΠΊΠ°Π·Π°Π½ΠΎ, Π³Π΄Π΅ Π½Π°ΠΉΡΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Π½ΠΈΡ (ΡΡΡΠΈΡΠ΅, ΡΡΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ° URL ΠΌΠΎΠ³ΡΡ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡΡ).
Π’Π°Π±Π»ΠΈΡΠ° 1.1. ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΡ Ρ .NET
ΠΠ΄ΡΠ΅Ρ Web-ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ·ΡΠΊΠ° .NET ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ http://www.oberon.ethz.ch/oberon.NET "ΠΠΎΠΌΠ°ΡΠ½ΡΡ" ΡΡΡΠ°Π½ΠΈΡΠ° Active Oberon .NET http://www.usafa.af.mil/df/dfcs/bios/mcc_html/a_sharp.cfm " ΠΠΎΠΌΠ°ΡΠ½ΡΡ" ΡΡΡΠ°Π½ΠΈΡΠ° Π# (ΠΏΠΎΡΡ Ada Π΄Π»Ρ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ .NET) http://www.netcobol.com ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ COBOL .NET http://www.eiffel.com ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ Eiffel .NET http://www.dataman.ro/dforth ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ Forth .NET http://www.silverfrost.com/ll/ftn95/ftn95_fortran_95_for_windows.asp ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ΅Ρ Fortran .NET http://www.vmx-net.com ΠΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π΄Π°ΠΆΠ΅ Smalltalk .NETΠ‘Π»Π΅Π΄ΡΠ΅Ρ ΡΡΠ΅ΡΡΡ, ΡΡΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΠ°Π±Π». 1.1 Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΡΠ΅ΡΠΏΡΠ²Π°ΡΡΠ΅ΠΉ. Π‘ΠΏΠΈΡΠΊΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ² Π΄Π»Ρ .NET ΠΈΠΌΠ΅ΡΡΡΡ Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΡ Web-ΡΠ·Π»Π°Ρ , ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΊΠΈΡ ΡΠΏΠΈΡΠΊΠΎΠ² Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ http://www.dotnetpowered.com/languages.aspx (ΠΎΠΏΡΡΡ ΠΆΠ΅, ΡΠΎΡΠ½ΡΠΉ Π°Π΄ΡΠ΅Ρ URL ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡΡ). Π― ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΏΠΎΡΠ΅ΡΠΈΡΡ ΡΡΡ ΡΡΡΠ°Π½ΠΈΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Π°Ρ Π½Π΅ΠΏΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡ Ρ ΠΎΡΡ Π±Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· ΡΠ·ΡΠΊΠΎΠ² .NET (ΠΌΠΎΠΆΠ΅Ρ, ΠΊΠΎΠΌΡ-ΡΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ LISP .NET).