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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«ΠžΡΠ½ΠΎΠ²Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 58

Автор Π‘Π΅Ρ€Ρ‚Ρ€Π°Π½ ΠœΠ΅ΠΉΠ΅Ρ€

[x]. (T2) Если x это Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚, Ρ‚ΠΎ x - ΠΏΠΎΠ»Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° OBJ-ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, присоСдинСно ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ - ΠΎΠ½ ΠΈ Π΅ΡΡ‚ΡŒ t.

[x]. (T3) Если x - функция, Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ Π΅Π΅ Π²Ρ‹Π·ΠΎΠ² (Π½Π΅ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ), Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈ Π΄Π°Π΅Ρ‚ t.

[x]. (T4) Если x - локальная ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ r, Ρ‚ΠΎ ΠΊ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρƒ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ инструкции вычислят Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ x, присоСдинСнноС ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈ являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ t.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ всС Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΎΡ‚Π²Π΅Ρ‚Π° ΠΎΠΏΡΡ‚ΡŒ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, Ссли извСстно, Ρ‡Π΅ΠΌ являСтся Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ экзСмпляр OBJ. ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ OBJ это Ρ†Π΅Π»ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π°! Битуация ΠΊΠ°ΠΊ Π² пСсСнкС ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Ρƒ ΠΏΠΎΠΏΠ° Π±Ρ‹Π»Π° собака (Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π΅: ΠΊΠΎΡ‚Π΅Π½ΠΎΠΊ съСл ΠΊΠΎΠ·Π»Π΅Π½ΠΊΠ°, ΠΊΠΎΡ‚Π΅Π½ΠΊΠ° укусил Ρ‰Π΅Π½ΠΎΠΊ, Ρ‰Π΅Π½ΠΊΠ° ΡƒΠ΄Π°Ρ€ΠΈΠ»Π° ΠΏΠ°Π»ΠΊΠ° ...) - бСсконСчная Ρ†Π΅ΠΏΡŒ.

Для привСдСния ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² ΠΊ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ происходит Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° всС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ начинаСтся - Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π‘ΠΎΠ»ΡŒΡˆΠΎΠ³ΠΎ Π’Π·Ρ€Ρ‹Π²Π°. Π˜Ρ‚Π°ΠΊ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅:

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅: Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ систСмы

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ОО-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΉ систСмы состоит ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π΄Π²ΡƒΡ… шагов:

[x]. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΡ€Π½Π΅Π²Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ выполнСния.

[x]. ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ΠΎΠΉ создания, ΠΊ Π΄Π°Π½Π½ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ.

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

Зная, Π³Π΄Π΅ всС Π½Π°Ρ‡Π°Π»ΠΎΡΡŒ, нСслоТно ΠΏΡ€ΠΎΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ ΡΡƒΠ΄ΡŒΠ±Ρƒ Current Π² процСссС этой Ρ†Π΅ΠΏΠ½ΠΎΠΉ Ρ€Π΅Π°ΠΊΡ†ΠΈΠΈ. ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, созданным Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π‘ΠΎΠ»ΡŒΡˆΠΎΠ³ΠΎ Π’Π·Ρ€Ρ‹Π²Π°, являСтся ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Рассмотрим Π΄Π°Π»Π΅Π΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ этап выполнСния систСмы. ΠŸΡƒΡΡ‚ΡŒ r-послСдняя вызванная ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ‹Π·ΠΎΠ²Π° r Π±Ρ‹Π» ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ OBJ. Π’ΠΎΠ³Π΄Π° Π²ΠΎ врСмя выполнСния r ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Current опрСдСляСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

[x]. (C1) Если Π² r выполняСтся инструкция, Π½Π΅ ΡΠ²Π»ΡΡŽΡ‰Π°ΡΡΡ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, присваиваниС), Ρ‚ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ остаСтся ΠΏΡ€Π΅ΠΆΠ½ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

[x]. (C2) НСквалифицированный Π²Ρ‹Π·ΠΎΠ² Ρ‚Π°ΠΊΠΆΠ΅ оставляСт Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ.

[x]. (C3) Запуск ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° x.f ... Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, присоСдинСнный ΠΊ x. Зная ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ OBJ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ x, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ сформулированныС Ρ€Π°Π½Π΅Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° T1-T4. ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Π²Ρ‹Π·ΠΎΠ²Π° Ρ€ΠΎΠ»ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ возвращаСтся ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ OBJ.

Π’ случаях C2 ΠΈ C3 Π²Ρ‹Π·ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ Π½Π΅ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹, ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ рСкурсивно.

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

БистСмы

Π­Ρ‚Π° лСкция Π°ΠΊΡ†Π΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° классах - элСмСнтах конструкции ОО-ПО. Для получСния исполняСмого ΠΊΠΎΠ΄Π° классы Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°Ρ‚ΡŒ Π² систСму.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ систСмы Π²Ρ‹Ρ‚Π΅ΠΊΠ°Π΅Ρ‚ ΠΈΠ· ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ обсуТдСния. Для построСния систСмы Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ Ρ‚Ρ€ΠΈ Π²Π΅Ρ‰ΠΈ:

[x]. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ классов CS, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡƒΡŽ мноТСством классов (class set) систСмы.

[x]. Π£ΠΊΠ°Π·Π°Ρ‚ΡŒ класс ΠΈΠ· CS, ΡΠ²Π»ΡΡŽΡ‰ΠΈΠΉΡΡ ΠΊΠΎΡ€Π½Π΅Π²Ρ‹ΠΌ (root class).

[x]. Π£ΠΊΠ°Π·Π°Ρ‚ΡŒ Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ классС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ, ΠΈΠ³Ρ€Π°ΡŽΡ‰ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ создания (root creation procedure) .

Для получСния систСмы эти элСмСнты Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡ‚ΡŒ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΡŽ цСлостности. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ класс, прямо ΠΈΠ»ΠΈ косвСнно Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌΡƒ, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒΡŽ мноТСства CS. Π­Ρ‚ΠΎ условиС замыкания систСмы (system closure) .

ΠŸΠΎΠ½ΡΡ‚ΠΈΠ΅ нСобходимости слСдуСт ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ это ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ дСлаСтся ΠΏΡ€ΠΈ построСнии замыкания:

[x]. Класс D нСпосрСдствСнно Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ классу C , Ссли тСкст C ссылаСтся Π½Π° D. Π—Π΄Π΅ΡΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Π΄Π²Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°: C ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΠΈΠ±ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ D, Π»ΠΈΠ±ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠΌ D.

[x]. Класс E Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ классу C, Π»ΠΈΠ±ΠΎ, ΠΊΠΎΠ³Π΄Π° C совпадаСт с E, Π»ΠΈΠ±ΠΎ сущСствуСт класс D нСпосрСдствСнно Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ классу Π‘, ΠΈ классу D Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ (Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, рСкурсивно) класс E. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, сущСствуСт Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ° классов, связанных ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ΠΌ нСпосрСдствСнной нСобходимости, ΠΈ Π½Π°Ρ‡Π°Π»ΠΎΠΌ этой Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ являСтся класс C, Π° ΠΊΠΎΠ½Ρ†ΠΎΠΌ - класс E.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π°ΠΌΠΊΠ½ΡƒΡ‚ΠΎΠΉ систСмы.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅: замкнутая систСма

БистСма являСтся Π·Π°ΠΌΠΊΠ½ΡƒΡ‚ΠΎΠΉ, Ссли ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли мноТСство Π΅Π΅ классов содСрТит всС классы, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌΡƒ классу.

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

Π­Ρ‚ΠΎΡ‚ процСсс называСтся ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΎΠΉ ΠΈΠ»ΠΈ сборкой (assembly) систСмы ΠΈ являСтся Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΠΌ этапом Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° main отсутствуСт

НСоднократно ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠΈΠ²Π°Π»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ систСмы, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ОО-ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ понятия основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. НС впускаСм Π»ΠΈ ΠΌΡ‹ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с Ρ‡Π΅Ρ€Π½ΠΎΠ³ΠΎ Ρ…ΠΎΠ΄Π°, вводя ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ класса ΠΈ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹?

НС совсСм. Π’ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠΌ понятии основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Ρ‹ Π΄Π²Π΅ Π½Π΅ связанныС ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ:

[x]. ΠœΠ΅ΡΡ‚ΠΎ, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ начинаСтся Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.

[x]. Π’Π΅Ρ€ΡˆΠΈΠ½Π° ΠΈΠ»ΠΈ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ систСмы.

ΠŸΠ΅Ρ€Π²ΠΎΠ΅ условиС, бСзусловно, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ любой систСмы Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с Π²ΠΏΠΎΠ»Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ. Π’ ОО-систСмах эта позиция опрСдСляСтся ΠΊΠΎΡ€Π½Π΅Π²Ρ‹ΠΌ классом ΠΈ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ΠΎΠΉ. Π’ случаС ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½Ρ‹Ρ…, Π° Π½Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… вычислСний ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ нСсколько Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ - ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΉ для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ нСзависимой Π½ΠΈΡ‚ΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ° (Thread) вычислСний.

ΠšΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΡ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ ΡƒΠΆΠ΅ достаточно ΠΎΠ±ΡΡƒΠΆΠ΄Π°Π»Π°ΡΡŒ Ρ€Π°Π½Π΅Π΅ ΠΈ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π².

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

Π Π°Π½Π΅Π΅ ΡƒΠΆΠ΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π½Π° Ρ€Π°Π½Π½Π΅ΠΌ этапС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ систСмы ΠΎΡ‚ вопроса, - "Π³Π΄Π΅ основная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°?". Если ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ систСмы Π½Π° основС ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π° этот вопрос, Ρ‚ΠΎ нСльзя ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС ΠΊΠΎΠ΄Π°. Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ - Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ ΠΊ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌΡƒ использованию классы, Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ АВД. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ систСмы Π² этом случаС ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой пСрСстраиваСмыС ансамбли Ρ‚Π°ΠΊΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚.(О ΠΊΡ€ΠΈΡ‚ΠΈΠΊΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ Π΄Π΅ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ см. "Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ дСкомпозиция", лСкция 5)

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

Компоновка систСмы

Как практичСски Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ процСсс ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ систСмы?