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

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

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

НазначСниС ΠΈ Ρ€ΠΎΠ»ΡŒ ΠΎΠ±Ρ‰ΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ

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

ИспользованиС Ρ‚Π°ΠΊΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ позволяСт ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ DRY (Don't Repeat Yourself). Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ НДБ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΏΡ€Π°Π²Π° доступа Π² дСсяти Ρ€Π°Π·Π½Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ…, Π³ΠΎΡ€Π°Π·Π΄ΠΎ эффСктивнСС Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΊΠΎΠ΄ Π² ΠΎΠ±Ρ‰Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅, Ρ‡Π΅ΠΌ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π²Π΅Π·Π΄Π΅. Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ: исправлСниС ошибки Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°Π΅Ρ‚ всю систСму.

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

Настройка свойств модуля ΠΏΠ΅Ρ€Π΅Π΄ запуском

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ строку ΠΊΠΎΠ΄Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΡΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свойства создаваСмого ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅. ИмСнно здСсь опрСдСляСтся контСкст выполнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΈΠΊΡ‚ΡƒΠ΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π° взаимодСйствия модуля с интСрфСйсом ΠΈ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ….

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈΠ· клиСнтского ΠΊΠΎΠ΄Π° Π±Π΅Π· использования ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС выполнСния. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° строго Ρ€Π°Π·Π³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ эти срСды.

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

Для слоТных систСм рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ прСфиксы Π² ΠΈΠΌΠ΅Π½Π°Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ для Ρ€Π°Π·Π½Ρ‹Ρ… подсистСм, вмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄Π΅Π»Π°Ρ‚ΡŒ всё Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌ. Π­Ρ‚ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ ΠΈ сниТаСт риск ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² имСнования ΠΏΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

πŸ“Š Какой Ρ‚ΠΈΠΏ ΠΎΠ±Ρ‰Π΅Π³ΠΎ модуля Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Ρ‡Π°Ρ‰Π΅ всСго?
Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ²
ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉ Π²Ρ‹Π·ΠΎΠ²
Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ
Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² с контСкстом

ΠŸΡ€ΡΠΌΠΎΠΉ Π²Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ

Π‘Π°ΠΌΡ‹ΠΉ распространСнный способ Π°ΠΊΡ‚ΠΈΠ²Π°Ρ†ΠΈΠΈ Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΎΠ±Ρ‰Π΅Π³ΠΎ модуля β€” это явный Π²Ρ‹Π·ΠΎΠ² Π΅Π³ΠΎ экспортных ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€. Бинтаксис зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π³Π΄Π΅ находится Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ свойства установлСны Ρƒ Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ модуля. Рассмотрим стандартный сцСнарий обращСния ΠΈΠ· модуля Ρ„ΠΎΡ€ΠΌΡ‹.

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

ΠŸΠ΅Ρ€Π΅ΠΌ Π‘ΡƒΠΌΠΌΠ°Π˜Ρ‚ΠΎΠ³;

Π‘ΡƒΠΌΠΌΠ°Π˜Ρ‚ΠΎΠ³ = ΠžΠ±Ρ‰ΠΈΠ΅ΠœΠΎΠ΄ΡƒΠ»ΠΈ.РасчСтБумм.ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠ˜Ρ‚ΠΎΠ³ΠΎΠ²ΡƒΡŽΠ‘ΡƒΠΌΠΌΡƒ(Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠžΠ±ΡŠΠ΅ΠΊΡ‚);

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

  • πŸ˜€ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅ для бСзопасного Π²Ρ‹Π·ΠΎΠ²Π° сСрвСрных ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².
  • βš™οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΉΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ экспорта Ρƒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹, ΠΈΠ½Π°Ρ‡Π΅ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠ° для внСшнСго ΠΌΠΈΡ€Π°.
  • πŸš€ ΠŸΠ΅Ρ€Π΅Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ явно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² стоит ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ΅ копирования. ΠŸΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ, Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈ ссылки β€” ΠΏΠΎ ссылкС (Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ контСкста). ΠŸΡ€ΠΈ кросс-контСкстных Π²Ρ‹Π·ΠΎΠ²Π°Ρ… (ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр) ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ часто ΡΠ΅Ρ€ΠΈΠ°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Π»ΠΈΡΡ‚ΡŒ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΌΠ°Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

β˜‘οΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ модуля

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

Π Π°Π±ΠΎΡ‚Π° с Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ

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

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

Однако Ρ‡Ρ€Π΅Π·ΠΌΠ΅Ρ€Π½ΠΎΠ΅ ΡƒΠ²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ модулями ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ. Если Π² Ρ€Π°Π·Π½Ρ‹Ρ… модулях ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚, ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π½Π΅ смоТСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΡƒΡŽ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΈΠΌΠ΅Π½ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ, Π΄Π°ΠΆΠ΅ Π² глобальной области видимости.

Π’ΠΈΠΏ доступа Бинтаксис Π²Ρ‹Π·ΠΎΠ²Π° ВрСбования ΠΊ свойствам
ΠžΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ ΠœΠΎΠ΄ΡƒΠ»ΡŒ.ΠœΠ΅Ρ‚ΠΎΠ΄() ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΈΠ»ΠΈ Π‘Π΅Ρ€Π²Π΅Ρ€
Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠœΠ΅Ρ‚ΠΎΠ΄() Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ + ΠšΠ»ΠΈΠ΅Π½Ρ‚/Π‘Π΅Ρ€Π²Π΅Ρ€
Π‘Π΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΠΠ°Π‘Π΅Ρ€Π²Π΅Ρ€Π΅(ΠœΠΎΠ΄ΡƒΠ»ΡŒ.ΠœΠ΅Ρ‚ΠΎΠ΄()) Π‘Π΅Ρ€Π²Π΅Ρ€
Π’Π½Π΅ΡˆΠ½ΡΡ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΠ’Π½Π΅ΡˆΠ½ΡŽΡŽΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ() Π‘Π΅Ρ€Π²Π΅Ρ€

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

Запуск ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΎΠΊ ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ

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

Для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π‘Π½Π°Ρ‡Π°Π»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ссылку Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΎΠ±Ρ‰Π΅Π³ΠΎ модуля Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠžΠ±Ρ‰ΠΈΠΉΠœΠΎΠ΄ΡƒΠ»ΡŒ. Волько послС этого ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ основной ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.

ΠŸΠ΅Ρ€Π΅ΠΌ ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ Π°ΡΡ‡Π΅Ρ‚;

ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ Π°ΡΡ‡Π΅Ρ‚ = ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠžΠ±Ρ‰ΠΈΠΉΠœΠΎΠ΄ΡƒΠ»ΡŒ("РасчСтЗарплаты");

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ = ΠœΠΎΠ΄ΡƒΠ»ΡŒΠ Π°ΡΡ‡Π΅Ρ‚.Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒΠΠ°Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅(Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊ);

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΈ основной ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈΠΌΠ΅Π½Π° ΠΎΠ±Ρ‰ΠΈΡ… ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ. ВсСгда провСряйтС Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠΌΠ΅Π½ Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… инструмСнтов.
Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½?

Если ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒΠžΠ±Ρ‰ΠΈΠΉΠœΠΎΠ΄ΡƒΠ»ΡŒ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ошибка, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ имя модуля Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π΅. РСгистр символов ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π’Π°ΠΊΠΆΠ΅ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Ρƒ модуля стоит Π³Π°Π»ΠΎΡ‡ΠΊΠ° "Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ", Ссли Π²Ρ‹ ΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π±Π΅Π· прСфикса, ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ ΠΎΠ½ доступСн для Π²Π½Π΅ΡˆΠ½ΠΈΡ… соСдинСний.>

ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΈ Π°Π½Π°Π»ΠΈΠ· ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

Запуск ΠΎΠ±Ρ‰Π΅Π³ΠΎ модуля β€” это лишь ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ шаг. ΠšΡ€ΠΈΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Π²Π°ΠΆΠ½ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ΄ выполняСтся эффСктивно ΠΈ Π½Π΅ создаСт ΡƒΠ·ΠΊΠΈΡ… мСст Π² систСмС. Для этого встроСнныС срСдства ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ ΠΌΠΎΡ‰Π½Ρ‹Π΅ инструмСнты ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ.

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

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

  • 🐞 Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ€Π΅ΠΆΠΈΠΌ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ для пошагового выполнСния ΠΊΠΎΠ΄Π° модуля.
  • πŸ“Š АнализируйтС ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ для поиска ΠΌΠ΅Π΄Π»Π΅Π½Π½Ρ‹Ρ… запросов.
  • πŸ“ Π’Π΅Π΄ΠΈΡ‚Π΅ Π»ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ критичСских этапов Ρ€Π°Π±ΠΎΡ‚Ρ‹ модуля для постфактум Π°Π½Π°Π»ΠΈΠ·Π°.

ОсобоС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ стоит ΡƒΠ΄Π΅Π»ΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. Если ваш ΠΎΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с рСгистрами свСдСний ΠΈΠ»ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ, Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ записи ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Π²Π·Π°ΠΈΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ°ΠΌ (deadlocks) Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ

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

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

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

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

ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ настройка свойств модуля (ΠšΠ»ΠΈΠ΅Π½Ρ‚/Π‘Π΅Ρ€Π²Π΅Ρ€/Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ) Π²Π°ΠΆΠ½Π΅Π΅ самого ΠΊΠΎΠ΄Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ. Ошибка Π² свойствах сдСлаСт ΠΌΠΎΠ΄ΡƒΠ»ΡŒ нСработоспособным, нСзависимо ΠΎΡ‚ качСства Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°.

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

МоТно Π»ΠΈ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΈΠ· запроса?

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

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Ρ‰ΠΈΠΌ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ ΠΈ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΌ Ρ„ΠΎΡ€ΠΌΡ‹?

ΠœΠΎΠ΄ΡƒΠ»ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹ привязан ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ ΠΎΠΊΠ½Ρƒ интСрфСйса ΠΈ Π΅Π³ΠΎ элСмСнтам, ΠΈΠΌΠ΅Π΅Ρ‚ доступ ΠΊ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚Π°ΠΌ Ρ„ΠΎΡ€ΠΌΡ‹. ΠžΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ нСзависим ΠΎΡ‚ интСрфСйса ΠΈ слуТит для хранСния ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ, доступной ΠΈΠ· любого мСста.

Как ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ массив Π² ΠΎΠ±Ρ‰ΠΈΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ?

ΠœΠ°ΡΡΠΈΠ²Ρ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. Если Π²Ρ‹Π·ΠΎΠ² кросс-контСкстный (ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр), массив Π±ΡƒΠ΄Π΅Ρ‚ сСриализован. Для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… объСмов Π΄Π°Π½Π½Ρ‹Ρ… Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π½Π΅ Π²ΠΈΠ΄Π΅Π½ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΎΠ±Ρ‰Π΅Π³ΠΎ модуля?

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, стоит Π»ΠΈ Ρƒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Экспорт. Π‘Π΅Π· Π½Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ доступСн Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ самого модуля. Π’Π°ΠΊΠΆΠ΅ ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ имя модуля ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π²Π΅Ρ€Π½ΠΎ.

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ Π² ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… прилоТСниях?

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