ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

Врансляторы. Для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с языка программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹, понятныС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ – трансляторы

Для ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с языка программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹, понятныС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ – трансляторы. Врансляторы Π±Ρ‹Π²Π°ΡŽΡ‚ Π΄Π²ΡƒΡ… Π²ΠΈΠ΄ΠΎΠ²: ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Ρ‹ ΠΈ компиляторы.

Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Ρ‹ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΡΡ‚ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ (ΠΈΠ»ΠΈ Π½Π΅ΠΊΠΎΠ΅ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ΅ прСдставлСниС) ΠΈ сразу Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠŸΡ€ΠΈΡ‡Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½, ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅Ρ‚ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ. ΠŸΡ€ΠΈ этом Ссли ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ, ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ всякий Ρ€Π°Π· Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π΅Π³ΠΎ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Ρ‚ΠΎ встрСтил Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ нСдостатком ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… трСбуСтся ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ большой объСм ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΡ…ΡΡ вычислСний, ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ. МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π΅ΠΊΡƒΡŽ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌΠΈ инструкциями слуТат Π½Π΅ элСмСнтарныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ процСссора, Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ языка программирования. Для выполнСния этой ΠΆΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, Ρ‚Π°ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ установлСн ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€.

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

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

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

Π’ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… систСмах программирования ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡˆΠ°Π½Ρ‹ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΈ компиляции ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ. Π’ процСссС ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎ шагам, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Врансляторы ΠΈ ΠΈΡ… Π²ΠΈΠ΄Ρ‹

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ тСкст, записанный Π½Π° языкС программирования, нСпонятСн ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρƒ, Ρ‚ΠΎ трСбуСтся пСрСвСсти Π΅Π³ΠΎ Π½Π° ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄. Π’Π°ΠΊΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с языка программирования Π½Π° язык ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ² называСтся трансляциСй, Π° выполняСтся ΠΎΠ½Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ – трансляторами.

Π’ настоящСС врСмя трансляторы Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π½Π° Ρ‚Ρ€ΠΈ основныС Π³Ρ€ΡƒΠΏΠΏΡ‹: ассСмблСры, компиляторы ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Ρ‹.

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

Эмуляторы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ достаточно часто Π² самых Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… цСлях. НапримСр, ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π½ΠΎΠ²Ρ‹Ρ… Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… систСм, сначала создаСтся эмулятор, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ для Π΅Ρ‰Π΅ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ². Π­Ρ‚ΠΎ позволяСт ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ систСму ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ Π½Π°Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС Π΅Ρ‰Π΅ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ создано ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅.

ΠžΡ‡Π΅Π½ΡŒ часто эмулятор ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для выполнСния старых ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° Π½ΠΎΠ²Ρ‹Ρ… Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ…. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ высоким быстродСйствиСм ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ качСствСнноС ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½ΠΎΠ΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅. Π­Ρ‚ΠΎ позволяСт ΡΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ старыС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±ΠΎΠ»Π΅Π΅ эффСктивно ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΈΡ… Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π½Π° старых ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ….

ΠœΠ°ΠΊΡ€ΠΎΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΈ с языками высокого уровня. Они ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности Ρ‚Π°ΠΊΠΈΡ… языков ΠΊΠ°ΠΊ PL/1, C, C++. ОсобСнно ΡˆΠΈΡ€ΠΎΠΊΠΎ макропроцСссоры ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Π² C ΠΈ C++, позволяя ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ написаниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. ΠœΠ°ΠΊΡ€ΠΎΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€Ρ‹ ΠΏΠΎΠ²Ρ‹ΡˆΠ°ΡŽΡ‚ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ программирования Π±Π΅Π· измСнСния синтаксиса ΠΈ сСмантики языка.

Π›ΡŽΠ±ΠΎΠΉ транслятор выполняСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ основныС Π·Π°Π΄Π°Ρ‡ΠΈ:

Β­- Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π² частности опрСдСляСт, содСрТит Π»ΠΈ ΠΎΠ½Π° синтаксичСскиС ошибки;

— Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ (Π΅Π΅ часто Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ) Π½Π° языкС ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄;

— распрСдСляСт ΠΏΠ°ΠΌΡΡ‚ΡŒ для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Вранслятор – это ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, написанных Π½Π° языкС высокого уровня.

1.Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€: Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ частям, сразу выполняСт ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ.

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ‚ΠΎΡ€: ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ всю ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, строит исполняСмый Ρ„Π°ΠΉΠ».

14) Алгоритм, Π΅Π³ΠΎ свойства ΠΈ способы записи.

1. Алгоритм – это ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎΠ΅, Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ ΠΈ ΠΏΠΎΠ»Π½ΠΎΠ΅ описаниС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ элСмСнтарных дСйствий для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ.

Π‘Π»ΠΎΠ²ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ происходит ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ арабского ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠ° Аль-Π₯ΠΎΡ€Π΅Π·ΠΌΠΈ (Ρ‚ΠΎΡ‡Π½Π΅Π΅ – Π»Π°Ρ‚ΠΈΠ½ΠΈΠ·ΠΈ-Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Π΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ – Аlgorithmi), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΅Ρ‰Π΅ Π² IX Π²Π΅ΠΊΠ΅ сформулировал ΠΏΡ€Π°Π²ΠΈΠ»Π° выполнСния Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… арифмСтичСских дСйствий. Π­Ρ‚ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π½Π°Π·Ρ‹Π²Π°Π»ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ Аль-Π₯ΠΎΡ€Π΅Π·ΠΌΠΈ (algorithmi), Π° ΠΏΠΎΠ·Π΄Π½Π΅Π΅ просто стали Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ.

p>3. Бпособы записи Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

2) Π½Π° алгоритмичСском языкС (ΠΈΠ»ΠΈ языкС программирования: БСйсик, Паскаль ΠΈ Ρ‚.Π΄.),

3) Π½Π° языкС блок–схСм.

15) Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π±Π»ΠΎΠΊ – схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ ΠΈ структуры.

1. Блок–схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° – это графичСский способ записи Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой систСму ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ связанных Π±Π»ΠΎΠΊΠΎΠ², ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… Π² Π²ΠΈΠ΄Π΅ плоских гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π±Π»ΠΎΠΊ –схСмы Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ свСрху Π²Π½ΠΈΠ·, Π»ΠΈΠ½ΠΈΠΈ соСдинСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ процСсса ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ схСмы. КаТдоС Ρ‚Π°ΠΊΠΎΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Π²Π΅Ρ‚Π²ΡŒΡŽ.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹2. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ

3. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°ΠΌΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Π±Π»ΠΎΠΊΠΎΠ² ΠΈ стандартных способов ΠΈΡ… соСдинСния для выполнСния Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ дСйствий.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

Блок–схСма Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° – это графичСский способ записи Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой систСму ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ связанных Π±Π»ΠΎΠΊΠΎΠ², ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… Π² Π²ΠΈΠ΄Π΅ плоских гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€.Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π±Π»ΠΎΠΊ – схСмы Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ свСрху Π²Π½ΠΈΠ·, Π»ΠΈΠ½ΠΈΠΈ соСдинСния ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ процСсса ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ схСмы. КаТдоС Ρ‚Π°ΠΊΠΎΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Π²Π΅Ρ‚Π²ΡŒΡŽ.

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΠΌ Ρ‚ΠΈΠΏΡ‹ Π±Π»ΠΎΠΊΠΎΠ²:

1. β€œΠΠ°Ρ‡Π°Π»ΠΎβ€ ΠΈ β€œΠΊΠΎΠ½Π΅Ρ†β€ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΎΠ²Π°Π»ΠΎΠΌ:

2. Π‘Π»ΠΎΠΊ β€œΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΡβ€ изобраТаСтся ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠΌ. Π’Π½ΡƒΡ‚Ρ€ΠΈ Π΅Π³ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ вычислСния ΠΈ присваивания Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°:

3. Π‘Π»ΠΎΠΊ β€œΡƒΡΠ»ΠΎΠ²ΠΈΡβ€ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Ρ€ΠΎΠΌΠ±ΠΎΠΌ. Π’Π½ΡƒΡ‚Ρ€ΠΈ Π±Π»ΠΎΠΊΠ° Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ условия Π²Ρ‹Π±ΠΎΡ€Π° направлСния дСйствия Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°:

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹4. Π‘Π»ΠΎΠΊΠΈ β€œΠ²Π²ΠΎΠ΄Π°β€ ΠΈ β€œΠ²Ρ‹Π²ΠΎΠ΄Π°β€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ. Π‘ ΠΈΡ… ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ вводят исходныС Π΄Π°Π½Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, выводят Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ:

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°ΠΌΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Π±Π»ΠΎΠΊΠΎΠ² ΠΈ стандартных способов ΠΈΡ… соСдинСния для выполнСния Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ дСйствий. Алгоритмы β€œΡΠΎΠ±ΠΈΡ€Π°ΡŽΡ‚β€ ΠΈΠ· Ρ‚Ρ€Π΅Ρ… основных (Π±Π°Π·ΠΎΠ²Ρ‹Ρ…) структур:

1. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° β€œ слСдованиС” состоит ΠΈΠ· Π΄Π²ΡƒΡ… (ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅) Π±Π»ΠΎΠΊΠΎΠ² β€œΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΠ΅β€:

2.Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° β€œΡ€Π°Π·Π²ΠΈΠ»ΠΊΠ°β€ состоит ΠΈΠ· логичСского элСмСнта с ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ условия ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΌ случаС Π΅ΡΡ‚ΡŒ Π±Π»ΠΎΠΊ β€œΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΠ΅β€.

β€œΠ Π°Π·Π²ΠΈΠ»ΠΊΠ°β€ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Π²ΡƒΡ… Π²ΠΈΠ΄ΠΎΠ²:

Π°) полная условная конструкция: Π±) нСполная условная конструкция:

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

3. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° β€œΡ†ΠΈΠΊΠ»β€ состоит ΠΈΠ· логичСского элСмСнта с ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ условия ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ‚Π΅Π»ΠΎΠΌ Ρ†ΠΈΠΊΠ»Π°. Ясно, Ρ‡Ρ‚ΠΎ Ρ‚Π΅Π»ΠΎ Ρ†ΠΈΠΊΠ»Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ. Данная структура ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Π²ΡƒΡ… Π²ΠΈΠ΄ΠΎΠ²:

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

Ρ†ΠΈΠΊΠ» – ПОКА Ρ†ΠΈΠΊΠ» – Π”Πž

Π’ случаС β€œΡ†ΠΈΠΊΠ» – ΠŸΠžΠšΠβ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Π±Π»ΠΎΠΊ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ послС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ условия, поэтому ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅Π»ΠΎ Ρ†ΠΈΠΊΠ»Π° Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΡΡ Π½ΠΈ Ρ€Π°Π·Ρƒ. Однако Ссли условиС выполняСтся – выполняСтся ΠΈ вСсь Ρ†ΠΈΠΊΠ». ΠŸΡ€ΠΎΡ‰Π΅ говоря, β€œΡ†ΠΈΠΊΠ» – ΠŸΠžΠšΠβ€ выполняСтся, ΠΏΠΎΠΊΠ° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ условиС.

Π’ β€œΡ†ΠΈΠΊΠ»Π΅ – Π”Πžβ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Π±Π»ΠΎΠΊ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ Π΄ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ выполнСния условия, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π² этом Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Ρ‚Π΅Π»ΠΎ Ρ†ΠΈΠΊΠ»Π° Π² любом случаС Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·. УсловиС Π² Π΄Π°Π½Π½ΠΎΠΌ случаС являСтся условиСм Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· Ρ†ΠΈΠΊΠ»Π°. ΠŸΡ€ΠΎΡ‰Π΅ говоря, β€œΡ†ΠΈΠΊΠ» – Π”Πž β€œ выполняСтся Π΄ΠΎ наступлСния выполнСния условия.

16) ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ ΡΠ΅Ρ‚ΡŒ ΠΈ Ρ‚ΠΈΠΏΡ‹ сСтСй.

1. ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ ΡΠ΅Ρ‚ΡŒ – это Π³Ρ€ΡƒΠΏΠΏΠ° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ², соСдинСнных линиями связи.

ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Π΅ сСти – Β«Π·Π°Β» ΠΈ Β«ΠΏΡ€ΠΎΡ‚ΠΈΠ²Β»

u внСшниС устройства

Π‘Π΅Ρ€Π²Π΅Ρ€ –это ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ свои рСсурсы Π² ΠΎΠ±Ρ‰Π΅Π΅ использованиС.

ΠšΠ»ΠΈΠ΅Π½Ρ‚ – это ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ рСсурсы сСрвСра.

17) ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ сСти. ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈ состав ΠΏΠ°ΠΊΠ΅Ρ‚Π°.

1. ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ Π±Ρ‹Π» Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСн ΠΏΡ€ΠΈ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ экономичСских Π·Π°Π΄Π°Ρ‡, ΠΊΠΎΠ³Π΄Π° большой ΡƒΠ΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ вСс Π·Π°Π½ΠΈΠΌΠ°Π»ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ отчСтности ΠΎ производствСнно-хозяйствСнной Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ экономичСских ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ€Π°Π·Π½ΠΎΠ³ΠΎ уровня управлСния.

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

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» – это Π½Π°Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ» ΠΈ соглашСний, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ… порядок ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

Шлюз (ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π΅Ρ€) – устройство, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ сСти с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°ΠΌΠΈ.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

18) Вопология ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ сСти (ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹)

1. Вопология сСти – гСомСтричСская Ρ„ΠΎΡ€ΠΌΠ° ΠΈ физичСскоС располоТСниС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ. Вопология сСти позволяСт ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΊΠ»Π°ΡΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ сСти. Π Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ Ρ‚Ρ€ΠΈ основных Π²ΠΈΠ΄Π° Ρ‚ΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΠΈ:

Π¨ΠΈΠ½Π° – это линия связи, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ нСсколько устройств ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

4. Β«Π”Π΅Ρ€Π΅Π²ΠΎΒ» = многоуровнСвая Π·Π²Π΅Π·Π΄Π°

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

19) Π›ΠΎΠΊΠ°Π»ΡŒΠ½Π°Ρ ΡΠ΅Ρ‚ΡŒ ΠΈ Ρ‚ΠΈΠΏΡ‹ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтСй.

1. Π›ΠΎΠΊΠ°Π»ΡŒΠ½Π°Ρ ΡΠ΅Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… сосСдних зданиях.

LAN (Π›ΠΎΠΊΠ°Π»ΡŒΠ½Π°Ρ ΡΠ΅Ρ‚ΡŒ/Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ сСти) – это ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Π°Ρ ΡΠ΅Ρ‚ΡŒ, которая, Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ нСскольким ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ сСти ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π΅Π΄ΠΈΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ доступа.

БСтСвая ОБ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚:

2. Π’ΠΈΠΏΡ‹ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтСй:

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

Π‘Π΅Ρ‚ΠΈ с Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ сСрвСром

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

Π‘Π΅Ρ€Π²Π΅Ρ€ β€” ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для: хранСния Π΄Π°Π½Π½Ρ‹Ρ… для всСй сСти; ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½Ρ‹Ρ… устройств; Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ управлСния всСй ΡΠ΅Ρ‚ΡŒΡŽ ΠΈ опрСдСлСния ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ сообщСний.

20) Маска подсСти. НахоТдСниС адрСса сСти ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° Π² сСти ΠΏΠΎ IP адрСсу.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

TCP (Transfer Control Protocol)– ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» управлСния ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…

IP (Internet Protocol) – мСТсСтСвой ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρ‹ уровня ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

HTTP (HyperText Transfer Protocol)– ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° гипСртСкста

FTP (File Transfer Protocol) – ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Ρ„Π°ΠΉΠ»ΠΎΠ²

SMTP (Simple Mail Transfer Protocol) – ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° эл. ΠΏΠΎΡ‡Ρ‚Ρ‹

POP3 (Post Office Protocol Version 3) – ΠΏΡ€ΠΈΡ‘ΠΌ эл. ΠΏΠΎΡ‡Ρ‚Ρ‹

IMAP (Internet Message Access Protocol) – ΠΏΡ€ΠΈΡ‘ΠΌ эл. ΠŸΠΎΡ‡Ρ‚Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

21) Π”ΠΎΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° ΠΈ сСрвСры Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π½.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

Π”ΠΎΠΌΠ΅Π½Π½ΠΎΠ΅ имя β€” это ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ сочСтаниС символов латинского Π°Π»Ρ„Π°Π²ΠΈΡ‚Π°, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ваш сайт срСди мноТСства Π΄Ρ€ΡƒΠ³ΠΈΡ…. ΠšΡ€ΠΎΠΌΠ΅ Π±ΡƒΠΊΠ², Π² Π΄ΠΎΠΌΠ΅Π½ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ†ΠΈΡ„Ρ€Ρ‹ ΠΎΡ‚ 1 Π΄ΠΎ 9 ΠΈ символы дСфиса Β«-Β», Π½ΠΎ дСфис Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ Π΄ΠΎΠΌΠ΅Π½Π°. Π”Π»ΠΈΠ½Π° Π΄ΠΎΠΌΠ΅Π½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ 2 Π΄ΠΎ 63 символов. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΌΡƒ IP-адрСсу ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² соотвСтствиС символьноС Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ΅ имя вашСго сайта, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ DNS-сСрвСры(ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡŽΡ‰Π°Ρ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π² Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ IP-адрСс ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚).

КаТдоС Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ΅ имя состоит ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… частСй, Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ β€” это Π΄ΠΎΠΌΠ΅Π½Ρ‹ Ρ€Π°Π·Π½Ρ‹Ρ… ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ. Число ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ Π΄ΠΎΠΌΠ΅Π½ΠΎΠ², ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ограничиваСтся двумя-трСмя. Π”Π»ΠΈΠ½Π½ΠΎΠ΅ Π΄ΠΎΠΌΠ΅Π½Π½ΠΎΠ΅ имя ΠΈ большоС число ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ Π΄ΠΎΠΌΠ΅Π½Π° Π½Π΅ΡƒΠ΄ΠΎΠ±Π½Ρ‹ для использования. ΠšΡ€Π°ΠΉΠ½Π΅Π΅ ΠΏΡ€Π°Π²ΠΎΠ΅ ΠΏΠΎΠ»Π΅ называСтся Π”ΠΎΠΌΠ΅Π½ΠΎΠΌ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня, Π΄Π°Π»Π΅Π΅, справа Π½Π°Π»Π΅Π²ΠΎ, ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ ΠΈΠΌΠ΅Π½Π° Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня.

O Π”ΠΎΠΌΠ΅Π½Ρ‹ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня (Π΄ΠΎΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ Π·ΠΎΠ½Π°ΠΌΠΈ).

ВсС Π΄ΠΎΠΌΠ΅Π½Ρ‹ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Π΄Π²Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹:

β€” Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠ»ΠΈ гСографичСскиС Π΄ΠΎΠΌΠ΅Π½Ρ‹, ΠΎΠ½ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ сайта ΠΊ Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ странС ΠΈΠ»ΠΈ гСографичСской Ρ‚Π΅Ρ€Ρ€ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

β€” Π΄ΠΎΠΌΠ΅Π½Ρ‹ ΠΎΠ±Ρ‰Π΅Π³ΠΎ пользования. Они ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ сайта ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ ΠΈΠ»ΠΈ Π²ΠΈΠ΄Ρƒ Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

O Π”ΠΎΠΌΠ΅Π½Ρ‹ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня

Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΈ всС ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΡƒΡ€ΠΎΠ²Π½ΠΈ Π΄ΠΎΠΌΠ΅Π½Π° ΠΈΠΌΠ΅ΡŽΡ‚ Π²Π°ΠΆΠ½ΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ β€” ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ своСго Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π°. Π˜Π½Π°Ρ‡Π΅ говоря, Π² Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π΄ΠΎΠΌΠ΅Π½ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня Π² Π΄ΠΎΠΌΠ΅Π½Π΅ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня. Π”ΠΎΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Ρƒ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΉ-рСгистраторов. ΠŸΡ€Π°Π²ΠΎ владСния Π½Π° Π΄ΠΎΠΌΠ΅Π½ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня выдаСтся ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Π³ΠΎΠ΄, Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π³ΠΎΠ΄ заявку Π½Π°Π΄ΠΎ ΠΏΡ€ΠΎΠ΄Π»Π΅Π²Π°Ρ‚ΡŒ.

O Π”ΠΎΠΌΠ΅Π½Ρ‹ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ уровня

Π”ΠΎΠΌΠ΅Π½Ρ‹ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ уровня Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Ρƒ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΉ, Π²Π»Π°Π΄Π΅ΡŽΡ‰ΠΈΡ… Π΄ΠΎΠΌΠ΅Π½Π°ΠΌΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня. ΠžΠ±Π»Π°Π΄Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠΌΠ΅Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ уровня ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ количСство адрСсов Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ ΠΈ Π΄Π°Π»Π΅Π΅ ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ, услугу рСгистрации Π΄ΠΎΠΌΠ΅Π½Π° Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅Π³ΠΎ уровня ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ провайдСры– поставщики ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ услуг.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

22) Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π·Π°Ρ‰ΠΈΡ‚Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ.

1. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Π°Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ β€” это Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½ΠΎΡΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎΡ‚ Π»ΡŽΠ±Ρ‹Ρ… дСйствий, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°ΠΌ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нанСсён нСдопустимый ΡƒΡ‰Π΅Ρ€Π±.

2. Π—Π°Ρ‰ΠΈΡ‚Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ β€” это ΠΌΠ΅Ρ€Ρ‹, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΏΠΎΡ‚Π΅Ρ€ΡΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π½Π΅ Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Ρ‘ искаТСния ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΎΠΌΠ΅Ρ€Π½ΠΎΠ³ΠΎ доступа ΠΊ Π½Π΅ΠΉ.

Π‘Ρ‚Π°Ρ‚ΡŒΠΈ ΠΊ ΠΏΡ€ΠΎΡ‡Ρ‚Π΅Π½ΠΈΡŽ:

Daphne Koller: Was wir vom Online-Lernen lernen

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Π§Π΅Π»ΠΎΠ²Π΅ΠΊΡƒ Π² ΠΆΠΈΠ·Π½ΠΈ ΠΈ практичСской Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ приходится Ρ€Π΅ΡˆΠ°Ρ‚ΡŒ мноТСство Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡. РСшСниС ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… описываСтся своим Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ, и…

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

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ВранскомпилируСмыС языки: ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄-Π²-ΠΊΠΎΠ΄

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹
Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: Ward Cunningham

Вранспиляция β€” это конвСртация ΠΊΠΎΠ΄Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ языка Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ транспилСра (транскомпилятора) ΠΎΠ΄ΠΈΠ½ язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния ΠΌΠΎΠΆΠ½ΠΎ пСрСнСсти Π½Π° любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ язык программирования ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния.

Если Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ язык, транспилСры ΠΏΠΎΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π±Γ³Π»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°, Π½Π΅ пСрСписывая вСсь ΠΊΠΎΠ΄ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. НапримСр, ΠΏΡ€ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈΠ· Python 2 Π² Python 3, ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ пСрСносС софта ΠΎΡ‚ старого API Π² Π½ΠΎΠ²Ρ‹ΠΉ.

Π’Π΅Ρ€ΠΌΠΈΠ½Ρ‹ «транспилСр» ΠΈ «транскомпилятор» часто взаимозамСняСмы, Π½ΠΎ всС ΠΆΠ΅ считаСтся, Ρ‡Ρ‚ΠΎ различия Π΅ΡΡ‚ΡŒ. НапримСр, для прСобразования ΠΊΠΎΠ΄Π° C++ Π² C потрСбуСтся транспилСр, Π° для ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ Python-Ruby β€” транскомпилятор. Babel для JavaScript β€” это транспилСр, Π° TypeScript β€” транскомпилирумый язык.

Иногда послС ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ транспилСром для ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠ΄Π° трСбуСтся ручная настройка, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π² транскомпилируСмых языках ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. БСгодня ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Ρ‚Π΅Ρ… ΠΈ ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ…, Π½ΠΎ Π³Π»Π°Π²Π½ΠΎΠ΅ β€” расскаТСм ΠΎ популярных транс-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² повсСднСвной Ρ€Π°Π±ΠΎΡ‚Π΅.

ВранспилированиС Π²ΠΎ Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄Π΅

ΠšΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΡ β€” ваТная Ρ‡Π°ΡΡ‚ΡŒ Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ: ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΠΈΡ‡ΠΈ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ, Π±Ρ‹Π»ΠΈ созданы языки с ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ возмоТностями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Ρ€Π°Π½ΡΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² совмСстимыС с Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ языки.

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

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

Sass, Less ΠΈ Stylus ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ созданиС CSS-ΠΊΠΎΠ΄Π°. Π’Π°ΠΊ Sass ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Π³ΠΈΠ±ΠΊΠΈΠΌ синтаксисом, Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ (@if, each), ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΎΠΉ (ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ числа, строки ΠΈ Ρ†Π²Π΅Ρ‚Π°), Π·Π° счСт Ρ‡Π΅Π³ΠΎ всС богатство ΠΊΠΎΠ΄Π° транспилируСтся ruby-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ Π² ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ CSS.

Less (Leaner Style Sheets) выглядит Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ CSS, Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ ΡƒΠ΄ΠΎΠ±Π½Ρ‹Π΅ дополнСния: ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, миксины, арифмСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (ΠΊΠ°ΠΊ Ρƒ Sass) ΠΈ Ρ‚.Π΄.

Stylus написан Π½Π° Node.js ΠΈ отличаСтся ΠΎΡ‚ Sass ΠΈ Less Π±ΠΎΠ»Π΅Π΅ чистым синтаксисом. Но фактичСски эти Ρ‚Ρ€ΠΈ языка ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π°, поэтому Π½Π΅ ΠΎΡˆΠΈΠ±Π΅Ρ‚Π΅ΡΡŒ, Ссли Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ любой ΠΈΠ· Π½ΠΈΡ….

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

Π‘ΠΊΠ°ΠΆΠ΅ΠΌ Β«Hello, World!Β» Π½Π° CoffeeScript β€” Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‰Π΅:

CoffeeScript Π΄ΠΎΠ»Π³ΠΎΠ΅ врСмя оставался самым популярным ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ для JavaScript. Π­Ρ‚ΠΎ Π½Π΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ: совмСщая Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ (докумСнтация умСщаСтся Π½Π° ΠΎΠ΄Π½ΠΎΠΉ страницС), Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΠΈΡ‡ΠΈ (скобки, отступы ΠΈ Ρ‚.Π΄.) ΠΈ чистый, Π²Π΄ΠΎΡ…Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΉ Ruby, синтаксис, этот язык Π΄Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΌΠ½ΠΎΠ³ΠΎ стСпСнСй свободы ΠΈ позволяСт ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ JS Π±ΠΎΠ»Π΅Π΅ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ.

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

TypeScript β€” ΠΊΠΎΠ½ΠΊΡƒΡ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎΠ΄ JavaScript, скриптовый язык с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ статичной Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ. ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΠΎ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ свойства ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ классов, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ JS, избавляя ΠΎΡ‚ нСобходимости ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ всСх Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², входящих Π² ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.

БущСствуСт ΠΌΠ½Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ JavaScript β€” это язык с Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ изъянами. Π˜Π½Π°Ρ‡Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ транс-языков, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π°Π΄ исправлСниСм Π΅Π³ΠΎ нСдостатков. Помимо Π²Ρ‹ΡˆΠ΅Π½Π°Π·Π²Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ Π³ΠΈΠ±ΠΊΠΈΠΉ язык Π²Π΅Π±-программирования Dart, компилятор ΠΈΠ· JavaScript Π² JavaScript Closure Compiler ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π° страницС «Бписок языков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² JSΒ».

ΠšΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ Π² Π‘

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

Π’ 2006 Π³. появился ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Vala, состоящий ΠΈΠ· Π΄Π²ΡƒΡ… языков: Vala ΠΈ Genie, Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… самый ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π½Π° Π‘, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, компилируСтся Π² исполняСмый Ρ„Π°ΠΉΠ» ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ.

Бинтаксис Vala ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆ Π½Π° C#, Π½ΠΎ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ для Π»ΡƒΡ‡ΡˆΠ΅ΠΉ совмСстимости с систСмами GObject, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Genie ΠΈΠΌΠ΅Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Ρ‰Π΅Π³ΠΎ с Python. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ язык сСйчас Π±ΠΎΠ»Π΅Π΅ распространСн, Ρ‡Π΅ΠΌ Genie, поэтому рассмотрим Π΅Π³ΠΎ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² Ρ‚Π°ΠΊΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅? МногиС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ прилоТСния ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для GNOME Π½Π° высокоуровнСвых языках, Π½ΠΎ ΠΏΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ ΠΈΠ»ΠΈ Π½Π΅ Ρ…ΠΎΡ‚Π΅Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ C# ΠΈΠ»ΠΈ Java. Vala позволяСт быстро ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ слоТный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, поддСрТивая стандартныС C API ΠΈ ABI ΠΏΡ€ΠΈ Π½ΠΈΠ·ΠΊΠΈΡ… трСбованиях ΠΊ памяти.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ C# ΠΈ Java нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ GObject ΠΈΠ· C ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… языков, ΠΈ нСльзя ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΡ… Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ GNOME. Valac, транскомпилятор Vala, создаСт Ρ„Π°ΠΉΠ»Ρ‹ C ΠΈΠ· исходных Ρ„Π°ΠΉΠ»ΠΎΠ² Vala Ρ‚Π°ΠΊ, словно Π²Ρ‹ написали свою Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ нСпосрСдствСнно Π½Π° C. ИспользованиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Vala ΠΈΠ· прилоТСния C Π½Π΅ отличаСтся ΠΎΡ‚ использования любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π° основС GObject.

Π§ΠΈΡ‚Π°Π΅ΠΌ ΠΈ записываСм Ρ„Π°ΠΉΠ» Π½Π° Vala:

Π‘ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΊΠΎΠ΄Π° Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ Π½Π° сайтС.

ΠžΡ‚ Flash Π΄ΠΎ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎΡΡ‚ΠΈ

ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° пСрСводящая языки программирования Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Π΅ ΠΊΠΎΠ΄Ρ‹

Haxe создавался ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ с Vala, Π½ΠΎ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для транспилирования Π²ΠΎ Flash, JavaScript ΠΈ Neko. Π‘ Ρ‚Π°ΠΊΠΈΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ скиллов язык Π±Ρ‹Π» ΠΎΠ±Ρ€Π΅Ρ‡Π΅Π½ Π½Π° Π²Ρ‹ΠΌΠΈΡ€Π°Π½ΠΈΠ΅, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ΠΆΠΈΠ», Π½ΠΎ ΠΈ Π·Π°Π²ΠΎΠ΅Π²Π°Π» Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ.

Π‘Π΅ΠΊΡ€Π΅Ρ‚ успСха Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎΡΡ‚ΠΈ. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Haxe разросся Π΄ΠΎ ΠΌΠΎΡ‰Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° инструмСнтов, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… Ρ‚Ρ€Π°Π½ΡΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ Π½Π° Ρ€Π°Π·Π½Ρ‹Π΅ языки ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ JavaScript, C++, C#, Java, JVM, Python, Lua, PHP ΠΈ Flash.

Haxe β€” соврСмСнный, высокоуровнСвый, строго Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык программирования. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя ΠΎΠ½ довольно простой ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½Ρ‹ΠΉ, благодаря Ρ‡Π΅ΠΌΡƒ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΡΠΏΠΎΡΠΎΠ±ΠΈΡ‚ΡŒ ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ Ρ†Π΅Π»Π΅Π²Ρ‹ΠΌ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌ. Π•Π³ΠΎ синтаксис Π² основном соотвСтствуСт стандарту ECMAScript, Π½ΠΎ ΠΏΡ€ΠΈ нСобходимости измСняСтся.

Β«Hello WorldΒ» Π½Π° Haxe:

Π’ JavaScript эти строчки ΠΊΠΎΠ΄Π° Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π‘Γ³Π»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° Haxe ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π° Π² классы ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π³ΠΎ ООП-языком, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ Java, ActionScript 3 ΠΈ C#. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Haxe разрабатывался с ΡƒΠΏΠΎΡ€ΠΎΠΌ Π½Π° ΠΏΡ€Π°Π³ΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ синтаксиса.

И ΠΎ транспилСрах

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

БущСствуСт ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство Π΄Ρ€ΡƒΠ³ΠΈΡ… языков, поэтому для своСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π²Ρ‹ всСгда ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ самый подходящий. Но ситуации, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° конвСртация ΠΊΠΎΠ΄-Π²-ΠΊΠΎΠ΄ β€” Π½Π΅ такая ΡƒΠΆ Ρ€Π΅Π΄ΠΊΠΎΡΡ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ транспиляции C++ Π² C, PHP Π² C++ ΠΈ Β«Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ Π² JavaScriptΒ» ΡΠ»ΡƒΡ‡Π°ΡŽΡ‚ΡΡ довольно часто.

Β«ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΒ» с ΠΎΠ΄Π½ΠΎΠ³ΠΎ языка Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ β€” Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ идСя, Π½ΠΎ лишь Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΌΠΎΠΆΠ½ΠΎ Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±Π΅Π· рисков. Π’Π°ΠΊ, ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ с COBOL Π½Π° Java давался тяТСло, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π² Java Π΄ΠΎ вСрсии JDK 1.4 Π½Π΅ Π±Ρ‹Π»ΠΎ memory-mapped files. А упомянутыС Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ C2Rust ΠΈ Corrode Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ Π΄Π°ΡŽΡ‚ Π½Π΅ ΠΈΠ΄ΠΈΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Π½Ρ‹ΠΉ ΠΊΠ°ΠΊ unsafe ΠΈ Π½Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹ΠΉ «сырыми» указатСлями.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *