ΠΠ°ΠΌΠ΅ΡΠΊΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°
Open in Telegram
ΠΠ°ΠΌΠ΅ΡΠΊΠΈ ΠΎ Frontend, Backend ΠΈ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ DevOps. Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΎ #PHP, #Laravel, #JavaScript, #HTML, #CSS, ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ². https://www.dev-notes.ru @snakenf
Show more463
Subscribers
No data24 hours
-37 days
+130 days
Posts Archive
CSS β ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΠΈΠΉΡΡ ΡΠ·ΡΠΊ. Π‘ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ ΠΎΠ½ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²ΡΠ΅ Π»ΡΡΡΠ΅ ΠΈ Π»ΡΡΡΠ΅. ΠΠΎΡΡΠΎΠΌΡ Π²Π°ΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΠΈΡΡ Π·Π° Π½ΠΎΠ²Π΅ΠΉΡΠΈΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ CSS, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ
Π² ΡΠ²ΠΎΠΈΡ
ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
ΠΈ ΠΌΠ΅Π½ΡΡΠ΅ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ
ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ².
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ ΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ
Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ
CSS, ΡΠΏΠΎΡΠΎΠ±Π½ΡΡ
ΠΎΠ±Π»Π΅Π³ΡΠΈΡΡ Π²Π°ΠΌ ΠΆΠΈΠ·Π½Ρ. Π Ρ
ΠΎΡΡ ΠΎΠ½ΠΈ ΠΏΠΎΠΊΠ° Π΄ΠΎΡΡΡΠΏΠ½Ρ Π½Π΅ Π²ΠΎ Π²ΡΠ΅Ρ
Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ
, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ
ΡΠΆΠ΅ ΡΠ΅Π³ΠΎΠ΄Π½Ρ Π΄Π»Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΡΠΏΠ΅ΠΊΡΠΈΠ² ΡΠ²ΠΎΠΈΡ
ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ². Π Π² ΡΠ΅Ρ
Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ
, Π³Π΄Π΅ ΡΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ, Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· Π½ΠΈΡ
Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΎΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°Π½ΠΎ.
https://www.dev-notes.ru/articles/css/upcoming-css-features-to-make-your-life-easier/
ΠΠ»Ρ frontend-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΌΡΡ
ΡΡΠΎΠΌΠΈΡΠ΅Π»ΡΠ½ΡΡ
Π·Π°Π½ΡΡΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ² ΡΠ΅ΠΊΡΡΠΎΠ²ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΡΠΊΡΠ°Π½Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅Π΄ΠΈΠ°-Π·Π°ΠΏΡΠΎΡΠ°, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° css. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ΅ΠΊΡΡΡ Π½Π° ΡΠ°ΠΉΡΠ΅ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΡΠΌΠΈ Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ΅Π΄ΠΈΠ°-Π·Π°ΠΏΡΠΎΡΠ°, ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΠ² Π²ΡΠ΅ΠΌΡ ΠΈ ΠΌΠ΅ΡΡΠΎ.
https://www.dev-notes.ru/articles/css/responsive-typography-with-clamp/
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΈΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΡΡΠ±ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ. ΠΠ½ΠΎ ΡΠ°ΡΡΠΎ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ Π³ΠΎΡΡΡΠΈΡ
ΡΠΏΠΎΡΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Laravel, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΏΠΈΡΠ°ΡΡ ΠΌΠ΅Π½ΡΡΠ΅ ΠΊΠΎΠ΄Π°.
https://www.dev-notes.ru/articles/laravel/eight-ways-to-write-clean-and-terse-code/
ΠΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β ΡΡΠΎ Π²Π΅ΡΠ΅Π»ΠΎ. Π Π²ΠΎΡ ΠΎΡΠ»Π°Π΄ΠΊΠ°? β¦ΠΠ΅ ΠΎΡΠ΅Π½Ρ. ΠΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠ΅ΡΠ°ΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΡΠΏΠ΅Ρ
Π° Π»ΡΠ±ΠΎΠ³ΠΎ Π½Π΅ΡΡΠΈΠ²ΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΠΏΠΎΠΊΠ°ΠΆΡ ΠΊΠ°ΠΊ Π»Π΅Π³ΠΊΠΎ Π½Π°ΡΠ°ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ Laravel ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΎΠΏΠΈΠΌ Π»ΡΠ΄ ΡΠ°Π· ΠΈ Π½Π°Π²ΡΠ΅Π³Π΄Π°!
https://www.dev-notes.ru/articles/laravel/start-testing-your-laravel-code-in-less-than-5-minutes/
Π Symfony 6.4 Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Ρ
APP_BUILD_DIR ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Ρ ΠΏΠΎΠ΄ΠΎΠ³ΡΠ΅Π²Π°ΡΠ΅Π»ΠΈ ΠΊΡΡΠ° Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° build_dir.
Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
Symfony ΠΎΠΏΡΠΈΡ kernel.build_dir ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅, Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠ΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ. Π Symfony 6.4 ΠΌΡ Π²Π½Π΅ΡΠ»ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΡΡΠΈΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ.
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-build-dir-improvements/ΠΡ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡΠ΄Ρ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡ Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠΌΠΈ Π² Node.js ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
? Π₯ΠΎΡΠ΅Π»ΠΎΡΡ Π±Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ΅Π½ΡΡΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΡΠ΅ΠΊΡΠ΅ΡΠ°ΠΌΠΈ, ΠΊΠ°ΠΊ ΠΊΠ»ΡΡΠΈ API ΠΈ ΡΡΡΡΠ½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π±Π°Π· Π΄Π°Π½Π½ΡΡ
? ΠΠ΅ ΠΈΡΠΈΡΠ΅ Π΄Π°Π»ΡΡΠ΅! ΠΠ° ΠΏΠΎΠΌΠΎΡΡ ΠΏΡΠΈΡ
ΠΎΠ΄ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΠΎΠ³ΡΡΠ·ΠΈΠΌΡΡ Π² ΠΌΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΡΠ΅Π΄Ρ Π² Node.js, ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡ
ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π°, ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π»ΡΡΡΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠΌΠΈ.
ΠΡ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ ΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅, Π΄ΠΎΡΡΡΠΏΠ΅ ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΡΡΠ΅Π΄Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ± ΠΈΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΡΡΠ΅Π΄Π°Ρ
ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Π² ΡΡΠ΅Π½Π°ΡΠΈΠΈ npm. Π ΠΊΠΎΠ½ΡΡ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ΅Π΄Ρ ΠΌΠΎΠ³ΡΡ ΠΎΠ±Π»Π΅Π³ΡΠΈΡΡ Π²Π°ΡΡ ΠΆΠΈΠ·Π½Ρ ΠΊΠ°ΠΊ Node.js ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°.
https://www.dev-notes.ru/articles/javascript/node-js-environment-variables-how-to-set-them-properly/
ΠΠ°ΡΠΊΠ°Π΄Π½Π°Ρ ΡΠ°Π±Π»ΠΈΡΠ° ΡΡΠΈΠ»Π΅ΠΉ (CSS) β ΡΡΠΎ ΠΌΠΎΡΠ½ΡΠΉ ΡΠ·ΡΠΊ ΡΡΠΈΠ»Π΅ΠΉ, ΠΏΠΎΠΌΠΎΠ³Π°ΡΡΠΈΠΉ ΡΡΠΎΠ½ΡΠ΅Π½Π΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΠΎΡΠΎΡΠΌΠ»ΡΡΡ ΠΎΠ±ΡΡΠ½ΡΠ΅ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° ΡΡΠΈΠ»Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠΏΡΡΡΠΈΡΡ ΡΡΠ΄ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΌΠ΅ΡΠ°ΡΡΠΈΡ
ΠΏΠΈΡΠ°ΡΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΉ ΠΊΠΎΠ΄. Π Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π½ΠΈΡ
.
https://www.dev-notes.ru/articles/css/common-css-mistakes-we-make/
ΠΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ²Π΅ΡΠΎΠ² ΠΈ ΠΏΡΠΈΡΠΌΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΡΠ·Π½Π°Π» Π½Π° ΡΠ²ΠΎΡΠΌ ΠΏΡΡΠΈ, ΠΏΠΎΠΌΠΎΠ³Π°ΡΡΠΈΡ
ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π·Π°ΠΏΡΠΎΡΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
Π² Laravel. ΠΠ½ΠΎΠ³Π΄Π° Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΡΠ΅Π½Ρ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ.
https://www.dev-notes.ru/articles/eloquent/optimizing-laravel-eloquent-queries/
ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½ΡΡ
ΠΈ ΡΠ»ΠΎΠΆΠ½ΡΡ
Π²ΠΎΠΏΡΠΎΡΠΎΠ², Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡΡ ΡΡΠΎΠ½ΡΠ΅Π½Π΄-ΠΈΠ½ΠΆΠ΅Π½Π΅ΡΡ, ΡΠ²Π»ΡΡΡΡΡ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠΈ CSS. Π‘ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΡΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΠ»ΠΎΠΊ ΠΠ»Π΅ΠΌΠ΅Π½Ρ ΠΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡ (ΠΠΠ) ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡΠΈΠ²ΡΠΊΠ»ΠΈ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ ΡΡΠΈΠ»ΠΈ ΠΏΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ ΡΡ
Π΅ΠΌΠ΅.
ΠΡΡΠ΄ΡΡΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
@scope Π² Chrome ΠΌΠΎΠΆΠ΅Ρ Π΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΡΠ°ΡΡΠΈΡΠΈΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΠΠ, ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ² ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΡΡΠΈΠ»ΠΈ Π½Π° ΡΡΠΎΠ²Π½Π΅ Π±Π»ΠΎΠΊΠΎΠ² Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΡΠΈΠ»Π΅ΠΉ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΠΏΡΠΎΡΡΠΈΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΡΡΠΈΠ»Π΅ΠΉ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΆΡΡΡΠΊΠΈΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π°Π΄ CSS-ΠΊΠ°ΡΠΊΠ°Π΄ΠΎΠΌ, Π²Π»ΠΈΡΡΡΠΈΠΌ Π½Π° Π»ΡΠ±ΠΎΠ΅ ΡΡΠΎΠ½ΡΠ΅Π½Π΄-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
https://www.dev-notes.ru/articles/css/css-scope-replace-bem/Π Symfony 6.4 ΡΠ»ΡΡΡΠ΅Π½Π° ΡΡΠ½ΠΊΡΠΈΡ Π²ΡΡ
ΠΎΠ΄Π° ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌΡ, ΡΡΠΎ ΠΈΠ·Π±Π°Π²Π»ΡΠ΅Ρ ΠΎΡ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ²Π½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ ΠΌΠ°ΡΡΡΡΡΡ Π²ΡΡ
ΠΎΠ΄Π° ΠΈΠ· ΡΠΈΡΡΠ΅ΠΌΡ Π² ΡΠ²ΠΎΠΈΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
.
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-simpler-logout/
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π² JavaScript β Π½Π΅ ΡΠ°ΠΌΠ°Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°Ρ Π·Π°Π΄Π°ΡΠ°, Π½ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² Π΅Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ
ΡΠ°ΡΠΊΡΡΠ²Π°Π΅Ρ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΉ Π°ΡΠΏΠ΅ΠΊΡ ΡΠ°Π±ΠΎΡΡ JavaScript. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Juan Diego RodrΓguez ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΠΏΠΎΡΠΎΠ±ΠΎΠ².
https://www.dev-notes.ru/articles/javascript/removing-object-properties-javascript/
Π Π°Π±ΠΎΡΠ° Ρ Π΄Π°ΡΠ°ΠΌΠΈ Π² PHP ΠΈΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠ°Π½Π½ΠΎΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
DateTime Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠΉ Π΄Π°ΡΡ, ΡΠΎ ΠΈΡΡ
ΠΎΠ΄Π½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ. ΠΠΎΡΡΠΎΠΌΡ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π² PHP Π±ΡΠ» Π²Π²Π΅Π΄ΡΠ½ ΠΊΠ»Π°ΡΡ DateTimeImmutable. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, ΡΡΠΎΡ ΠΊΠ»Π°ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΎΡΠΈΠ±ΠΊΠΈ Π²ΠΌΠ΅ΡΡΠΎ Π²ΡΠ±ΡΠΎΡΠ° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ false.
ΠΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡΡΠΎΠΌΡ Π² Symfony 6.4 ΠΌΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΠΌ DatePoint β Π½ΠΎΠ²ΡΠΉ ΠΊΠ»Π°ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΄Π°ΡΠ°ΠΌΠΈ Π² PHP. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ
, ΡΡΠΎΡ ΠΊΠ»Π°ΡΡ ΡΠ°ΡΡΠΈΡΡΠ΅Ρ DateTimeImmutable, ΠΏΠΎΡΡΠΎΠΌΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π²Π΅Π·Π΄Π΅, Π³Π΄Π΅ ΠΎΠΆΠΈΠ΄Π°Π΅ΡΡΡ DateTimeImmutable ΠΈΠ»ΠΈ DateTimeInterface.
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-datepoint/ΠΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ
ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ Laravel Nova ΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠ΄Π°Π²Π°ΡΡ ΡΠ΅Π±Ρ Π·Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΏΡΡΠΌΠΎ ΠΈΠ· ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ. ΠΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΏΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΠΏΡΠΈΡΠΈΠ½Π°ΠΌ, Π½ΠΎ Ρ ΡΡΠΈΡΠ°Ρ, ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ ΠΈ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π²ΠΈΠ΄ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π²ΡΠ΄Π°ΡΠ° ΡΠ΅Π±Ρ Π·Π° Π½Π΅Π³ΠΎ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ ΠΌΠ°ΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠΎ, ΡΡΠΎ Π²ΠΈΠ΄ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
https://www.dev-notes.ru/articles/laravel/laravel-impersonate/
Π‘ΠΎΠ±ΡΡΠΈΡ Π² Laravel β ΡΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ΅ ΡΠ΄ΠΎΠ±ΡΡΠ²ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΡ ΠΎΠΏΠΎΠ²Π΅ΡΠ°ΡΡ, ΡΡΠΎ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ Π½Π΅ΡΡΠΎ Π·Π½Π°ΡΠΈΠΌΠΎΠ΅.
ΠΡΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΡΠΎΠ±ΡΡΠΈΡ Π²ΡΠ΅ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΡΠΎΠ±ΡΡΠΈΠ΅ΠΌ.
ΠΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ ΡΠ°ΠΊ β ΠΌΠ°ΠΌΠ° ΠΎΠ±ΡΡΠ²Π»ΡΠ΅Ρ Π²ΡΠ΅ΠΌΡ Π΄ΠΎΠΌΡ: "ΠΠΎΡΠ° ΠΈΠ΄ΡΠΈ!". ΠΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Ρ, ΡΡΠΎ Π΄Π΅ΡΠΈ ΠΎΠ±ΡΠ°ΡΠΈΠ»ΠΈ Π½Π° ΡΡΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π΄Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ: ΠΠΆΠ΅ΠΊ Π²ΡΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ²Π΅Ρ, ΠΠΎΡΠ΅Π½ Π·Π°ΠΏΠΈΡΠ°Π΅Ρ Π²Ρ
ΠΎΠ΄Π½ΡΡ Π΄Π²Π΅ΡΡ, ΠΠ½Π΄ΠΈ Π·ΠΎΠ²ΡΡ ΡΠΎΠ±Π°ΠΊΡ ΡΠΎ Π΄Π²ΠΎΡΠ°, Π° Π΄Π΅ΡΠΈ Π½Π°ΡΠΈΠ½Π°ΡΡ ΡΡΠ°ΠΆΠΈΠ²Π°ΡΡΡΡ Π² ΠΌΠ°ΡΠΈΠ½Ρ.
ΠΡΠ΅ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΠΈ, ΡΠΈΡΠ°ΡΡΠΈΠ΅ ΡΡΠΎ, Π·Π½Π°ΡΡ, ΡΡΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π²ΡΠ΅ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ Π½Π΅ ΡΠ°ΠΊ, Π½ΠΎ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ»ΠΎΠ²ΠΈΡΡ ΡΡΡΡ. ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ΄Π΅Π»Π°Π½ΠΎ (ΡΠΎΠ±ΡΡΠΈΠ΅ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ), ΠΈ ΡΠΎΠ±ΡΡΠΈΡ Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡΡ (ΡΠ»ΡΡΠ°ΡΠ΅Π»ΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ ΡΠ΅Π°Π³ΠΈΡΡΡΡ).
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠ²ΡΠ·Π°Π½Π½ΠΎΠΉ Ρ ΡΠΎΠ±ΡΡΠΈΡΠΌΠΈ Π² Laravel, ΠΏΡΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΠ½Π° Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Ρ
ΠΎΡΠΎΡΠ°. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠ° ΡΡΠ°ΡΡΡ Π½Π΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ Π·Π°ΠΌΠ΅Π½Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Ρ Ρ
ΠΎΡΡ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΎΠ±ΡΡΠΈΠΉ Π² ΠΏΠΎΠ²ΡΠ΅Π΄Π½Π΅Π²Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅.
https://www.dev-notes.ru/articles/laravel/events-in-laravel/
ΠΠ°Π²Π°ΠΉΡΠ΅ Π±ΡΠ΄Π΅ΠΌ ΡΠ΅ΡΡΠ½ΡΠΌΠΈ: ΠΊΠ°ΠΊ ΡΠ°ΡΡΠΎ ΠΌΡ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π΅ΠΌΡΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΌ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ?
Π― Π΅ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΊΠΎΠ΄ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², Π½ΠΎ ΡΠ΅Π΄ΠΊΠΎ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡ Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ°ΠΌΠΈ.
ΠΠΎΡΠ΅ΠΌΡ ΡΠ°ΠΊ?
ΠΠ΅ΡΠΆΠ΅Π»ΠΈ Π»ΡΠ΄ΠΈ ΠΈΡ
Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ? ΠΠ»ΠΈ ΠΎΠ½ΠΈ Π½Π΅ Π²ΠΈΠ΄ΡΡ ΠΈΡ
ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²?
Π JavaScript, ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎΠΌ ΡΠ²ΠΎΠ΅ΠΉ Π³ΠΈΠ±ΠΊΠΎΡΡΡΡ ΠΈ ΡΠΈΡΠΎΠΊΠΈΠΌ ΡΠΏΠ΅ΠΊΡΡΠΎΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ, Π² ECMAScript 2015 ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ β Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ. ΠΡΠΎ ΠΌΠΎΡΠ½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈ Π²ΡΠ΄Π°ΡΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. Π ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌ ΡΠ°Π±ΠΎΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠ², ΠΈΡ
ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΡ
ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»Π°.
https://www.dev-notes.ru/articles/javascript/dont-be-afraid-of-javascript-generators/
Π Symfony 6.4 ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ Π°ΡΡΠΈΠ±ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΠΊΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ»Π°ΡΡΡ, ΡΡΠΎΠ±Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΎΠ±ΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° Π΄Π»Ρ Π²ΡΠ΅Ρ
ΡΠ²ΠΎΠΉΡΡΠ² ΠΊΠ»Π°ΡΡΠ°.
ΠΠΎΠ½ΡΠ΅ΠΊΡΡ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΈ Π΄Π΅ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΡΠ΅ΡΡΡΡΠΎΠ². ΠΡΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π²ΡΠ΅ΠΌ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ°ΠΌ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ Π·Π°Π΄Π°Π½ΠΈΡ ΡΠΎΡΠΌΠ°ΡΠ° Π΄Π°ΡΡ/Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠΏΠΎΡΠΎΠ±Π° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΡΡΡΡΡ
ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΈ Ρ.Π΄.
Π Symfony ΡΡΠΎΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ: ΠΊΠ°ΠΊ ΠΌΠ°ΡΡΠΈΠ² PHP, ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°Π΅ΠΌΡΠΉ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ serialize() ΠΈ deserialize(), ΠΊΠ°ΠΊ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ framework.serializer.default_context ΠΈ ΡΠ΅ΡΠ΅Π· Π°ΡΡΠΈΠ±ΡΡ #[Context] Π² ΡΠ²ΠΎΠΉΡΡΠ²Π°Ρ
ΠΊΠ»Π°ΡΡΠ°.
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-class-based-serializer-contexts/
ΠΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ JavaScript ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ², Π²ΠΊΠ»ΡΡΠ°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ JavaScript, ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠ»Π°ΡΡΠ° Object, ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ°, ΠΌΠ΅ΡΠΎΠ΄Ρ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΡΡ ΡΡΠ½ΠΊΡΠΈΡ JavaScript.
https://www.dev-notes.ru/articles/javascript/check-if-a-object-property-exists/
Π Symfony 6.4 ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Twig Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΡ
/Π°Π±ΡΠΎΠ»ΡΡΠ½ΡΡ
URL, Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΡ
Π΄Π»Ρ ΠΈΠΌΠΏΠ΅ΡΡΠΎΠ½Π°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
ΠΠΌΠΏΠ΅ΡΡΠΎΠ½Π°ΡΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ (Π²ΡΠ΄Π°ΡΠ° ΡΠ΅Π±Ρ Π·Π° Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ) β ΡΡΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ Symfony, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ Π²ΠΎΠΉΡΠΈ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, Π½Π΅ Π·Π½Π°Ρ Π΅Π³ΠΎ ΡΡΡΡΠ½ΡΡ
Π΄Π°Π½Π½ΡΡ
. Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΎ ΠΊΠΎΡΠΎΡΡΡ
ΡΠΎΠΎΠ±ΡΠ°ΡΡ Π²Π°ΡΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡ ΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-impersonation-utilities/
ΠΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ base64 β ΡΡΠΎ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½ΡΠ½Π½Π°Ρ ΡΠΎΡΠΌΠ° ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π΄Π²ΠΎΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π΅Π³ΠΎ Π² Π²ΠΈΠ΄Π΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΠ³ΠΎ Π΄Π»Ρ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠ΅ΠΊΡΡΠ°. ΠΠ½Π° ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ URL Π΄Π°Π½Π½ΡΡ
, ΡΠ°ΠΊΠΈΡ
ΠΊΠ°ΠΊ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
Π§ΡΠΎ ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΠ΅ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ base64 ΠΊ ΡΡΡΠΎΠΊΠ°ΠΌ Π² JavaScript? Π ΡΡΠΎΠΉ Π·Π°ΠΌΠ΅ΡΠΊΠ΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡΡΡ Π½ΡΠ°Π½ΡΡ ΠΈ ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ "ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½ΡΠ΅ ΠΊΠ°ΠΌΠ½ΠΈ", ΠΊΠΎΡΠΎΡΡΡ
ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΠ·Π±Π΅Π³Π°ΡΡ.
https://www.dev-notes.ru/articles/javascript/nuances-of-base64-encoding/
Π ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ
Symfony ΡΠΈΡΡΠ΅ΠΌΠ° ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ, ΡΡΠΎΠ±Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠ°ΡΡΡΡΡ ΠΈΠΌΠ΅Π» ΠΈΠΌΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ ΡΡΡΠΎΠΊΡ, ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΡΡΡΡΡ ΠΌΠ°ΡΡΡΡΡ. Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ ΡΡΠΎ ΠΈΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ URL-Π°Π΄ΡΠ΅ΡΠΎΠ² Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ ΠΌΠ°ΡΡΡΡΡΠΎΠ².
https://www.dev-notes.ru/articles/symfony/new-in-symfony-6-4-fqcn-based-routes/
