ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ

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

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ интСрфСйс

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ β€” это Β«ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΒ» ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой, тСхничСским устройством ΠΈΠ»ΠΈ способ взаимодСйствия ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ собой. Π§Π΅Π»ΠΎΠ²Π΅ΠΊ Π΄Π°Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ интСрфСйса, устройство ΠΈΡ… Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ, для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ½ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½:

Π²Π²ΠΎΠ΄ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (Π·Π²ΡƒΠΊ, ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅);

ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ прилоТСниями;

ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ устройствами;

взаимодСйствиС с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой.

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ взаимодСйствиС Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ, Π½ΠΎ ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€-устройство. НапримСр, ΠΊΠΎΠ³Π΄Π° устройства ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ ΠΊ систСмному Π±Π»ΠΎΠΊΡƒ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, ΠΊΠ°ΠΊ способ взаимодСйствия ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ€Π°Π·ΡŠΠ΅ΠΌ.

Π’ΠΈΠ΄Ρ‹ интСрфСйсов

Одни Π²ΠΈΠ΄Ρ‹ взаимодСйствия ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ большС контроля Π½Π°Π΄ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ ΠΈΠ»ΠΈ смартфоном, Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π½Π°Π²Ρ‹ΠΊΠΎΠ². Π”Ρ€ΡƒΠ³ΠΈΠ΅ β€” Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΡ„ΠΎΡ€Ρ‚Π½Ρ‹Π΅, Π½ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ мСньшС возмоТностСй. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π΅ΡΡ‚ΡŒ свои особСнности.

Командная строка

Π§Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ максимальноС количСство ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ β€” это прямой способ общСния с ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°Π±Ρ€Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Π½ΡƒΠΆΠ½ΠΎ ввСсти тСкст Π½Π° языкС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Enter, ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π½Π°Ρ‡Π½Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ.

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

ГрафичСский ΠΈ тСкстовый

Π“Ρ€Π°Ρ„ΠΈΠΊΠ° ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ взаимодСйствиС с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ, с Π½Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π»Π΅Π³Ρ‡Π΅ ΠΈ ΠΊΠΎΠΌΡ„ΠΎΡ€Ρ‚Π½Π΅Π΅, Ρ‡Π΅ΠΌ с тСкстом. Π’ Ρ€ΠΎΠ»ΠΈ графичСского интСрфСйса Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Ρ‚Π°ΠΊΠΈΠ΅ элСмСнты:

Π΄Ρ€ΡƒΠ³ΠΈΠ΅ графичСскиС элСмСнты.

НапримСр, ΠΏΡ€ΠΈ взаимодСйствии с Windows ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΈΠΊΠΎΠ½ΠΊΠΈ ΠΈ ΠΎΠΊΠ½Π°, для Π²Π²ΠΎΠ΄Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ ΠΌΡ‹ΡˆΡŒ. На смартфонС устройством Π²Π²ΠΎΠ΄Π° слуТит сСнсорный дисплСй.

ВСкстовый интСрфСйс Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ изобраТСния: ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΎΡ‚Π΄Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ тСкста ΠΈ информация прСдоставляСтся Π² тСкстовом Π²ΠΈΠ΄Π΅.

ЖСстовый, голосовой, Ρ‚Π°ΠΊΡ‚ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΈ Π½Π΅ΠΉΡ€ΠΎΠ½Π½Ρ‹ΠΉ

ЖСстовоС взаимодСйствиС позволяСт ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ двиТСниями ΠΏΠ°Π»ΡŒΡ†Π΅Π². Оно примСняСтся ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с сСнсорным экраном смартфона. НапримСр, ТСст Β«Π²Π²Π΅Ρ€Ρ…Β» заставляСт ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΎΠΊΠ½ΠΎ.

Голосовой интСрфСйс β€” это ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ голосом. Π“Π°Π΄ΠΆΠ΅Ρ‚ распознаСт ΠΈ выполняСт Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Π’Π°ΠΊΡ‚ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ взаимодСйствиС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ осязания: вибрация ΠΈΠ»ΠΈ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊ силС наТатия.

НСйронный интСрфСйс ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ прямо ΠΈΠ· ΠΌΠΎΠ·Π³Π° Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, для этого Π² ΠΌΠΎΠ·Π³ Π²ΠΆΠΈΠ²Π»ΡΡŽΡ‚ элСктроды. Π•Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ Π² ΠΌΠ΅Π΄ΠΈΡ†ΠΈΠ½Π΅: Ρ‚Π°ΠΊ ΠΏΠ°Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ с ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰ΠΈΠΌ ΠΌΠΈΡ€ΠΎΠΌ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ, Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΉ, Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ

ВзаимодСйствиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΌΠ΅ΠΆΠ΄Ρƒ собой обСспСчиваСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π°ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ запросы Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹. НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ постоянно ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠΎΠ³ΠΎΠ΄Ρƒ Π² Π²ΠΈΠ΄ΠΆΠ΅Ρ‚Π΅ ΠΈΠ»ΠΈ Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅, ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° постоянно отправляСт запрос Π΄Ρ€ΡƒΠ³ΠΎΠΉ, Π° Ρ‚Π° β€” прСдоставляСт свСТиС Π΄Π°Π½Π½Ρ‹Π΅.

Аппаратный ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ связи ΠΌΠ΅ΠΆΠ΄Ρƒ физичСскими устройствами Ρ‡Π΅Ρ€Π΅Π· Ρ€Π°Π·ΡŠΠ΅ΠΌΡ‹ ΠΈ слоты. А ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ считываСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ с ТСсткого диска β€” это совмСстная Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ физичСского устройства, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎ-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ интСрфСйс.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс

ВсС, с Ρ‡Π΅ΠΌ взаимодСйствуСт ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, ΠΊΠΎΠ³Π΄Π° Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π° сайт ΠΈΠ»ΠΈ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, всС, Ρ‡Ρ‚ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ Π²ΠΈΠ΄ΠΈΡ‚ Π½Π° экранС β€” это ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс.

Π’Π΅Π±, ΠΈΠ³Ρ€ΠΎΠ²ΠΎΠΉ сайт

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

Π˜Π³Ρ€ΠΎΠ²ΠΎΠΉ β€” это Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с ΠΈΠ³Ρ€ΠΎΠΉ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ, Π² ΠΊΠ°ΠΊΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅ прСдставлСна игровая информация ΠΈ ΠΊΠ°ΠΊ ΠΈΠ³Ρ€Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° дСйствия.

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ

Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΡ‚ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ с Π³Π°Π΄ΠΆΠ΅Ρ‚Π°ΠΌΠΈ. Он Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя прикосновСния ΠΊ сСнсорному экрану, дСйствия с ΠΌΡ‹ΡˆΠΊΠΎΠΉ ΠΈΠ»ΠΈ дТойстиком.

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Π² Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°Ρ…

На смартфонах ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ сСнсорный экран, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ ТСстовой ΠΈ Ρ‚Π°ΠΊΡ‚ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ интСрфСйсы. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ прикасаСтся ΠΊ элСмСнтам, опСрационная систСма ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΠΎΡ‚ Π½Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ ΠΈΡ….

Каким Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ интСрфСйс

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

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

Для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ интСрфСйс β€” основа Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ПК ΠΈΠ»ΠΈ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠΌ. ΠžΡ‚ Ρ‚ΠΎΠ³ΠΎ, насколько проста ΠΈΠ»ΠΈ слоТна эта систСма, Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ удобство управлСния устройством. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒ систСмныС структуры для слоТных Π·Π°Π΄Π°Ρ‡. НСопытным ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚ΡŒ устройства с понятным интСрфСйсом, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ сСбС Ρ€Π°Π±ΠΎΡ‚Ρƒ.

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

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ вмСсто Ρ‡ΠΈΠ½ΠΎΠ²Π½ΠΈΠΊΠ°: ΠΊΠ°ΠΊ цифровизация ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ госуправлСниС

Π Π‘Πš ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡŽ совмСстных ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² с ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ «Россия Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ: 2017–2035Β». ЦСль ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ рСализуСтся Π¦Π΅Π½Ρ‚Ρ€ΠΎΠΌ стратСгичСских Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ совмСстно с ΠœΠΈΠ½ΠΈΡΡ‚Π΅Ρ€ΡΡ‚Π²ΠΎΠΌ экономичСского развития, β€” ΠΎΡ‡Π΅Ρ€Ρ‚ΠΈΡ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Ρ‹ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ ΠΈ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Π³ΠΎΡ‚ΠΎΠ²Π° Π»ΠΈ Россия Π½Π° Π½ΠΈΡ… ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ.

ΠžΡ†ΠΈΡ„Ρ€ΠΎΠ²ΠΊΠ° госуслуг, МЀЦ β€” Ρ‚Π΅ΠΌΡ‹, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π² России Π² послСдниС Π³ΠΎΠ΄Ρ‹ Π½Π°Π±Π»ΡŽΠ΄Π°Π΅Ρ‚ΡΡ явный прогрСсс, Π½ΠΎ ΠΎΠ½ΠΈ Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π°ΡΡ‚ΡŒ повСстки ΠΌΠΎΠ΄Π΅Ρ€Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ. НуТно ΠΆΠ΅ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ интСрфСйс взаимодСйствия Π³Ρ€Π°ΠΆΠ΄Π°Π½ с государством, Π½ΠΎ ΠΈ сущностно ΠΏΠ΅Ρ€Π΅ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Π‘Ρ‚Ρ€ΠΎΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹

ИдСя государства ΠΊΠ°ΠΊ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ основана Π½Π° ΠΈΠ΄Π΅Π΅ мСТмашинного взаимодСйствия, интСрфСйса программирования ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Application Programming Interface, API) —​ слоТившСйся Π² сфСрС IT ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ вывСдСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… систСм Π²ΠΎ внСшнюю для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ срСду. Π­Ρ‚ΠΎ способ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ взаимодСйствиС Π½ΠΎΠ²Ρ‹Ρ… сторонних ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΠΎΠΌ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ. НапримСр, вмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈ установкС прилоТСния ΠΈΠ· AppStore ΠΈΠ»ΠΈ Google Market Π½Π° ваш Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎ сСбС, достаточно Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΒ», ΠΈ устанавливаСмоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ API автоматичСски настраиваСтся для вас, начиная ΠΎΡ‚ вашСго ΠΈΠΌΠ΅Π½ΠΈ ΠΈ заканчивая гСографичСским располоТСниСм ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ³ΠΎΠ΄ΠΎΠΉ.

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

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

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

Π˜Π½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ Π°Π³Π΅Π½Ρ‚Ρ‹

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

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

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

Кнопка «государство»

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

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

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

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ Ρ€Π΅Ρ„ΠΎΡ€ΠΌΠ΅ госуправлСния разрабатываСтся Π¦Π΅Π½Ρ‚Ρ€ΠΎΠΌ стратСгичСских Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ с участиСм ΠœΠΈΠ½ΠΈΡΡ‚Π΅Ρ€ΡΡ‚Π²Π° экономичСского развития Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ стратСгии развития России Π½Π° 2018–2024 Π³ΠΎΠ΄Ρ‹, Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ΄Π΅ΠΉ Π±Ρ‹Π»Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° участниками форсайт-сСссии ΠΊΠΎΠ½Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠΈ Β«Π Π΅Ρ„ΠΎΡ€ΠΌΠ° государствСнного управлСния: Ρ€Π΅Π³ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ аспСкт», ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ ΠœΠΈΠ½ΡΠΊΠΎΠ½ΠΎΠΌΡ€Π°Π·Π²ΠΈΡ‚ΠΈΡ Π² ΠšΠ°Π»ΠΈΠ½ΠΈΠ½Π³Ρ€Π°Π΄ΡΠΊΠΎΠΉ области Π² ф​СвралС 2017 Π³ΠΎΠ΄Π°.

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

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ – это комплСкс срСдств, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для взаимодСйствия Π΄Π²ΡƒΡ… систСм Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ. Π’ качСствС Ρ‚Π°ΠΊΠΈΡ… систСм ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ людСй ΠΈ искусствСнный ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚. Π‘Π»ΠΎΠ²ΠΎ «интСрфСйс» позаимствовано ΠΈΠ· английского языка: interface ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ «мСсто соприкосновСния».

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

Π’ΠΈΠΏΡ‹ интСрфСйса

Π§Π΅Π»ΠΎΠ²Π΅ΠΊΠΎ-ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ интСрфСйс подраздСляСтся Π½Π° Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ разновидности.

Командная строка

Π‘Π°ΠΌΡ‹ΠΌ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌ Ρ‚ΠΈΠΏΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса считаСтся командная строка. Π­Ρ‚ΠΎ ΡΡ‚Π°Ρ€Π΅ΠΉΡˆΠΈΠΉ, Π½ΠΎ Ρ‚Ρ€ΡƒΠ΄ΠΎΠ΅ΠΌΠΊΠΈΠΉ способ взаимодСйствия. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ вводятся Π½Π° машинном языкС. Π­Ρ‚Π° Ρ€Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ примСняСтся Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… для профСссионалов.

ГрафичСский интСрфСйс

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

ЖСстовый интСрфСйс

Π’ послСднСС врСмя этот Ρ‚ΠΈΠΏ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎ-машинного взаимодСйствия стал популярным ΠΈ вострСбованным. К этой ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ относят сСнсорныС экраны, дТойстики ΠΈ стилусы.

Голосовой интСрфСйс

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

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

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ β€” ваТнСйшая концСпция Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

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

Π’Π°ΠΆΠ½Π΅ΠΉΡˆΠ°Ρ концСпция Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО β€” концСпция интСрфСйса. Π­Ρ‚Π° ΡΡ‚Π°Ρ‚ΡŒΡ Π½Π΅ ΠΎΠ± интСрфСйсах Π½Π° Java, Π° ΠΎΠ± интСрфСйсах Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅. И Π² мСньшСй стСпСни β€” ΠΎΠ± интСрфСйсах Π² ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰Π΅ΠΌ ΠΌΠΈΡ€Π΅. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ПО ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½Π΅ΠΌΠ°Π»ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΉ, Π½ΠΎ я ΡΡ‡ΠΈΡ‚Π°ΡŽ, Ρ‡Ρ‚ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΡ… Ρ‚Π°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ‡Π΅ зависят ΠΎΡ‚ ваТности интСрфСйса.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ интСрфСйс?

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ ΠΈΠ· нас Π·Π½Π°ΠΊΠΎΠΌΡ‹ Π΄Π²Π΅ ΠΊΡ€Π°Ρ‚ΠΊΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠΈ:

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ β€” это Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€ ΠΌΠ΅ΠΆΠ΄Ρƒ систСмой ΠΈ внСшним ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ.
Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ β€” это сопряТСниС систСмы с внСшним ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ.

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ = БистСма ∩ ΠžΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ с сопряТСниСм ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ Π»ΡƒΡ‡ΡˆΠ΅, Ссли систСма β€” это физичСский ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Оба опрСдСлСния ΠΎΡ‡Π΅Π½ΡŒ абстрактны, поэтому Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΈΡ… Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ пСчатания Π½Π° ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π΅:

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

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

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

Всё это Π»ΡŽΠ±ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ философскиС рассуТдСния, Π½ΠΎ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ относятся ΠΊ написанию ПО? Ну, Π½Π°Ρ‡Π½Ρ‘ΠΌ с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ интСрфСйсы Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‚ вас со всСх сторон, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ Π½Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ Π½Π° это внимания. НапримСр, Ссли Π²Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Π½Π° Java, Ρ‚ΠΎ явным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΈΠΌΠ΅Π½ΡƒΠ΅Ρ‚Π΅ интСрфСйсы Π² зависимости ΠΎΡ‚ ΠΈΡ… назначСния. И Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках ΠΎΠ½ΠΈ Ρ‚ΠΎΠΆΠ΅ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ интСрфСйса Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ add_numbers :

ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ Ρ‚Ρƒ ΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΡƒ Ρ†Π²Π΅Ρ‚ΠΎΠ²ΠΎΠΉ Π΄ΠΈΡ„Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈΠ°Ρ†ΠΈΠΈ ΡˆΡ‚Π°Π½ΠΎΠ² для описания окруТСния, систСмы add_numbers ΠΈ интСрфСйса:

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, здСсь Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° чСтвёртая концСпция: «рСализация». Π”ΠΎΠ²ΠΎΠ»ΡŒΠ½ΠΎ слоТно Π΄ΠΈΡΠΊΡƒΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Ρ‚Π΅ΠΌΡƒ интСрфСйсов Π±Π΅Π· ΡƒΡ‡Ρ‘Ρ‚Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ. Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ этот Ρ‚Π΅Ρ€ΠΌΠΈΠ½:

РСализация β€” это систСма минус интСрфСйс.

Implementation = System βˆ– Interface
Implementation = System βˆ– (System ∩ Environment)

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

Π”ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΈΠ·Π½Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΌΠ½Π΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Ρ€Π°Π½ΡŒΡˆΠ΅ Π½Π΅ попадалось Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Но это Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎΠ΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Π½Π°Π±ΠΎΡ€Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ интСрфСйса, ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π΅ ряд прСимущСств. Если Π²Ρ‹ Π±Π΅Π΄Π½Ρ‹ΠΉ студСнт ΠΈ Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅ΡΡŒ ΠΊ экзамСну, Ρ‚ΠΎ навСрняка ваш ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΡŒ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΠ»Ρ‹ΡˆΠ°Π» ΠΎ Ρ‚Π°ΠΊΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ. НС ΡƒΠ΄ΠΈΠ²Π»ΡŽΡΡŒ, Ссли ΠΎΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ таксономии ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования. Но Π΄Π°ΠΆΠ΅ Π² этом случаС я Π½Π΅ ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡΡŒ Π΅Π³ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ. ΠŸΡƒΡΠΊΠ°ΠΉ Π»ΡƒΡ‡ΡˆΠ΅ Ρ„Π°Π½Π°Ρ‚Ρ‹ ООП ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ свои конспСкты Π² соотвСтствии с ΠΌΠΎΠΈΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ.

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

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΊΠ°ΠΊ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€

Если Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ интСрфСйс Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ add_numbers Π² Π²ΠΈΠ΄Π΅ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Π°, Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚Π°ΠΊΠΈΠ΅:

unsigned int add_numbers();

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

Π‘ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ всё Ρ‚ΠΎ ΠΆΠ΅ самоС. ΠœΠΎΠ΄ΡƒΠ»ΠΈ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ говорят, Ρ‡Ρ‚ΠΎ ΠΈΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΈ (ΠΈΠ½ΠΎΠ³Π΄Π°) Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π΄Π°Π΄ΡƒΡ‚ Π²Π·Π°ΠΌΠ΅Π½. ΠΠ°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ этого Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Ρ‚ ΠΊ ошибкС компиляции, ΠΊ ошибкС выполнСния, ΠΊ сбою прилоТСния, систСмы, срСдств контроля качСства ΠΊΠΎΠ΄Π° ΠΈ ΠΊ Π²Ρ‹Π³ΠΎΠ²ΠΎΡ€Ρƒ ΠΎΡ‚ руководства. Π― Π±Ρ‹ Π΄Π°ΠΆΠ΅ сказал, Ρ‡Ρ‚ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ интСрфСйса ΠΊΠ°ΠΊ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Π° Π½Π΅ мСтафоричСскоС. Π—Π΄Π΅ΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‚Π΅ ΠΆΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹, Ρ‡Ρ‚ΠΎ ΠΈ Π² коммСрчСском Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Π΅, хотя ΠΎΠ½ ΠΈ Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ Π΄Π΅Ρ‚Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½.

ΠŸΠ°Ρ‚Π΅Π½Ρ‚Ρ‹, авторскиС ΠΏΡ€Π°Π²Π° ΠΈ интСрфСйсы

Π― Π½Π΅ Π±ΡƒΠ΄Ρƒ Π΄Π°Π²Π°Ρ‚ΡŒ Π²Π°ΠΌ совСты Π² области ΠΏΡ€Π°Π²Π°. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈΠ· мною сказанного Π΄Π°ΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΡ‚ΡŒ Π·Π°ΠΊΠΎΠ½Π°ΠΌ. Всё Π½ΠΈΠΆΠ΅ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ β€” лишь частноС ΠΌΠ½Π΅Π½ΠΈΠ΅ Π°Π²Ρ‚ΠΎΡ€Π°.

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

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ Π»ΠΈ ΠΏΠ°Ρ‚Π΅Π½Ρ‚ΠΎΠ²Π°Ρ‚ΡŒ интСрфСйс? Учитывая Π΅Π³ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Π° ΠΌΠ΅ΠΆΠ΄Ρƒ систСмой ΠΈ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ, я ΡΡ‡ΠΈΡ‚Π°ΡŽ, Ρ‡Ρ‚ΠΎ использованиС ΠΏΠ°Ρ‚Π΅Π½Ρ‚ΠΎΠ² Π±Ρ‹Π»ΠΎ Π±Ρ‹ ошибкой. И, судя ΠΏΠΎ всСму, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΏΡ€Π΅Ρ†Π΅Π΄Π΅Π½Ρ‚Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ мою ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ. Но ΠΈΠΌΠ΅ΠΉΡ‚Π΅ Π² Π²ΠΈΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ слово «интСрфСйс» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΡ‡Π΅Π½ΡŒ ΡˆΠΈΡ€ΠΎΠΊΠΎ, ΠΈ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ совсСм Π½Π΅ Π² Ρ‚ΠΎΠΌ смыслС, ΠΊΠ°ΠΊ я описал Π²Ρ‹ΡˆΠ΅.

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ Π»ΠΈ Π·Π°Ρ‰ΠΈΡ‰Π°Ρ‚ΡŒ интСрфСйс авторскими ΠΏΡ€Π°Π²Π°ΠΌΠΈ? ΠžΠΏΡΡ‚ΡŒ ΠΆΠ΅, учитывая Β«Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Π½ΡƒΡŽΒ» ΠΏΡ€ΠΈΡ€ΠΎΠ΄Ρƒ, я ΡΡ‡ΠΈΡ‚Π°ΡŽ, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ авторского ΠΏΡ€Π°Π²Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ «исходный ΠΊΠΎΠ΄Β» интСрфСйса. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя авторскиС ΠΏΡ€Π°Π²Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΊ Ρ‚Π΅ΠΌ аспСктам интСрфСйсов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ ΠΈΡ… Ρ‚Π°ΠΊΠΈΠΌΠΈ особСнными. Достаточно лишь Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ исходный ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ рукописноС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π½ΠΎ Π½Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ ΠΈΠ»ΠΈ ограничСния. Если Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΈ ΠΈΠ»ΠΈ ограничСния интСрфСйса станут Π½Π΅ΠΎΡ‚Π΄Π΅Π»ΠΈΠΌΡ‹ ΠΎΡ‚ любой ΠΈΠ· частСй Π΅Π³ΠΎ ΠΊΠΎΠ΄Π°, Ρ‚ΠΎ эти части слСдуСт Π»ΠΈΡˆΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²Π° Π·Π°Ρ‰ΠΈΡ‚Ρ‹.

ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ простой тСст, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π·Π°Ρ‰ΠΈΡ‰Π°Ρ‚ΡŒ авторскими ΠΏΡ€Π°Π²Π°ΠΌΠΈ.

Если Π²Ρ‹ Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π½Π°Π±ΠΎΡ€ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π»ΡŽΠ±Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΎΡ‚ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ стороны, ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ интСрфСйсом, Ρ‚ΠΎ всСгда ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ Π·Π°ΠΌΠ΅Π½Ρƒ. Π—Π°ΠΌΠ΅Π½Π° Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅ самый интСрфСйс ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ПО ΠΎΡ‚ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ стороны, Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΉ этого самого ПО, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π±Π΅Π· Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡ Π»ΡŽΠ±Ρ‹Ρ… авторских ΠΏΡ€Π°Π². Если любая Π·Π°ΠΌΠ΅Π½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡŽ авторских ΠΏΡ€Π°Π², ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ПО ΠΎΡ‚ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ стороны, ΠΈΠ»ΠΈ ΡƒΡ…ΡƒΠ΄ΡˆΠ°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, Ρ‚ΠΎ Π½Π°Π±ΠΎΡ€ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠ² слишком агрСссивСн ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ сокращён.

Π‘Ρ‡ΠΈΡ‚Π°ΡŽ, Ρ‡Ρ‚ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этого тСста цСлСсообразно ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π΅Ρ‰Ρ‘ ΠΈ Π½Π° ΠΏΠ°Ρ‚Π΅Π½Ρ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Ρ†Π΅Π»ΡŒ тСста β€” ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π΅Ρ†Π΅Π»Π΅ΡΠΎΠΎΠ±Ρ€Π°Π·Π½ΠΎΡΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ авторскими ΠΏΡ€Π°Π²Π°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΠ°Ρ‚Π΅Π½Ρ‚ΠΎΠΌ. Он Π½Π΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π² Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ слСдуСт ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π½ΡƒΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‚Π΅. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, этот тСст β€” лишь ΠΌΠΎΡ‘ ΠΌΠ½Π΅Π½ΠΈΠ΅, Π° Π½Π΅ Π½ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ Π°ΠΊΡ‚ ΠΈΠ»ΠΈ Π·Π°ΠΊΠΎΠ½.

Π’Π°ΠΊΠΆΠ΅ Ρ…ΠΎΡ‡Ρƒ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ любой ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΉ, рассматриваСмый ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ интСрфСйса Π² ΠΎΠ΄Π½ΠΎΠΌ языкС, ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠ²Π»ΡΡ‚ΡŒΡΡ Ρ‚Π°ΠΊΠΎΠ²Ρ‹ΠΌ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ языкС. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π² Java порядок объявлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π½Π΅ влияСт Π½Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. И Ссли Π²Ρ‹ случайно скаТСтС, Ρ‡Ρ‚ΠΎ порядок слСдования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² Ρ„Π°ΠΉΠ»Π΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния, Ρ‚ΠΎ это Π±ΡƒΠ΄Π΅Ρ‚ ошибкой ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π½Π° Python:

ВсС эти Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Ρ‹ ΠΎ Π·Π°ΠΊΠΎΠ½Π°Ρ… Π½Π°ΠΏΠΎΠΌΠ½ΠΈΠ»ΠΈ ΠΌΠ½Π΅ Π΄Π΅Π»ΠΎ Oracle ΠΏΡ€ΠΎΡ‚ΠΈΠ² Google. По ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠΉ ссылкС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΉΡ‚ΠΈ интСрСсныС для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² подробности, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ я Π±ΡƒΠ΄Ρƒ ΠΎΠΏΠΈΡ€Π°Ρ‚ΡŒΡΡ Π½Π° Π½ΠΈΡ… Π² своём Π°Π½Π°Π»ΠΈΠ·Π΅. Учитывая всС аспСкты, Π½Π΅ Π²ΠΈΠΆΡƒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½ Π½Π΅ ΡΠΎΠ³Π»Π°ΡˆΠ°Ρ‚ΡŒΡΡ с Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π΅Π»Π° Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ Oracle. НС ΠΌΠΎΠ³Ρƒ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π±Π΅Π·ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΎΡ‡Π½ΠΎ ΠΈΡ… ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π°ΠΌ доступно Π½Π΅ Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Π΅Ρ‚Π°Π»Π΅ΠΉ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°.

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

Β«ΠžΠΊΡ€ΡƒΠΆΠ½ΠΎΠΉ суд Π·Π°ΠΊΠ»ΡŽΡ‡ΠΈΠ», Ρ‡Ρ‚ΠΎ β€žΠ΅ΡΡ‚ΡŒ лишь ΠΎΠ΄ΠΈΠ½ способ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡβ€œ объявлСний для взаимодСйствия с Java. Если это Ρ‚Π°ΠΊ, Ρ‚ΠΎ использованиС ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… объявлСний Π½Π΅ ΠΏΠΎΠ΄Π»Π΅ΠΆΠΈΡ‚ Π·Π°Ρ‰ΠΈΡ‚Π΅ авторским ΠΏΡ€Π°Π²ΠΎΠΌ. Π’ Google Π½Π΅ ΠΎΡΠΏΠ°Ρ€ΠΈΠ²Π°ΡŽΡ‚ Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ свои собствСнныС API для доступа ΠΊ Java, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚Ρ€Ρ‘Ρ…Β». И Π½Π°ΠΊΠΎΠ½Π΅Ρ†, Β«Π’ Google ΠΏΡ€ΠΈΠ·Π½Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ дословно скопировали объявлСния».

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

Об этой тяТбС я знаю лишь ΠΈΠ· ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… сСтСвых источников, Π½ΠΎ, судя ΠΏΠΎ всСму, Π² Google ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ скопировали исходный Java-ΠΊΠΎΠ΄, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ интСрфСйсы. ΠŸΠΎΡ…ΠΎΠΆΠ΅, ΠΎΠ½ΠΈ ΠΈ сами считали, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈΡ†Π΅Π½Π·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ своё использованиС Java, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это Π±Ρ‹Π»ΠΎ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ΠΎΠΌ ΠΏΠ΅Ρ€Π΅Π³ΠΎΠ²ΠΎΡ€ΠΎΠ² ΠΏΠΎ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΎΠ½Π½Ρ‹ΠΌ соглашСниям с Sun Π΅Ρ‰Ρ‘ Π΄ΠΎ 2010 Π³ΠΎΠ΄Π°. Но эти соглашСния ΠΏΠΎΡ‚Π΅Ρ€ΠΏΠ΅Π»ΠΈ Π½Π΅ΡƒΠ΄Π°Ρ‡Ρƒ послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Sun Π±Ρ‹Π»Π° ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Π½Π° Oracle. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Google ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ «дословныС» ΠΊΠΎΠΏΠΈΠΈ ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎ явно Π½Π΅ пошло Π΅ΠΉ Π½Π° ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΏΡ€ΠΈ судСбном Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π΅. ΠŸΠΎΠ΄ΠΎΠ·Ρ€Π΅Π²Π°ΡŽ, Ρ‡Ρ‚ΠΎ ΠΈΡ… Π°Π΄Π²ΠΎΠΊΠ°Ρ‚Ρ‹ Π·Π½Π°Π»ΠΈ ΠΎ слабости своСй ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, поэтому Π²Ρ‹Π±Ρ€Π°Π»ΠΈ ΡΡ‚Ρ€Π°Ρ‚Π΅Π³ΠΈΡŽ Π·Π°Ρ‰ΠΈΡ‚Ρ‹, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡƒΡŽ Π½Π° Π·Π°ΠΊΠΎΠ½Π½ΠΎΠΌ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎ нСраспространСнии авторского ΠΏΡ€Π°Π²Π° Π½Π° интСрфСйсы. НадСялись Π²Ρ‹ΠΈΠ³Ρ€Π°Ρ‚ΡŒ Π΄Π΅Π»ΠΎ Π·Π° счёт прСдставлСния интСрфСйса Π² Π²ΠΈΠ΄Π΅ исходного ΠΊΠΎΠ΄Π° ΠΈ Π΅Π³ΠΎ объСдинСния с Π±ΠΎΠ»Π΅Π΅ философской ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠ΅ΠΉ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Β«ΠΌΠΎΠ΄ΡƒΠ»ΡŒΒ», ΠΈΠ»ΠΈ «абстракция»?

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

Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€: строСниС ΠΊΠ»Π΅Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΌΠ΅ΠΌΠ±Ρ€Π°Π½Ρ‹. Π Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΏΡ€ΠΎΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅ΠΌΠ±Ρ€Π°Π½Ρƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… вСщСств ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° это Π½ΡƒΠΆΠ½ΠΎ.

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

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

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ Π² языкС Π‘, Β«ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌΒ» β€” Π² Python, классом ΠΈΠ»ΠΈ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ β€” Π² Java. Π§Π΅ΠΌ ΡƒΠ³ΠΎΠ΄Π½ΠΎ, лишь Π±Ρ‹ ΠΎΠ½ΠΎ ΠΈΠΌΠ΅Π»ΠΎ внСшний интСрфСйс ΠΈ Β«ΡΠΊΡ€Ρ‹Ρ‚ΡƒΡŽΒ» Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ. ΠŸΡ€ΠΈΡ‡Ρ‘ΠΌ Β«ΡΠΊΡ€Ρ‹Ρ‚ΠΎΡΡ‚ΡŒΒ» ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ слСдствиСм ΠΏΡ€Π°Π²ΠΈΠ» языка ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ программиста.

ДырявыС абстракции

Насколько я знаю, идСю дырявых абстракций Π²Ρ‹Π΄Π²ΠΈΠ½ΡƒΠ» Π”ΠΆΠΎΠ΅Π» Бполски. Π’ Π΅Π³ΠΎ эссС Π΅ΡΡ‚ΡŒ нСсколько Ρ…ΠΎΡ€ΠΎΡˆΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Π½ΠΎ я Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ привСсти свой. Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡ‡Π΅Π½ΡŒ часто встрСчаСтся концСпция Β«ΠΊΠ°Ρ€Ρ‚Ρ‹Β»: прСдставлСниС структуры Π΄Π°Π½Π½Ρ‹Ρ…, состоящСй ΠΈΠ· ΠΏΠ°Ρ€ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’Π°ΠΆΠ½ΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅: ΠΊΠ°Ρ€Ρ‚Π° Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ всС ΠΊΠ»ΡŽΡ‡ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° записи Π½ΠΎΠ²ΠΎΠ³ΠΎ значСния для ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠ»ΡŽΡ‡Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Ρ‚ ΠΊ ошибкС ΠΈΠ»ΠΈ пСрСзаписи ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ значСния. Π‘ΡƒΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡ΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ. Π§Π°Ρ‰Π΅ всСго ΠΎΡ‚ программистов трСбуСтся ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ всС эти ΠΊΠ»ΡŽΡ‡ΠΈ. А ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠ°Ρ€Ρ‚Ρ‹ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΉ порядок сортировки ΠΊΠ»ΡŽΡ‡Π΅ΠΉ, Ρ‚ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° приходится Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒΡΡ вопросом, Π² ΠΊΠ°ΠΊΠΎΠΌ порядкС ΠΎΠ½ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ послС ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°? Π­Ρ‚ΠΎ β€” слСдствиС Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ интСрфСйс ΠΊΠ°Ρ€Ρ‚Ρ‹ Π½Π΅ Π΄Π°Ρ‘Ρ‚ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠΉ ΠΏΠΎ сортировкС. И хотя считаСтся, Ρ‡Ρ‚ΠΎ это Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния, Π½ΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ всё ΠΆΠ΅ хочСтся ΠΎΡ‚ΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Π’Π°ΠΊ Π½ΡƒΠΆΠ½ΠΎ для Π±ΠΎΠ»Π΅Π΅ эффСктивной ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для облСгчСния ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…ΡΡ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ.

ΠŸΠ΅Ρ€Π΅Π±ΠΎΡ€ отсортированных Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Ρ‚ΡŒ совсСм Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ΠΎΠΌ случайных Π΄Π°Π½Π½Ρ‹Ρ…. Допустим, Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ минимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² спискС:

Π’Π΅Ρ‚ΠΊΠ° else if Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°, Ссли Π΄Π°Π½Π½Ρ‹Π΅ отсортированы ΠΏΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°Π½ΠΈΡŽ. Π”Π°ΠΆΠ΅ Ссли Π²Ρ‹ Π½Π°Ρ‡Π½Ρ‘Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ со случайного мСста списка, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ столкнётся с этой строкой. И это огромная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ссли Π²Ρ‹ помСняСтС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΈ ΠΎΠ½Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ отсортированныС ΠΊΠ»ΡŽΡ‡ΠΈ, Ρ‚ΠΎ ваш ΠΊΠΎΠ΄ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎ станСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎ Π²Π΅Ρ‚ΠΊΠ΅ с Π±Π°Π³ΠΎΠΌ. А ΠΊ Ρ‚ΠΎΠΌΡƒ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρƒ Π²Ρ‹ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π·Π°Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΎΠ± этом ΠΊΠΎΠ΄Π΅ ΠΈ скрытой Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½Π΅Π³ΠΎ Π±ΠΎΠΌΠ±Π΅.

Π₯ΠΎΡ‡Ρƒ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ своё собствСнноС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ абстракций.

Π£Ρ‚Π΅Ρ‡ΠΊΠΎΠΉ абстракций (abstraction leak) называСтся ситуация, ΠΊΠΎΠ³Π΄Π° рСализация ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π»ΠΈΡΡ‚ΡŒ Π½Π° ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π½Π΅ Π±Ρ‹Π»ΠΎ прСдусмотрСно интСрфСйсом.

Богласно этому ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ, ΠΏΠΎΡ‡Ρ‚ΠΈ каТдая абстракция β€” дырявая. Π’Π΅Π΄ΡŒ описаниС Π² интСрфСйсС всСх Π²ΠΈΠ΄ΠΎΠ² воздСйствия Π½Π° ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ смысл лишь Π² Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ строгих матСматичСских систСмах. А Ρ‡Ρ‚ΠΎ касаСтся физичСских систСм, Ρ‚ΠΎ Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒΡΡ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ° ГёдСля ΠΎ Π½Π΅ΠΏΠΎΠ»Π½ΠΎΡ‚Π΅.

ИдСя дырявости Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° абстракций Π½Π΅ являСтся нСобоснованной. Π­Ρ‚ΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π» ΠΈ Π”ΠΆΠΎΠ΅Π» Бполски Π² своём Β«The Law of Leaky AbstractionsΒ»:

«ВсС Π½Π΅Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ абстракции ΡΠ²Π»ΡΡŽΡ‚ΡΡ дырявыми Π΄ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΉ стСпСни».

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

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π΄Π°Π»Π΅ΠΊΠΎ ΠΈΠ΄ΡƒΡ‰ΠΈΠΌ послСдствиям, Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Π±Π°Π³ΠΎΠ², Π½ΠΎ ΠΈ Π² сфСрС бСзопасности. Π‘ физичСскими систСмами, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ Π²ΠΎ внСшнСС ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠΌΠΏΡ€ΠΎΠΌΠ΅Ρ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ, связан Ρ‚Π΅Ρ€ΠΌΠΈΠ½ Β«Π°Ρ‚Π°ΠΊΠ° ΠΏΠΎ сторонним ΠΊΠ°Π½Π°Π»Π°ΠΌΒ». Π’ сочСтании с заявлСниСм, Ρ‡Ρ‚ΠΎ всС абстракции дырявы, это ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ нас ΠΊ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡŽ:

КаТдая физичСская рСализация криптосистСмы уязвима ΠΊ Π°Ρ‚Π°ΠΊΠ°ΠΌ ΠΏΠΎ сторонним ΠΊΠ°Π½Π°Π»Π°ΠΌ.

Учитывая всё сказанноС Π²Ρ‹ΡˆΠ΅, эту идСю ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° физичСскиС, Π½ΠΎ ΠΈ Π½Π° эмулированныС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ.

ΠžΡ†Π΅Π½ΠΊΠ° ΠΈ сравнСниС интСрфСйсов

Как ΠΌΡ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄Π΅Π»ΠΈ Π²Ρ‹ΡˆΠ΅, Π² интСрфСйсах Π½Π° Π‘ Π·Π°Π΄Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠ΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠ°ΠΊ Ρ‚ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния ΠΈ количСство ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. А Ρ‡Ρ‚ΠΎ насчёт Python? Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ «интСрфСйс» Π² соотвСтствии с контСкстом ΡΡ‚Π°Ρ‚ΡŒΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π² Π±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΈΡˆΡƒΡ‚ Π² ΠΊΠ½ΠΈΠ³Π°Ρ… ΠΎΠ± «интСрфСйсах» Π² Python.

Π’ этом языкС Π½Π°ΠΌ трСбуСтся Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ интСрфСйса Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π­Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ мСньшС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны β€” ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ для поиска ошибок, мСньшС.

Π”ΡƒΠΌΠ°ΡŽ, Π½ΡƒΠΆΠ½ΠΎ ΠΊΠΎΠ΅-Ρ‡Ρ‚ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ± ΠΎΡ†Π΅Π½ΠΊΠ΅ ΠΈ сравнСнии Ρ€Π°Π·Π½Ρ‹Ρ… характСристик интСрфСйса с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния способов ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. ΠžΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ°ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ интСрфСйс, Ρ‚Π°ΠΊ ΠΈ ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ всСх интСрфСйсов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π½Π° Π΄Π°Π½Π½ΠΎΠΌ языкС. Π”Π°Π²Π°ΠΉΡ‚Π΅ вспомним наш ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с add_numbers ΠΈ ΠΎΡ†Π΅Π½ΠΈΠΌ, сколько ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· интСрфСйс ΠΈ Π² ΠΎΠ±Ρ…ΠΎΠ΄ Π½Π΅Π³ΠΎ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡƒΡ‚Π΅Ρ‡Π΅ΠΊ абстракции.

Π§Π΅Ρ€Π΅Π· интСрфСйсВ ΠΎΠ±Ρ…ΠΎΠ΄ интСрфСйса
ОписаниС Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈΠšΠΎΠ»-Π²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΠΉΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈΠšΠΎΠ»-Π²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… состояний
Π’ΠΈΠΏ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 11 (unsigned int)Бостояния глобальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ(ΠΊΠΎΠ»-Π²ΠΎ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…) * (ΠΊΠΎΠ»-Π²ΠΎ состояний Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…)
Π’ΠΈΠΏ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 21 (unsigned int)Ѐайловая ΡΠΈΡΡ‚Π΅ΠΌΠ°ΠšΠΎΠ»-Π²ΠΎ состояний Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы
Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния1 (unsigned int)ВрСмя использования процСссораНС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 12^(ΠΊΠΎΠ»-Π²ΠΎ Π±ΠΈΡ‚ Π² unsigned int)БостояниС ΠΊΡƒΡ‡ΠΈΠšΠΎΠ»-Π²ΠΎ состояний ΠΊΡƒΡ‡ΠΈ
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 22^(ΠΊΠΎΠ»-Π²ΠΎ Π±ΠΈΡ‚ Π² unsigned int)МногиС Π΄Ρ€ΡƒΠ³ΠΈΠ΅..
Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅2^(ΠΊΠΎΠ»-Π²ΠΎ Π±ΠΈΡ‚ Π² unsigned int)

И Π΅ΡΡ‚ΡŒ ряд Π²Π΅Ρ‰Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с add_numbers Ρ‡Π΅Ρ€Π΅Π· интСрфСйс Python.

ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· интСрфСйс PythonΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ±Ρ…ΠΎΠ΄ интСрфСйса Python
ОписаниС Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈΠšΠΎΠ»-Π²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΠΉΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈΠšΠΎΠ»-Π²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… состояний
Π’ΠΈΠΏ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 1ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ бСсконСчноСБостояния глобальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉΠšΠΎΠ»-Π²ΠΎ состояний Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы
Π’ΠΈΠΏ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 2ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ бСсконСчноСЀайловая систСмаНС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ
Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ бСсконСчноСВрСмя использования ΠΏΡ€ΠΎΡ†Π΅ΡΡΠΎΡ€Π°ΠšΠΎΠ»-Π²ΠΎ состояний ΠΊΡƒΡ‡ΠΈ
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 1ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ бСсконСчноСБостояниС ΠΊΡƒΡ‡ΠΈ.
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 2ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Π±Π΅ΡΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ΠœΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅.(ΠΊΠΎΠ»-Π²ΠΎ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…) * (ΠΊΠΎΠ»-Π²ΠΎ состояний Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…)
Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ бСсконСчноС

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ взглянитС Π½Π° количСство Ρ‚ΠΈΠΏΠΎΠ² интСрфСйсов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Haskell:

Учитывая этот ΠΊΠΎΠ΄, интСрфСйс add_numbers ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ:

ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· интСрфСйс HaskellΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ±Ρ…ΠΎΠ΄ интСрфСйса Haskell
ОписаниС Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈΠšΠΎΠ»-Π²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΠΉΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈΠšΠΎΠ»-Π²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… состояний
Π’ΠΈΠΏ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 11 (Int)ВрСмя использования процСссораНС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ
Π’ΠΈΠΏ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 21 (Int)ВлияниС Π½Π° кэши процСссора/памятиНС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ
Π’ΠΈΠΏ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ³ΠΎ значСния1 (Int)ΠŸΡ€ΠΎΡ‡ΠΈΠ΅..
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 11 (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 3)
Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° 21 (Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 4)
Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠšΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 2^30[1]

Для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ интСрфСйса Π½Π° Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠΌ Π²Π°ΠΌΠΈ языкС ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ Π΅Ρ‰Ρ‘ ΠΈ количСство ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… способов ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ:

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· GUIΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ±Ρ…ΠΎΠ΄ GUI
ОписаниС Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈΠšΠΎΠ»-Π²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΠΉΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈΠšΠΎΠ»-Π²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… состояний
Клик ΠΏΠΎ ПапкС 1Кол-Π²ΠΎ пиксСлСй Π½Π° экранС, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… Папкой 1 * ΠΊΠΎΠ»-Π²ΠΎ ΠΊΠ»ΠΈΠΊΠΎΠ²Π‘ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ возмоТности UIНС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ
Клик ΠΏΠΎ ПапкС 2Кол-Π²ΠΎ пиксСлСй Π½Π° экранС, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… Папкой 2 * ΠΊΠΎΠ»-Π²ΠΎ кликовНСстандартныС ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ быстрого Π²Ρ‹Π·ΠΎΠ²Π°ΠšΠΎΠ»-Π²ΠΎ пиксСлСй Π½Π° экранС, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… Кнопкой 2
НавСдСниС курсора Π½Π° ΠŸΠ°ΠΏΠΊΡƒ 1Кол-Π²ΠΎ пиксСлСй Π½Π° экранС, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… Папкой 1ΠŸΡ€ΠΎΡ‡ΠΈΠ΅ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½Ρ‹Π΅ возмоТности UI.
НавСдСниС курсора Π½Π° ΠŸΠ°ΠΏΠΊΡƒ 2Кол-Π²ΠΎ пиксСлСй Π½Π° экранС, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… Папкой 2
ВрСмя ΠΌΠ΅ΠΆΠ΄Ρƒ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΈ кликомБСсконСчно
Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹Π΅ ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π½Ρ‹Π΅ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΡΠšΠΎΠ»-Π²ΠΎ стандартных ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΉ клавиш
ΠŸΠ»ΠΎΡ‰Π°Π΄ΡŒ экрана, занимаСмая GUIКол-Π²ΠΎ пиксСлСй, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для отобраТСния GUI

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим Ρ‚Ρƒ ΠΆΠ΅ Π·Π°Π΄Π°Ρ‡Ρƒ смСны ΠΏΠ°ΠΏΠΊΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки ΠΈ cd :

ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· GUIΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΎΠ±Ρ…ΠΎΠ΄ GUI
ОписаниС Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈΠšΠΎΠ»-Π²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΠΉΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΡΡ‚ΠΈΠΊΠΈΠšΠΎΠ»-Π²ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… состояний
Кол-Π²ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΠΏΠ°ΠΏΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π±Ρ€Π°Ρ‚ΡŒΠΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСнияНС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ

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

МоТно Π΅Ρ‰Ρ‘ большС ΡƒΡΠ»ΠΎΠΆΠ½ΠΈΡ‚ΡŒ Π°Π½Π°Π»ΠΈΠ·, Ссли ΠΎΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΈ ошибок Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ с физичСскими отклонСниями.

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ рассмотрСли ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… способов ΠΎΡ†Π΅Π½ΠΊΠΈ ΠΈ сравнСния интСрфСйсов. На основании ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈ собствСнного ΠΎΠΏΡ‹Ρ‚Π° позволю сСбС ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ нСсколько экстраполяций:

ДырявыС ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹Π΅ интСрфСйсы

Π― ΠΎΠΏΠΈΡˆΡƒ нСсколько наблюдСний Π½Π° основании Π°Π½Π°Π»ΠΈΠ·Π° ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π°. Но сначала ΠΏΡ€ΠΈΠ²Π΅Π΄Ρƒ ΠΏΠ°Ρ€Ρƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ:

Дырявый интСрфСйс (leaky interface) β€” интСрфСйс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ игнорируСтся Π² Ρ…ΠΎΠ΄Π΅ Π»ΡŽΠ±Ρ‹Ρ… взаимодСйствий ΠΌΠ΅ΠΆΠ΄Ρƒ систСмой ΠΈ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ.

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ интСрфСйс (specific interface) β€” интСрфСйс с ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ нСбольшим количСством Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π²Ρ…ΠΎΠ΄ΠΎΠ² ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠ².

Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ интСрфСйса β€” кусочно-Π·Π°Π΄Π°Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для нСбольшого количСства Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

Если Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ обоснованно ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ Β«Π΄Ρ‹Ρ€ΡΠ²ΠΎΡΡ‚ΡŒΒ» ΠΈΠ»ΠΈ Β«ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΡΡ‚ΡŒΒ» интСрфСйсов, Ρ‚ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ смысл ΠΎΡ‡Π΅Ρ€Ρ‚ΠΈΡ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½, Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΈ нСдырявыС интСрфСйсы, Π° Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ β€” Π½Π΅ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΈ дырявыС.

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

ВСроятно, Π²Ρ‹ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚Π΅ ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ ΠΏΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΡŒ Π²Π»Π΅Π²ΠΎ ΠΈΠ»ΠΈ Π²ΠΏΡ€Π°Π²ΠΎ Π½Π° шкалС, Π½ΠΎ Π³Π»Π°Π²Π½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΡƒΡ…Π²Π°Ρ‚ΠΈΠ»ΠΈ идСю. МоТно Π΄Π°ΠΆΠ΅ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ Π½Π° Π΄Π²Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΡˆΠΊΠ°Π»Ρ‹: ΠΏΠΎ стСпСни дырявости ΠΈ строгости. Π₯отя Π² Ρ†Π΅Π»ΠΎΠΌ эти Π΄Π²Π° понятия Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΊΠΎΡ€Ρ€Π΅Π»ΠΈΡ€ΡƒΡŽΡ‚.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ коррСляция, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я Ρ…ΠΎΡ‡Ρƒ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ‚ΡŒ, Π²Ρ‹Π²Π΅Π΄Π΅Π½Π° ΠΈΠ· ΠΌΠΎΠ΅Π³ΠΎ ΠΎΠΏΡ‹Ρ‚Π°. На Π»Π΅Π²ΠΎΠΌ ΠΊΡ€Π°ΡŽ ΡˆΠΊΠ°Π»Ρ‹ «ошибки» Π±Ρ‹Π²Π°ΡŽΡ‚ Ρ€Π΅ΠΆΠ΅, ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ½ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΈΠ·-Π·Π° сбоСв ΠΏΡ€ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ. На ΠΏΡ€Π°Π²ΠΎΠΌ ΠΊΡ€Π°ΡŽ ΡˆΠΊΠ°Π»Ρ‹ ошибки Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Ρ‡Π°Ρ‰Π΅, ΠΈ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΈΡ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° кроСтся Π² сбоях ΠΏΡ€ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

АсимптотичСская ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ тСхничСского Π΄ΠΎΠ»Π³Π°

Основная Ρ‡Π°ΡΡ‚ΡŒ тСхничСского Π΄ΠΎΠ»Π³Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π»ΠΈΠ±ΠΎ ΠΈΠ·-Π·Π° нСдопустимого полагания Π½Π° ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ абстракций, Π»ΠΈΠ±ΠΎ ΠΈΠ·-Π·Π° полагания Π½Π° Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Ρ‹ ΠΊΡ€Π°ΠΉΠ½Π΅ нСстрогих интСрфСйсов, Ρ‡Ρ‚ΠΎ сильно затрудняСт ΠΏΡ€ΠΎΠ³Π½ΠΎΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ послСдствий.

Π’ самом Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ содСрТит ΠΎΠ΄ΠΈΠ½-Π΄Π²Π° модуля, ΠΈ для ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Π° Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ интСрфСйса Π²Π°ΠΌ понадобится Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΡ‘ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ О(1). Если ваш интСрфСйс ΠΏΠ»ΠΎΡ…, Ρ‚ΠΎ ΠΎΠ±ΡŠΡ‘ΠΌ тСхничСского Π΄ΠΎΠ»Π³Π° Ρ‚ΠΎΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π΅Π½ О(1), Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½Π΅ придётся ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ слишком ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² порядок Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Π° интСрфСйса. Но ΠΏΡ€ΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΌ ростС количСства ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΎΠ±ΡŠΡ‘ΠΌ ΠΌΠ΅ΠΆΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹Ρ… связСй ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ О(N^2). Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΡ€ΠΈ ΠΏΠ»ΠΎΡ…ΠΎΠΌ интСрфСйсС, Ссли ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ взаимодСйствуСт со всСми ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ модулями, количСство ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ интСрфСйсу Π² Ρ…ΡƒΠ΄ΡˆΠ΅ΠΌ случаС Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΏΠΎΡ€Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ N^2.

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это. Π€ΠΎΡ‚ΠΎ ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΈ интСрфСйсы взаимодСйствия с Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌΠΈ Ρ‡Ρ‚ΠΎ это

Как Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ², ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ Π½Π° создании ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Π½Π½ΠΎΠ³ΠΎ интСрфСйса. Но этот Π²Ρ‹ΠΈΠ³Ρ€Ρ‹Ρˆ быстро тСряСтся ΠΈΠ·-Π·Π° нарастания ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, связанных с ΠΌΠ΅ΠΆΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½Ρ‹ΠΌ взаимодСйствиСм. ΠžΠ±ΡŠΡ‘ΠΌ Ρ€Π°Π±ΠΎΡ‚ ΠΈΠ·-Π·Π° этого увСличиваСтся Π² стСпСни количСства ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌ интСрфСйсС ΠΎΠ½ растёт Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎ. Π₯ΡƒΠ΄ΡˆΠΈΠΉ сцСнарий β€” ΠΊΠΎΠ³Π΄Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ общаСтся с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ всё большС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π² процСссС Ρ…Π΅Π½Π΄ΡˆΠ΅ΠΉΠΊΠ°, ΠΎΡ‚ΡΡŽΠ΄Π° ΠΈ проистСкаСт стСпСнной рост.

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΌΠ΅ΠΆΠΌΠΎΠ΄ΡƒΠ»ΡŒΠ½ΠΎΠ³ΠΎ взаимодСйствия растёт ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Ρ‡Π΅ΠΌ О(N^2), Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎ быстрСС, Ρ‡Π΅ΠΌ О(N). Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΊΡ‚ΠΎΡ€, ΡΠ΄Π²ΠΈΠ³Π°ΡŽΡ‰ΠΈΠΉ Π½Π°Ρ‡Π°Π»ΠΎ быстрого роста Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅: это чСловСчСская ΠΏΠ°ΠΌΡΡ‚ΡŒ. Π”Π°ΠΆΠ΅ ΠΊΠΎΠ³Π΄Π° Π² вашСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ 20 ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Π²Ρ‹, вСроятно, Π΅Ρ‰Ρ‘ ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ…. Π’Π°ΠΊ, ΠΈΠ· всСх Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΎΠ² Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ лишь Ρ‚ΡƒΠΌΠ°Π½Π½Ρ‹Π΅ названия Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ эзотСричСскиС соглашСния. Но ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ становится достаточно большим, Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Π΅Ρ‚Π°Π»ΠΈ Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ΡΡ, ΠΈΠ»ΠΈ ΠΊΠΎΠ³Π΄Π° Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ приходят Π½ΠΎΠ²Ρ‹Π΅ люди β€” ΠΈ начинаСтся стСпСнной рост Ρ‚Ρ€ΡƒΠ΄ΠΎΠ²Ρ‹Ρ… Π·Π°Ρ‚Ρ€Π°Ρ‚.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ всё Π΅Ρ‰Ρ‘ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкой?

На этот вопрос Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΎΡ‚ людСй Ρ€Π°Π·Π½Ρ‹Π΅ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹, Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠ½Π΅ Π½Π΅ каТСтся самым Π²Π°ΠΆΠ½Ρ‹ΠΌ:

Π₯отя ΠΌΡ‹ ΠΈ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ Π²Π½Π΅Π΄Ρ€ΡΡ‚ΡŒ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΡŽ Ρ‡Π΅Ρ€Π΅Π· кликаньС ΠΈ экранныС Π³Ρ€Π°Π±Π±Π΅Ρ€Ρ‹, нСльзя Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ взаимодСйствия с машиной ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½ для людСй. Он ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ использованиС нСстрогого интСрфСйса, Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰Π΅Π³ΠΎ высокой точности. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ваш Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠ»ΠΈΠΊΠ΅Ρ€ навСрняка Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ±ΠΎΠΈΡ‚ΡŒ, Ссли ΠΎΠΊΠ½ΠΎ Π²Π΄Ρ€ΡƒΠ³ сдвинСтся со своСй ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΈΠ»ΠΈ помСняСтся систСмный ΡˆΡ€ΠΈΡ„Ρ‚. Π‘ GUI связано слишком ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. А командная строка позволяСт Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ‚ΠΎΡ‡Π½Π΅Π΅, Π²Ρ‹ взаимодСйствуСтС Ρ‡Π΅Ρ€Π΅Π· ΠΎΡ‡Π΅Π½ΡŒ строгий интСрфСйс. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ люди Π΅Π³ΠΎ Π½Π΅ Π»ΡŽΠ±ΡΡ‚, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ.

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

Π’Ρ‹Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ языка

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

Насколько вСроятно ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ?

ΠŸΡ€ΠΈ Π½Π°Ρ‡Π°Π»Π΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π΄Π΅Π»Π° ΠΎΡ‚Π²Π΅Ρ‚ навСрняка Π±ΡƒΠ΄Π΅Ρ‚ Β«ΠΎΡ‡Π΅Π½ΡŒ вСроятно», особСнно Ссли создаСтся нСбольшой ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, Π΄Π° Π΅Ρ‰Ρ‘ ΠΈ ΠΏΡ€ΠΈ нСясности Π΅Π³ΠΎ пСрспСктив Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅. Если ΠΆΠ΅ трСбования Ρ‡Ρ‘Ρ‚ΠΊΠΎ сформулированы, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² случаС с созданиСм компилятора ΠΈΠ»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° Π±Π°Π·Π΅ ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Ρ‹Ρ… стандартов, Ρ‚ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ навСрняка Π±ΡƒΠ΄Π΅Ρ‚ Β«Π½Π΅ слишком вСроятно».

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

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

Когда-Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ сломано Π½Π΅ΠΌΠ°Π»ΠΎ ΠΊΠΎΠΏΠΈΠΉ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Twitter Π½Π°Ρ‡Π°Π»ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π½Π° Ruby on Rails, Π° ΠΏΠΎΡ‚ΠΎΠΌ это стало ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½Π΅Π½ΠΈΠΉ ΠΏΡ€ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. ПозднСС Twitter Π±Ρ‹Π» ΠΏΠ΅Ρ€Π΅Π²Π΅Π΄Ρ‘Π½ Π½Π° Scala. ΠšΡ‚ΠΎ-Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΠΎΠ²Π΅Ρ€ΡˆΠΈΠ»ΠΈ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈ ΠΈΠΌ слСдовало сразу Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Scala. Π― Ρ‚Π°ΠΊ Π½Π΅ Π΄ΡƒΠΌΠ°ΡŽ. Π’ основС Twitter’а Π»Π΅ΠΆΠΈΡ‚ ΠΎΡ‡Π΅Π½ΡŒ простая идСя, ΠΈ Π² условиях большого количСства ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ΠΎΠ² ΠΈΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°Π²ΠΎΠ΅Π²Π°Ρ‚ΡŒ Π΄ΠΎΠΌΠΈΠ½ΠΈΡ€ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ Π½Π° Ρ€Ρ‹Π½ΠΊΠ΅. Им Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ расти ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ быстрСС, нСвзирая Π½Π° расходы. Π¦ΠΈΠΊΠ»Ρ‹ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½ΠΎΠ²Ρ‹Ρ… возмоТностСй Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Π»ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ максимально быстро, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это позволяСт Π² ΠΊΡ€Π°Ρ‚Ρ‡Π°ΠΉΡˆΠΈΠ΅ сроки ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ ΠΎΠ½ΠΈ хотят Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ. Врудности ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ – это ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ Π½Π΅ Π½Π΅ΡƒΠ΄Π°Ρ‡ΠΈ, Π° успСха. Π‘Ρ‹Π»ΠΎ сформулировано Π²ΠΈΠ΄Π΅Π½ΠΈΠ΅ Twitter’а ΠΊΠ°ΠΊ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, ΠΈ ΠΎΡΡ‚Π°Π²Π°Π»ΠΎΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ. Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², это просто Π½ΠΈΡ€Π²Π°Π½Π°, всС ΠΎ Ρ‚Π°ΠΊΠΎΠΌ ΠΌΠ΅Ρ‡Ρ‚Π°ΡŽΡ‚, Π½ΠΎ ΠΌΠ°Π»ΠΎ ΠΊΠΎΠΌΡƒ удаётся ΠΏΠΎΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Ρ‚Π°ΠΊΠΈΡ… условиях: Β«ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡˆΠΈ это Π΄Π΅Ρ€ΡŒΠΌΠΎ с нуля Π½Π° своём любимом языкС, ΠΊΠ°ΠΊ Ρ‚Π΅Π±Π΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, лишь Π±Ρ‹ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ с Π½ΠΈΠΌ Π±Ρ‹Π»ΠΎ Π»Π΅Π³Ρ‡Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒΒ». Π“ΠΎΡ€Π°Π·Π΄ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ с нуля, имСя ΠΏΠ΅Ρ€Π΅Π΄ Π³Π»Π°Π·Π°ΠΌΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»Π°Π±ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ, Ρ‡Π΅ΠΌ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π½Π°Ρ‰ΡƒΠΏΠ°Ρ‚ΡŒ ΠΎΠ±Π»ΠΈΠΊ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π²Π·Π»Π΅Ρ‚Π΅Ρ‚ΡŒ. К соТалСнию, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ участников Ρ€Ρ‹Π½ΠΊΠ° ΠΈΠ΄ΡƒΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡƒΡ‚Π΅ΠΌ избСгания Β«Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Ρ…Β» расходов Π½Π° созданиС с нуля ΠΈ тратят массу сил ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π½Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π°ΠΊ популярСн Python?

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

Π― ΡΡ‡ΠΈΡ‚Π°ΡŽ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Python проистСкаСт ΠΈΠ· Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ это прСкрасный Π²Π²ΠΎΠ΄Π½Ρ‹ΠΉ язык, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΊΡ€Π°ΠΉΠ½Π΅ простыС Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Ρ‹ интСрфСйса. По Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ с ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° Python ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ становится всё Ρ‚Ρ€ΡƒΠ΄Π½Π΅Π΅.

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

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠ΅ ПО ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΈΡˆΡƒΡ‚ Π½Π° Java/C++?

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

Как эффСктивнСС ΡΡ€Π΅Π·Π°Ρ‚ΡŒ ΡƒΠ³Π»Ρ‹

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ вынСсти ΠΈΠ· этой ΡΡ‚Π°Ρ‚ΡŒΠΈ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎ, поТалуйста: ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡΡ€Π΅Π·Π°Ρ‚ΡŒ ΡƒΠ³Π»Ρ‹ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, Π΄Π΅Π»Π°ΠΉΡ‚Π΅ это Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ ΠΎΠ±ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°ΠΉΡ‚Π΅ Π² ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ интСрфСйс. Π”Π°ΠΆΠ΅ Ссли рСализация Π½Π΅ слишком Ρ…ΠΎΡ€ΠΎΡˆΠ° ΠΈ Π΅Ρ‘ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Ρ‚Π΅ΠΊΠ°ΡŽΡ‚ Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ части систСмы, Ρ‚ΠΎ это ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ интСрфСйса! Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π±Ρ‹Π»ΠΎ нСдопонимания, ΠΏΠΎΠ·Π²ΠΎΠ»ΡŒΡ‚Π΅ привСсти список Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ я ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽ ΠΏΠΎΠ΄ интСрфСйсами:

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

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

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