"🧩 Memory bank для ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² :: РСвСрс-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ рСвСрс-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² brownfield 2/2 (.. Π½Π°Ρ‡Π°Π»ΠΎ Ρ‚ΡƒΡ‚: https://t.me/deksden_notes/66) НСмного ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ: πŸ”΅ НСт смысла Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹Π΅ ΠΈΠ· ΠΊΠΎΠ΄Π° Π²Π΅Ρ‰ΠΈ: Π°Π³Π΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ Π²ΠΎΡΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎ написано Π² ΠΊΠΎΠ΄Π΅. Π”Π΅Π»Π°Ρ‚ΡŒ Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΠΎΠ³ΠΈΠΊΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ особСнной цСнности Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π±ΠΈΠ²Π°Ρ‚ΡŒ контСкст - Π°Π³Π΅Π½Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ, ΠΈ ΠΊΠΎΠ΄. πŸ”΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π² ΠΌΠ΅ΠΌΠΎΡ€ΠΈ Π±Π°Π½ΠΊ Ρ‚ΠΎ, для сбора Ρ‡Π΅Π³ΠΎ Π°Π³Π΅Π½Ρ‚Ρƒ Π½ΡƒΠΆΠ½ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ нСсколько дСйствий. НапримСр: схСму взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ модулями (ΠΊΡ‚ΠΎ ΠΊΠΎΠ³ΠΎ ΠΈ ΠΎΡ‚ΠΊΡƒΠ΄Π° Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚), ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ подсистСм, ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎΠ΅ api ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹ ΠΈΡ… использования πŸ”΅ ΠžΡ‚Π»ΠΈΡ‡Π½ΡƒΡŽ ΠΏΠΎΡ‡Π²Ρƒ для дополнСния ΠΌΠ΅ΠΌΠΎΡ€ΠΈΠ±Π°Π½ΠΊΠΎΠ² Π΄Π°ΡŽΡ‚ ошибки Π°Π³Π΅Π½Ρ‚Π° - ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ сдСлал Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ""Π½Π΅ Ρ‚ΠΎ"". Π­Ρ‚ΠΎ Π²Π΅Ρ€Π½Ρ‹ΠΉ Π·Π½Π°ΠΊ нСобходимости Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ: отсутствиС ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ контСкста, ΠΈΠ»ΠΈ Π΅Π³ΠΎ качСством. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Ρ‡Ρ‚ΠΎ Ρƒ Π°Π³Π΅Π½Ρ‚Π° докумСнтация Π±Ρ‹Π»Π°: индСксныС Ρ„Π°ΠΉΠ»Ρ‹, duo Ρ„Π°ΠΉΠ»Ρ‹. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ - опирался Π»ΠΈ Π°Π³Π΅Π½Ρ‚ Π½Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΡƒΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ? ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠΉ ΠΈΠ»ΠΈ ошибок Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Π½Π΅ Π±Ρ‹Π»ΠΎ? Π²Π°ΠΆΠ½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹? πŸ”΅ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π°Π³Π΅Π½Ρ‚ΠΎΠ²: - собраСм ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚Ρƒ Π°ΠΏΠΈ-Ρ€ΠΎΡƒΡ‚ΠΎΠ² сСрвСра; - ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ схСму ΠΈΠ· Π‘Π” ΠΈ связанных Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΠΎΠ΄Π°, ""вытаскиваСм"" максимум ΠΌΠ΅Ρ‚Π°-ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ; - ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ UI: ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ экранов, ΠΈΡ… структурных элСмСнтов; data test id Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Ρ‹ для тСстирования; ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ основныС actions Π² интСрфСйсС; - call graph: Π°Π³Π΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ схСму взаимодСйствия ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ - ΠΊΠ°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ/ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ/Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ; ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, спСциализированныС систСмы (Ρ‚ΠΈΠΏΠ° qoder) ΡΠ΄Π΅Π»Π°ΡŽΡ‚ это Π»ΡƒΡ‡ΡˆΠ΅, Π½ΠΎ ΠΈ простыми способами Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ""сосСдниС Π²Π΅Ρ‚ΠΊΠΈ"" Π΄Π΅Ρ€Π΅Π²Π° зависимостСй нСслоТно ΠΈ вСсьма ΠΏΠΎΠ»Π΅Π·Π½ΠΎ. πŸ”΅ Π‘Π°ΠΌΠΎΠ΅ слоТноС - это Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ структуру Ρ„ΠΈΡ‡ ΠΈΠ· ΠΊΠΎΠ΄Π°. Π’ΡƒΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ фиксация Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… сцСнариСв использования систСмы - ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ с Π½Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚. Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρ‹ систСмы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΡ‡Π°ΡΡ‚Π²ΡƒΡŽΡ‚ Π² сцСнарии ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚ΠΏΡ€Π°Π²Π½Ρ‹ΠΌΠΈ Ρ‚ΠΎΡ‡ΠΊΠ°ΠΌΠΈ для Ρ„ΠΈΡ‡. ΠŸΡ€ΠΈΠΌΠ΅Ρ€: ""ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² систСму: Π½Π° экранС Π»ΠΎΠ³ΠΈΠ½Π° ΠΎΠ½ Π²Π²ΠΎΠ΄ΠΈΡ‚ имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. БистСма Π²Π°Π»ΠΈΠ΄ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Π³Π»Π°Π²Π½Ρ‹ΠΉ экран с доступными ΠΏΠΎΠ»ΡŒΠ·Π²ΠΎΠ°Ρ‚Π΅Π»ΡŽ Ρ€Π°Π·Π΄Π΅Π»Π°ΠΌΠΈ."" (Ρ„ΠΈΡ‡Π° Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ, Ρ„ΠΈΡ‡Π° Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ). πŸ”΅ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΠΈ CRUD Π°Π½Π°Π»ΠΈΠ·Π°: Сси Π² систСмС зафиксирована Ρ€Π°Π±ΠΎΡ‚Π° с Π½Π΅ΠΊΠΎΠ΅ΠΉ ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒΡŽ ""Π·Π°ΠΊΠ°Π·"" - Ρ‚ΠΈΠΏΠ°, ""ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ создал Π·Π°ΠΊΠ°Π·"", Ρ‚ΠΎ для сущности ""Π·Π°ΠΊΠ°Π·"" Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ описаны всС CRUD ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹: ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ, ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ сущности (Π±Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ часто Π²Ρ‹ΠΏΠ°Π΄Π°Π΅Ρ‚ ΠΏΡ€ΠΈ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€Π²ΠΎΠ²Π°Π½ΠΈΠΈ). πŸ”΅ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ Use Case Analysis: сцСнарии часто ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ""happy path"". Но Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²Ρ‘Π» Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ? 10 Ρ€Π°Π· подряд? Ссли ΠΏΡ€ΠΈ рСгистрации ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ с Ρ‚Π°ΠΊΠΈΠΌ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ ΡƒΠΆΠ΅ сущСствуСт? Если api станСт нСдоступно посСрСдинС рСгистрации? Π’Π°ΠΊΠΈΠ΅ сцСнарии Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ""exception flows"" ΠΈ ""alternative paths"". πŸ”΅ Анализ ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Бостояний (State Transition Analysis) : Ссли Π² систСмС Π΅ΡΡ‚ΡŒ сущности с состояниСм, Π½Π°Π΄ΠΎ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ со схСмой ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ² состояний. БоставляСм Π°Π³Π΅Π½Ρ‚Π°ΠΌΠΈ список состояний ΠΈ ΠΊΠ°Ρ€Ρ‚Ρƒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ, ΠΈ смотрим - Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Π»ΠΈ ΠΌΡ‹ всС, Ρ‡Ρ‚ΠΎ касаСтся доступных ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΎΠ². Как ΠΈΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΊΠ°Π· ΠΈΠ· состояния on-hold пСрСводится ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² processing. Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Π»ΠΈ ΠΌΡ‹ ΠΊΠ°ΠΊ Π·Π°ΠΊΠ°Π· ΠΈΠ· ""paid"" становится ""shipped""? Вакая ΠΊΠ°Ρ€Ρ‚Π° Π·Π΄ΠΎΡ€ΠΎΠ²ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°ΠΉΡ‚ΠΈ ΠΏΡ€ΠΎΠ±Π΅Π»Ρ‹ Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. πŸ”΅ Π’ Ρ†Π΅Π»ΠΎΠΌ - ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ""классичСского"" ""enterprise"" модСлирования процСссов, проСктирования, бизнСс-ΠΈΠ½ΠΆΠΈΠ½ΠΈΡ€ΠΈΠ½Π³Π° Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° ΠΏΠΎΠ»ΡŒΠ·Ρƒ процСссу ΠΈ Ρ‚ΡƒΡ‚ - вСдь ΠΌΡ‹ Ρ€Π΅ΡˆΠ°Π΅ΠΌ ΠΏΠΎΡ…ΠΎΠΆΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ: Ссли Ρ€Π°Π½ΡŒΡˆΠ΅ эти ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ использовались Ρ‡Ρ‚ΠΎΠ±Ρ‹ люди ΠΏΠΎΠ½ΠΈΠΌΠ°Π»ΠΈ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ систСма Π² бизнСсС, Ρ‚ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ нас Π΄Π°ΠΆΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½ΠΎΠ΅ примСнСния - ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°ΡΡ‚ΠΎΠ»ΠΊΠΎΠ²Π°Ρ‚ΡŒ всС Ρ‚ΠΎ ΠΆΠ΅ самоС ИИ Π°Π³Π΅Π½Ρ‚Π°ΠΌ! НадСюсь, Π΄Π°Π» ΠΊΠ°ΠΊΠΈΠ΅ Ρ‚ΠΎ Π½Π°ΠΌΡ‘Ρ‚ΠΊΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°! И ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ - Π·Π°Π΄Π°Ρ‡Π° творчСская, Тёстких ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊ ΠΏΠΎΠΊΠ° Π½Π΅ сформировано, всС познаСтся Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅. πŸ™‡β€β™‚οΈ ΠŸΡ€ΠΎΠ±ΡƒΠ΅ΠΌ, Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ, дСлимся, ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅ΠΌ! ␄ #post @deksden_notes"