ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния провСдСния сорСвнований ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий Π² срСдС MS Robotics Studio

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

Π’ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π³ΠΎΠ΄Ρ‹ сорСвнования срСди Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² стали популярными ΠΈ Π² Π ΠΎΡΡΠΈΠΈ. ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ робототСхничСский Ρ‚ΡƒΡ€Π½ΠΈΡ€ Π½Π° ΠšΡƒΠ±ΠΎΠΊ ΠŸΠΎΠ»ΠΈΡ‚Π΅Ρ…Π½ΠΈΡ‡Π΅ΡΠΊΠΎΠ³ΠΎ музСя являСтся Π΅ΠΆΠ΅Π³ΠΎΠ΄Π½Ρ‹ΠΌΠΈ сорСвнованиями Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², проводящимися Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Π½Π°ΡƒΡ‡Π½ΠΎ-ΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ «ΠšΠ°Π½ΠΈΠΊΡƒΠ»Ρ‹ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² Π² ΠŸΠΎΠ»ΠΈΡ‚СхничСском». Π’ΡƒΡ€Π½ΠΈΡ€ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ сорСвнования Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠΉ стСпСни слоТности, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ участиС ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния провСдСния сорСвнований ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий Π² срСдС MS Robotics Studio (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния провСдСния сорСвнований ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий Π² ΡΡ€Π΅Π΄Π΅ MS Robotics Studio

Π’ Π½Π°ΡΡ‚оящСС врСмя всС Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π² ΠΌΠΈΡ€Π΅ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π°ΡŽΡ‚ сорСвнования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ². ΠŸΡ€ΠΈ этом ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ мСроприятия — Π½Π΅ Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ΅, ΠΊΠ°ΠΊ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡŽ качСства образования студСнтов, ΠΏΡ€ΠΎΠ΄Π²ΠΈΠΆΠ΅Π½ΠΈΡŽ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊ ΠΏΡ€ΠΈΠ²Π»Π΅Ρ‡Π΅Π½ΠΈΡŽ внимания Ρ‚Π°Π»Π°Π½Ρ‚Π»ΠΈΠ²ΠΎΠΉ ΠΌΠΎΠ»ΠΎΠ΄Π΅ΠΆΠΈ ΠΊ ΡΡ„Π΅Ρ€Π΅ высоких Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ.

Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½Ρ‹ΠΉ способ привлСчСния ΡŽΠ½Ρ‹Ρ… Π΄Π°Ρ€ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ Π½Π°ΡƒΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π’Π£Π—Π°Ρ… ΠΌΠΈΡ€Π°. НапримСр, ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΡŒ УнивСрситСта Мэсси Π“ΡƒΡ€Π°Π± Бэн Π“ΡƒΠ±Ρ‚Π° сдСлал Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ²-футболистов для обучСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ своих студСнтов чСтвСрокурсников. ΠšΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡ элСктроники ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния — это ΠΊΠ°ΠΊ Ρ€Π°Π· Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ. Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… амСриканских унивСрситСтах сорСвнования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² ΡƒΠΆΠ΅ поставлСны Π½Π° ΠΏΠΎΡ‚ΠΎΠΊ.

Π’ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π³ΠΎΠ΄Ρ‹ сорСвнования срСди Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² стали популярными ΠΈ Π² Π ΠΎΡΡΠΈΠΈ. ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ робототСхничСский Ρ‚ΡƒΡ€Π½ΠΈΡ€ Π½Π° ΠšΡƒΠ±ΠΎΠΊ ΠŸΠΎΠ»ΠΈΡ‚Π΅Ρ…Π½ΠΈΡ‡Π΅ΡΠΊΠΎΠ³ΠΎ музСя являСтся Π΅ΠΆΠ΅Π³ΠΎΠ΄Π½Ρ‹ΠΌΠΈ сорСвнованиями Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², проводящимися Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Π½Π°ΡƒΡ‡Π½ΠΎ-ΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ «ΠšΠ°Π½ΠΈΠΊΡƒΠ»Ρ‹ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² Π² ΠŸΠΎΠ»ΠΈΡ‚СхничСском». Π’ΡƒΡ€Π½ΠΈΡ€ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ сорСвнования Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠΉ стСпСни слоТности, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ участиС ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ ΡƒΠ·ΠΊΠΎΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ конструкции, созданныС Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌΠΈ, Ρ‚Π°ΠΊ ΠΈ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½Ρ‹Π΅ робототСхничСскиС устройства со ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ[2]. Π’ 2011 Π³ΠΎΠ΄Ρƒ состоялся III ВсСроссийский робототСхничСский Ρ„Π΅ΡΡ‚ΠΈΠ²Π°Π»ΡŒ. ΠŸΠΎΠ±Π΅Π΄ΠΈΡ‚Π΅Π»Π΅ΠΌ сорСвнований ΠΏΠΎ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ΅ ΠΏΠΎ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡŽ «ΠŸΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½Π°Ρ автоматизация» стала ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΠ· Π‘Π°Ρ€Π°Ρ‚ΠΎΠ²Π° «MobRob», которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Россию Π½Π° ΠΏΡ€Π΅ΡΡ‚ΠΈΠΆΠ½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Ρ‹Ρ… сорСвнованиях ΠΏΠΎ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ΅: Азиатско-ВихоокСанского Ρ€Π΅Π³ΠΈΠΎΠ½Π° ABU ROBOCON-2011 Π² Π’Π°ΠΈΠ»Π°Π½Π΄Π΅.

НаиболСС популярными Ρ€ΠΎΠ±ΠΎΡ‚Π°ΠΌΠΈ для программирования ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ€ΠΎΠ±ΠΎΡ‚Ρ‹ LEGO Mindstorms NXT. LEGO Mindstorms — это особая сСрия конструкторов, ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‰ΠΈΡ… практичСски Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ возмоТностями. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€ΠΎΠ±ΠΎΡ‚Π°, способного Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π»ΡŽΠ±Ρ‹Π΅ дСйствия. Π ΠΎΠ±ΠΎΡ‚ lego программируСтся ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ ΠΏΠΎ USB ΠΊ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ. Π¦Π΅Π½Π° Ρ‚Π°ΠΊΠΈΡ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² Π΄Π°ΠΆΠ΅ Π² Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π°Ρ†ΠΈΠΈ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ 10 000 Ρ€ΡƒΠ±Π»Π΅ΠΉ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΈΡ… Π½Π΅Π΄ΠΎΡΡ‚ΡƒΠΏΠ½Ρ‹ΠΌΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ энтузиастов, ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΡ… ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ сСбя Π² ΠΎΠ±Π»Π°ΡΡ‚ΠΈ программирования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ².

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ способом программирования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² являСтся программирования Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ, Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ настоящСго Ρ€ΠΎΠ±ΠΎΡ‚Π°, Π² ΡΠΈΠΌΡƒΠ»ΡΡ†ΠΈΠΎΠ½Π½ΠΎΠΉ срСдС, Ρ‡Ρ‚ΠΎ позволяСт ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Microsoft Robotics Developer Studio (MSRS). Π‘Ρ€Π΅Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ MSRS — это ΠΏΠ°ΠΊΠ΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° для Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠΈ, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚ΠΎΠ² Ρ€Π°Π·Π½Ρ‹Ρ… ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ. Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык программирования (VPL), входящий Π² ΡΠΎΡΡ‚Π°Π² MSRS, ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ простыС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ энтузиастам. Бимуляция Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΎΠΉ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΅Ρ‰Π΅ Π½Π΅Ρ‚, ΠΈΠ»ΠΈ Π²Ρ‹ΠΉΡ‚ΠΈ ΠΈΠ· ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ настоящСго Ρ€ΠΎΠ±ΠΎΡ‚Π° ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ нСльзя. Π’Π°ΠΆΠ½Ρ‹ΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° написанная Π½Π° VPL для Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€ΠΎΠ±ΠΎΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠΌ, оснащСнным Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΏΡ€ΠΈΠ±ΠΎΡ€Π°ΠΌΠΈ ΠΈ ΡΠ΅Π½ΡΠΎΡ€Π°ΠΌΠΈ.

ЦСлью Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ являСтся Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ провСдСния сорСвнований ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий Π½Π° Π±Π°Π·Π΅ Microsoft Robotics Studio, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ:

— ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΠ΅ возмоТности провСдСния Ρ‚ΡƒΡ€Π½ΠΈΡ€ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€ΠΎΠ±ΠΎΡ‚Π°ΠΌΠΈ;

— Π‘оставлСниС ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΎ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°Ρ…;

Для достиТСния поставлСнной Ρ†Π΅Π»ΠΈ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ:

1) РСгистрация участников Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅;

2) Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Ρ„Π°ΠΉΠ»ΠΎΠ² участников Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€;

3) Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² сорСвнования Π² Π‘Π”;

4) Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΎ Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°Ρ…;

5) ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ участнику сорСвнования ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ для программирования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ²;

6) Запуск симуляции выполнСния Π»ΠΎΠ³ΠΈΠΊΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ².

1. ОписаниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° управлСния

1.1 Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° управлСния

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ собой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΡŽΡ‰Π°Ρ систСма, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Ρ‘Ρ‚ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ структуру ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° управлСния ΠΈ ΠΏΡ€ΠΎΡ†Π΅ΡΡΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΡ‚Π΅ΠΊΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΡΠΈΡΡ‚Π΅ΠΌΠΎΠΉ. Π’Π°ΠΊΠΆΠ΅, послС провСдСния Π°Π½Π°Π»ΠΈΠ·Π° ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚, Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹Ρ… для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния.

Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°ΠΌΠΈ Π½Π΅ ΡΡ‚ΠΎΠΈΡ‚ Π·Π°Π΄Π°Ρ‡Π° — Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ процСссы, связанныС со ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠΎΠΉ провСдСния сорСвнований, Ρ‚ΠΎ Π½Π΅Ρ‚ нСобходимости Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. Разработанная систСма ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для провСдСния студСнчСских сорСвнований ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий Π½Π° Π±Π°Π·Π΅ Microsoft Robotics Studio. Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· ΡΡ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄, Ρ‡Ρ‚ΠΎ нашСй систСмой ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ большоС количСство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

БистСма ΠΈΠΌΠ΅Π΅Ρ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚-ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ, Ρ‡Ρ‚ΠΎ сводит ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΡƒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚скиС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π»ΠΎΠΆΠΈΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π·Π° Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π½Π°Π΄Ρ‘ΠΆΠ½ΠΎΡΡ‚ΡŒ хранСния Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€. Π’ Ρ€ΡΠ΄Π΅ случаСв ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠΉ инфраструктуры ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡ‰Π΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ бСзопасности Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… (сСрвСр), Ρ‡Π΅ΠΌ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… дСсятках машин (ΠΊΠ»ΠΈΠ΅Π½Ρ‚).

1.2 Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ особСнности

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ прСдоставляла систСма Π΅Ρ‘ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Слям:

— Ρ€Π΅Π³ΠΈΡΡ‚рация участников Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅;

— Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² участников Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€;

— Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Ρ„Π°ΠΉΠ»ΠΎΠ² с ΡΠ΅Ρ€Π²Π΅Ρ€Π°;

— Π²Ρ‹Π±ΠΎΡ€ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ;

— Π·Π°ΠΏΡƒΡΠΊ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² участников;

— ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² сорСвнований Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€Π΅;

— Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΎ ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠΈΡ… Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°Ρ…;

— ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ новостСй ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠΈΡ… ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚оящих Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°Ρ….

1.3 ΠŸΠΈΠΊΠΎΠ²Ρ‹Π΅ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ

ΠŸΠΈΠΊΠΎΠ²Ρ‹Π΅ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Π²ΠΎ Π²Ρ€Π΅ΠΌΡ провСдСния Ρ‚ΡƒΡ€Π½ΠΈΡ€ΠΎΠ². Π’ ΡΡ‚ΠΎΡ‚ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ Π² Π±ΠΎΠ»ΡŒΡˆΠ΅ΠΌ количСствС ΠΏΠΎΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². Администраторами Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ участников для провСдСния Ρ‚ΡƒΡ€Π½ΠΈΡ€ΠΎΠ², Π² Π‘Π” заносятся Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… сорСвнований, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹ ΠΎ ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠΈΡ… Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°Ρ…. Π’ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ врСмя Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅, Ρ‚.ΠΊ. Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° участниками своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡ… Π·Π°ΠΏΡƒΡΠΊ Π½Π° Ρ‚СстовоС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎΠΌΠ΅Ρ€Π΅Π½. ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ максимальноС количСство ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ — 1000 Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ.

2. ΠžΠ±Π·ΠΎΡ€ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… систСм провСдСния сорСвнований Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ²

2.1 Java Robocode

Robocode — это ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π°Ρ ΠΈΠ³Ρ€Π° с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ исходными ΠΊΠΎΠ΄Π°ΠΌΠΈ, разработанная Mathew Nelson ΠΈ Flemming Larsen. Π•Π΅ Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π΅Π½Π½ΠΎΠΉ Ρ†Π΅Π»ΡŒΡŽ Π±Ρ‹Π»ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½ΠΈΠ΅ изучСния языка программирования Java. ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ Π΄Π²ΠΈΠΆΡƒΡ‰ΠΈΠΌ элСмСнтом Π² ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Π»Π° ΡΡ‚Π°Ρ‚ΡŒ конкурСнция. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ участник ΠΏΠΈΡˆΠ΅Ρ‚ ΠΊΠΎΠ΄ Π½Π° Java, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ управляСт нСбольшим Ρ‚Π°Π½Ρ‡ΠΈΠΊΠΎΠΌ, ΠΈ ΡΡ€Π°ΠΆΠ°Π΅Ρ‚ся с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΆΠ΅ Ρ‚Π°Π½ΠΊΠ°ΠΌΠΈ.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Robocode Π±Ρ‹Π» Π½Π°Ρ‡Π°Ρ‚ Π² ΡΠ΅Ρ€Π΅Π΄ΠΈΠ½Π΅ 2000 Π³. ΠΈ ΠΏΠΎ Π·Π°ΠΌΡ‹ΡΠ»Ρƒ Π΅Π³ΠΎ создатСля Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡΡ‚Π°Ρ‚ΡŒ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ΠΌ ΠΈΠ³Ρ€Ρ‹ Robot Battle, Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ΄ язык Java. По ΠΌΠ΅Ρ€Π΅ развития ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π° для своих ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Ρ‚Π°Π½ΠΊΠΎΠ², Π°Π²Ρ‚ΠΎΡ€Ρƒ ΠΏΡ€ΠΈΡˆΠ»Π° Π² Π³ΠΎΠ»ΠΎΠ²Ρƒ гСниальная ΠΌΡ‹ΡΠ»ΡŒ — ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ процСсс с ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ΠΌ. Π”ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ Robocode позволяСт Π»ΡŽΠ±ΠΎΠΌΡƒ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅ΠΌΡƒ программисту Π·Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΎ ΠΌΠΈΠ½ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ простой Ρ‚Π°Π½ΠΊ ΠΈ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ Π΅Π³ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½ΠΈΡŽ.

Π‘ΡƒΡ‚ΡŒ сорСвнования Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΠΎΠ΅Π² Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ²-Ρ‚Π°Π½ΠΊΠΎΠ². ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€ΠΎΠ±ΠΎΡ‚ прСдставляСт собой ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ класс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ наслСдуСт свойства ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса Robot. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€ΠΎΠ±ΠΎΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ ΠΈΠ³Ρ€ΠΎΠΊΠΎΠΌ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅. ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΈΠ³Ρ€ΠΎΠΊΠΈ создали свои классы Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π±ΠΎΠΉ ΠΈ Π²Ρ‹ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΈΡ… Π΄Ρ€ΡƒΠ³ ΠΏΡ€ΠΎΡ‚ΠΈΠ² Π΄Ρ€ΡƒΠ³Π°. Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ ΠΈΠ³Ρ€Ρ‹ Ρ€ΠΎΠ±ΠΎΡ‚Ρ‹-Ρ‚Π°Π½ΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ ΠΏΠΎ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΌΡƒ полю, ΡΡ‚Ρ€Π΅Π»ΡΡ‚ΡŒ, ΡƒΠ·Π½Π°Π²Π°Ρ‚ΡŒ мСсторасполоТСниС Π΄Ρ€ΡƒΠ³ Π² Π΄Ρ€ΡƒΠ³Π°, Π²Ρ€Π΅Π·Π°Ρ‚ΡŒΡΡ Π² ΡΡ‚Π΅Π½Ρ‹ ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², ΡƒΠ·Π½Π°Π²Π°Ρ‚ΡŒ Π³Π΄Π΅ находятся лСтящиС ΠΏΡƒΠ»ΠΈ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всю ΠΌΠΎΡ‰ΡŒ языка Java. На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2.1 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Robocode Π²ΠΎ Π²Ρ€Π΅ΠΌΡ провСдСния Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°.

Рис. 2.1. ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ сорСвнования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² Π² Robocode

Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π±ΠΎΠΉ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ для управлСния Ρ‚Π°Π½ΠΊΠΎΠΌ Π½Π° Java. Из ΠΎΡΠ½ΠΎΠ²Π½Ρ‹Ρ… возмоТностСй ΠΈΠ³Ρ€Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ созданиС Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΡ… Π½Π° Java, компиляция, запуск Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² Π² ΡΡ…Π²Π°Ρ‚ΠΊΠ΅ ΠΈ ΠΏΠΎΡˆΠ°Π³ΠΎΠ²Ρ‹ΠΉ просмотр Π±ΠΈΡ‚Π²Ρ‹. Π£ Ρ€ΠΎΠ±ΠΎΡ‚Π° Π΅ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Ρ‹Π΅ части. Π­Ρ‚ΠΎ Ρ‚Π΅Π»ΠΎ, ΠΏΡƒΡˆΠΊΠ° ΠΈ Ρ€Π°Π΄Π°Ρ€. Π Π°Π΄Π°Ρ€ двиТСтся быстрСС всСх частСй ΠΈ ΠΎΡ‚правляСт ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ событиС ΠΏΡ€ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠ°. ΠŸΡƒΡˆΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ выстрСла, Π½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° выстрСла даСтся ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ класса. Π’Π΅Π»ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ, Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ, Π²Ρ‹ΡΡ‹Π»Π°Ρ‚ΡŒ событиС ΠΎΠ± ΡƒΠ΄Π°Ρ€Π΅ ΠΎ ΡΡ‚Π΅Π½Ρƒ.

2.2 Pascal Robotwar

RobotWar — ΠΈΠ³Ρ€Π° для программистов, написанная Байласом Π£ΠΎΡ€Π½Π΅Ρ€ΠΎΠΌ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€ΠΎΠ±ΠΎΡ‚ — это ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ паскаль-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π°Ρ свою ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΡΡ‚Ρ€Π°Ρ‚Π΅Π³ΠΈΡŽ. Π’ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠΉ ΠΈΠ³Ρ€Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ нСсколько Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π½Π°Ρ‡Π½ΡƒΡ‚ Π²ΠΎΠΉΠ½Ρƒ Π·Π° Π²Ρ‹ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π±ΠΎΠΌΠ±, Ρ€Π°ΠΊΠ΅Ρ‚, ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΡ… ΠΏΠΎΠ΄Ρ€ΡƒΡ‡Π½Ρ‹Ρ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ².

Основной ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠ³ΠΎ процСсса Π±Ρ‹Π»ΠΎ написаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠΌ. ПослС этого ΠΈΠ³Ρ€ΠΎΠΊ ΠΌΠΎΠ³ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡΡ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ Π½Π° Π°Ρ€Π΅Π½Π΅, ΠΏΠΎΠΊΠ° Π½Π΅ ΠΎΡΡ‚анСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½. Π˜Π³Ρ€ΠΎΠΊ Π½Π΅ ΠΌΠΎΠ³ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ участия Π² Π±ΠΈΡ‚Π²Π΅ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠΌ.

Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Паскаля ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€ΠΎΠ±ΠΎΡ‚Ρƒ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ своС мСстополоТСниС Π½Π° ΠΏΠΎΠ»Π΅ боя, ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° ΡΠ²ΠΎΠΈΠΌ Π·Π΄ΠΎΡ€ΠΎΠ²ΡŒΠ΅ΠΌ ΠΈ ΡΠΎΡΡ‚ояниСм поврСТдСнности, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ расстояниС ΠΈ ΡƒΠ³ΠΎΠ» Π΄ΠΎ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠ° ΠΈΠ· Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€ΠΎΠ±ΠΎΡ‚ оснащСн ΠΏΡƒΡˆΠΊΠΎΠΉ, для возмоТности обстрСла ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠΎΠ² Ρ€Π°ΠΊΠ΅Ρ‚Π°ΠΌΠΈ ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ ΠΏΡ€ΠΈΠ²ΠΎΠ΄Π° для пСрСмСщСния ΠΏΠΎ ΠΏΠΎΠ»ΡŽ, ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ избСгания попадания выстрСлов ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠΎΠ². ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ, Ρ€ΠΎΠ±ΠΎΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ оснащСны Π±ΠΎΠΌΠ±Π°ΠΌΠΈ, ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚Π°ΠΌΠΈ для Ρ€Π΅ΠΌΠΎΠ½Ρ‚Π°, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π±Ρ€ΠΎΠ½ΠΈ ΠΈ Π±ΠΎΠ΅Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, ΠΎΡ‚ΠΊΠ»ΠΎΠ½ΡΡŽΡ‰ΠΈΠΌΠΈ Ρ‰ΠΈΡ‚Π°ΠΌΠΈ ΠΈ ΡƒΡΡ‚ройствами сокрытия.

Pascal RobotWars являСтся ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ Ρ‚Ρ€Π΅Π½Π°ΠΆΠ΅Ρ€ΠΎΠΌ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… программистов, для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ Π½Π°Π²Ρ‹ΠΊΠΎΠ² программирования Π½Π° ΠŸΠ°ΡΠΊΠ°Π»Π΅ ΠΈ ΡƒΠ΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚вия Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Pascal RobotWars ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ программист Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² ΡƒΠΆΠ΅ Π·Π½Π°Π΅Ρ‚ язык программирования Pascal. На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2.2 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Pascal Robot Π²ΠΎ Π²Ρ€Π΅ΠΌΡ провСдСния Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°.

ВСрсия P-ROBOTS 4.0 ΠΈΠΌΠ΅Π΅Ρ‚ ряд Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠΉ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌΠΈ вСрсиями, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ»ΠΈ IDE, которая ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована для создания, рСдактирования ΠΈ Ρ‚Сстирования созданных Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ². ΠŸΡ€ΠΈ тСстировании / компиляции Ρ€ΠΎΠ±ΠΎΡ‚Π° с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, компилятор опрСдСляСт Π»ΡŽΠ±Ρ‹Π΅ ошибки Π² ΠΈΡΡ…ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅, ΠΈ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ курсора Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅, Π³Π΄Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ошибка Π² ΠΈΡΡ…ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅. Π§Ρ‚ΠΎ сущСствСнно ΠΎΠ±Π»Π΅Π³Ρ‡Π°Π΅Ρ‚ исправлСниС ошибок. IDE ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для измСнСния структуры «Ρ‚ΡƒΡ€Π½ΠΈΡ€ΠΎΠ². МоТно ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ характСристики, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ воспроизвСдСния Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ, ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ количСство прСпятствий ΠΈ Ρ‚. Π΄.

Рис. 2.2. ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ сорСвнования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² Π² Pascal Robot

2.3 Snake Battle

Snake Battle — ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ ΠΈΠ³Ρ€Π°, разработанная ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Gamos, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΠ³Ρ€ΠΎΠΊΠΈ ΡΠΎΡ€Π΅Π²Π½ΡƒΡŽΡ‚ΡΡ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π·ΠΌΠ΅ΠΉ.

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

Π’ Ρ…ΠΎΠ΄Π΅ боя Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ всСго лишь Π΄Π²Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° двиТСния Π·ΠΌΠ΅ΠΈ. Если Π³ΠΎΠ»ΠΎΠ²Π° Π·ΠΌΠ΅ΠΈ пСрСмСщаСтся Π½Π° ΠΏΡƒΡΡ‚ΡƒΡŽ ΠΊΠ»Π΅Ρ‚ΠΊΡƒ, Ρ‚ΠΎ Π²ΡΠ΅ Ρ‚Π΅Π»ΠΎ Π·ΠΌΠ΅ΠΈ пСрСмСщаСтся вслСд Π·Π° Π³ΠΎΠ»ΠΎΠ²ΠΎΠΉ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ пСрвая ΠΊΠ»Π΅Ρ‚ΠΊΠ° Ρ‚ΡƒΠ»ΠΎΠ²ΠΈΡ‰Π° оказываСтся Ρ‚Π°ΠΌ, Π³Π΄Π΅ Ρ€Π°Π½ΡŒΡˆΠ΅ Π±Ρ‹Π»Π° Π³ΠΎΠ»ΠΎΠ²Π°, Π° Ρ…вост оказываСтся Ρ‚Π°ΠΌ, Π³Π΄Π΅ Π±Ρ‹Π»Π° послСдняя ΠΊΠ»Π΅Ρ‚ΠΊΠ° Ρ‚ΡƒΠ»ΠΎΠ²ΠΈΡ‰Π°.

Если ΠΆΠ΅ змСя ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ Π°Ρ‚Π°ΠΊΡƒ Π½Π° ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠ°, Ρ‚ΠΎ Π΅Π΅ Π³ΠΎΠ»ΠΎΠ²Π° окаТСтся Π½Π° Ρ‚ΠΎΠΉ ΠΊΠ»Π΅Ρ‚ΠΊΠ΅, Π³Π΄Π΅ Π±Ρ‹Π» хвост Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π·ΠΌΠ΅ΠΈ, Π° Π²ΡΠ΅ Ρ‚Π΅Π»ΠΎ останСтся Π½Π° ΠΌΠ΅ΡΡ‚Π΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π΄Π»ΠΈΠ½Π° ΡƒΠΊΡƒΡΠΈΠ²ΡˆΠ΅ΠΉ Π·ΠΌΠ΅ΠΈ увСличиваСтся Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ, Π° Π΄Π»ΠΈΠ½Π° ΡƒΠΊΡƒΡˆΠ΅Π½Π½ΠΎΠΉ — Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ.

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

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, суммарная Π΄Π»ΠΈΠ½Π° участников боя остаСтся постоянной, Π° Π΄Π»ΠΈΠ½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ взятой Π·ΠΌΠ΅ΠΈ являСтся ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, насколько ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π²ΠΎΡŽΠ΅Ρ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½Π°. Π—Π°Π΄Π°Ρ‡Π°-максимум для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ змСя ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ «ΡΡŠΠ΅Π»Π°» всСх ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠΎΠ², Π·Π°Π΄Π°Ρ‡Π°-ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ — Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΅Π³ΠΎ змСя ΠΈΠΌΠ΅Π»Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ Π΄Π»ΠΈΠ½Ρƒ. На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2.3 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Snake Battle Π²ΠΎ Π²Ρ€Π΅ΠΌΡ провСдСния Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°.

Π’ ΡΠ°ΠΌΠΎΠΉ Π±ΠΈΡ‚Π²Π΅ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ участвуСт ΠΎΡ‚ Π΄Π²ΡƒΡ… Π΄ΠΎ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… Π·ΠΌΠ΅ΠΉ. Π‘ΠΎΠΉ с ΡƒΡ‡Π°ΡΡ‚ΠΈΠ΅ΠΌ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… Π·ΠΌΠ΅ΠΉ Π³ΠΎΡ€Π°Π·Π΄ΠΎ интСрСснСС ΠΈ ΠΌΠ΅Π½Π΅Π΅ прСдсказуСм, Ρ‡Π΅ΠΌ с ΡƒΡ‡Π°ΡΡ‚ΠΈΠ΅ΠΌ ΠΏΠ°Ρ€Ρ‹. Π‘ΠΎΠΉ заканчиваСтся Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… случаСв:

— ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄Π½Π° змСя ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠΈΠ»Π° всСх ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠΎΠ²;

— ΠΊΠΎΠ³Π΄Π° Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· Π·ΠΌΠ΅ΠΉ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ…ΠΎΠ΄Π°;

— ΠΊΠΎΠ³Π΄Π° истСкло врСмя боя;

— ΠΏΠΎ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ: «ΠΊΠΎΠ½Π΅Ρ† боя».

Рис. 2.3. ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ сорСвнования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² Π² Pascal Robot

Если Ρ€Π°ΡƒΠ½Π΄ боя закончился СстСствСнным ΠΏΡƒΡ‚Π΅ΠΌ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π΅ ΠΏΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅), Ρ‚ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ снова Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΎΠΏΡ†ΠΈΡŽ «Π½Π°Ρ‡Π°Ρ‚ΡŒ Π±ΠΎΠΉ» ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ сраТСниС с ΡƒΡ‡Π°ΡΡ‚ΠΈΠ΅ΠΌ Ρ‚Π΅Ρ… ΠΆΠ΅ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠΎΠ² ΠΈ Ρ ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ΠΌ ΡƒΠΆΠ΅ Π½Π°Π±Ρ€Π°Π½Π½Ρ‹Ρ… ΠΎΡ‡ΠΊΠΎΠ². Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρ„Π°ΠΊΡ‚ΠΎΡ€ случайности ΠΈΠ³Ρ€Π°Π΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ, Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎΠ΄Π½ΠΎΡ€Π°ΡƒΠ½Π΄ΠΎΠ²ΠΎΠ³ΠΎ боя Π½Π΅ ΡΠ²Π»ΡΠ΅Ρ‚ся особо ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ стоит ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ дСсяти Ρ€Π°ΡƒΠ½Π΄ΠΎΠ², для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ достаточно ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ силу ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΈΠΊΠΎΠ².

2.4 Microsoft Robotics Developer Studio

Microsoft Robotics Developer Studio это срСда модСлирования ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ управлСния Ρ€ΠΎΠ±ΠΎΡ‚Π°ΠΌΠΈ. Наибольший интСрСс Π² MSRS прСдставляСт срСда Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ програмиирования (ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° рисуСтся, Π° Π½Π΅ ΠΏΠΈΡˆΠ΅Ρ‚ся) ΠΈ ΡΡ€Π΅Π΄Π° модСлирования Ρ€ΠΎΠ±ΠΎΡ‚Π°. MSRS ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π΅Π½ для изучСния основ программирования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ². ΠŸΡ€ΠΎΡ†Π΅ΡΡ создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ управлСния Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠΌ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»Π΅Π½ ΠΈ ΠΈΠ½Ρ‚СрСсСн. Π”Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для акадСмичСской, Π»ΡŽΠ±ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ ΠΈΠ»ΠΈ коммСрчСской Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ большоС количСство Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½ΠΎΠ³ΠΎ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ обСспСчСния Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ².

Microsoft® Robotics Studio (MSRS) позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ прилоТСния для ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ спСктра устройств Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ слуТб. Π­Ρ‚ΠΎΡ‚ Π½Π°Π±ΠΎΡ€ содСрТит срСду выполнСния, которая Ρ…ΠΎΡ€ΠΎΡˆΠΎ извСстна Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Windows® Communication Framework (WCF). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ срСдство языка Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования Visual Programming Language (VPL) ΠΈ ΡΡ€Π΅Π΄Ρƒ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Visual Simulation Environment (VSE).

MSRS ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ срСду выполнСния, ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π½Π° ΡΠ»ΡƒΠΆΠ±Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ срСдства, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для создания ΠΈ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚ывания робототСхничСских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.

Π‘Ρ€Π΅Π΄Π° выполнСния MSRS состоит ΠΈΠ· Π΄Π²ΡƒΡ… частСй Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ основаны Π½Π° CLR 2.0. Π”Π²Π΅ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ срСды выполнСния — слуТба DSS ΠΈ ΡΡ€Π΅Π΄Π° CCR. DSS являСтся ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½Π½Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π½Π° ΡΠ»ΡƒΠΆΠ±Ρ‹ срСды выполнСния, которая Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ… REST (Representation State Transfer), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² Π²Π΅Π±-тСхнологиях. CCR являСтся Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Microsoft.NET Framework, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰Π΅ΠΉ Π°ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ процСссов. Π­Ρ‚ΠΎ особо Π²Π°ΠΆΠ½ΠΎ для робототСхничСских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… происходит постоянный ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠΌΠΈ ΠΊ Π±ΠΎΠ»ΡŒΡˆΠΎΠΌΡƒ количСству Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹ΠΌΠΈ ΠΎΡ‚ Π½ΠΈΡ….

ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ для построСния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Microsoft Robotics являСтся слуТба DSS (DSS Service). По ΡΡƒΡ‚ΠΈ, слуТбы DSS ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠ΅ΠΉ, которая ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΈ Π²Π½Π΅ контСкста Ρ€ΠΎΠ±ΠΎΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. DSS-слуТбы ΠΈΠΌΠ΅ΡŽΡ‚ состояния, управляСмыС сообщСниями. Π­Ρ‚ΠΈ сообщСния ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Π² ΡΠ»ΡƒΠΆΠ±Ρƒ Ρ‡Π΅Ρ€Π΅Π· Π΅Π΅ ΠΏΠΎΡ€Ρ‚Ρ‹.

БообщСния, отправляСмыС слуТбС, ΡΠ²Π»ΡΡŽΡ‚ΡΡ классами.NET, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ Ρ‚ΠΎΠΌ, ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π»ΠΈ состояниС ΠΈ ΠΊΠ°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΈΠ»ΠΈ свСдСния ΠΎ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… состояния. Π”Ρ€ΡƒΠ³ΠΈΠ΅ сообщСния Π½Π΅ ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ с ΡΠΎΡΡ‚ояниСм Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, Π½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° Π½Π΅Π³ΠΎ ΠΏΠΎΠ±ΠΎΡ‡Π½Ρ‹Π΅ эффСкты. Π‘Π»ΡƒΠΆΠ±Ρ‹ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Ρ‚Π°ΠΊΠΈΠ΅ сообщСния, ΠΊΠ°ΠΊ CREATE, LOOKUP, UPDATE ΠΈ Π΄Ρ€. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ ΡΠ°ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ сообщСния, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠ΅ΡΡ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌΠΈ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… сообщСний.

ΠŸΠΎΡ€Ρ‚Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ срСдством взаимодСйствия слуТб с Π²Π½Π΅ΡˆΠ½ΠΈΠΌ ΠΌΠΈΡ€ΠΎΠΌ. Они Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π° ΠΏΡ€ΠΈΠ΅ΠΌ сообщСний ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ числа Ρ‚ΠΈΠΏΠΎΠ², опрСдСляСмых самими слуТбами. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎΡ€Ρ‚Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΉ Π² Ρ‚Π°ΠΊΠΈΡ… случаях, ΠΊΠ°ΠΊ подписка Π½Π° ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΡ ΠΎΠ± ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… событиях, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠ΅ ΠΎΡ‚ ΡΠ»ΡƒΠΆΠ±Ρ‹.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° CCR Π±Ρ‹Π»Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° для Microsoft Robotics Studio ΠΈ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΡΠΎΡΡ‚Π°Π² инсталляционного ΠΏΠ°ΠΊΠ΅Ρ‚Π° MSRS.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² ΠΊΠΎΠ½Ρ‚СкстС Robotics Studio, это композиция слабосвязанных ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ…ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²ΠΎΠ² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ программирования. Π‘Ρ€Π°Π·Ρƒ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ процСсс написаниС ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ являСтся Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ CCR создавалась с Ρ†Π΅Π»ΡŒΡŽ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ простым процСссом. ΠŸΡ€ΠΈ использовании CCR Π½Π΅Ρ‚ нСобходимости Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌΠΈ, Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌΠΈ, сСмафорами. Всё это ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅, Π½ΠΎ ΠΏΡ€ΠΎΡΡ‚ΠΎ скрыто ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Сля.

Наряду со ΡΡ€Π΅Π΄ΠΎΠΉ исполнСния, ΠΏΠ°ΠΊΠ΅Ρ‚ MSRS содСрТит ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ VPL, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΡƒΡŽ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ робототСхничСскиС прилоТСния ΠΏΡƒΡ‚Π΅ΠΌ простого пСрСтаскивания элСмСнтов Π² Ρ€Π°Π±ΠΎΡ‡ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ.

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

Рис. 2.4. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° VPL

Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΈΠΌ Π²Π°ΠΆΠ½Ρ‹ΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ Robotics Studio являСтся симуляционная срСда (Visual Simulation environment — VSE). Microsoft Visual Simulation Environment (VSE) — срСда Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² Microsoft Robotics Studio (MSRS), которая позволяСт ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ со ΡΠ»ΠΎΠΆΠ½Ρ‹ΠΌΠΈ модСлями, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌΠΈ Π² ΡΠ²ΠΎΠ΅ΠΌ составС большоС количСство Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Она Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰ΡƒΡŽ идСю, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ — ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ для программирования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² сами Ρ€ΠΎΠ±ΠΎΡ‚Ρ‹, Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, ΠΈ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹. На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 2.5 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² VSE.

Бимуляционная срСда являСтся графичСской 3D-модСлью, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰Π΅ΠΉ дСйствия Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‚. НапримСр, Ссли Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ присутствуСт ΡˆΠ°Ρ€ΠΈΠΊ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠ³Π½Π°Ρ‚ΡŒ Ρ€ΠΎΠ±ΠΎΡ‚Π° ΠΊ ΡˆΠ°Ρ€ΠΈΠΊΡƒ ΠΈ ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ этот ΡˆΠ°Ρ€ΠΈΠΊ ΠΊΡƒΠ΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ.

Рис. 2.5. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² VSE

ЀизичСскиС ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ Π³Π»ΡƒΠ±ΠΎΠΊΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½Ρ‹, Ρ‡Ρ‚ΠΎ становится Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ Π΄Π°ΠΆΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΡ€ΠΎΡ‚ΠΎΠ² Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², ΠΎΡ‚Ρ€Ρ‹Π²Π° Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² ΠΎΡ‚ Π·Π΅ΠΌΠ»ΠΈ, столкновСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² — всС Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ. Одним ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² использования симуляционной срСды являСтся ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€ΠΈΠ½Π³Π° сумо-Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΡ‚Π°Ρ€Π°ΡŽΡ‚ΡΡ Π²Ρ‹Ρ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π° Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Ρ€ΠΈΠ½Π³Π°).

2.5 Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Π½Π°Π»ΠΈΠ·

Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ характСристика Java Robocode, Pascal Robot, Snake Battle ΠΈ ΡΡ€Π΅Π΄Ρ‹ Microsoft Robotics Developer Studio прСдставлСна Π² ΡΠ²ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ «Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ характСристика ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²» Π—Π½Π°ΠΊΠΎΠΌ «+» Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π΅Π½ΠΎ присутствиС характСристики, Π·Π½Π°ΠΊΠΎΠΌ «-» — отсутствиС.

Π’Π°Π±Π»ΠΈΡ†Π° 1. Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ характСристика ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²

Robocode

Pascal Robot

Snake Battle

MSRS

ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° написания ΠΊΠΎΠ΄Π°

;

;

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ дСйствий Π² 3D

;

;

;

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ провСдСния Ρ‚ΡƒΡ€Π½ΠΈΡ€ΠΎΠ²

;

БоставлСниС ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΏΠΎ Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°ΠΌ

;

;

;

;

ВстроСнный Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€

;

ДСйствиС Π·Π°ΠΊΠΎΠ½ΠΎΠ² Ρ„ΠΈΠ·ΠΈΠΊΠΈ

;

;

;

ΠŸΠ΅Ρ€Π΅Π½ΠΎΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° Π½Π° Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ€ΠΎΠ±ΠΎΡ‚Ρ‹

;

;

;

УскорСниС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ провСдСния Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°

;

;

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ оцСнивания Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ²

;

ИспользованиС большого количСства сСнсоров

;

;

;

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

Из ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΈΠ΅ систСмы ΠΊΠ°ΠΊ Pascal Robot ΠΈ Snake Battle ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π΄Π°Π²Π½ΠΎ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌΠΈ ΠΈ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ ΠΎΡ‡Π΅Π½ΡŒ скудным Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠΌ. ΠŸΡ€ΠΎΡ†Π΅ΡΡ дСмонстрации ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… стратСгий являСтся ΠΌΠ°Π»ΠΎΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½Ρ‹ΠΌ ΠΈ Π½Π΅ Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈΠ·-Π·Π° качСства изобраТСния. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс практичСски отсутствуСт.

Java Robotics являСтся Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠΉ систСмой для провСдСния сорСвнований ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚Π°ΠΊΠΈΠΌΠΈ систСмами ΠΊΠ°ΠΊ Pascal Robot ΠΈ Snake Battle. Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π½Π°Ρ 2D Π³Ρ€Π°Ρ„ΠΈΠΊΠ°, ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятный интСрфСйс, Π½Π°Π³Π»ΡΠ΄Π½ΠΎΡΡ‚ΡŒ происходящих дСйствий. Но Π΄Π°Π½Π½Π°Ρ систСма Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ Π»ΠΈΡˆΠ΅Π½Π° нСдостатков. Π£ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² имССтся Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΠΈΠ±ΠΎΡ€ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для программирования Π΅Π³ΠΎ повСдСния. Π’ Java Robotics отсутствуСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ составлСния ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΎ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°Ρ…, Π½Π΅Ρ‚ возмоТности отобраТСния происходящСго Π² 3D, Π½Π° Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² Π½Π΅ Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ Π·Π°ΠΊΠΎΠ½Ρ‹ Ρ„ΠΈΠ·ΠΈΠΊΠΈ ΠΈ ΡƒΠΆ Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡƒΡŽ для Ρ€ΠΎΠ±ΠΎΡ‚Π° Π² ΡΡ€Π΅Π΄Π΅ Java Robotics нСльзя ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ Ρ€ΠΎΠ±ΠΎΡ‚Ρƒ.

Бводная Ρ‚Π°Π±Π»ΠΈΡ†Π° явно дСмонстрируСт, Ρ‡Ρ‚ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Microsoft Robotics Developer Studio прСдставляСт собой большой интСрСс создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния для провСдСния сорСвнований ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий. Данная срСда прСкрасно ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для программирования Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², ΠΊΠ°ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ…. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° написанная для Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€ΠΎΠ±ΠΎΡ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ примСнятся ΠΈ ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌΡƒ Ρ€ΠΎΠ±ΠΎΡ‚Ρƒ, оснащСнным Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ количСством сСнсоров. Для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ манифСст, ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΏΠΎΡ€Ρ‚Ρ‹ для сСрвисов. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ дСмонстрации происходящих с Ρ€ΠΎΠ±ΠΎΡ‚Π°ΠΌΠΈ дСйствий Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ 3D Π΄Π΅Π»Π°Π΅Ρ‚ MSRS Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Π΅Π΅ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½Π½Ρ‹ΠΌΠΈ Π°Π½Π°Π»ΠΎΠ³Π°ΠΌΠΈ. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΉ Π²Π°ΠΆΠ½ΠΎΠΉ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‡Π΅Ρ€Ρ‚ΠΎΠΉ срСды Microsoft Robotics Developer Studio являСтся Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ 3D physic-based Π΄Π²ΠΈΠΆΠΊΠ°, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅ΠΌ Ρ€Π΅Π°Π»ΠΈΡΡ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ происходящСго, всС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ симуляционного ΠΌΠΈΡ€Π° ΠΏΠΎΠ΄Ρ‡ΠΈΠ½ΡΡŽΡ‚ΡΡ физичСским Π·Π°ΠΊΠΎΠ½Π°ΠΌ.

MSRS ΠΈΠΌΠ΅Π΅Ρ‚ ряд прСимущСств Π½Π°Π΄ рассмотрСнными систСмами провСдСния сорСвнований ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий, Π½ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΉ срСдС отсутствуСт Π³Π»Π°Π²Π½ΠΎΠ΅, инфраструктура для провСдСния Ρ‚ΡƒΡ€Π½ΠΈΡ€ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€ΠΎΠ±ΠΎΡ‚Π°ΠΌΠΈ, Ρ‚. Π΅. отсутствуСт внСсСниС ΠΊΠΎΠ΄Π°, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ участником Π² Π΅Π΄ΠΈΠ½ΡƒΡŽ ΠΈΠ³Ρ€ΠΎΠ²ΡƒΡŽ срСду, отсутствуСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ†Π΅Π½ΠΊΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ², ΠΏΠΎ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ критСриям, ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΠ΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ составлСния ΡƒΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΎ Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°Ρ…. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Π΄Π°Π½Π½ΠΎΠΉ Π΄ΠΈΠΏΠ»ΠΎΠΌΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ эти ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Microsoft Robotics Developer Studio Π»ΡƒΡ‡ΡˆΠ΅ΠΉ систСмой для провСдСния сорСвнований, ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½Π½Ρ‹ΠΌ Π°Π½Π°Π»ΠΎΠ³Π°ΠΌ.

3. ОписаниС практичСской Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎ «ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ сорСвнований ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий»

3.1 Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ особСнности

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС «ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ сорСвнований ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий» являСтся ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрным ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ:

— Ρ€Π΅Π³ΠΈΡΡ‚рация участников сорСвнований Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅;

— Π°ΡƒΡ‚Снтификация ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ;

— Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² участников;

— Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ запуска Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ской сторонС собствСнных Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ²;

— ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² сорСвнований Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€Π΅;

— ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π΅ΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹;

— Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΏΠΎ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°ΠΌ;

— ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ новостСй ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, прСдстоящих ΠΈ ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠΈΡ… Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°Ρ…;

— Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… рСсурсов с ΡΠ΅Ρ€Π²Π΅Ρ€Π° Π½Π° Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€.

БСрвСрная Ρ‡Π°ΡΡ‚ΡŒ прилоТСния прСдоставляСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ возмоТности:

— ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ доступа ΠΊ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹ΠΌ ΠΈΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌ;

— Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ доступ ΠΊ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹ΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌ администраторам сорСвнований;

— Π½Π°Π΄Ρ‘ΠΆΠ½ΠΎΠ΅ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€Π΅;

— Π·Π°ΠΏΡƒΡΠΊ Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² участников;

— ΡΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² Ρ‚ΡƒΡ€Π½ΠΈΡ€Π° Π² Π‘Π”.

3.2 Π’Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅

Π’Ρ…ΠΎΠ΄Ρ‹:

1. РСгистрация ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅:

a) имя;

b) фамилия;

c) отчСство;

d) ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π½Ρ‹ΠΉ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½;

e) Π³ΠΎΡ€ΠΎΠ΄;

f) унивСрситСт;

g) Π»ΠΎΠ³ΠΈΠ½;

h) ΠΏΠ°Ρ€ΠΎΠ»ΡŒ.

2. АутСнтификация ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅:

a) Π»ΠΎΠ³ΠΈΠ½;

b) ΠΏΠ°Ρ€ΠΎΠ»ΡŒ;

3. Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€ ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ прСдоставлСн ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

a) ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅;

b) Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ — ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ txt;

c) ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ дисковой подсистСмС;

4. Запуск ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Запуск ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ прСдоставлСн ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

a) имя Ρ€ΠΎΠ±ΠΎΡ‚Π°;

b) Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°Ρ€Ρ‚Ρ‹;

Π’Ρ‹Ρ…ΠΎΠ΄Ρ‹:

1. Π€ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΏΠΎ Ρ‚ΡƒΡ€Π½ΠΈΡ€Π°ΠΌ ΠžΡ‚Ρ‡Π΅Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

a) Ρ‚ΠΈΠΏ сорСвнования;

b) мСсто;

c) имя Ρ€ΠΎΠ±ΠΎΡ‚Π°;

d) Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°Ρ€Ρ‚Ρ‹;

e) Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

2. Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² сорСвнования Π”Π°Π½Π½Ρ‹Π΅ для логирования ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

a) имя Ρ€ΠΎΠ±ΠΎΡ‚Π°;

b) Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°Ρ€Ρ‚Ρ‹;

c) Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

3. Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… рСсурсов Π½Π° Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ являСтся Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ Π½Π° Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ рСсурсы.

Запросы:

1. запрос Π½Π° Π·Π°ΠΏΡƒΡΠΊ сорСвнования;

2. запрос Π½Π° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€;

3. запрос Π½Π° Π·Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… рСсурсов с ΡΠ΅Ρ€Π²Π΅Ρ€Π° Π½Π° Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€;

4. запрос Π½Π° ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰Π΅ΠΉ Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹;

5. запрос Π½Π° ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ новостСй.

3.3 Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΡΡ…Π΅ΠΌΠ° ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ПО

Для наглядного прСдставлСния Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² слСдуСт ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ систСмы Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Ρ‘Ρ‚ΠΊΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ структуру ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области, ΠΈ Π² ΡΡ‚ΠΎΠΌ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ стандарта IDEF.

ΠŸΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎΠΉ области начинаСтся с ΡΠΎΠ·Π΄Π°Π½ΠΈΡ контСкстной Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ IDEF0 — Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ самого высокого уровня Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ. На ΠΊΠΎΠ½Ρ‚Скстной Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ присутствуСт всСго ΠΎΠ΄ΠΈΠ½ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Π±Π»ΠΎΠΊ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ основной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΉ систСмой (рис. 3.1).

Рис. 3.1. ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π½Π°Ρ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ПО

ЦСль модСлирования: ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΡŽ систСмы провСдСния сорСвнований ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠ³Ρ€ΠΎΠ²Ρ‹Ρ… стратСгий.

Π’ΠΎΡ‡ΠΊΠ° зрСния: ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ.

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

Π€ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΡƒΡŽ Π½Π° ΠΊΠΎΠ½Ρ‚Скстной Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅, ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ Π½Π° Π±ΠΎΠ»Π΅Π΅ ΠΌΠ΅Π»ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΡ… Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΠ΅ Π½Π° Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ΅ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ уровня (рис. 3.2).

Рис. 3.2. ДСкомпозиция контСкстной Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠΉ Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 1.3 Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π»ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ синхронно ΠΈΠ»ΠΈ асинхронно, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π»ΠΈ для Π½Π°Ρ‡Π°Π»Π° выполнСния Π½ΠΎΠ²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ всСх ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ Ρ‚. Π΄. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ для ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ³ΠΎ описания Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ IDEF3 (рис. 3.3).

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ IDEF0 ΠΈ IDEF3 основноС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡƒΠ΄Π΅Π»ΡΡŽΡ‚ описанию функционирования систСмы, ΠΈ Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΠΎΡ‚ΠΎΠΊΠΈ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π² Π½Π΅ΠΉ. Для дополнСния ΠΌΠΎΠ΄Π΅Π»ΠΈ систСмы описаниСм ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… (Data Flow Diagrams, DFD). МодСль DFD описываСт процСсс ΠΏΠ΅Ρ€Π΅Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΡ‚ ΠΏΠΎΡΡ‚уплСния Π² ΡΠΈΡΡ‚Π΅ΠΌΡƒ Π΄ΠΎ Π²Ρ‹Π΄Π°Ρ‡ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ. На Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ 3.4 прСдставлСна модСль ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² процСсса поиска Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

Рис. 3.3. ДСтализированная IDEF3-Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ систСмы Рис. 3.4. Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…

3.4 Π’Ρ‹Π±ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния

3.4.1 ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Microsoft.NET

Для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния «Robotics Championship» Π±Ρ‹Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Microsoft.NET Framework, язык программирования — C#.

Microsoft.NET Framework — программная ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, выпущСнная ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Microsoft. ЀактичСски прСдставляСт собой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы. ΠžΡ‚Π»ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ.NET Framework являСтся ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, написанныС Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… языках программирования.

Microsoft.NET Framework ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ способностями:

— ΠŸΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Π°Ρ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ;

— ΠŸΠΎΠ»Π½Π°Ρ ΠΈ Ρ‚ΠΎΡ‚Π°Π»ΡŒΠ½Π°Ρ интСграция языков. Π’.NET поддСрТиваСтся ΠΌΠ΅ΠΆΡŠΡΠ·Ρ‹ΠΊΠΎΠ²ΠΎΠ΅ наслСдованиС, ΠΌΠ΅ΠΆΡŠΡΠ·Ρ‹ΠΊΠΎΠ²Π°Ρ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΈ ΠΌΠ΅ΠΆΡŠΡΠ·Ρ‹ΠΊΠΎΠ²Π°Ρ ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΊΠΎΠ΄Π°;

— ΠžΠ±Ρ‰ΠΈΠΉ ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ, раздСляСмый всСми ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌΠΈ.NET языками. Одним ΠΈΠ· Π°ΡΠΏΠ΅ΠΊΡ‚ΠΎΠ² этого ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° являСтся Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° Ρ‚ΠΈΠΏΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ.NET язык;

— ΠžΠ±ΡˆΠΈΡ€Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π±Π°Π·ΠΎΠ²Ρ‹Ρ… классов. Π­Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° позволяСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ слоТностСй, связанных с Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ прямых Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΊ API, ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΡƒΡŽ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ модСль, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ всС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅.NET языки.

Microsoft.NET Framework состоит ΠΈΠ· Π΄Π²ΡƒΡ… частСй: общСязыковой ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅ΠΉ срСды (common language runtime, CLR) ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ классов (Framework Class Library, FCL). CLR прСдоставляСт модСль программирования, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡƒΡŽ Π²ΠΎ Π²ΡΠ΅Ρ… Ρ‚ΠΈΠΏΠ°Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π£ CLR собствСнный Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ Ρ„Π°ΠΉΠ»ΠΎΠ², диспСтчСр памяти (сборщик мусора), систСма бСзопасности (Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ доступа ΠΊ ΠΊΠΎΠ΄Ρƒ), ΠΏΡƒΠ» ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, CLR прСдоставляСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ модСль программирования, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΡƒΡŽ, ΠΊΠ°ΠΊ выглядят ΠΈ Π²Π΅Π΄ΡƒΡ‚ сСбя Ρ‚ΠΈΠΏΡ‹ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹.

FCL прСдоставляСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ API-интСрфСйс, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ всСми модСлями ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’ Π½Π΅ΠΉ содСрТатся опрСдСлСния Ρ‚ΠΈΠΏΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π²Π²ΠΎΠ΄ / Π²Ρ‹Π²ΠΎΠ΄, ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΡ‚ΠΎΠΊΠ°Ρ…, ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ графичСскиС ΠΎΠ±Ρ€Π°Π·Ρ‹, ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ строки ΠΈ Ρ‚. ΠΏ. ЕстСствСнно, Ρ‡Ρ‚ΠΎ всС эти опрСдСлСния Ρ‚ΠΈΠΏΠΎΠ² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ CLR Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ программирования.

Как ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡŒ, Π² ΠΊΠ°Ρ€ΠΊΠ°ΡΠ΅ Framework. Net ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π΄Π²Π° основных ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, это статичСский ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ (Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° классов каркаса, FCL) ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ (общСязыковая ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ срСда, CLR).

ΠšΠ°Ρ€ΠΊΠ°Ρ являСтся Π΅Π΄ΠΈΠ½Ρ‹ΠΌ для всСх языков срСды. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ Π±Ρ‹ языкС программирования Π½Π΅ Π²Π΅Π»Π°ΡΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ классы ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. МногиС классы Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ ΠΎΠ±Ρ‰Π΅Π΅ ядро, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ всСми языками. ΠžΡ‚ΡΡŽΠ΄Π° Сдинство интСрфСйса прилоТСния, Π½Π° ΠΊΠ°ΠΊΠΎΠΌ Π±Ρ‹ языкС ΠΎΠ½ΠΎ Π½Π΅ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π»ΠΎΡΡŒ, Сдинство Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡΠΌΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Сдинство связывания с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΡ€ΠΎΡ‡Π°Ρ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Π’Π°ΠΆΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ FCL ΡΠ²Π»ΡΡŽΡ‚ΡΡ классы, Π·Π°Π΄Π°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ — Ρ‚Π΅ Ρ‚ΠΈΠΏΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ встроСнными Π² ΡΠ·Ρ‹ΠΊ программирования. Π’ΠΈΠΏΡ‹ каркаса ΠΏΠΎΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ всС мноТСство встроСнных Ρ‚ΠΈΠΏΠΎΠ², Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ Π² ΡΠ·Ρ‹ΠΊΠ°Ρ… программирования. Π’ΠΈΠΏΡ‹ языка программирования ΠΏΡ€ΠΎΠ΅Ρ†ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ каркаса. Π’ΠΈΠΏ, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π² ΡΠ·Ρ‹ΠΊΠ΅ Visual Basic — Integer, Π° Π² ΡΠ·Ρ‹ΠΊΠ΅ C# - int, проСцируСтся Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ‚ΠΈΠΏ каркаса System. Int32. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ языкС программирования, наряду с «Ρ€ΠΎΠ΄Π½Ρ‹ΠΌΠΈ» для языка названиями Ρ‚ΠΈΠΏΠΎΠ², Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Ρ‚ΠΈΠΏΠΎΠ², принятыми Π² ΠΊΠ°Ρ€ΠΊΠ°ΡΠ΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ, ΠΏΠΎ ΡΡƒΡ‚ΠΈ, всС языки срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π΅Π΄ΠΈΠ½ΠΎΠΉ систСмой встроСнных Ρ‚ΠΈΠΏΠΎΠ², Ρ‡Ρ‚ΠΎ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, способствуСт ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½ΠΈΡŽ взаимодСйствия ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ², написанных Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… языках.

Π§Π°ΡΡ‚ΡŒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ стали Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ простыС встроСнныС Ρ‚ΠΈΠΏΡ‹, Π½ΠΎ ΠΈ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹, Π·Π°Π΄Π°ΡŽΡ‰ΠΈΠ΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ Π΄Π°Π½Π½Ρ‹Ρ… — строки, массивы, пСрСчислСния, структуры (записи). Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ способствуСт ΡƒΠ½ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌΡƒ сблиТСнию языков программирования.

БущСствСнно Ρ€Π°ΡΡˆΠΈΡ€ΠΈΠ»ΡΡ Π½Π°Π±ΠΎΡ€ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² построСния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Помимо Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… WindowsΠΈ ΠΊΠΎΠ½ΡΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, появилась Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ построСния Web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π‘ΠΎΠ»ΡŒΡˆΠΎΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ удСляСтся возмоТности создания ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² — Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ классов, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ элСмСнтов управлСния ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Web-элСмСнтов управлСния. ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½Ρ‹ΠΌ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹ΠΌ Ρ‚ΠΈΠΏΠΎΠΌ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Web-слуТбы, ΡΡ‚Π°Π²ΡˆΠΈΠ΅ сСгодня благодаря ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌΡƒ стандарту ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½Ρ‹Ρ… Π²ΠΈΠ΄ΠΎΠ² ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Для языков C#, J#, Visual Basic, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Microsoft, прСдлагаСтся ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΈΠ· 12 Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. НСсколько особняком стоит Visual Π‘++, ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‰ΠΈΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ FCL, Π½ΠΎ ΠΈ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°ΠΌΠΈ MFC ΠΈ ATL, ΠΈ Ρ ΠΏΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… MFC ΠΈ ATL-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ². ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€Ρ‹ языков, поставляСмых Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ„ΠΈΡ€ΠΌΠ°ΠΌΠΈ, ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‚ ΠΎΠ±Ρ‰ΠΈΠΌ трСбованиям срСды, сохраняя свою ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Число классов Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ FCL Π²Π΅Π»ΠΈΠΊΠΎ (нСсколько тысяч). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ понадобился способ ΠΈΡ… ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ. ЛогичСски классы с Π±Π»ΠΈΠ·ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² Π³Ρ€ΡƒΠΏΠΏΡ‹, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ пространством ΠΈΠΌΠ΅Π½ (Namespace). Для динамичСского ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° CLR физичСской Π΅Π΄ΠΈΠ½ΠΈΡ†Π΅ΠΉ, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰Π΅ΠΉ классы ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ рСсурсы, являСтся сборка (assembly).

ΠžΡΠ½ΠΎΠ²Π½Ρ‹ΠΌ пространством ΠΈΠΌΠ΅Π½ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ FCL являСтся пространство System, содСрТащСС ΠΊΠ°ΠΊ классы, Ρ‚Π°ΠΊ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ пространства ΠΈΠΌΠ΅Π½. Π’Π°ΠΊ, ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π²ΡˆΠΈΠΉΡΡ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ Int32 нСпосрСдствСнно Π²Π»ΠΎΠΆΠ΅Π½ Π² ΠΏΡ€ΠΎΡΡ‚ранство ΠΈΠΌΠ΅Π½ System ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ»Π½ΠΎΠ΅ имя, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ имя пространства — System. Int32.

Π’ ΠΏΡ€ΠΎΡΡ‚ранство System Π²Π»ΠΎΠΆΠ΅Π½ Ρ†Π΅Π»Ρ‹ΠΉ ряд Π΄Ρ€ΡƒΠ³ΠΈΡ… пространств ΠΈΠΌΠ΅Π½. НапримСр, Π² ΠΏΡ€ΠΎΡΡ‚ранствС System. Collections находятся классы ΠΈ ΠΈΠ½Ρ‚СрфСйсы, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² — списками, очСрСдями, словарями. Π’ ΠΏΡ€ΠΎΡΡ‚ранство System. Collections, Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π²Π»ΠΎΠΆΠ΅Π½ΠΎ пространство ΠΈΠΌΠ΅Π½ Specialized, содСрТащиС классы со ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ, элСмСнтами ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ строки. ΠŸΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚Π²ΠΎ System. Windows. Forms содСрТит классы, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΈ создании Windows-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Класс Form ΠΈΠ· ΡΡ‚ΠΎΠ³ΠΎ пространства Π·Π°Π΄Π°Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΡƒ — ΠΎΠΊΠ½ΠΎ, заполняСмоС элСмСнтами управлСния, Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠΉ, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ΅ взаимодСйствиС с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

Π‘Ρ€Π΅Π΄Π° CLR управляСт ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ², Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π°, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ бСзопасности ΠΊΠΎΠ΄Π°, компиляциСй ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ систСмными слуТбами. Π­Ρ‚ΠΈ срСдства ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌΠΈ для управляСмого ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выполняСтся Π² ΡΡ€Π΅Π΄Π΅ CLR.

Π‘Ρ€Π΅Π΄Π° выполнСния обСспСчиваСт ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ доступом для ΠΊΠΎΠ΄Π°. НапримСр, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π΄ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ исполняСмому ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ, Π²Π½Π΅Π΄Ρ€Π΅Π½Π½ΠΎΠΌΡƒ Π² Π²Π΅Π±-страницу, воспроизвСдСниС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ Π½Π° ΡΠΊΡ€Π°Π½Π΅ ΠΈΠ»ΠΈ звукозаписи, Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π΅ΠΌΡƒ ΠΏΡ€ΠΈ этом ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π»ΠΈΡ‡Π½Ρ‹ΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ, Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС ΠΈΠ»ΠΈ сСти. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, срСдства бСзопасности CLR ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΠΌΡƒ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΠΎΠΌΡƒ Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΠΎΠ³Π°Ρ‚Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

УправляСмая срСда выполнСния ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ обСспСчСниСм. НапримСр, срСда выполнСния автоматичСски управляСт Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ ΡΡΡ‹Π»ΠΊΠ°ΠΌΠΈ Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, освобоТдая ΠΈΡ…, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ большС Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ся. АвтоматичСскоС ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π΄Π²Π΅ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΠ΅ ошибки ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ памяти ΠΈ Π½Π΅Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ссылки Π½Π° ΠΏΠ°ΠΌΡΡ‚ΡŒ.

Π‘Ρ€Π΅Π΄Π° выполнСния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π₯отя общСязыковая срСда выполнСния прСдоставляСт ΠΌΠ½ΠΎΠ³ΠΈΠ΅ стандартныС слуТбы Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния, управляСмый ΠΊΠΎΠ΄ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΈΠ½Ρ‚СрпрСтируСтся. БрСдство компиляции ΠΏΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΡŽ (JIT) позволяСт всСму управляСмому ΠΊΠΎΠ΄Ρƒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π½ΠΎΠΌ языкС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. ΠœΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅ΠΌ диспСтчСр памяти устраняСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ памяти ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ объСм адрСсуСмой памяти для Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

И Π½Π°ΠΊΠΎΠ½Π΅Ρ†, срСда выполнСния ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ Π² Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… сСрвСрных прилоТСниях, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Microsoft® SQL Server™ ΠΈ Internet Information Services (IIS). Вакая инфраструктура позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ управляСмый ΠΊΠΎΠ΄ для написания собствСнной Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΏΠΎΠ»ΡŒΠ·ΡƒΡΡΡŒ ΠΏΡ€ΠΈ этом Π²Ρ‹ΡΠΎΡ‡Π°ΠΉΡˆΠ΅ΠΉ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ Π»ΡƒΡ‡ΡˆΠΈΡ… производствСнных сСрвСров, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ срСды выполнСния.

3.4.2 Π’Ρ‹Π±ΠΎΡ€ языка программирования

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠŸΠž Π±Ρ‹Π» Π²Ρ‹Π±Ρ€Π°Π½ язык программирования C#. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ΅ ПО взаимодСйствуСт со ΡΡ€Π΅Π΄ΠΎΠΉ Microsoft Robotics Developer Studio. НаписаниС сСрвисов для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ MSRS Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ языка C#.

Из-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°.NET Ρ‚Π°ΠΊ Ρ€Π°Π΄ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ отличаСтся ΠΎΡ‚ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, Microsoft Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ Π½Π΅Π΅ Π½ΠΎΠ²Ρ‹ΠΉ язык программирования C#. Π’ Π½Π΅Π³ΠΎ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… особСнностСй — простота, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ, типовая Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΡΡ‚ΡŒ, «ΡΠ±ΠΎΡ€ΠΊΠ° мусора», ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° совмСстимости вСрсий ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. Π”Π°Π½Π½Ρ‹Π΅ возмоТности ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ быстро ΠΈ Π»Π΅Π³ΠΊΠΎ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ прилоТСния, особСнно COM прилоТСния ΠΈ Web сСрвисы. ΠŸΡ€ΠΈ создании C#, Π΅Π³ΠΎ Π°Π²Ρ‚ΠΎΡ€Ρ‹ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Π»ΠΈ достиТСния ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… языков программирования: C++, C, Java, SmallTalk, Delphi, Visual Basic ΠΈ Ρ‚. Π΄. По ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ C# разрабатывался с Ρ‡ΠΈΡΡ‚ΠΎΠ³ΠΎ листа, Ρƒ Π΅Π³ΠΎ Π°Π²Ρ‚ΠΎΡ€ΠΎΠ² Π±Ρ‹Π»Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ всС Π½Π΅ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΈ Π½Π΅ΠΏΡ€ΠΈΡΡ‚Π½Ρ‹Π΅ особСнности любого ΠΈΠ· ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Π΅ΠΌΡƒ языков. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ получился простой, ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ ΠΈ ΡΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ язык, ΠΏΠΎ ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΠΈ Π½Π΅ ΡƒΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠΉ Π‘++, Π½ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²Π΅Π½Π½ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°ΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ.

Π’Π²ΠΈΠ΄Ρƒ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ·Π°ΠΉΠ½Π°, C# являСтся Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ для быстрого конструирования Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² — ΠΎΡ‚ Π²Ρ‹ΡΠΎΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²ΠΎΠΉ бизнСс Π»ΠΎΠ³ΠΈΠΊΠΈ Π΄ΠΎ ΡΠΈΡΡ‚Π΅ΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ ΠΊΠΎΠ΄. Π’Π°ΠΊΠΆΠ΅ слСдуСт ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ C# являСтся ΠΈ Web ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ — ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ простыС встроСнныС конструкции языка Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΎ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π΅Π½Ρ‹ Π² Web сСрвисы, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΈΠ· Internet посрСдством любого языка Π½Π° Π»ΡŽΠ±ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмС. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности ΠΈ ΠΏΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° ΠΏΠ΅Ρ€Π΅Π΄ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ языками приносит Π² C# использованиС ΠΏΠ΅Ρ€Π΅Π΄ΠΎΠ²Ρ‹Ρ… Web Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ: XML (Extensible Markup Language) ΠΈ SOAP (Simple Object Access Protocol). Π‘Ρ€Π΅Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Web сСрвисов позволяСт программисту ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ сСгодня Web прилоТСния, ΠΊΠ°ΠΊ Π½Π° Ρ€ΠΎΠ΄Π½Ρ‹Π΅ C# ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, Ρ‡Ρ‚ΠΎ Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ соотнСсти ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Web сСрвисы с ΠΈΡ… ΠΏΠΎΠ·Π½Π°Π½ΠΈΡΠΌΠΈ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ.

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ частичный ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй языка C#, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π²ΠΎ Π²ΡΠ΅Ρ… Π΅Π³ΠΎ вСрсиях:

— ΠΠ΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ;

— ΠΠ²Ρ‚оматичСскоС ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ посрСдством сборки мусора;

— Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ синтаксичСскиС конструкции для классов, интСрфСйсов, структур, пСрСчислСний ΠΈ Π΄Π΅Π»Π΅Π³Π°Ρ‚ΠΎΠ²;

— ΠΠ½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Π°Ρ Π‘++ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ², Π½ΠΎ Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… слоТностСй;

— ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° программирования Π½Π° Π±Π°Π·Π΅ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ². Π­Ρ‚ΠΎ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² Ρ‚Схнологиях Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ позволяСт ΡΠ½Π°Π±ΠΆΠ°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ ΠΈ ΠΈΡ… Ρ‡Π»Π΅Π½ΠΎΠ² аннотациями ΠΈ Ρ‚Π΅ΠΌ самым Π΅Ρ‰Π΅ большС ΡƒΡ‚ΠΎΡ‡Π½ΡΡ‚ΡŒ ΠΈΡ… ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅.

Π‘ Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ вСрсии.NET 2.0 язык программирования C# Π±Ρ‹Π» ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ ΠΌΠΎΠ³ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ всС Π½ΠΎΠ²Ρ‹Π΅ возмоТности. НаиболСС Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Π΅ добавлСния пСрСчислСны Π½ΠΈΠΆΠ΅:

— Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ создания ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΈ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹Ρ… Ρ‡Π»Π΅Π½ΠΎΠ²;

— ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° для Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°Π΅ΠΌΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ трСбуСтся Ρ‚ΠΈΠΏ Π΄Π΅Π»Π΅Π³Π°Ρ‚Π°;

— ΠœΠ½ΠΎΠ³ΠΎΡ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ упрощСния Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ «Π΄Π΅Π»Π΅Π³Π°Ρ‚-событиС»;

— Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ опрСдСлСния ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ„Π°ΠΉΠ»Π°Ρ… ΠΊΠΎΠ΄Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова partial.

Π’ NET 3.5 язык программирования C# Π±Ρ‹Π» оснащСн Π΅Ρ‰Π΅ большим количСством Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… возмоТностСй, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Π΅ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… пСрСчислСны Π½ΠΈΠΆΠ΅:

— ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° запросов LINQ;

— Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ‚ΠΈΠΏΠ° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ;

— Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π»Π°ΠΌΠ±Π΄Π°-ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ;

— ΠΠΎΠ²Ρ‹ΠΉ синтаксис для ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

3.4.3 Π’Ρ‹Π±ΠΎΡ€ Π‘Π£Π‘Π”

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

ΠŸΡ€ΠΈ Π²Ρ‹Π±ΠΎΡ€Π΅ Π‘Π£Π‘Π” Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ:

— ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ;

— ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ количСство ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΡ…ΡΡ ΠΊ Π‘Π”;

— Π‘СрвСрная опСрационная систСма;

— ΠΠ°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ;

— ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ‚Ρ€ΡƒΠ΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ характСристика Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнных Π‘Π£Π‘Π” прСдставлСна Π² ΡΠ²ΠΎΠ΄Π½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ «Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ характСристика Π‘Π£Π‘Π”».

Π’Π°Π±Π»ΠΈΡ†Π° 2. Π‘Ρ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ характСристика Π‘Π£Π‘Π”

Access

MS SQL

MySQL

Oracle

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ

Π½Π΅Ρ‚

Π΄Π°

Π΄Π°

Π΄Π°

Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹

низкая

высокая

высокая

высокая

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ

OLE/ADO DB, ODBC

ODBC, OLE DB/ADO, ADO.NET, LINQ to SQL

ODBC, OLE DB/ADO, ADO.NET, LINQ to SQL

ODBC, JDBC ΠΈ ADO/OLE DB

Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ администрирования

Низкая

ΠŸΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠ°Ρ

ΠŸΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠ°Ρ

Высокая

ВрСбования ΠΊ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅

НизкиС

ΠŸΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹Π΅

ΠŸΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΡ‹Π΅

ВысокиС

Из ΡΡ€Π°Π²Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΈΠ΅ Π‘Π£Π‘Π” ΠΊΠ°ΠΊ Microsoft SQL Server 2008 ΠΈ MySQL ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ всСм Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ трСбованиям, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ:

— ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ;

— Π’ысокая ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹;

— ΠΠΈΠ·ΠΊΠ° Ρ‚Ρ€ΡƒΠ΄ΠΎΠ΅ΠΌΠΊΠΎΡΡ‚ΡŒ поддСрТания работоспособности Π‘Π£Π‘Π”;

— ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° использования Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ LINQ To SQL;

— Π’ысокая Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ хранСния Π΄Π°Π½Π½Ρ‹Ρ….

Π’Ρ‹Π±ΠΎΡ€ сдСлан Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ MS SQL Server 2008, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Microsoft SQL Server 2008 прСвосходит MySQL ΠΊΠ°ΠΊ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΎ Π²ΡΠ΅Ρ… сущСствСнных областях. Он ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Π΅Ρ‚ доступ ΠΊ ΠΎΠ±ΡˆΠΈΡ€Π½Ρ‹ΠΌ рСсурсам, Π²Π΅Π΄ΡƒΡ‰ΡƒΡŽ Π² ΠΎΡ‚расли ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ класса, Π²Ρ‹ΡΠΎΡ‡Π°ΠΉΡˆΠΈΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ бСзопасности, Π²Ρ‹ΡΠΎΡ‡Π°ΠΉΡˆΠΈΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ доступности, ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ бизнСс-Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠΈ (BI) — ΠΈ Π²ΡΠ΅ ΠΏΡ€ΠΈ довольно Π½ΠΈΠ·ΠΊΠΎΠΉ совокупной стоимости владСния (TCO).

3.4.4 Microsoft SQL Server 2008

Microsoft SQL Server — систСма управлСния рСляционными Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… (Π‘Π£Π‘Π”), разработанная ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ†ΠΈΠ΅ΠΉ Microsoft. Основной ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ язык запросов — Transact-SQL, создан совмСстно Microsoft ΠΈ Sybase. Transact-SQL являСтся Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ стандарта ANSI/ISO ΠΏΠΎ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ языку запросов (SQL) с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ ΠΎΡ‚ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄ΠΎ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ°ΡΡˆΡ‚Π°Π±Π° прСдприятия; ΠΊΠΎΠ½ΠΊΡƒΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Π‘Π£Π‘Π” Π² ΡΡ‚ΠΎΠΌ сСгмСнтС Ρ€Ρ‹Π½ΠΊΠ°.

БистСма SQL Server 2008 отталкиваСтся ΠΎΡ‚ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚: ΠΎΠ½Π° ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π»ΡŽΠ±Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π² Π»ΡŽΠ±ΠΎΠΌ мСстС ΠΈ Π² Π»ΡŽΠ±ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Она позволяСт Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΡƒΡŽ ΠΈΠ· ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ…, полуструктурированных ΠΈ Π½Π΅ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… источников, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ изобраТСния ΠΈ ΠΌΡƒΠ·Ρ‹ΠΊΠ°. Π’ SQL Server 2008 имССтся большой Π½Π°Π±ΠΎΡ€ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… слуТб, Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‰ΠΈΡ… возмоТности использования Π΄Π°Π½Π½Ρ‹Ρ…: Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ запросы, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ поиск, ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΡΠΈΠ½Ρ…Ρ€ΠΎΠ½ΠΈΠ·Π°Ρ†ΠΈΡŽ, Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚Ρ‹, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅. ВсС Π΄Π°Π½Π½Ρ‹Π΅ хранятся Π½Π° ΠΎΡΠ½ΠΎΠ²Π½Ρ‹Ρ… сСрвСрах, входящих Π² ΡΠΎΡΡ‚Π°Π² Ρ†Π΅Π½Ρ‚Ρ€Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. К Π½ΠΈΠΌ осущСствляСтся доступ с Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройств. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π²Ρ‹ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π³Π΄Π΅ Π²Ρ‹ ΠΈΡ… ΡΠΎΡ…Ρ€Π°Π½ΠΈΠ»ΠΈ.

БистСма SQL Server 2008 позволяСт ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΠ· Π»ΡŽΠ±ΠΎΠ³ΠΎ прилоТСния, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ Microsoft.NET ΠΈ Visual Studio, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… сСрвисно-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ ΠΈ Π±ΠΈΠ·Π½Π΅Ρ-процСссов — Ρ‡Π΅Ρ€Π΅Π· Microsoft BizTalk Server. Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠ΅ Π·Π° ΡΠ±ΠΎΡ€ ΠΈ Π°Π½Π°Π»ΠΈΠ· ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π½Π΅ ΠΏΠΎΠΊΠΈΠ΄Π°Ρ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΎΠ½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ дСнь, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ выпуска 2007 систСмы Microsoft Office. SQL Server 2008 позволяСт ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½ΡƒΡŽ, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ, ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰ΡƒΡŽ всСм трСбованиям ΠΏΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

3.4.5 Microsoft Silverlight

Microsoft Silverlight — это программная ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π°Ρ Π² ΡΠ΅Π±Ρ ΠΏΠ»Π°Π³ΠΈΠ½ для Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ прилоТСния, содСрТащиС Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΡƒΡŽ Π³Ρ€Π°Ρ„ΠΈΠΊΡƒ ΠΈ Π°ΡƒΠ΄ΠΈΠΎ-Π²ΠΈΠ΄Π΅ΠΎ Ρ€ΠΎΠ»ΠΈΠΊΠΈ, Ρ‡Ρ‚ΠΎ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½ΠΎ для RIA (Rich Internet application).

Silverlight позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ насыщСнныС, Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π²Π΅Π±-страницы, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… обозрСватСлях, устройствах ΠΈ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Apple Macintosh). ΠšΠ»ΡŽΡ‡ΠΎΠΌ ΠΊ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ям Silverlight, ΠΊΠ°ΠΊ ΠΈ ΠΊΠΎ Π²ΡΠ΅ΠΉ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ прСдставлСния WPF (Windows Presentation Foundation) ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Microsoft.NET Framework 3.0, являСтся XAML (eXtensible Application Markup Language, Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΡ‹ΠΉ язык Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ).

ВСхнология ASP.NET стала Π²Π΅Ρ…ΠΎΠΉ Π½Π° ΠΏΡƒΡ‚ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΊ Π±Ρ‹ΡΡ‚Ρ€ΠΎΠΌΡƒ созданию качСствСнных Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΡ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° ΡΡ‚ΠΎΡ€ΠΎΠ½Π΅ сСрвСра ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Π½Π½Ρ‹Ρ… инструмСнтов сСрии Visual Studio. Π‘Π°ΠΌΡ‹ΠΌ большим Π±Π°Ρ€ΡŒΠ΅Ρ€ΠΎΠΌ для Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ стал интСрфСйс ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π³Π΄Π΅ тСхничСскиС ограничСния помСшали ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎ ΠΆΠ΅ ΡƒΠ΄ΠΎΠ±ΡΡ‚Π²ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚скиС прилоТСния для ПК, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ с Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ XMLHttpRequest, Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠœΠ°ΠΉΠΊΡ€ΠΎΡΠΎΡ„Ρ‚ Π² ΡΠΎΡΡ‚Π°Π²Π΅ Internet Explorer 5 Π² 2000 Π³., ΠΎΡ‚ΠΊΡ€Ρ‹Π» Π΄ΠΎΡ€ΠΎΠ³Ρƒ для Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Asynchronous JavaScript ΠΈ XML (AJAX), позволившСй Π²Π΅Π±-прилоТСниям Π±ΠΎΠ»Π΅Π΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΎ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π΄Π΅ΠΉΡΡ‚вия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, обновляя нСбольшиС части Π²Π΅Π±-страницы ΠΈ Π½Π΅ Ρ‚рСбуя Π΅Π΅ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. Π˜Π½Π½ΠΎΠ²Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, построСнныС Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ AJAX, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠ°Ρ€Ρ‚Ρ‹ Windows Live Local, ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΠ»ΠΈ Π²Π΅Π±-прилоТСния ΠΊ ΡƒΡ€ΠΎΠ²Π½ΡŽ удобства ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… клиСнтских ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

ВСхнология Silverlight — ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ шаг Π½Π° ΠΏΡƒΡ‚ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ возмоТностСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ потрСбитСлям. Она Π΄Π°Π΅Ρ‚ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚ΡŒ свои творчСскиС ΠΈΠ΄Π΅ΠΈ ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² Ρ‚ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ сразу ΠΆΠ΅ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅. Π”ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€Ρ‹ ΠΌΠΎΠ³Π»ΠΈ ΠΈ Ρ€Π°Π½ΡŒΡˆΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Π±-страницы, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ Π±ΠΎΠ³Π°Ρ‚Ρ‹Π΅ возмоТности ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, Π½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρ‹, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈΡ… Π·Π°ΠΌΡ‹ΡΠ»Ρ‹, Π±Ρ‹Π»ΠΈ Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒΡΡ с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΡΠΌΠΈ Π²Π΅Π±-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ. Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΌΠΎΠ΄Π΅Π»ΠΈ Silverlight любоС созданноС Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ сохраняСтся Π² Π²ΠΈΠ΄Π΅ XAML. Π­Ρ‚ΠΎΡ‚ XAML-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ впослСдствии автоматичСски встраиваСтся Π² Π²Π΅Π±-страницу с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ срСды выполнСния Silverlight. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π°Π΄ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π±ΠΎΠ»Π΅Π΅ слаТСнно, Ρ‡Π΅ΠΌ ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ Ρ€Π°Π½Π΅Π΅.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ тСхничСски XAML — это XML, ΠΎΠ½ ΠΏΡ€Π΅Π΄ΡΡ‚авляСт собой простой тСкст, Π° Π·Π½Π°Ρ‡ΠΈΡ‚, Π½Π΅ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² с Π±Ρ€Π°Π½Π΄ΠΌΠ°ΡƒΡΡ€Π°ΠΌΠΈ, Π»Π΅Π³ΠΊΠΎ доступСн для просмотра, ΠΈ ΠΏΡ€ΠΈ этом описываСт Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ΅ содСрТимоС. НСкоторыС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ — Java, ActiveX, Flash — Π² Π½Π°ΡΡ‚оящСС врСмя ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΡΠ·Ρ‹ΠΊΠ°ΠΌ DHTML, CSS ΠΈ JavaScript ΠΈ Ρ€Π°ΡΡˆΠΈΡ€ΡΡŽΡ‚ содСрТимоС Π²Π΅Π±-страниц, Π½ΠΎ ΠΈΡ… Ρ€ΠΎΠ΄Π½ΠΈΡ‚ ΠΎΠ΄ΠΈΠ½ нСдостаток — Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π² ΠΎΠ±ΠΎΠ·Ρ€Π΅Π²Π°Ρ‚Π΅Π»ΡŒ Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. Π’Π°ΠΊΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ слоТно ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π° ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ бСзопасности, Π½Π΅ Π³ΠΎΠ²ΠΎΡ€Ρ ΡƒΠΆΠ΅ ΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π΅Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ — для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π»ΡŽΠ±Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ трСбуСтся пСрСустановка всСго прилоТСния, Ρ‡Ρ‚ΠΎ Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΡ€ΠΌΠΎΠΆΠ΅Π½ΠΈΡŽ Π²Π΅Π±-страниц. ΠŸΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ содСрТимого страницы срСдствами Silverlight Π½ΠΎΠ²Ρ‹ΠΉ XAML-Ρ„Π°ΠΉΠ» создаСтся Π½Π° ΡΡ‚ΠΎΡ€ΠΎΠ½Π΅ сСрвСра. ΠŸΡ€ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ просмотрС страницы происходит Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° этого Ρ„Π°ΠΉΠ»Π°, Π° Π·Π½Π°Ρ‡ΠΈΡ‚, ΠΏΠΎΡ‚Ρ€Π΅Π±Π½ΠΎΡΡ‚ΡŒ Π² ΠΏΠ΅Ρ€Π΅ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ΅ ΠΎΡ‚ΠΏΠ°Π΄Π°Π΅Ρ‚.

Π‘Π΅Ρ€Π΄Ρ†Π΅ΠΌ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Silverlight являСтся ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ для обозрСватСля, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ XAML ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΈΡ‚ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΏΠΎΠ»Π΅ обозрСватСля. Π—Π°Π³Ρ€ΡƒΠ·ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π½Π΅Π²Π΅Π»ΠΈΠΊ (ΠΌΠ΅Π½Π΅Π΅ 2 MΠ‘), ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ установлСн ΠΏΡ€ΠΈ посСщСнии ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΡƒΠ·Π»Π° с ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΡ‹ΠΌ, создававшимся с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Silverlight. ΠœΠΎΠ΄ΡƒΠ»ΡŒ прСдоставляСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ доступ ΠΊ Ρ„ункциям XAML-страницы Π½Π° ΡΠ·Ρ‹ΠΊΠ΅ JavaScript, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, становится Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ взаимодСйствиС с ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΡ‹ΠΌ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ страницы ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ событий ΠΈΠ»ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ содСрТимым XAML-страницы с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ JavaScript-ΠΊΠΎΠ΄Π°.

3.4.6 Visual Programming Language (VPL)

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€ΠΎΠ±ΠΎΡ‚ΠΎΠ² Π² ΡΡ€Π΅Π΄Π΅ Microsoft Robotics Developer Studio осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ языка программирования Visual Programming Language (VPL).

Microsoft Visual Programming Language — язык Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ ΠΏΠΎΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ программирования, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ†ΠΈΠ΅ΠΉ Microsoft для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Microsoft Robotics Developer Studio. Microsoft Visual Programming Language выдСляСтся срСди ΠΏΡ€ΠΎΡ‡ΠΈΡ… языков программирования Microsoft, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Visual Basic ΠΈ C#, Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π΅Π½Π½Ρ‹ΠΉ являСтся настоящим языком Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования.

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

Рис. 3.5. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΡ‚ΠΎΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π² VPL

Π‘Π»ΠΎΠΊΠΈ Activities ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· ΠΊΡ€ΡƒΠΆΠΊΠΈ ΠΈ Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ. Они Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ Ρ€Π°Π·ΡŠΠ΅ΠΌΠ°ΠΌΠΈ (connection pins). Π Π°Π·ΡŠΠ΅ΠΌΡ‹ слСва — Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅, справа — Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅. Когда ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ Ρ€Π°Π·ΡŠΠ΅ΠΌ, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ дСйствиС / ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ происходит ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅. Когда Activities ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ΅ сообщСниС, ΠΎΠ½ΠΎ активируСтся, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Π΅Ρ‚ ΠΊΠΎΠ΄.

Π£ Activities Π΄Π²Π° Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Ρ€Π°Π·ΡŠΠ΅ΠΌΠ°. Π’Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΡŠΠ΅ΠΌ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Π²Ρ‹Π²ΠΎΠ΄Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ². Π’Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ даСтся ΠΊΠ°ΠΊ ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ запрос (Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΡ значСния ΠΈΠ»ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ письма ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡ ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° Π½Π΅Π³ΠΎ). ΠšΡ€ΡƒΠ³Π»Ρ‹ΠΉ Ρ€Π°Π·ΡŠΠ΅ΠΌ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ сообщСний. БообщСния ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ измСнСния Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ состояния ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ событий. Activities Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ сообщСния Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° Π²Ρ…одящиС сообщСния. Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° происходит ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, Π° ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΡ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ.

Для составлСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² VPL ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π΄Π²Π° Ρ‚ΠΈΠΏΠ° Π±Π»ΠΎΠΊΠΎΠ² Activities: Basic Activities ΠΈ Services. Π‘Π»ΠΎΠΊΠΈ Basic Activities слуТат для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ алгоритмичСской части ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π­Ρ‚ΠΎ Π±Π»ΠΎΠΊΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ², вСтвлСния, объСдинСния, ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΉ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅. Π‘Π»ΠΎΠΊΠΈ Services — это DSS сСрвисы, ΠΎΠ½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ Ρ€ΠΎΠ±ΠΎΡ‚Π°. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ свои собствСнныС Π±Π»ΠΎΠΊΠΈ DSS Services.

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