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

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

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° срСды Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈ настройка ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π°

Начало любой Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π»Π΅ΠΆΠΈΡ‚ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ мСста. Запуск ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π²Ρ‹Π±ΠΎΡ€Π° Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π³Π΄Π΅ для написания ΠΊΠΎΠ΄Π° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ€Π΅ΠΆΠΈΠΌ Β«1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅Β» для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΈ сам Β«ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Β» для измСнСния структуры. Π’Π°ΠΆΠ½ΠΎ сразу Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Ρ†Π²Π΅Ρ‚ΠΎΠ²ΡƒΡŽ схСму Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова, ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сниТаСт ΡƒΡ‚ΠΎΠΌΠ»ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ Π³Π»Π°Π· ΠΏΡ€ΠΈ Π΄ΠΎΠ»Π³ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅.

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Никогда Π½Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΠΉΡ‚Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π² Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π· ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ тСстирования Π² ΠΊΠΎΠΏΠΈΠΈ. Ошибки Π² структурС ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π±Π°Π·Ρƒ нСработоспособной, Π° восстановлСниС ΠΈΠ· Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠΈ Π·Π°ΠΉΠΌΠ΅Ρ‚ Π΄Ρ€Π°Π³ΠΎΡ†Π΅Π½Π½ΠΎΠ΅ врСмя.
πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΠΆΠΈΠΌ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° (F10, F11) с самого Π½Π°Ρ‡Π°Π»Π° написания слоТных Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π° Π½Π΅ Π³Π°Π΄Π°Ρ‚ΡŒ ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ ошибки постфактум.

АрхитСктура прилоТСния ΠΈ Π²Ρ‹Π±ΠΎΡ€ мСста для ΠΊΠΎΠ΄Π°

Один ΠΈΠ· самых частых вопросов Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ²: Β«Π“Π΄Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄?Β». ΠžΡ‚Π²Π΅Ρ‚ зависит ΠΎΡ‚ Ρ‚ΠΈΠΏΠ° Ρ€Π΅ΡˆΠ°Π΅ΠΌΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ. Если Π»ΠΎΠ³ΠΈΠΊΠ° относится ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, расчСт суммы ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ количСства Ρ‚ΠΎΠ²Π°Ρ€Π°, ΠΊΠΎΠ΄ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° этого Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. Однако, Ссли функция ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² дСсяткС Ρ€Π°Π·Π½Ρ‹Ρ… мСст, Π΅Ρ‘ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ вынСсти Π² ΠΎΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ контСкстом Π²Ρ‹Π·ΠΎΠ²Π° (ΠΊΠ»ΠΈΠ΅Π½Ρ‚, сСрвСр ΠΈΠ»ΠΈ ΠΎΠ±Π°).

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

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

πŸ“Š Π“Π΄Π΅ Π²Ρ‹ Ρ‡Π°Ρ‰Π΅ всСго Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Π΅Ρ‚Π΅ бизнСс-Π»ΠΎΠ³ΠΈΠΊΡƒ?
Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°
Π’ ΠΎΠ±Ρ‰Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅
Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ Ρ„ΠΎΡ€ΠΌΡ‹
Π’ ΠΌΠΎΠ΄ΡƒΠ»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

Рассмотрим основныС Ρ‚ΠΈΠΏΡ‹ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΈ ΠΈΡ… Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½ΠΈΠΆΠ΅:

Π’ΠΈΠΏ модуля ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚ выполнСния ОсновноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π‘Π΅Ρ€Π²Π΅Ρ€ (Ρ‡Π°Ρ‰Π΅ всСго) ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° событий ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΠΊΠ»Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π—Π°ΠΏΠΈΡΡŒ, ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅)
ΠœΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ ΠšΠ»ΠΈΠ΅Π½Ρ‚ / Π‘Π΅Ρ€Π²Π΅Ρ€ Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнтами интСрфСйса, Ρ€Π΅Π°ΠΊΡ†ΠΈΠ΅ΠΉ Π½Π° дСйствия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ
ΠžΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠšΠ»ΠΈΠ΅Π½Ρ‚ / Π‘Π΅Ρ€Π²Π΅Ρ€ / Π’Π½Π΅ΡˆΠ½Π΅Π΅ соСдинСниС ΠŸΠ΅Ρ€Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ бизнСс-Π»ΠΎΠ³ΠΈΠΊΠ°, Π½Π΅ привязанная ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ
ΠœΠΎΠ΄ΡƒΠ»ΡŒ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° Π‘Π΅Ρ€Π²Π΅Ρ€ Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠ΅ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (поиск, созданиС)

Бинтаксис встроСнного языка ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ

ВстроСнный язык 1Π‘ (1Script) ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ русскоязычным синтаксисом, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π³ΠΎ понятным для бизнСс-ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ строгой дисциплины ΠΎΡ‚ программиста. ОбъявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… происходит динамичСски, Ρ‚ΠΈΠΏ опрСдСляСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ, присвоСнным ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ выполнСния. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, явноС ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² Π² коммСнтариях ΠΈΠ»ΠΈ использованиС строгих ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎΡƒΠ»ΠΎΠ²ΠΈΠΌΡ‹Ρ… ошибок.

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

ΠŸΠ΅Ρ€Π΅ΠΌ Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Π°ΡΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ;

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

// ΠŸΡ€ΠΈΠΌΠ΅Ρ€ объявлСния локальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ

ΠŸΠ΅Ρ€Π΅ΠΌ Π‘ΡƒΠΌΠΌΠ°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°;

Π‘ΡƒΠΌΠΌΠ°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° = 0;

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€ΠΎΠ² ΠΈΠ· Π’ΠΎΠ²Π°Ρ€Ρ‹ Π¦ΠΈΠΊΠ»

Π‘ΡƒΠΌΠΌΠ°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° = Π‘ΡƒΠΌΠΌΠ°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° + Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π’ΠΎΠ²Π°Ρ€ΠΎΠ².Π‘ΡƒΠΌΠΌΠ°;

ΠšΠΎΠ½Π΅Ρ†Π¦ΠΈΠΊΠ»Π°;

Π˜Ρ‚ΠΎΠ³ΠΎΠ²Π°ΡΠ‘ΡƒΠΌΠΌΠ° = Π‘ΡƒΠΌΠΌΠ°Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°;

ΠšΠΎΠ½Π΅Ρ†ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹

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

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (справочник, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚) Π² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ пСрСдаСтся ссылка Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π° Π½Π΅ Π΅Π³ΠΎ копия. ИзмСнСниС свойств ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ повлияСт Π½Π° ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π», Ссли Π½Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡΠ²Π½ΡƒΡŽ копию.

НаписаниС эффСктивных запросов ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…

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

ΠŸΡ€ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ тСкста запроса ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ конструктор запросов, встроСнный Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΊΠΎΠ΄Π°. Он ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ соСдинСния Ρ‚Π°Π±Π»ΠΈΡ† (JOIN), Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ ΠΈ объСдинСния. Однако слСпо Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ конструктору Π½Π΅ стоит: всСгда провСряйтС ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ тСкст Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π»ΠΈΡˆΠ½ΠΈΡ… ΠΏΠΎΠ»Π΅ΠΉ Π² спискС Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… соСдинСний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.

  • πŸš€ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ для ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Ρ… вычислСний ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими объСмами Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Π²Ρ‹Π±ΠΎΡ€ΠΊΡƒ.
  • πŸ” ВсСгда примСняйтС ΠΎΡ‚Π±ΠΎΡ€Ρ‹ ΠΏΠΎ полям, входящим Π² ΠΊΠ»ΡŽΡ‡ΠΈ индСксации, Ρ‡Ρ‚ΠΎΠ±Ρ‹ запрос использовал индСксы Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….
  • β›” Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ конструкции Π•Π‘Π’Π¬NULL Π² условиях соСдинСния, Ссли это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это часто ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΠΎΠ»Π½ΠΎΠΌΡƒ ΡΠΊΠ°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Ρ‚Π°Π±Π»ΠΈΡ†.

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ запросов Π² Ρ†ΠΈΠΊΠ»Π΅ β€” Π³Ρ€ΡƒΠ±Π΅ΠΉΡˆΠ°Ρ ошибка Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ эффСкту Β«N+1 запроса», ΠΊΠΎΠ³Π΄Π° вмСсто ΠΎΠ΄Π½ΠΎΠΉ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ систСма Π΄Π΅Π»Π°Π΅Ρ‚ сотни ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΉ ΠΊ Π‘Π£Π‘Π”, Ρ‡Ρ‚ΠΎ ΠΊΡ€Π°Ρ‚Π½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ врСмя выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.
πŸ’‘

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

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

Π§ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° Π²Π°ΠΆΠ½Π΅Π΅ Π΅Π³ΠΎ краткости. Π’ ΠΊΠΎΠ»Π»Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ соблюдСниС Π΅Π΄ΠΈΠ½Ρ‹Ρ… стандартов naming convention (соглашСний ΠΎΠ± ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΈ) являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ условиСм. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ понятно, отраТая ΠΈΡ… ΡΡƒΡ‚ΡŒ, Π° Π½Π΅ просто ΠŸΠ΅Ρ€Π΅ΠΌ1 ΠΈΠ»ΠΈ Π’Π°Π±Π—Π½Π°Ρ‡. ИспользованиС прСфиксов для Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π”ΠΎΠΊ для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, Π‘ΠΏΡ€ для справочника) ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ быстрСС ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² Π»ΠΎΠ³ΠΈΠΊΠ΅.

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° β€” это искусство баланса. ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ ΠΏΠΎΡ‡Π΅ΠΌΡƒ сдСлано ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ, Π° Π½Π΅ Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠ΄ (это Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ понятно ΠΈΠ· ΠΈΠΌΠ΅Π½ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ структуры). ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ удСляйтС Π±Π»ΠΎΠΊΠ°ΠΌ слоТной бизнСс-Π»ΠΎΠ³ΠΈΠΊΠΈ, Π³Π΄Π΅ прямоС ΠΏΡ€ΠΎΡ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° осмыслСниС.

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

β˜‘οΈ Аудит качСства ΠΊΠΎΠ΄Π°

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

ΠžΡ‚Π»Π°Π΄ΠΊΠ°, тСстированиС ΠΈ оптимизация ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

ΠŸΡ€ΠΎΡ†Π΅ΡΡ написания ΠΊΠΎΠ΄Π° Π½Π΅Ρ€Π°Π·Ρ€Ρ‹Π²Π½ΠΎ связан с Π΅Π³ΠΎ тСстированиСм. ВстроСнный ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ 1Π‘ позволяСт пошагово Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠΎΠ΄, ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Β«Π’ΠΎΡ‡ΠΊΠ°Ρ… наблюдСния» ΠΈ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ стСк Π²Ρ‹Π·ΠΎΠ²ΠΎΠ². Π£ΠΌΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ останова (breakpoints) экономит часы Ρ€ΡƒΡ‚ΠΈΠ½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π»ΠΎΠ³ΠΈΠΊΠΈ.

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

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

Как ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ошибки Π² 1Π‘?

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

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ клиСнтским ΠΈ сСрвСрным контСкстом?

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

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ?

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

Как ΡƒΡΠΊΠΎΡ€ΠΈΡ‚ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹ΠΉ ΠΎΡ‚Ρ‡Π΅Ρ‚?

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

МоТно Π»ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΈΠ· ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π±Π΅Π· ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов?

НСт, для Π²Ρ‹Π·ΠΎΠ²Π° сСрвСрной ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈΠ· клиСнтского ΠΊΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово «Экспорт» Π² описании ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΈ явно ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ контСкст Π²Ρ‹Π·ΠΎΠ²Π°, ΠΈΠ½Π°Ρ‡Π΅ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ компиляции.