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

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

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

ОсновноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ Π»ΠΎΠ³ΠΈΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ констант

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

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

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

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ стоит ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ константы ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ Π² бизнСс-Π»ΠΎΠ³ΠΈΠΊΠ΅. Они часто Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‚ Π² Ρ€ΠΎΠ»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ Ρ€Π΅ΠΆΠΈΠΌΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ систСмы. НапримСр, Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ значСния Π² константС Β«Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΠ£ΠΏΡ€ΠΎΡ‰Π΅Π½Π½ΡƒΡŽΠ‘ΠΈΡΡ‚Π΅ΠΌΡƒΠΠ°Π»ΠΎΠ³ΠΎΠΎΠ±Π»ΠΎΠΆΠ΅Π½ΠΈΡΒ» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΊΠ°Ρ€Π΄ΠΈΠ½Π°Π»ΡŒΠ½ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ расчСта Π½Π°Π»ΠΎΠ³ΠΎΠ² Π²ΠΎ всСм Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅. ИзмСнСниС Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ„Π»Π°Π³Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ осознанно, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°Π΅Ρ‚ историчСскиС Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ Π±ΡƒΠ΄ΡƒΡ‰ΠΈΠ΅ расчСты.

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ прСфиксы Π² ΠΈΠΌΠ΅Π½Π°Ρ… констант (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, «Настройка_Β», Β«ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€_Β»), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡΡ‚ΡŒ ΠΈΡ… ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… Π² Π΄Π΅Ρ€Π΅Π²Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π­Ρ‚ΠΎ упростит Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΡŽ ΠΏΡ€ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ large-scale ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

Π’ΠΈΠ΄Ρ‹ констант: простыС, составныС ΠΈ пСриодичСскиС

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

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

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

  • πŸ“Œ НСпСриодичСскиС константы β€” хранят ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, пСрСзаписываСмоС ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ. Π˜Π΄Π΅Π°Π»ΡŒΠ½Ρ‹ для наимСнования ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ.
  • πŸ“… ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ константы β€” хранят срСз Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠŸΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠΌ Π±Ρ‹Π»ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΡƒΡŽ Π΄Π°Ρ‚Ρƒ Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ.
  • πŸ”— БоставныС Ρ‚ΠΈΠΏΡ‹ β€” ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΎΠ΄Π½ΠΎΠΉ ячСйкС, экономя мСсто Π² ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ трСбуя Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π² ΠΊΠΎΠ΄Π΅.
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ИспользованиС пСриодичСских констант для часто ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΡ…ΡΡ Π΄Π°Π½Π½Ρ‹Ρ… (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, остатков Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠ²) катСгоричСски Π½Π΅ рСкомСндуСтся. Для Ρ‚Π°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ рСгистры свСдСний, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ для массовой записи ΠΈ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ срСзов.
πŸ“Š Какой Ρ‚ΠΈΠΏ констант Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅ всСго?
НСпСриодичСскиС (ΠΎΠ΄Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅)
ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ (с историСй)
Боставного Ρ‚ΠΈΠΏΠ° (нСсколько Ρ‚ΠΈΠΏΠΎΠ²)
Π― Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ константы

ΠžΠ±Π»Π°ΡΡ‚ΠΈ видимости ΠΈ ΠΏΡ€Π°Π²Π° доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ

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

БущСствуСт Ρ‚Π°ΠΊΠΆΠ΅ понятиС области видимости Π² ΠΊΠΎΠ΄Π΅. Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ константы доступны ΠΈΠ· любого модуля систСмы Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… объявлСний, Ссли Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π΅ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° Π½Π° ΠΈΡ… Ρ‡Ρ‚Π΅Π½ΠΈΠ΅. Однако Π² распрСдСлСнных ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Π±Π°Π·Π°Ρ… (Π Π˜Π‘) ситуация услоТняСтся. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ ΠΊΠ°ΠΊ «ОсновноС» ΠΈΠ»ΠΈ Β«ΠŸΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½ΠΎΠ΅Β» Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ опрСдСляСт, Π² ΠΊΠ°ΠΊΠΎΠΌ ΡƒΠ·Π»Π΅ распрСдСлСнной Π±Π°Π·Ρ‹ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹. Ошибка Π² настройкС распрСдСлСния ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ рассинхронизации Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΌ офисом ΠΈ Ρ„ΠΈΠ»ΠΈΠ°Π»Π°ΠΌΠΈ.

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

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

Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²Π° доступа ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ?

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠŸΡ€Π°Π²ΠΎΠ”ΠΎΡΡ‚ΡƒΠΏΠ°("Π§Ρ‚Π΅Π½ΠΈΠ΅ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹.Π˜ΠΌΡΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Ρ‹") ΠΏΠ΅Ρ€Π΅Π΄ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΎΠΉ чтСния. Π­Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ ошибки выполнСния Π² Ρ‚ΠΎΠ½ΠΊΠΎΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅, Π³Π΄Π΅ отсутствиС ΠΏΡ€Π°Π² ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ явноС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ пустоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ систСмы ΠΈ оптимизация запросов

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

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

Анализ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ тСхнологичСского ΠΆΡƒΡ€Π½Π°Π»Π° (Π’Π–) часто выявляСт ситуации, ΠΊΠΎΠ³Π΄Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ константы происходит Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ². Π­Ρ‚ΠΎ грубая ошибка Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π’Ρ‹Π½ΠΎΡΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ константС Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ Ρ†ΠΈΠΊΠ»Π° β€” Π·ΠΎΠ»ΠΎΡ‚ΠΎΠ΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ 1Π‘. Π”Π°ΠΆΠ΅ Ссли опСрация чтСния Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ миллисСкунды, Π² Ρ†ΠΈΠΊΠ»Π΅ ΠΈΠ· 10 000 ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ это Π²Ρ‹Π»ΡŒΠ΅Ρ‚ΡΡ Π² сСкунды простоя, Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π° РСгистр свСдСний Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Π°Ρ пСрСмСнная
Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π² Π‘Π” Π”Π° (ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ Ρ‚Π°Π±Π»ΠΈΡ†Π°) Π”Π° (Ρ‚Π°Π±Π»ΠΈΡ†Π° срСзов) НСт (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² памяти)
ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ΡΡ (Π³ΠΈΠ±ΠΊΠΎ) НСт
Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ чтСния Высокая (ΠΊΡΡˆΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ) БрСдняя (зависит ΠΎΡ‚ срСза) Максимальная
Π‘Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π‘Ρ‚Ρ€ΠΎΠ³ΠΈΠ΅ ΠΏΡ€ΠΈ записи ΠžΠΏΡ‚ΠΈΠΌΠΈΡΡ‚ΠΈΡ‡Π½Ρ‹Π΅/УправляСмыС ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚
πŸ’‘

Никогда Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ константы для хранСния Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ‡Π°Ρ‰Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ€Π°Π· Π² дСнь. Для Ρ‚Π°ΠΊΠΈΡ… сцСнариСв Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π° 1Π‘ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ спСциализированныС рСгистры, ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования Π² конфигурациях

Рассмотрим Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ сцСнарии, Π³Π΄Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ констант являСтся стандартом Π΄Π΅-Ρ„Π°ΠΊΡ‚ΠΎ. Π’ Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… конфигурациях, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ 1Π‘:БухгалтСрия ΠΈΠ»ΠΈ 1Π‘:Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π’ΠΎΡ€Π³ΠΎΠ²Π»Π΅ΠΉ, константы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для хранСния Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ: ИНН, КПП, Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅, адрСс. Π­Ρ‚ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠ΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π²ΠΎ всС ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ (счСта, Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅, Π°ΠΊΡ‚Ρ‹) автоматичСски. ИзмСнСниС Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ обновляСт ΠΈΡ… Π²ΠΎ всСй систСмС, Ρ‡Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ чСловСчСский Ρ„Π°ΠΊΡ‚ΠΎΡ€ ΠΈ рассогласованиС Π΄Π°Π½Π½Ρ‹Ρ….

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

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

  • 🏒 Π Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Ρ‹ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ: НазваниС, ΡŽΡ€ΠΈΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ адрСс, банковскиС счСта ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.
  • βš–οΈ ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°: Π‘Ρ‚Π°Π²ΠΊΠΈ Π½Π°Π»ΠΎΠ³ΠΎΠ², ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ ΠΎΠΏΠ»Π°Ρ‚Ρ‹ Ρ‚Ρ€ΡƒΠ΄Π° (Ссли Π½Π΅ вСдСтся история Π² рСгистрС).
  • πŸ”’ ВСхничСскиС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚Π΅Π»ΠΈ: Π”Π°Ρ‚Π° Π·Π°ΠΏΡ€Π΅Ρ‚Π° рСдактирования, Ρ„Π»Π°Π³ «ВСстовый Ρ€Π΅ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹Β».
⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡ‹ ΠΈ названия ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² Ρ€Π°Π·Π½Ρ‹Ρ… вСрсиях 1Π‘ (8.2, 8.3, 8.3.20+) ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ. ВсСгда ΡΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ΡΡŒ с синтаксичСским ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΠΊΠΎΠΌ вашСй ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ доступа ΠΊ константам ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½ΡŽΠ°Π½ΡΡ‹ Π² старых Ρ€Π΅Π»ΠΈΠ·Π°Ρ….

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° настройки констант

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

ЧастыС ошибки Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΡ… устранСния

Одной ΠΈΠ· самых распространСнных ошибок являСтся Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π² константах Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎ своСй ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ мноТСствСнными. НапримСр, ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ список всСх ΠΊΠΎΠ½Ρ‚Ρ€Π°Π³Π΅Π½Ρ‚ΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΉ константС (Ρ‡Π΅Ρ€Π΅Π· массив ΠΈΠ»ΠΈ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ структуру) Π½Π°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ рСляционной Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Для хранСния списков, Π΄Π°ΠΆΠ΅ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ…, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ справочники ΠΈΠ»ΠΈ ΠΏΠ»Π°Π½Ρ‹ Π²ΠΈΠ΄ΠΎΠ² характСристик. ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π° Π΄ΠΎΠ»ΠΆΠ½Π° Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ скалярноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ссылку Π½Π° ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

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

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

Для устранСния этих ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ рСкомСндуСтся ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄-Ρ€Π΅Π²ΡŒΡŽ с фокусом Π½Π° использованиС Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². БтатичСский Π°Π½Π°Π»ΠΈΠ· ΠΊΠΎΠ΄Π° ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ обращСния ΠΊ константам Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ†ΠΈΠΊΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ записи Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ². ИспользованиС строгой Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ Π² модулях ΠΈ явноС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄ записью Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°ΡŽΡ‚ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли константа «зависла»?

Иногда ΠΏΡ€ΠΈ Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ сСанса Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° Π½Π° константу ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠ½ΡΡ‚ΡŒΡΡ. Π’ Ρ‚Π°ΠΊΠΈΡ… случаях администратору ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ зависшиС сСансы Ρ‡Π΅Ρ€Π΅Π· консоль администрирования ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ прСдприятия с ΠΏΡ€Π°Π²Π°ΠΌΠΈ администратора для сброса Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ.

МоТно Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… Ρƒ ΡƒΠΆΠ΅ созданной константы?

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

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ константой ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ систСмы?

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

Как константы Π²Π»ΠΈΡΡŽΡ‚ Π½Π° ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ обновлСния Ρ‚ΠΈΠΏΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ?

ΠŸΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с 1Π‘:ИВБ) константы ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ‚Π΅Ρ€Ρ‚Ρ‹ Π½ΠΎΠ²Ρ‹ΠΌΠΈ значСниями, Ссли Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π½Π΅ настроил ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Ρ‹ слияния. ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Π²Π°ΠΆΠ½Ρ‹Π΅ константы, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹Π΅ ΠΏΠΎΠ΄ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, слСдуСт Π·Π°Ρ‰ΠΈΡ‰Π°Ρ‚ΡŒ ΠΎΡ‚ пСрСзаписи Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€Π°Π²ΠΈΠ»Π° ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… (ΠšΠ” 2 ΠΈΠ»ΠΈ ΠšΠ” 3).

Допустимо Π»ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΠΈΠ»ΠΈ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² константах?

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

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ константы Π½Π΅ обновляСтся сразу Ρƒ всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ?

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