Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠŸΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΈ распрСдСлСнноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° Π‘++Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 4

Автор Π₯ьюз ΠšΠ°ΠΌΠ΅Ρ€ΠΎΠ½

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΈΠΌΠ΅Π½Π½ΠΎ Π‘++

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π‘++-компиляторы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ практичСски Π½Π° всСх извСстных ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… срСдах. ΠΠ°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Π˜Π½ΡΡ‚ΠΈΡ‚ΡƒΡ‚ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ БША (American National Standards Institute β€” ANSI) ΠΈ ΠœΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Π°Ρ организация ΠΏΠΎ стандартизации (International Organization for Standardization β€” ISO) ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈ стандарты для языка Π‘++ ΠΈ Π΅Π³ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ устойчиво Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅, Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ (open source) (Ρ‚.Π΅. Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ вмСстС с ΠΈΡ… исходными тСкстами, Π½Π΅ связанныС ограничСниями Π½Π° Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΡƒΡŽ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΈ распространСниС с сохранСниСм ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠΌ авторствС ΠΈ внСсСнных измСнСниях), Π° Ρ‚Π°ΠΊΠΆΠ΅ коммСрчСскиС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ этого языка. Π―Π·Ρ‹ΠΊ Π‘++ Π±Ρ‹Π» быстро освоСн Π½Π°ΡƒΡ‡Π½Ρ‹ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Π½ΠΈΠΊΠ°ΠΌΠΈ, ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠ°ΠΌΠΈ ΠΈ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ всСго ΠΌΠΈΡ€Π°. Π•Π³ΠΎ использовали для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ самых Ρ€Π°Π·Π½Ρ‹Ρ… (ΠΏΠΎ ΠΎΠ±ΡŠΠ΅ΠΌΡƒ ΠΈ Ρ„ΠΎΡ€ΠΌΠ΅) ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ: для написания ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€ΠΎΠ² устройств, Ρ‚Π°ΠΊ ΠΈ ΠΊΡ€ΡƒΠΏΠ½ΠΎΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠΌΡ‹ΡˆΠ»Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π―Π·Ρ‹ΠΊ Π‘++ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ°Ρ€Π°Π΄ΠΈΠ³ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ срСдства ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ распрСдСлСнного программирования Π»Π΅Π³ΠΊΠΎ доступными.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΈ распрСдСлСнного программирования

Для ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования Π½Π° основС Π‘++ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠ°ΠΊ MPICH (рСализация Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ MPI), PVM ΠΈ Pthreads (POSIX [1] Threads). Для распрСдСлСнного программирования примСняСтся Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° MICO (Π‘++-рСализация стандарта CORBA). Бтандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π‘++ (Π‘++ Standard Library) Π² сочСтании с CORBA ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Pthreads обСспСчиваСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ Π°Π³Π΅Π½Ρ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования ΠΈ программирования Π½Π° основС ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ «классной доски», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² этой ΠΊΠ½ΠΈΠ³Π΅.

Новый Π΅Π΄ΠΈΠ½Ρ‹ΠΉ стандарт спСцификаций UNIX

Новый Π΅Π΄ΠΈΠ½Ρ‹ΠΉ стандарт спСцификаций UNIX (Single UNIX Specifications Standard) вСрсии 3 β€” совмСстный Ρ‚Ρ€ΡƒΠ΄ Π˜Π½ΡΡ‚ΠΈΡ‚ΡƒΡ‚Π° ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ² ΠΏΠΎ элСктротСхникС ΠΈ элСктроникС (Institute of Electrical and Electronics Engineers β€” IEEE [2]) ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Open Group β€” Π±Ρ‹Π» Π²Ρ‹ΠΏΡƒΡ‰Π΅Π½ Π² Π΄Π΅ΠΊΠ°Π±Ρ€Π΅ 2001 Π³ΠΎΠ΄Π°. Новый Π΅Π΄ΠΈΠ½Ρ‹ΠΉ стандарт спСцификаций UNIX Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ стандарты POSIX ΠΈ способствуСт ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡŽ уровня пСрСносимости ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ². Π•Π³ΠΎ основноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ β€” Π΄Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π΅Π΄ΠΈΠ½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ API-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (Application Programming Interface β€” интСрфСйс ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования, Ρ‚.Π΅. Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, прСдоставляСмый для использования Π² ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ…), ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΊΠ°ΠΆΠ΄ΠΎΠΉ UNIX-систСмой. Π­Ρ‚ΠΎΡ‚ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ обСспСчиваСт Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ Β«ΠΏΡƒΡ‚Π΅Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΒ» ΠΏΠΎ стандартам для программистов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°Ρ‡Π½Ρ‹ΠΌΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹ΠΌΠΈ прилоТСниями. Π’ этой ΠΊΠ½ΠΈΠ³Π΅, рассматривая Ρ‚Π΅ΠΌΡ‹ создания процСссов, управлСния процСссами, использования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Pthreads, Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ posix_spawn(), POSIX-сСмафоров ΠΈ FIFO-ΠΎΡ‡Π΅Ρ€Π΅Π΄Π΅ΠΉ f irst- i n, f irst- o utβ€” Β«ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ поступил, ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ обслуТСн»), ΠΌΡ‹ опираСмся ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π° Π½ΠΎΠ²Ρ‹ΠΉ Π΅Π΄ΠΈΠ½Ρ‹ΠΉ стандарт спСцификаций UNIX. Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π‘ прСдставлСны Π²Ρ‹Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΈΠ· этого стандарта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Π² качСствС справочника для ΠΈΠ·Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π½Π°ΠΌΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°.

Для ΠΊΠΎΠ³ΠΎ написана эта ΠΊΠ½ΠΈΠ³Π°

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

Π‘Ρ€Π΅Π΄Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, прСдставлСнныС Π² этой ΠΊΠ½ΠΈΠ³Π΅, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ ΠΈ протСстированы Π² Linux- ΠΈ UNIX-срСдах, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ β€” ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Solaris 8, AIX ΠΈ Linux (SuSE, Red Hat). MPI- ΠΈ PVM-ΠΊΠΎΠ΄ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ ΠΈ протСстирован Π½Π° 32-ΡƒΠ·Π»ΠΎΠ²ΠΎΠΌ Linux-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ кластСрС. МногиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ протСстированы Π½Π° сСрвСрах сСмСйства Sun Enterprise 450. ΠœΡ‹ использовали Sun Π‘++ Workshop (Π‘++-компилятор ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Portland Group) ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎ свободному Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния GNU Π‘ ++ . Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ Π² UNIX-, Ρ‚Π°ΠΊ ΠΈ Linux-срСдах. Если ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для выполнСния Π² ΠΎΠ±Π΅ΠΈΡ… Π½Π°Π·Π²Π°Π½Π½Ρ‹Ρ… срСдах, этот Ρ„Π°ΠΊΡ‚ отмСчаСтся Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Β«ΠŸΡ€ΠΎΡ„ΠΈΠ»ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹Β», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΡΠ½Π°Π±ΠΆΠ°ΡŽΡ‚ΡΡ всС Π·Π°ΠΊΠΎΠ½Ρ‡Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ этой ΠΊΠ½ΠΈΠ³ΠΈ.

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ UML

Для построСния ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌ Π² этой ΠΊΠ½ΠΈΠ³Π΅ примСняСтся стандарт UML (Unified Modeling Language-ΡƒΠ½ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык модСлирования). Π’ частности, для описания Π²Π°ΠΆΠ½Ρ‹Ρ… Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° ΠΈ мСТклассовых Π²Π·Π°ΠΈΠΌΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ дСйствий, развСртывания (внСдрСния), классов ΠΈ состояний. И хотя Π·Π½Π°Π½ΠΈΠ΅ языка UML Π½Π΅ являСтся Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ условиСм, всС ΠΆΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ освСдомлСнности Π² этом вопросС окаТСтся вСсьма ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ. ОписаниС ΠΈ Ρ€Π°Π·ΡŠΡΡΠ½Π΅Π½ΠΈΠ΅ символов ΠΈ самого языка UML ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΎ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ А .

ΠŸΡ€ΠΎΡ„ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

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

ΠŸΠ°Ρ€Π°Π³Ρ€Π°Ρ„Ρ‹

ΠœΡ‹ посчитали лишним Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ сугубо тСорСтичСскиС замСчания Π² Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ½ΠΈΠ³Ρƒ-Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ эта. Но Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях Π±Π΅Π· тСорСтичСских ΠΈΠ»ΠΈ матСматичСских Π²Ρ‹ΠΊΠ»Π°Π΄ΠΎΠΊ Π±Ρ‹Π»ΠΎ Π½Π΅ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ, ΠΈ Ρ‚ΠΎΠ³Π΄Π° ΠΌΡ‹ сопровоТдали Ρ‚Π°ΠΊΠΈΠ΅ Π²Ρ‹ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌΠΈ Ρ€Π°Π·ΡŠΡΡΠ½Π΅Π½ΠΈΡΠΌΠΈ, ΠΎΡ„ΠΎΡ€ΠΌΠ»Π΅Π½Π½Ρ‹ΠΌΠΈ Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β§ 6.1).

ВСстированиС ΠΊΠΎΠ΄Π° ΠΈ Π΅Π³ΠΎ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ

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

Π–Π΄Π΅ΠΌ Π²Π°ΡˆΠΈΡ… ΠΎΡ‚Π·Ρ‹Π²ΠΎΠ²!

Π’Ρ‹, Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ этой ΠΊΠ½ΠΈΠ³ΠΈ, ΠΈ Π΅ΡΡ‚ΡŒ Π³Π»Π°Π²Π½Ρ‹ΠΉ Π΅Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΠΊ ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ‚ΠΎΡ€. ΠœΡ‹ Ρ†Π΅Π½ΠΈΠΌ вашС ΠΌΠ½Π΅Π½ΠΈΠ΅ ΠΈ Ρ…ΠΎΡ‚ΠΈΠΌ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ сдСлано Π½Π°ΠΌΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈ Ρ‡Ρ‚ΠΎ Π΅Ρ‰Π΅ Π²Ρ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΈΠ·Π΄Π°Π½Π½Ρ‹ΠΌ Π½Π°ΠΌΠΈ. Нам интСрСсно ΡƒΡΠ»Ρ‹ΡˆΠ°Ρ‚ΡŒ ΠΈ Π»ΡŽΠ±Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ замСчания, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΌ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹ Π²Ρ‹ΡΠΊΠ°Π·Π°Ρ‚ΡŒ Π² наш адрСс.

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