Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8 Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ программиста Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ понимания алгоритмичСской Π»ΠΎΠ³ΠΈΠΊΠΈ. Одним ΠΈΠ· Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… инструмСнтов управлСния ΠΏΠΎΡ‚ΠΎΠΊΠΎΠΌ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ являСтся условный ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€. Π’ языкС запросов ΠΈ встроСнном языкС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎΠ½ прСдставлСн конструкциСй Когда-Π’ΠΎΠ³Π΄Π°. Π­Ρ‚Π° структура позволяСт Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΈΠΊΠΈ Π² зависимости ΠΎΡ‚ выполнСния Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… условий.

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

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

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ синтаксис ΠΈ структура ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ Когда-Π’ΠΎΠ³Π΄Π° слуТит для Π²Ρ‹Π±ΠΎΡ€Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² дСйствий. Она Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ условия. Если ΠΎΠ½ΠΎ истинно, выполняСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π°, ΠΈ дальнСйшая ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° прСкращаСтся. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ порядок условий ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Бинтаксис ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° строго Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΠΈ языка. КаТдая Π²Π΅Ρ‚ΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π½Π°Ρ‡ΠΈΠ½Π°Ρ‚ΡŒΡΡ с ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова Когда, Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ слСдуСт логичСскоС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅. Π”Π°Π»Π΅Π΅ ΠΈΠ΄Π΅Ρ‚ слово Π’ΠΎΠ³Π΄Π° ΠΈ Π±Π»ΠΎΠΊ инструкций. Π—Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ вся конструкция ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом ΠšΠΎΠ½Π΅Ρ†Π•ΡΠ»ΠΈ. Для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ случая, ΠΊΠΎΠ³Π΄Π° Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· условий Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π±Π»ΠΎΠΊ Π˜Π½Π°Ρ‡Π΅.

Рассмотрим ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ статуса Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. Π’ этом сцСнарии ΠΌΡ‹ опрСдСляСм доступныС дСйствия Π² зависимости ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ состояния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Если БтатусДокумСнта = БтатусыДокумСнтов.ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ Π’ΠΎΠ³Π΄Π°

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½, измСнСния Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Ρ‹");

Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ БтатусДокумСнта = БтатусыДокумСнтов.Π§Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊ Π’ΠΎΠ³Π΄Π°

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("Доступно Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ содСрТимого");

Π˜Π½Π°Ρ‡Π΅

Π‘ΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ("НСизвСстный статус Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°");

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

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ нСсколько условий Когда подряд Π±Π΅Π· Π˜Π½Π°Ρ‡Π΅Π•ΡΠ»ΠΈ, систСма ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ ΠΈΡ… всС нСзависимо. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎ часто являСтся ошибкой Π»ΠΎΠ³ΠΈΠΊΠΈ.
πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ отступы (Ρ‚Π°Π±ΡƒΠ»ΡΡ†ΠΈΡŽ) для Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ раздСлСния Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ΄Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ условий. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ слоТных Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ².

ЛогичСскиС выраТСния ΠΈ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Ρ‹ условий

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

ΠŸΡ€ΠΈ написании условий часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ И, Π˜Π›Π˜ ΠΈ НЕ. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ расстановка скобок ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ двусмыслСнности Π² Ρ‡Ρ‚Π΅Π½ΠΈΠΈ ΠΊΠΎΠ΄Π° компилятором.

НапримСр, ΠΏΡ€ΠΈ расчСтС скидки Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‡Π΅ΡΡ‚ΡŒ сумму Π·Π°ΠΊΠ°Π·Π° ΠΈ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡŽ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π›ΠΎΠ³ΠΈΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  • πŸ” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ, являСтся Π»ΠΈ сумма большС ΠΏΠΎΡ€ΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ значСния.
  • 🏷️ УбСТдаСмся, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ относится ΠΊ ΠΎΠΏΡ‚ΠΎΠ²ΠΎΠΉ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ.
  • 🚫 Π˜ΡΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ случаи, ΠΊΠΎΠ³Π΄Π° Ρ‚ΠΎΠ²Π°Ρ€ являСтся Π°ΠΊΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ.

РСализация Ρ‚Π°ΠΊΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ условий. Если Π·Π°Π±Ρ‹Ρ‚ΡŒ скобки, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ И ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‡Π΅ΠΌ Π˜Π›Π˜, Ρ‡Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ ΠΈΡ‚ΠΎΠ³ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ вычислСний.

Если (Π‘ΡƒΠΌΠΌΠ°Π—Π°ΠΊΠ°Π·Π° > 100000 И Π’ΠΈΠΏΠšΠ»ΠΈΠ΅Π½Ρ‚Π° = ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ.Π’ΠΈΠΏΡ‹ΠšΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ².ΠžΠΏΡ‚) Π˜Π›Π˜

(Π‘ΡƒΠΌΠΌΠ°Π—Π°ΠΊΠ°Π·Π° > 500000) Π’ΠΎΠ³Π΄Π°

БтавкаНДБ = 0.10;

Π˜Π½Π°Ρ‡Π΅

БтавкаНДБ = 0.20;

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

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ явно Π²Ρ‹Π΄Π΅Π»ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Ρ‹Π΅ Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠ΄ самодокумСнтируСмым ΠΈ сниТаСт риск ошибок ΠΏΡ€ΠΈ Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΉ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°.

πŸ“Š Какой ΡΡ‚ΠΈΠ»ΡŒ написания условий Π²Ρ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚Π΅?
ΠžΠ΄Π½ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ слоТныС условия
ΠœΠ½ΠΎΠ³ΠΎΡΡ‚Ρ€ΠΎΡ‡Π½Ρ‹Π΅ с явными скобками
Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π’Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡ‚ΡŒ конструкций ΠΈ слоТныС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹

Π’ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡Π°Ρ… бизнСс-Π»ΠΎΠ³ΠΈΠΊΠΈ часто трСбуСтся многоуровнСвая ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ конструкции Когда-Π’ΠΎΠ³Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π΅Ρ€Π΅Π²ΡŒΡ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ любой Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹. Однако чрСзмСрная Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΠ»ΠΎΠΆΠ½ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΊΠΎΠ΄Π°.

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

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ расчСта ΠΏΡ€Π΅ΠΌΠΈΠΈ сотрудника, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ зависит ΠΎΡ‚ ΠΎΡ‚Π΄Π΅Π»Π°, стаТа ΠΈ выполнСния ΠΏΠ»Π°Π½Π°. Π—Π΄Π΅ΡΡŒ Π½Π°ΠΌ потрСбуСтся влоТСнная структура для уточнСния коэффициСнтов.

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ влоТСнности ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌΡ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ДСйствиС
1 Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Π»ΠΈ ΠΏΠ»Π°Π½ ΠΏΡ€ΠΎΠ΄Π°ΠΆ? Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ расчСт ΠΈΠ»ΠΈ нулСвая прСмия
2 ΠžΡ‚Π΄Π΅Π» сотрудника Π’Ρ‹Π±ΠΎΡ€ коэффициСнта ΠΎΡ‚Π΄Π΅Π»Π°
3 Π‘Ρ‚Π°ΠΆ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Надбавка Π·Π° выслугу Π»Π΅Ρ‚
4 НаличиС взысканий Π¨Ρ‚Ρ€Π°Ρ„Π½ΠΎΠΉ коэффициСнт

ΠŸΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΎΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠΌ. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΠ° Π‘ΡƒΠ»Π΅Π²ΠΎ для хранСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ ΠΏΠ΅Ρ€Π΅Π΄ основным Π±Π»ΠΎΠΊΠΎΠΌ условий.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Глубокая Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡ‚ΡŒ услоТняСт ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ. Если Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π±ΠΎΠ»Π΅Π΅ 4 ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ отступов, Π·Π°Π΄ΡƒΠΌΠ°ΠΉΡ‚Π΅ΡΡŒ ΠΎ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅ ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ вынСсСнии Π»ΠΎΠ³ΠΈΠΊΠΈ Π² ΠΎΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ.
ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° влоТСнности

ВмСсто Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠΉ влоТСнности ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ с досрочным Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠΌ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Если условиС Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ β€” сразу Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΈΠ»ΠΈ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, избСгая лишнСго уровня влоТСнности.

ИспользованиС Π² запросах ΠΈ Π‘ΠšΠ”

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

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования Π² запросС для формирования статуса заявки:

ВЫБРАВЬ

Заявки.Бсылка,

Заявки.Π‘ΡƒΠΌΠΌΠ°,

Π’Π«Π‘ΠžΠ 

ΠšΠžΠ“Π”Π Заявки.Π‘ΡƒΠΌΠΌΠ° > 1000000 Π’ΠžΠ“Π”Π "ΠšΡ€ΡƒΠΏΠ½Ρ‹ΠΉ Π·Π°ΠΊΠ°Π·"

ΠšΠžΠ“Π”Π Заявки.Π‘ΡƒΠΌΠΌΠ° > 100000 Π’ΠžΠ“Π”Π "Π‘Ρ€Π΅Π΄Π½ΠΈΠΉ Π·Π°ΠΊΠ°Π·"

Π˜ΠΠΠ§Π• "МСлкий Π·Π°ΠΊΠ°Π·"

КАК ΠšΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΡΠ—Π°ΠΊΠ°Π·Π°

Π˜Π—

Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚.Π—Π°ΡΠ²ΠΊΠ°ΠšΠ»ΠΈΠ΅Π½Ρ‚Π° КАК Заявки

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ позволяСт пСрСнСсти Π»ΠΎΠ³ΠΈΠΊΡƒ классификации Π½Π° сторону сСрвСра Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ². Π”Π°Π½Π½Ρ‹Π΅ сразу приходят Π² Π³ΠΎΡ‚ΠΎΠ²ΠΎΠΌ Π²ΠΈΠ΄Π΅, ΠΈ Π½Π΅ трСбуСтся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π² Ρ†ΠΈΠΊΠ»Π΅ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅.

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

πŸ’‘

ИспользованиС Π’Π«Π‘ΠžΠ -ΠšΠžΠ“Π”Π Π² запросах сниТаСт Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° клиСнтскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ ΠΈ классификация происходят Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π‘Π£Π‘Π”.

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ситуаций ΠΈ Π˜Π½Π°Ρ‡Π΅

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

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

Π’ Π±Π»ΠΎΠΊΠ΅ Π˜Π½Π°Ρ‡Π΅ рСкомСндуСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:

  • πŸ“ Π—Π°ΠΏΠΈΡΡŒ сообщСния Π² ΠΆΡƒΡ€Π½Π°Π» рСгистрации для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π°.
  • πŸ›‘ ΠŸΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с понятным сообщСниСм ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ.
  • πŸ”„ Бброс Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² бСзопасноС состояниС ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Π­Ρ‚ΠΎ особСнно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, ΠΏΡ€ΠΈΡˆΠ΅Π΄ΡˆΠΈΠΌΠΈ ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… источников ΠΈΠ»ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΈΠ· Ρ„Π°ΠΉΠ»ΠΎΠ², Π³Π΄Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… вСрсиях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ спСцифичСских Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… совмСстимости ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ. Явная инициализация Π² Π²Π΅Ρ‚ΠΊΠ΅ Π˜Π½Π°Ρ‡Π΅ устраняСт эту Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΡΡ‚ΡŒ.

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

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ частыС ошибки

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с большими массивами Π΄Π°Π½Π½Ρ‹Ρ… порядок условий Π² конструкции Когда-Π’ΠΎΠ³Π΄Π° влияСт Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ выполнСния. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° провСряСт условия ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, поэтому Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ вСроятныС условия слСдуСт Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π² Π½Π°Ρ‡Π°Π»Π΅ списка.

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

РаспространСнныС ошибки ΠΏΡ€ΠΈ использовании условных ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²:

ΠŸΡƒΡ‚Π°Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ присваивания "=" ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ сравнСния Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… контСкстах, хотя Π² 1Π‘ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ΄Π½ΠΎ Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ равСнство, Π²Π°ΠΆΠ½ΠΎ Π½Π΅ ΠΏΡƒΡ‚Π°Ρ‚ΡŒ Π΅Π³ΠΎ с логичСским присваиваниСм Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… языках ΠΏΡ€ΠΈ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ΄Π°.

Π’Π°ΠΊΠΆΠ΅ часто встрСчаСтся Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ условий. Когда ΠΎΠ΄Π½ΠΎ условиС являСтся подмноТСством Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ, Π½ΠΎ записано Π½ΠΈΠΆΠ΅ ΠΏΠΎ списку, ΠΎΠ½ΠΎ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ выполнится. Π­Ρ‚ΠΎ "ΠΌΠ΅Ρ€Ρ‚Π²Ρ‹ΠΉ ΠΊΠΎΠ΄", ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡƒΡ‚Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².

β˜‘οΈ Π§Π΅ΠΊ-лист ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ условий

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

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

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Когда-Π’ΠΎΠ³Π΄Π° Π² выраТСниях?

Π”Π°, конструкция Π’Π«Π‘ΠžΠ ...ΠšΠžΠ“Π”Π ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ нСпосрСдствСнно Π² выраТСниях, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ присваивании значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Она Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π²Π΅Ρ‚ΠΊΠΈ.

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Если ΠΈ Π’Ρ‹Π±ΠΎΡ€ Π² запросах?

Π’ языкС запросов 1Π‘ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ синтаксис Π’Π«Π‘ΠžΠ ...ΠšΠžΠ“Π”Π...Π’ΠžΠ“Π”Π. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ Если Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Π° для встроСнного языка. Π’ запросах Если Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ Π΅ΡΡ‚ΡŒ Π² ΠΊΠΎΠ΄Π΅ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ.

Как ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Null (НСопрСдСлСно) Π² условиях?

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ с НСопрСдСлСно Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ стандартно. Однако рСкомСндуСтся явно ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΡΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΎ() ΠΏΠ΅Ρ€Π΅Π΄ сравнСниСм, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ.

Допустима Π»ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ 10 ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ?

ВСхничСски ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ТСсткого ограничСния Π½Π° Π³Π»ΡƒΠ±ΠΈΠ½Ρƒ влоТСнности, Π½ΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния поддСрТиваСмости ΠΊΠΎΠ΄Π° это считаСтся Π°Π½Ρ‚ΠΈΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ΠΎΠΌ. Π’Π°ΠΊΠΈΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Ρ‚ΡŒ.