ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² ΡƒΡ‡Ρ‘Π±Π΅, ΠΎΡ‡Π΅Π½ΡŒ быстро...
Π Π°Π±ΠΎΡ‚Π°Π΅ΠΌ вмСстС Π΄ΠΎ ΠΏΠΎΠ±Π΅Π΄Ρ‹

ΠŸΡ€Π΅Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅. 
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. 
Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ курс с#

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

БвСдСния ΠΎΠ± ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΈ языка C# ΠΈ Ρ€ΠΎΡΡ‚Π΅ Π΅Π³ΠΎ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй ΠΌΡ‹ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ читатСля Π½Π° Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ Π² Π½Π°ΡΡ‚оящСС врСмя Π² ΡΠ·Ρ‹ΠΊΠ΅ C# Π½Π°Ρ‡Π°Π»ΠΈ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ «Π°Ρ‚Π°Π²ΠΈΠ·ΠΌΡ‹» — ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠ΅ срСдства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ компиляторами, Π½ΠΎ Π΄Π»Ρ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π² ΡΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ вСрсии языка Π΅ΡΡ‚ΡŒ эффСктивныС Π·Π°ΠΌΠ΅Π½Ρ‹. НапримСр, ΠΈΠ· Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌΠΎΠ³ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠŸΡ€Π΅Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅. Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ курс с# (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Книга ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для студСнтов, ΠΈΠ·ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ для Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΡ… ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ язык программирования Π‘#. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎ многочислСнных руководств ΠΏΠΎ C# данная ΠΊΠ½ΠΈΠ³Π° посвящСна ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π΅ΠΌ основам языка, Π±Π΅Π· знания ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ ΠΏΡ€ΠΈ Π΅Π³ΠΎ практичСском ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΈ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ справочных ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ².

Π’ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… соврСмСнных справочниках ΠΈ Ρ€ΡƒΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²Π°Ρ… ΠΏΠΎ ΡΠ·Ρ‹ΠΊΡƒ C# ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ приводят свСдСния ΠΎΠ± ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚вованиях ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ…, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΡΠ²Π»ΡΠ²ΡˆΠΈΡ…ΡΡ Π² Π΅Π³ΠΎ вСрсиях.

Π’ Π²Π΅Ρ€ΡΠΈΠΈ 1.0 (2002 Π³.) C# Π±Ρ‹Π» ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° Java, Ρ‚. Π΅. это Π±Ρ‹Π» «ΠΏΡ€ΠΎΡΡ‚ΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния», Π½ΠΎ Ρ ΡΠΎΠ±Ρ‹Ρ‚иями, свойствами, Π΄Π΅Π»Π΅Π³Π°Ρ‚Π°ΠΌΠΈ (ΠΈ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, с ΠΊΠ»Π°ΡΡΠ°ΠΌΠΈ ΠΈ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°ΠΌΠΈ).

Π’ Π²Π΅Ρ€ΡΠΈΠΈ 2.0 C# (2005 Π³.) появились обобщСния, раздСляСмыС Ρ‚ΠΈΠΏΡ‹, Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹.

Π’ Π²Π΅Ρ€ΡΠΈΡŽ 3.0 C# (2007 Π³.) Π±Ρ‹Π»ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π°Π²Ρ‚ΠΎΡ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΡ‹Π΅ свойства, Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹, лямбда-выраТСния, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, нСявно Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, раздСляСмыС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, тСхнология LINQ, ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ. Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π² Π²Π΅Ρ€ΡΠΈΡŽ 3.0 пСрСчислСнных срСдств постСпСнно ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π»ΠΎ C# Π² Π³ΠΈΠ±Ρ€ΠΈΠ΄Π½Ρ‹ΠΉ язык, ΠΏΡ€ΠΈΠ³ΠΎΠ΄Π½Ρ‹ΠΉ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ³ΠΎ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования, Π½ΠΎ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования.

Π’ Π²Π΅Ρ€ΡΠΈΡŽ 4.0 C# (2010 Π³.) Π±Ρ‹Π»Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° динамичСская привязка, ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈ ΠΊΠ»Π°ΡΡΡ‹ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ асинхронного программирования.

Π’ Π²Π΅Ρ€ΡΠΈΠΈ 5.0 C# (2012 Π³.) Π² ΡΠ·Ρ‹ΠΊ C# Π±Ρ‹Π»ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½Ρ‹ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ срСдства асинхронного программирования.

Π’ Π²Π΅Ρ€ΡΠΈΠΈ 6.0 C# (2015 Π³.) усилия Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² языка Π±Ρ‹Π»ΠΈ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ Π½Π° ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй языка. Π‘Ρ‹Π»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Ρ‹ свойств, интСрполяция строк, сТатыС Π΄ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΡ свойства.

Π’ Π²Π΅Ρ€ΡΠΈΠΈ 7.0 C# (2017 Π³.) появились ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅ΠΌΡ‹Π΅ ΠΊΠ°ΠΊ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ out, ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ ΠΈ Π΄Π΅ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹, Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, сТатыС Π΄ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, сТатыС Π΄ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ аксСссоры свойств ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ‚ΠΎΡ€ΠΎΠ², пустыС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ для ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ out, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹Π΅ значСния Π² Π²ΠΈΠ΄Π΅ ссылок с ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ ref.

БвСдСния ΠΎΠ± ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΈ языка C# ΠΈ Ρ€ΠΎΡΡ‚Π΅ Π΅Π³ΠΎ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй ΠΌΡ‹ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ читатСля Π½Π° Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ Π² Π½Π°ΡΡ‚оящСС врСмя Π² ΡΠ·Ρ‹ΠΊΠ΅ C# Π½Π°Ρ‡Π°Π»ΠΈ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ «Π°Ρ‚Π°Π²ΠΈΠ·ΠΌΡ‹» — ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠ΅ срСдства, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ компиляторами, Π½ΠΎ Π΄Π»Ρ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π² ΡΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ вСрсии языка Π΅ΡΡ‚ΡŒ эффСктивныС Π·Π°ΠΌΠ΅Π½Ρ‹. НапримСр, ΠΈΠ· Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌΠΎΠ³ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ Ρ‚Π°ΠΊΠΈΠΌ Π°Ρ‚Π°Π²ΠΈΠ·ΠΌΠΎΠΌ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Π·Π°ΠΌΠ΅Π½ΠΎΠΉ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… слуТат лямбда-выраТСния. Π’Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ класс Tuple, вмСсто ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ сСгодня ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ структуру ValueTuple, ΠΈ Ρ‚. Π΄.

Вторая Ρ†Π΅Π»ΡŒ пСрСчислСния вСрсий языка C# ΠΈ Ρ€Π°Π·Π²ΠΈΡ‚ия Π΅Π³ΠΎ срСдств состояла сСйчас Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ читатСля Π½Π° Ρ‚Ρ€ΡƒΠ΄Π½ΠΎΡΡ‚ΡŒ изучСния программирования Π½Π° C# ΠΏΠΎ ΡΠΏΡ€Π°Π²ΠΎΡ‡Π½ΠΈΠΊΠ°ΠΌ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΡ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌ, доступным сСгодня Π² ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. Бвязано это с ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Ρ€Π°Π·Π½Ρ‹Ρ… ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ усвоСния Π‘#. Π’Π°ΠΊΠΎΠΉ язык программирования, ΠΊΠ°ΠΊ Π‘#, нСльзя ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ «Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎ», условно говоря, «ΠΎΡ‚ Π°ΠΊΡΠΈΠΎΠΌ ΠΊ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ°ΠΌ, Π·Π°Π΄Π°Ρ‡Π°ΠΌ ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ», поэтому ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° (языка C# ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Π½Π° Π‘#) Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ «ΠΏΠΎ ΡΠΏΠΈΡ€Π°Π»ΠΈ». К Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ понятиям, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Π² Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ с ΠΊΡ€Π°Ρ‚ΠΊΠΈΠΌΠΈ пояснСниями, Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π³Π»Π°Π²Π°Ρ… ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‚ΡΡ вновь, постСпСнно ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ объясняя ΠΈΡ….

Но Π½Π°ΡΠΊΠΎΠ»ΡŒΠΊΠΎ Π³Π»ΡƒΠ±ΠΎΠΊΠΎ ΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ слСдуСт ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ синтаксис ΠΈ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ языка, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ? Вопрос ΠΏΠΎΡ‡Ρ‚ΠΈ философский. Π•Π³ΠΎ Π·Π°Π΄Π°Π²Π°Π»ΠΈ ΠΈ ΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ Π½Π° Π½Π΅Π³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ программисты ΠΈ Π°Π²Ρ‚ΠΎΡ€Ρ‹ алгоритмичСских языков ΡƒΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠΈ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ количСство Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… срСдств языка ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ³ΠΎ программирования ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ (Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π° ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ Π²Π½Π΅ΡˆΠ½ΠΈΠΌ устройствам хранСния ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚авлСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ) достаточно ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ присваивания, условный ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ бСзусловного ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π°. Но Π½Π°Π·Π²Π°Π½Π½Ρ‹ΠΉ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² Π±ΡƒΠ΄Π΅Ρ‚ достаточСн Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли для прСдставлСния ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ константы ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π΅Ρ… Ρ‚ΠΈΠΏΠΎΠ², для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π² ΡΠ·Ρ‹ΠΊΠ΅ фиксирован ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. Π’ ΡΠ·Ρ‹ΠΊΠ΅ C# ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ константы ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. Π’ Π½Π΅ΠΌ имССтся ΠΌΠ½ΠΎΠ³ΠΎ конструкций для прСдставлСния Π΄Π°Π½Π½Ρ‹Ρ…. Π Π°Π· Ρ‚Π°ΠΊ, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ арсСнал срСдств Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ кодирования, ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π½Π°Π·Π²Π°Π½Π½ΠΎΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ структур для прСдставлСния Π΄Π°Π½Π½Ρ‹Ρ…. ИмСнно это даст Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π‘#.

КакиС трудности ΠΏΡ€ΠΈ этом ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚? Если ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΈ языков программирования, Ρ‚ΠΎ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π²Π½Π°Ρ‡Π°Π»Π΅ языки Π½Π°Π·Ρ‹Π²Π°Π»ΠΈΡΡŒ алгоритмичСскими ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈΡΡŒ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ матСматичСских вычислСний (классичСский ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Fortran ΠΈ Algol 60). Π’Π°ΠΊΠΈΠ΅ языки Π²ΠΊΠ»ΡŽΡ‡Π°Π»ΠΈ (ΠΊΡ€ΠΎΠΌΠ΅ Π½Π°Π·Π²Π°Π½Π½ΠΎΠ³ΠΎ минимального Π½Π°Π±ΠΎΡ€Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²) срСдства прСдставлСния массивов, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ² ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ создания ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

НС ΠΏΡ‹Ρ‚Π°ΡΡΡŒ ΠΏΡ€ΠΎΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ дальнСйшСС Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ языков программирования, остановимся Π½Π° Π‘#. Π•Π³ΠΎ ΠΊΠΎΡ€Π΅Π½Π½ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… языков — явноС Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² Π½Π° Π΄Π²Π° Π²ΠΈΠ΄Π°: Ρ‚ΠΈΠΏΡ‹ ссылок ΠΈ Ρ‚ΠΈΠΏΡ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. К ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ΅ ΠΈ ΠΊ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ это Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ вСсьма ΠΎΡ‚Π΄Π°Π»Π΅Π½Π½ΠΎΠ΅ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅. Π•Π³ΠΎ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ — ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π·Π° ΡΡ‡Π΅Ρ‚ ΡƒΡ‡Π΅Ρ‚Π° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚ΡƒΡ€Π½Ρ‹Ρ… ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Ρ… особСнностСй Ρ‚ΠΎΠΉ срСды, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ выполняСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° послС Π΅Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΠΈ. Π£ΠΊΠ°Π·Π°Π² Π½Π° ΡΡ‚Ρƒ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ языка Π‘#, ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° создаСт трудности ΠΏΡ€ΠΈ Π΅Π³ΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ. Если Π² ΠΊΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΎΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠΌ языкС для ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ понимания Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ пСрСмСнная, Π±Ρ‹Π»ΠΎ достаточно прСдставлСния ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ· ΡˆΠΊΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ курса Π°Π»Π³Π΅Π±Ρ€Ρ‹, Ρ‚ΠΎ Π² ΡΠ·Ρ‹ΠΊΠ΅ C# этого нСдостаточно. Π―Π²Π½ΠΎΠ΅ ΠΎΡ‚Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΎΡ‚ ΡΡΡ‹Π»ΠΎΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π½Π΅ΠΎΠ±Ρ…одимости Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒ вопрос ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ссылка ΠΈ Ρ‡Π΅ΠΌ отличаСтся нулСвая ссылка ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с Ρ‚ΠΈΠΏΠΎΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½ΡƒΠ»ΡŒ. Π­Ρ‚ΠΈ вопросы Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрСны Π² ΠΊΠ½ΠΈΠ³Π΅, Π° ΡΠ΅ΠΉΡ‡Π°Ρ ΠΊΡ€Π°Ρ‚ΠΊΠΎ остановимся Π½Π° ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠΈ Π³Π»Π°Π².

Π’ ΠΊΠ½ΠΈΠ³Π΅ 18 Π³Π»Π°Π². Π“Π»Π°Π²Π° 1 Π΄Π°Π΅Ρ‚ ΠΎΠ±Ρ‰Π΅Π΅ прСдставлСниС ΠΎ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π΅ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ Π‘#. Π“Π»Π°Π²Ρ‹ 2—6 знакомят читатСля с Ρ‚Π°ΠΊΠΈΠΌΠΈ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌΠΈ понятиями ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ³ΠΎ программирования, ΠΊΠ°ΠΊ константы, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, выраТСния, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹. Однако ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ C# с Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡŽ Ρ‚Π΅Ρ… ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Ρ… классов ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π”Π°ΠΆΠ΅ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ для языков программирования ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π² ΡΠ·Ρ‹ΠΊΠ΅ C# ΡΠ²Π»ΡΡŽΡ‚ΡΡ «ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΡΠΌΠΈ» Π½Π° ΠΊΠ»Π°ΡΡΡ‹ ΠΈ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈΠ· .NET Framework. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° .NET Framework ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² языка Π‘#, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… срСдствами Π΅Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Ρ… классов, описаны Π² Π³Π»Π°Π²Π΅ 5.

Π“Π»Π°Π²Ρ‹ 7 ΠΈ 8 посвящСны массивам ΠΈ ΡΡ‚Ρ€ΠΎΠΊΠ°ΠΌ. Для массивов ΠΈ ΡΡ‚Ρ€ΠΎΠΊ языка C# приходится Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ ΡΡΡ‹Π»ΠΊΠΈ Π½Π° Π½ΠΈΡ…. Π’Π΅ΠΌ самым Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ с Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡŽ назначСния конструкторов ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ям примСнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ new.

Π’ Π³Π»Π°Π²Π΅ 9 рассмотрСны синтаксис ΠΈ ΡΠ΅ΠΌΠ°Π½Ρ‚ΠΈΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² языка Π‘#, всС Π²ΠΈΠ΄Ρ‹ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ примСнСния ссылок Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ описаны: ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², рСкурсивныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ числом Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Π“Π»Π°Π²Π° 10, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰Π°Ρ классы ΠΊΠ°ΠΊ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Ρ‹ ΠΈΡ… ΡΡ‚атичСских Ρ‡Π»Π΅Π½ΠΎΠ², Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ ΠΈΠ·Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ для ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹Ρ… языков ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ. Набор ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ классов с ΠΈΡ… ΡΡ‚атичСскими Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ позволяСт Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠΌ стилС практичСски Π»ΡŽΠ±Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ программирования. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ срСдства Π³Π»Π°Π² 2—10, Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ пСрСвСсти Π½Π° C# ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с ΡΠ·Ρ‹ΠΊΠΎΠ² Π‘, Паскаль ΠΈΠ»ΠΈ Π€ΠΎΡ€Ρ‚Ρ€Π°Π½. Как Ρ‚Π°ΠΊΠΎΠ²ΠΎΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ начинаСтся с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… классов (Π³Π»Π°Π²Π° 11). Π“Π»Π°Π²Π° 12 ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ эту Ρ‚Π΅ΠΌΡƒ ΠΈ ΠΏΠΎΡΠ²ΡΡ‰Π΅Π½Π° ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ инкапсуляции, Ρ‚. Π΅. ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ срСдств создания классов, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ свою Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ структуру.

Π“Π»Π°Π²Π° 13 посвящСна ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ классами (ΠΈ ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ). ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡƒΠ΄Π΅Π»Π΅Π½ΠΎ наслСдованию, абстрактным классам ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ Ρ‡Π»Π΅Π½Π°ΠΌ.

Π―Π·Ρ‹ΠΊ C# Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ программисту Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ свои (ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅) Ρ‚ΠΈΠΏΡ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ классов, Π½ΠΎ ΠΈ Ρ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ структур, пСрСчислСний, интСрфСйсов ΠΈ Π΄Π΅Π»Π΅Π³Π°Ρ‚ΠΎΠ². Π­Ρ‚ΠΈ срСдства Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² Π³Π»Π°Π²Π°Ρ… 14, 15 ΠΈ 17. Π’ Π³Π»Π°Π²Π΅ 14 Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ интСрфСйсы, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ мноТСствСнноС наслСдованиС ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ€Π°Π·Π½Ρ‹Ρ… классов, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ Π΅Π΄ΠΈΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈ ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ Π² ΡΠ·Ρ‹ΠΊΠ΅ C# — это Ρ‚ΠΈΠΏΡ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. ИмСнно поэтому Π² Π³Π»Π°Π²Π΅ 15 рассмотрСны ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ ΠΈ Ρ€Π°ΡΠΏΠ°ΠΊΠΎΠ²ΠΊΠΈ.

Π’ Π³Π»Π°Π²Π΅ 16 ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрСн ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ — ΠΈΡ… Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΡ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°. ΠžΠΏΠΈΡΠ°Π½Π½Ρ‹Ρ… возмоТностСй Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅Ρ‡Π½Ρ‹Ρ… классов ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ достаточно для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΎΡ‚ ΠΎΡˆΠΈΠ±ΠΎΠΊ.

Π’ .Net Framework Π΄Π΅Π»Π΅Π³Π°Ρ‚Ρ‹ тСсно связаны с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ событий. Оба этих ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΈΠ·ΡƒΡ‡Π°ΡŽΡ‚ΡΡ Π² Π³Π»Π°Π²Π΅ 17. ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡƒΠ΄Π΅Π»Π΅Π½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Π΅Π»Π΅Π³Π°Ρ‚ΠΎΠ² схСмы ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹Ρ… Π²Ρ‹Π·ΠΎΠ²ΠΎΠ².

Π“Π»Π°Π²Π° 18 посвящСна обобщСниям, ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ сущСствСнно ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ абстракции Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. НаличиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² — ΠΎΠ΄Π½Π° ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½Ρ‹Ρ… прСдпосылок сниТСния трудоСмкости Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.

Π•Ρ‰Π΅ нСсколько слов ΠΎ ΡΠ·Ρ‹ΠΊΠ΅ Π‘#. Π­Ρ‚ΠΎ Π² Π½Π°ΡΡ‚оящСС врСмя кроссплатформСнный язык, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π½Π°Ρ‡Π°Π»Π΅ создавался с ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ Π½Π° ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ .NET Framework. Π’ ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° .NET Framework — это Π½Π°Π±ΠΎΡ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Ρ‚. Π΅. ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ .dll (каТдая dll-Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° — это исполнимый ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, эквивалСнтный Π΅Ρ…Π΅-Ρ„Π°ΠΉΠ»Ρƒ, Π½ΠΎ Π±Π΅Π· Ρ‚ΠΎΡ‡ΠΊΠΈ Π²Ρ…ΠΎΠ΄Π°, Ρ‚. Π΅. Π±Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄Π° MainQ). Π˜Π½Ρ„Ρ€Π°ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° .NET Framework Π² Π½Π°ΡΡ‚оящСС врСмя доступна для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² Ρ€Π°Π·Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ C# вСсьма ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ срСдством для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΡ€Ρ‚Π°Π±Π΅Π»ΡŒΠ½Ρ‹Ρ… (пСрСносимых) ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π’ ΠΎΡΠ½ΠΎΠ²Ρƒ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π° Ρ€Π°Π±ΠΎΡ‚Π° Π°Π²Ρ‚ΠΎΡ€Π° [11], которая Π²Ρ‹ΡˆΠ»Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΠΌ Π² 2011 Π³ΠΎΠ΄Ρƒ ΠΈ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π»Π° возмоТности языка C# 3.0. Π—Π° ΡΡ‚ΠΎ врСмя ΠΌΠ½ΠΎΠ³ΠΎΠ΅ измСнилось, ΠΈ Π² Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³Π΅ рассматриваСтся вСрсия C# 7.0. Однако ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ всС срСдства C# 7.0 Π² Π½Π°Ρ‡Π°Π»Π΅ знакомства с ΡΡ‚ΠΈΠΌ языком Π½Π΅Ρ‚ нСобходимости. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… справочников ΠΈ ΠΌΠΎΠ½ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΉ ΠΏΠΎ C# (объСм ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 1000 страниц) наша ΠΊΠ½ΠΈΠ³Π° обСспСчит читатСля Ρ‚Π΅ΠΌ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ количСством свСдСний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… достаточно, Ρ‡Ρ‚ΠΎΠ±Ρ‹.

Π·Π½Π°Ρ‚ΡŒ

  • β€’ основныС ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΡ‹ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² (ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½Ρ‹ΠΉ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹ΠΉ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹, ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½ΠΈΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ Ρ‚ΠΈΠΏΠΎΠ²);
  • β€’ соврСмСнный язык программирования (синтаксис ΠΈ ΡΠ΅ΠΌΠ°Π½Ρ‚ΠΈΠΊΡƒ языка Π‘#);
  • β€’ особСнности примСнСния срСдств ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ .NET;

ю.

β€’ возмоТности ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… срСд Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ;

ΡƒΠΌΠ΅Ρ‚ΡŒ

  • β€’ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ классов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… срСд;
  • β€’ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ создаваСмыС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ диагностичСскиС возмоТности срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ;
  • β€’ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ классов ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ .NET ΠΈ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ (ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ) распространяСмыС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ;
  • β€’ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ знания ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ, сформулированных Π² Ρ‚СхничСском Π·Π°Π΄Π°Π½ΠΈΠΈ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚;

Π²Π»Π°Π΄Π΅Ρ‚ΡŒ Π½Π°Π²Ρ‹ΠΊΠΎΠΌ

  • β€’ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ программирования с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ языка программирования C# ΠΈ ΠΏΠ΅Ρ€Π΅Π΄ΠΎΠ²Ρ‹Ρ… ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… срСдств;
  • β€’ проСктирования ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎΠ³ΠΎ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΎΠ²;
  • β€’ примСнСния срСдств ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ .NET ΠΈ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎ (ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎ) распространяСмых Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ.

Книга доступна Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅ΠΌΡƒ программисту. Для усвоСния ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° ΠΎΡ‚ Ρ‡ΠΈΡ‚атСля Π½Π΅ Ρ‚рСбуСтся ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Π½ΠΈΠΉ, выходящих Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ школьной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ Π΄ΠΈΡΡ†ΠΈΠΏΠ»ΠΈΠ½Π΅ «Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ°».

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ