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

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

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

АрхитСктура ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрного взаимодСйствия Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ…

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

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ клиСнтскому Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρƒ ΠΈΠ· сСрвСрного контСкста Π±Π΅Π· использования ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС выполнСния ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡŽ пустого значСния. ВсСгда провСряйтС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ компиляции &ΠΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π΅.

Для доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹-ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠΈ, прСдоставляСмыС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ. Они ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ„ΠΎΡ€ΠΌΠΎΠΉ ΠΊΠ°ΠΊ с Π½Π°Π±ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ»Π΅ΠΉ, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ свои свойства, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π’ΠΎΠ»ΡŒΠΊΠΎΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€, Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈ само Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. ПониманиС этой ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ управлСния интСрфСйсом.

Бобытийная модСль ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ‚ чтСния Π΄Π°Π½Π½Ρ‹Ρ…

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

БущСствуСт Ρ‚Π°ΠΊΠΆΠ΅ событиС НаБСрвСрС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ вызываСтся ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΡ‹. Однако, Ссли ваша Ρ†Π΅Π»ΡŒ β€” мгновСнная рСакция интСрфСйса Π±Π΅Π· Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ сСти, Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ события, исполняСмыС Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅. НапримСр, событиС ΠŸΡ€ΠΈΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ позволяСт ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ значСния Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°Ρ‡Π½Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

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

  • πŸš€ Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ ΠŸΡ€ΠΈΠ˜Π·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ идСально ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.
  • πŸ”„ Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°ΠžΠΏΠΎΠ²Π΅Ρ‰Π΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для асинхронного получСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΈΠ· Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡.
  • ⏱ Π‘ΠΎΠ±Ρ‹Ρ‚ΠΈΠ΅ ΠŸΡ€ΠΈΠ‘ΠΌΠ΅Π½Π΅Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ для Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹Ρ… частСй, ΠΊΠΎΠ³Π΄Π° курсор пСрСмСщаСтся ΠΌΠ΅ΠΆΠ΄Ρƒ строками.
πŸ“Š Как часто Π²Ρ‹ ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ ΠΊ сСрвСру Π±Π΅Π· нСобходимости?
Π•ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ
Иногда
Π Π΅Π΄ΠΊΠΎ
Никогда Π½Π΅ задумывался

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

Бинтаксис обращСния ΠΊ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°ΠΌ Ρ„ΠΎΡ€ΠΌΡ‹

Π’ языкС запросов ΠΈ встроСнном языкС 1Π‘ доступ ΠΊ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°ΠΌ Ρ„ΠΎΡ€ΠΌΡ‹ осущСствляСтся Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Ρ‡Π΅Ρ€Π΅Π· свойства Ρ„ΠΎΡ€ΠΌΡ‹, Π² зависимости ΠΎΡ‚ контСкста. Если Π²Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°ΠΌ ΠΊΠ°ΠΊ ΠΊ свойствам самого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ„ΠΎΡ€ΠΌΡ‹.

Для получСния значСния ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ поля ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ свойство Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Бинтаксис ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ Π»ΠΈ Π²Ρ‹ ΠΊ элСмСнту управлСния ΠΈΠ»ΠΈ ΠΊ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…. НапримСр, для поля Π²Π²ΠΎΠ΄Π° с ΠΈΠΌΠ΅Π½Π΅ΠΌ ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π° = ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ;

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

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠŸΠΎΠ»Ρ = Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅;

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

Бпособ обращСния Бинтаксис ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Доступ ΠΊ свойствам
ΠŸΡ€ΡΠΌΠΎΠΉ Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ Высокая Волько Π΄Π°Π½Π½Ρ‹Π΅
Π§Π΅Ρ€Π΅Π· Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹.Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ БрСдняя ΠŸΠΎΠ»Π½Ρ‹ΠΉ доступ
Π§Π΅Ρ€Π΅Π· ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.Π˜ΠΌΡΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Высокая Волько Ρ‡Ρ‚Π΅Π½ΠΈΠ΅
ДинамичСский Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹[Π˜ΠΌΡΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ] Низкая ΠŸΠΎΠ»Π½Ρ‹ΠΉ доступ

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ использовании динамичСского обращСния Ρ‡Π΅Ρ€Π΅Π· ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ†ΠΈΡŽ Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹[Имя] ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ пСрСмСнная Имя содСрТит Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ имя элСмСнта Ρ„ΠΎΡ€ΠΌΡ‹, ΠΈΠ½Π°Ρ‡Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ошибка индСксации.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ Ρ„ΠΎΡ€ΠΌΡ‹. Они часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ·Π²Π½Π΅. Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° выполняСтся Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°ΠΌ, Π½ΠΎ ΠΈΡ… значСния доступны Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ„ΠΎΡ€ΠΌΡ‹.

Π Π°Π±ΠΎΡ‚Π° с Ρ‚Π°Π±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ частями ΠΈ списками

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

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ячСйки Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строкС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, какая строка Π°ΠΊΡ‚ΠΈΠ²Π½Π°. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° прСдоставляСт свойство ВСкущаяБтрока для элСмСнтов Ρ‚ΠΈΠΏΠ° Π’Π°Π±Π»ΠΈΡ†Π°. ПослС получСния ссылки Π½Π° строку ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ Π΅Π΅ полю.

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 4

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π° для получСния значСния ΠΈΠ· ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π‘ΡƒΠΌΠΌΠ° Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π’ΠΎΠ²Π°Ρ€Ρ‹:

Если Π’ΠΎΠ²Π°Ρ€Ρ‹.ВСкущаяБтрока <> НСопрСдСлСно Π’ΠΎΠ³Π΄Π°

Π‘ΡƒΠΌΠΌΠ°Π‘Ρ‚Ρ€ΠΎΠΊΠΈ = Π’ΠΎΠ²Π°Ρ€Ρ‹.ВСкущаяБтрока.Π‘ΡƒΠΌΠΌΠ°;

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

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

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ со списками (элСмСнтами Ρ‚ΠΈΠΏΠ° ПолСБписка) ситуация Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ иная. Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ часто Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌΠΈ элСмСнтами. Бвойство Π’Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ массив индСксов ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π² Ρ†ΠΈΠΊΠ»Π΅.

  • πŸ“Š Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ВСкущаяБтрока для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ с ΠΎΠ΄Π½ΠΎΠΉ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ записью.
  • πŸ“ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π’Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅Π‘Ρ‚Ρ€ΠΎΠΊΠΈ для ΠΏΠ°ΠΊΠ΅Ρ‚Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… записСй.
  • ⚑ Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ Ρ†ΠΈΠΊΠ»ΠΎΠ² с ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΊ сСрвСру Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹.

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° отслСТиваСт измСнСния Π² клиСнтской ΠΊΠΎΠΏΠΈΠΈ ΠΈ ΠΏΡ€ΠΈ сохранСнии пСрСдаст Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ строки, Ρ‡Ρ‚ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ.

ДинамичСский доступ ΠΈ ΠΌΠ΅Ρ‚Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях имя Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ, нСизвСстно Π½Π° этапС написания ΠΊΠΎΠ΄Π° ΠΈ опрСдСляСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Для Ρ‚Π°ΠΊΠΈΡ… ситуаций Π² 1Π‘ прСдусмотрСн ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ динамичСского доступа ΠΊ свойствам ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

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

Π˜ΠΌΡΠ Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π° = "Артикул";

Если Бвойство(Π­Ρ‚ΠΎΡ‚ΠžΠ±ΡŠΠ΅ΠΊΡ‚, Π˜ΠΌΡΠ Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°, Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°) Π’ΠΎΠ³Π΄Π°

// Π Π°Π±ΠΎΡ‚Π° со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ

ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ;

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΌ, Π½ΠΎ услоТняСт Π΅Π³ΠΎ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ. Ошибки Π² написании ΠΈΠΌΠ΅Π½ ΠΏΠΎΠ»Π΅ΠΉ Π±ΡƒΠ΄ΡƒΡ‚ выявлСны Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя выполнСния, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ компилятор Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ сущСствованиС свойства, имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π·Π°Π΄Π°Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ динамичСского доступа

ΠŸΡ€ΠΈ частом ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ динамичСским полям рСкомСндуСтся ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ элСмСнтов Ρ„ΠΎΡ€ΠΌΡ‹ Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ³ΠΎ поиска ΠΏΠΎ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹Π€ΠΎΡ€ΠΌΡ‹.

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

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π§Ρ‚Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π½Π΅ Π²Ρ‹Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… Π½Π° Ρ„ΠΎΡ€ΠΌΡƒ, Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ автоматичСскоС ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… с сСрвСра. Π‘Π»Π΅Π΄ΠΈΡ‚Π΅ Π·Π° настройками Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² Π² свойствах Ρ„ΠΎΡ€ΠΌΡ‹.

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° распространСнная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” Ρ€Π°Π±ΠΎΡ‚Π° с Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ значСниями. Если Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ Π΅Ρ‰Π΅ Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ НСопрСдСлСно. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π½Π°Π΄ Ρ‚Π°ΠΊΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Π»ΠΈΠ½Ρƒ строки) ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎΠΌΡƒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ "Если Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ(ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ) Π’ΠΎΠ³Π΄Π°" для бСзопасной ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ, это ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ошибки выполнСния.

Для диагностики ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ встроСнныС срСдства ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ тСхнологичСский ΠΆΡƒΡ€Π½Π°Π» ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Они ΠΏΠΎΠΊΠ°ΠΆΡƒΡ‚, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ тратится Π½Π° клиСнтскиС вычислСния, Π° сколько β€” Π½Π° ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅ сСрвСра.

πŸ’‘

Π“Π»Π°Π²Π½ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ: ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ количСство ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром, выполняя всю Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ отобраТСния ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΈ локально Π½Π° сторонС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы (FAQ)

Как ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°, Ссли ΠΎΠ½ΠΎ скрыто (Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ = Π›ΠΎΠΆΡŒ)?

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

ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ значСния ΠΈΠ· поля Π²Π²ΠΎΠ΄Π° возвращаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π° Π½Π΅ число?

Π­Ρ‚ΠΎ зависит ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°. Если ΠΏΠΎΠ»Π΅ связано с числовым Ρ‚ΠΈΠΏΠΎΠΌ, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ число. Однако, Ссли Π²Ρ‹ ΠΎΠ±Ρ€Π°Ρ‰Π°Π΅Ρ‚Π΅ΡΡŒ ΠΊ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ элСмСнту (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹.ПолС.ВСкст), Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ строковоС прСдставлСниС. ВсСгда провСряйтС Ρ‚ΠΈΠΏ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄ вычислСниями.

МоТно Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π° Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ Π±Π΅Π· записи ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°?

Π”Π°, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΌΠ΅Π½ΡΡ‚ΡŒ значСния Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ сколько ΡƒΠ³ΠΎΠ΄Π½ΠΎ Ρ€Π°Π·. ИзмСнСния Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС Π²Ρ‹Π·ΠΎΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ() ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡ‹ с ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ сохранСния. Π”ΠΎ этого ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° измСнСния ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.

Как бСзопасно ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Ссли строки ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹?

ΠŸΠ΅Ρ€Π΅Π΄ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ ΠΊ свойствам Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки всСгда провСряйтС, Π½Π΅ Ρ€Π°Π²Π½ΠΎ Π»ΠΈ свойство ВСкущаяБтрока Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ НСопрСдСлСно. Π­Ρ‚ΠΎ стандартная ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ошибок ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с пустыми Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ ΠΈΠ»ΠΈ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡ‹.