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

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

Π‘ΡƒΡ‰Π½ΠΎΡΡ‚ΡŒ ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ прСдставлСниС Ρ‚ΠΈΠΏΠ°

Π’ΠΈΠΏ Π‘ΡƒΠ»Π΅Π²ΠΎ Π² Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅ 1Π‘ являСтся ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹ΠΌ Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ€ΠΎΠ²Π½ΠΎ Π΄Π²Π° значСния: Π˜ΡΡ‚ΠΈΠ½Π° (True) ΠΈ Π›ΠΎΠΆΡŒ (False). Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… языков программирования Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня, Π³Π΄Π΅ Π±ΡƒΠ»Π΅Π²Ρ‹ значСния ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒΡΡ числами 0 ΠΈ 1, Π² 1Π‘ это ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Ρ‚ΠΈΠΏΠ° Boolean. ΠŸΡ€ΠΈ объявлСнии ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π±Π΅Π· явного указания Ρ‚ΠΈΠΏΠ° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° автоматичСски опрСдСляСт Π΅Π³ΠΎ контСкстом присваивания, Π½ΠΎ явноС Π΄Π΅ΠΊΠ»Π°Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· Новый Π‘ΡƒΠ»Π΅Π²ΠΎ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Π’Π‘Ρ‚Ρ€ΠΎΠΊΡƒΠ’Π½ΡƒΡ‚Ρ€ обСспСчиваСт ΡΡ‚Ρ€ΠΎΠ³ΡƒΡŽ Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΡŽ.

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ прСдставлСниС этих Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ для быстродСйствия Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ 1Π‘. Когда Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π±ΡƒΠ»Π΅Π²ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² условиях ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° Если, систСма Π½Π΅ выполняСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π½Π° "пустоту" ΠΈΠ»ΠΈ "Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΡΡ‚ΡŒ", ΠΊΠ°ΠΊ это происходит с Ρ‚ΠΈΠΏΠΎΠΌ НСопрСдСлСно. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ всСгда Ρ‡Π΅Ρ‚ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ. Π­Ρ‚ΠΎ свойство Π΄Π΅Π»Π°Π΅Ρ‚ Π±ΡƒΠ»Π΅Π²Ρ‹ΠΉ Ρ‚ΠΈΠΏ ΠΈΠ΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚ΠΎΠΌ для Ρ„Π»Π°Π³ΠΎΠ² состояния, ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ².

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ явноС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊ Ρ‚ΠΈΠΏΡƒ Π‘ΡƒΠ»Π΅Π²ΠΎ ΠΏΡ€ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΎΠ±Ρ‰ΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ нСявных ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π² Ρ†ΠΈΠΊΠ»Π°Ρ….

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

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ инициализация ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

БущСствуСт нСсколько способов ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π±ΡƒΠ»Π΅Π²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈ Π²Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° зависит ΠΎΡ‚ контСкста Π·Π°Π΄Π°Ρ‡ΠΈ. Π‘Π°ΠΌΡ‹ΠΉ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ способ β€” это прямоС присваиваниС Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Π½Ρ‹Ρ… констант Π˜ΡΡ‚ΠΈΠ½Π° ΠΈΠ»ΠΈ Π›ΠΎΠΆΡŒ. Π’Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Ρ‡ΠΈΡ‚Π°Π΅ΠΌ ΠΈ понятСн Π»ΡŽΠ±ΠΎΠΌΡƒ спСциалисту, ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΌΡƒ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ спустя Π΄ΠΎΠ»Π³ΠΎΠ΅ врСмя. Однако Π² динамичСских сцСнариях часто трСбуСтся вычислСниС значСния Π½Π° Π»Π΅Ρ‚Ρƒ.

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

πŸ“Š Как Π²Ρ‹ Ρ‡Π°Ρ‰Π΅ всСго создаСтС Π±ΡƒΠ»Π΅Π²Ρ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅?
ΠŸΡ€ΡΠΌΠΎΠ΅ присваиваниС (Π˜ΡΡ‚ΠΈΠ½Π°/Π›ΠΎΠΆΡŒ)
Π§Π΅Ρ€Π΅Π· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π‘ΡƒΠ»Π΅Π²ΠΎ()
Π§Π΅Ρ€Π΅Π· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ сравнСния (A > B)
Π§Π΅Ρ€Π΅Π· конструктор Π½ΠΎΠ²ΠΎΠ³ΠΎ значСния

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ привСдСния Π² ΠΊΠΎΠ΄Π΅:

Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π€Π»Π°Π³Π° = "Π”Π°";

Π€Π»Π°Π³ = Π‘ΡƒΠ»Π΅Π²ΠΎ(Π‘Ρ‚Ρ€ΠΎΠΊΠ°Π€Π»Π°Π³Π°); // Π’Π΅Ρ€Π½Π΅Ρ‚ Π˜ΡΡ‚ΠΈΠ½Π°

ΠŸΡƒΡΡ‚Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ° = "";

Π€Π»Π°Π³2 = Π‘ΡƒΠ»Π΅Π²ΠΎ(ΠŸΡƒΡΡ‚Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ°); // Π’Π΅Ρ€Π½Π΅Ρ‚ Π›ΠΎΠΆΡŒ

ЧислоНоль = 0;

Π€Π»Π°Π³3 = Π‘ΡƒΠ»Π΅Π²ΠΎ(ЧислоНоль); // Π’Π΅Ρ€Π½Π΅Ρ‚ Π›ΠΎΠΆΡŒ

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΎ возмоТности создания ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ‡Π΅Ρ€Π΅Π· конструктор Ρ‚ΠΈΠΏΠ°, хотя Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ это ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ€Π΅Π΄ΠΊΠΎ ΠΈΠ·-Π·Π° избыточности. Команда Новый Π‘ΡƒΠ»Π΅Π²ΠΎ(Π˜ΡΡ‚ΠΈΠ½Π°) создаст Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π½ΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ читаСмости ΠΊΠΎΠ΄Π° прямоС присваиваниС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π° являСтся ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ стандартом Π² сообщСствС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² 1Π‘.

ЛогичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Ρ‹

Основная сфСра примСнСния Ρ‚ΠΈΠΏΠ° Π‘ΡƒΠ»Π΅Π²ΠΎ β€” это построСниС слоТных логичСских Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ стандартный Π½Π°Π±ΠΎΡ€ логичСских ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ²: И (AND), Π˜Π›Π˜ (OR) ΠΈ НЕ (NOT). ПониманиС ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π° выполнСния этих ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ критичСски Π²Π°ΠΆΠ½ΠΎ для написания ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Ρ… условий. ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ НЕ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π°ΠΈΠ²Ρ‹ΡΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚, Π·Π°Ρ‚Π΅ΠΌ слСдуСт И, ΠΈ Π·Π°ΠΌΡ‹ΠΊΠ°Π΅Ρ‚ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ Π˜Π›Π˜.

ΠŸΡ€ΠΈ написании составных условий всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки для явного указания порядка вычислСний, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Π² ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°Ρ…. Π­Ρ‚ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° ΠΈ страхуСт ΠΎΡ‚ ошибок ΠΏΡ€ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅. НапримСр, Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ А Π˜Π›Π˜ Π’ И Π‘ Π±ΡƒΠ΄Π΅Ρ‚ вычислСно ΠΊΠ°ΠΊ А Π˜Π›Π˜ (Π’ И Π‘), Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ (А Π˜Π›Π˜ Π’) И Π‘. Явная Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠ° устраняСт Π»ΡŽΠ±ΡƒΡŽ Π΄Π²ΡƒΡΠΌΡ‹ΡΠ»Π΅Π½Π½ΠΎΡΡ‚ΡŒ.

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ ОписаниС ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°
И ЛогичСскоС ΡƒΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π˜ΡΡ‚ΠΈΠ½Π°, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли ΠΎΠ±Π° ΠΎΠΏΠ΅Ρ€Π°Π½Π΄Π° Π˜ΡΡ‚ΠΈΠ½Π°. Π˜ΡΡ‚ΠΈΠ½Π° И Π›ΠΎΠΆΡŒ = Π›ΠΎΠΆΡŒ
Π˜Π›Π˜ ЛогичСскоС слоТСниС. Π˜ΡΡ‚ΠΈΠ½Π°, Ссли хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π˜ΡΡ‚ΠΈΠ½Π°. Π›ΠΎΠΆΡŒ Π˜Π›Π˜ Π˜ΡΡ‚ΠΈΠ½Π° = Π˜ΡΡ‚ΠΈΠ½Π°
НЕ ЛогичСскоС ΠΎΡ‚Ρ€ΠΈΡ†Π°Π½ΠΈΠ΅. Π˜Π½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. НЕ Π˜ΡΡ‚ΠΈΠ½Π° = Π›ΠΎΠΆΡŒ
πŸ’‘

Π’ условиях запросов 1Π‘ логичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ языку запросов SQL, Π½ΠΎ синтаксис Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ ΠΏΠΎΠ΄ Ρ€ΡƒΡΡΠΊΠΎΡΠ·Ρ‹Ρ‡Π½ΡƒΡŽ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΉ Π²Π°ΠΆΠ½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ являСтся "Π»Π΅Π½ΠΈΠ²ΠΎΠ΅" вычислСниС (short-circuit evaluation). Если Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ А И Π’ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ А Ρ€Π°Π²Π΅Π½ Π›ΠΎΠΆΡŒ, Ρ‚ΠΎ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ Π’ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒΡΡ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΡƒΠΆΠ΅ ΠΏΡ€Π΅Π΄ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½. Π­Ρ‚ΠΎ свойство ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, размСщая самыС "тяТСлыС" ΠΈΠ»ΠΈ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ условий.

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² ΠΈ нСявная конвСртация

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

НапримСр, ΠΏΡ€ΠΈ сравнСнии числа с Π±ΡƒΠ»Π΅Π²Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ привСсти Π±ΡƒΠ»Π΅Π²ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊ числу (Π³Π΄Π΅ Π˜ΡΡ‚ΠΈΠ½Π° часто трактуСтся ΠΊΠ°ΠΊ 1, Π° Π›ΠΎΠΆΡŒ ΠΊΠ°ΠΊ 0), Π½ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ Π²ΠΎ всСх контСкстах ΠΈ зависит ΠΎΡ‚ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… настроСк компилятора. Π―Π²Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Число() ΠΈΠ»ΠΈ Π‘Ρ‚Ρ€ΠΎΠΊΠ°() являСтся ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠΌ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ Ρ‚ΠΎΠ½Π° ΠΈ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Никогда Π½Π΅ ΠΏΠΎΠ»Π°Π³Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° нСявноС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ значСния Π² число ΠΏΡ€ΠΈ финансовых расчСтах. ВсСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΡΠ²Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Число(Π‘ΡƒΠ»Π΅Π²ΠΎΠ—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅) ΠΈΠ»ΠΈ условный ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ для получСния 1 ΠΈΠ»ΠΈ 0, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок округлСния ΠΈΠ»ΠΈ Π»ΠΎΠ³ΠΈΠΊΠΈ Π² Π±ΡƒΠ΄ΡƒΡ‰ΠΈΡ… обновлСниях ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹.

ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ ситуация Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΏΡ€ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… источников, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ HTTP-запросы ΠΈΠ»ΠΈ тСкстовыС Ρ„Π°ΠΉΠ»Ρ‹. Π‘Ρ‚Ρ€ΠΎΠΊΠ° "true", "1", "yes" ΠΈΠ»ΠΈ "Π΄Π°" Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π°. Бтандартная функция Π‘ΡƒΠ»Π΅Π²ΠΎ() ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Ρ‚ΡŒ всС эти Π²Π°Ρ€ΠΈΠ°Ρ†ΠΈΠΈ. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях рСкомСндуСтся ΠΏΠΈΡΠ°Ρ‚ΡŒ собствСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ-ΠΎΠ±Π΅Ρ€Ρ‚ΠΊΠΈ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ сопоставлСниС со списком допустимых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

Вонкости Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π‘ΡƒΠ»Π΅Π²ΠΎ()

Ѐункция Π‘ΡƒΠ»Π΅Π²ΠΎ() Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π›ΠΎΠΆΡŒ для Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ НСопрСдСлСно, ΠŸΡƒΡΡ‚Π°ΡΠ‘Ρ‚Ρ€ΠΎΠΊΠ° ΠΈ Число 0. Для Π»ΡŽΠ±Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π°Ρ пустыС массивы ΠΈΠ»ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ, ΠΎΠ½Π° Π²Π΅Ρ€Π½Π΅Ρ‚ Π˜ΡΡ‚ΠΈΠ½Π°, Ρ‡Ρ‚ΠΎ часто становится ΡΡŽΡ€ΠΏΡ€ΠΈΠ·ΠΎΠΌ для программистов.

ИспользованиС Π² запросах ΠΈ ΠΎΡ‚Π±ΠΎΡ€Π°Ρ…

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

ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ использования выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: условиС Π² Π±Π»ΠΎΠΊΠ΅ Π“Π”Π• дополняСтся ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€-Ρ„Π»Π°Π³. Если Ρ„Π»Π°Π³ установлСн Π² Π˜ΡΡ‚ΠΈΠ½Π°, примСняСтся Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅; Ссли Π›ΠΎΠΆΡŒ β€” ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ игнорируСтся. Π­Ρ‚ΠΎ достигаСтся Π·Π° счСт конструкции Π²ΠΈΠ΄Π° И (&ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π€Π»Π°Π³Π° = Π›ΠžΠ–Π¬ Π˜Π›Π˜ ПолС.Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ = &ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π—Π½Π°Ρ‡Π΅Π½ΠΈΡ).

  • πŸš€ ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ: Π Π°Π·ΠΌΠ΅Ρ‰Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π±ΡƒΠ»Π΅Π²Ρ‹Ρ… Ρ„Π»Π°Π³ΠΎΠ² Π² Π½Π°Ρ‡Π°Π»Π΅ условий Π“Π”Π•, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€ запросов ΠΌΠΎΠ³ сразу ΠΎΡ‚ΡΠ΅Ρ‡ΡŒ лишниС Π²Π΅Ρ‚Π²ΠΈ ΠΏΠ»Π°Π½Π° выполнСния.
  • πŸ›‘οΈ Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ: Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запроса для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π±ΡƒΠ»Π΅Π²Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, вмСсто подстановки тСкста нСпосрСдствСнно Π² запрос, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ SQL-ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΠΉ (хотя Π² 1Π‘ это ΠΌΠ΅Π½Π΅Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ, Π½ΠΎ являСтся Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ).
  • πŸ“‰ Π§ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ: Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ слишком слоТных Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… конструкций с Π˜Π›Π˜ Π²Π½ΡƒΡ‚Ρ€ΠΈ запроса; ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΡ‰Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΄Π²Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… запроса ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΈΡ… UNION, Ссли Π»ΠΎΠ³ΠΈΠΊΠ° становится слишком Π·Π°ΠΏΡƒΡ‚Π°Π½Π½ΠΎΠΉ.

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ РСгистрНакоплСния.ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ, Π±ΡƒΠ»Π΅Π²Ρ‹ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для указания Ρ€Π΅ΠΆΠΈΠΌΠ° расчСта (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π³ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π°). ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π½Π΅Π²Π΅Ρ€Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π² Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС выполнСния запроса, поэтому ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Ρ‚ΠΈΠΏΠΎΠ² Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° обязатСлСн.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠ°

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

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

β˜‘οΈ Π§Π΅ΠΊ-лист ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π±ΡƒΠ»Π΅Π²ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Π² Π½ΠΎΠ²Ρ‹Ρ… вСрсиях 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ (8.3.20+). ВсСгда провСряйтС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ вСрсии ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ссли Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌΠΈ конфигурациями ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΡŽ Π½Π° Π½ΠΎΠ²Ρ‹Π΅ Ρ€Π΅Π»ΠΈΠ·Ρ‹.

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° ошибка β€” это избыточная ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ Π²ΠΈΠ΄Π° Если Π€Π»Π°Π³ = Π˜ΡΡ‚ΠΈΠ½Π° Π’ΠΎΠ³Π΄Π° являСтся ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΠΉ. Достаточно Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Если Π€Π»Π°Π³ Π’ΠΎΠ³Π΄Π°. Π›ΠΈΡˆΠ½ΠΈΠ΅ сравнСния Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°Π³Ρ€ΠΎΠΌΠΎΠΆΠ΄Π°ΡŽΡ‚ ΠΊΠΎΠ΄, Π½ΠΎ ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ слСгка ΡΠ½ΠΈΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π² высоконагруТСнных Ρ†ΠΈΠΊΠ»Π°Ρ…. Π‘Π΅ΠΌΠ°Π½Ρ‚ΠΈΠΊΠ° языка 1Π‘ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π±ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ Π² качСствС условия.

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

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Π‘ΡƒΠ»Π΅Π²ΠΎ Π² качСствС ΠΊΠ»ΡŽΡ‡Π° Π² массивС ΠΈΠ»ΠΈ структурС?

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

Π§Π΅ΠΌ отличаСтся функция Π‘ΡƒΠ»Π΅Π²ΠΎ() ΠΎΡ‚ явного привСдСния Ρ‚ΠΈΠΏΠ°?

Ѐункция Π‘ΡƒΠ»Π΅Π²ΠΎ() выполняСт Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ значСния (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π΅ΡˆΠ°Π΅Ρ‚, являСтся Π»ΠΈ нСпустая строка истиной). Π―Π²Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠ° Ρ‡Π΅Ρ€Π΅Π· ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Как Π² запросах ΠΈΠ»ΠΈ конструктор Π² ΠΊΠΎΠ΄Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ исходноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ совмСстимо ΠΈΠ»ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎ строгого прСобразования. Ѐункция Π±ΠΎΠ»Π΅Π΅ "всСядна" ΠΈ ΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ошибки Π²Π²ΠΎΠ΄Π°, прСвращая ΠΈΡ… Π² Π›ΠΎΠΆΡŒ, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ строгоС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ нСсовмСстимости Ρ‚ΠΈΠΏΠΎΠ².

Как ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π±ΡƒΠ»Π΅Π²ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΎΡ‚Ρ‡Π΅Ρ‚Π° ΠΈΠ»ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ?

ΠŸΡ€ΠΈ создании ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² ΠΌΠ°ΠΊΠ΅Ρ‚Π°Ρ… ΠΈΠ»ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ… настроСк, Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… слСдуСт явно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π‘ΡƒΠ»Π΅Π²ΠΎ. Π’ ΠΊΠΎΠ΄Π΅ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΎΡ‚Ρ‡Π΅Ρ‚Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ: ΠžΡ‚Ρ‡Π΅Ρ‚.ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹.ΠŸΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒΠΡƒΠ»Π΅Π²Ρ‹Π΅ΠžΡΡ‚Π°Ρ‚ΠΊΠΈ = Π˜ΡΡ‚ΠΈΠ½Π°. Если ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ пСрСдаСтся Ρ‡Π΅Ρ€Π΅Π· строку соСдинСния ΠΈΠ»ΠΈ внСшний Π²Ρ‹Π·ΠΎΠ², ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ строковоС прСдставлСниС ("True", "False") ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ прСобразуСтся Π½Π° ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π΅ΠΉ сторонС.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ сравнСниС НСопрСдСлСно ΠΈ Π›ΠΎΠΆΡŒ Π΄Π°Π΅Ρ‚ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚?

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ НСопрСдСлСно Π½Π΅ Ρ€Π°Π²Π½ΠΎ Π›ΠΎΠΆΡŒ. Π­Ρ‚ΠΎ Ρ€Π°Π·Π½Ρ‹Π΅ сущности. НСопрСдСлСно ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ отсутствиС значСния, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π›ΠΎΠΆΡŒ β€” это ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ логичСскоС состояниС. ΠŸΡ€ΠΈ сравнСнии НСопрСдСлСно = Π›ΠΎΠΆΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π›ΠΎΠΆΡŒ. ΠŸΡ€ΠΈ использовании Π² условии Если НСопрСдСлСно Π’ΠΎΠ³Π΄Π° Π²Π΅Ρ‚ΠΊΠ° Π½Π΅ выполнится, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ условиС Π½Π΅ истинно, Π½ΠΎ это Π½Π΅ Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‡Ρ‚ΠΎ явная ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ.