Skip to content
18 / 21

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Command Pattern ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π² React?

Command Pattern β€” ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ дСйствиС инкапсулируСтся Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ с ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ execute() ΠΈ undo(). ВмСсто прямого Π²Ρ‹Π·ΠΎΠ²Π° deleteTask(id) создаётся ΠΊΠΎΠΌΠ°Π½Π΄Π° DeleteTaskCommand, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ, ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π»ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ. Π­Ρ‚ΠΎ основа для undo/redo, макросов (нСсколько дСйствий ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ), логирования ΠΈ ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ выполнСния.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Command Pattern ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π² React? | JScriptiser