āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ¨ā§€āĻ¤āĻŋāĨ¤ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻšāĻœ āĻŽāĻ¨ā§‡ āĻšāĻ¯āĻŧ āĻ¤āĻ¤āĻŸāĻž āĻ¨āĻ¯āĻŧ

āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ¨ā§€āĻ¤āĻŋāĨ¤ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻšāĻœ āĻŽāĻ¨ā§‡ āĻšāĻ¯āĻŧ āĻ¤āĻ¤āĻŸāĻž āĻ¨āĻ¯āĻŧ āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ¨ā§€āĻ¤āĻŋ, āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ¨ā§€āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§‡āĻ“ āĻĒāĻ°āĻŋāĻšāĻŋāĻ¤,
āĻ“āĻ°āĻĢā§‡ āĻ‡āĻ‰āĻ¨āĻŋāĻĢāĻ°ā§āĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛āĻ¤āĻžāĻ° āĻ¨ā§€āĻ¤āĻŋ - āĻŦā§‹āĻāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ…āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻŋāĻšā§āĻ›āĻŋāĻ˛ āĻ˛ā§‹āĻ• āĻāĻŦāĻ‚ āĻāĻ•āĻœāĻ¨ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ° āĻ¸āĻžāĻ•ā§āĻˇāĻžāĻ¤ā§āĻ•āĻžāĻ°ā§‡ āĻāĻŽāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻ¨āĻžāĻ¯āĻŧāĻŦāĻŋāĻ• āĻĒā§āĻ°āĻļā§āĻ¨āĨ¤

āĻāĻ‡ āĻ¨ā§€āĻ¤āĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ†āĻŽāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ—ā§āĻ°ā§āĻ¤āĻ° āĻĒāĻ°āĻŋāĻšāĻŋāĻ¤āĻŋ āĻĒā§āĻ°āĻĨāĻŽ āĻŦāĻ›āĻ°ā§‡āĻ° āĻļā§āĻ°ā§āĻ¤ā§‡ āĻ˜āĻŸā§‡āĻ›āĻŋāĻ˛, āĻ¯āĻ–āĻ¨ āĻ¤āĻ°ā§āĻŖ āĻāĻŦāĻ‚ āĻ¸āĻŦā§āĻœāĻĻā§‡āĻ°āĻ•ā§‡ āĻ˛āĻžāĻ°ā§āĻ­āĻž āĻĨā§‡āĻ•ā§‡ āĻ›āĻžāĻ¤ā§āĻ° āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻŦāĻ¨ā§‡ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ¯āĻžāĻ“āĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ - āĻĒā§āĻ°āĻ•ā§ƒāĻ¤ āĻ›āĻžāĻ¤ā§āĻ°āĨ¤

āĻŦāĻ¨ā§‡, āĻ†āĻŽāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•ā§‡ 8-9 āĻœāĻ¨ā§‡āĻ° āĻĻāĻ˛ā§‡ āĻŦāĻŋāĻ­āĻ•ā§āĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĻžāĻŽ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ¯ā§‹āĻ—āĻŋāĻ¤āĻž āĻ›āĻŋāĻ˛ - āĻ•ā§‹āĻ¨ āĻĻāĻ˛āĻŸāĻŋ āĻĻā§āĻ°ā§āĻ¤āĻ¤āĻŽ āĻŦā§‹āĻ¤āĻ˛ āĻ­āĻĻāĻ•āĻž āĻĒāĻžāĻ¨ āĻ•āĻ°āĻŦā§‡, āĻ¤āĻŦā§‡ āĻļāĻ°ā§āĻ¤ āĻĨāĻžāĻ•ā§‡ āĻ¯ā§‡ āĻ—ā§āĻ°ā§āĻĒā§‡āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻŦā§āĻ¯āĻ•ā§āĻ¤āĻŋ āĻāĻ•āĻŸāĻŋ āĻ—ā§āĻ˛āĻžāĻ¸ā§‡ āĻ­āĻĻāĻ•āĻž āĻĸā§‡āĻ˛ā§‡ āĻĻā§‡āĻ¯āĻŧ, āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧāĻŸāĻŋ āĻāĻŸāĻŋ āĻĒāĻžāĻ¨ āĻ•āĻ°ā§‡, āĻāĻŦāĻ‚ āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧ āĻāĻ•āĻŸāĻŋ āĻœāĻ˛āĻ–āĻžāĻŦāĻžāĻ° āĻ†āĻ›ā§‡. āĻ¯ā§‡ āĻ‡āĻ‰āĻ¨āĻŋāĻŸāĻŸāĻŋ āĻ¤āĻžāĻ° āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ•āĻ°ā§‡āĻ›ā§‡ āĻ¤āĻž āĻ—ā§āĻ°ā§āĻĒā§‡āĻ° āĻ¸āĻžāĻ°āĻŋāĻ° āĻļā§‡āĻˇā§‡ āĻšāĻ˛ā§‡ āĻ¯āĻžāĻ¯āĻŧāĨ¤

āĻ¯ā§‡ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻ¸āĻžāĻ°āĻŋāĻ° āĻ†āĻ•āĻžāĻ° āĻ¤āĻŋāĻ¨āĻŸāĻŋāĻ° āĻ—ā§āĻŖāĻŋāĻ¤āĻ• āĻ›āĻŋāĻ˛ āĻ¤āĻž SRP-āĻāĻ° āĻāĻ•āĻŸāĻŋ āĻ­āĻžāĻ˛ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ›āĻŋāĻ˛āĨ¤

āĻ¸āĻ‚āĻœā§āĻžāĻž 1. āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦāĨ¤

āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻ¨ā§€āĻ¤āĻŋāĻ° (āĻāĻ¸āĻ†āĻ°āĻĒāĻŋ) āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻ¸āĻ‚āĻœā§āĻžāĻž āĻŦāĻ˛ā§‡ āĻ¯ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ¸āĻ¤ā§āĻ¤āĻžāĻ° āĻ¨āĻŋāĻœāĻ¸ā§āĻŦ āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻāĻŦāĻ‚ āĻ…āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦā§‡āĻ° āĻ•āĻžāĻ°āĻŖ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻāĻŸāĻŋāĻ° āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ•āĻŸāĻŋ āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

"āĻĒāĻžāĻ¨ā§€āĻ¯āĻŧ" āĻŦāĻ¸ā§āĻ¤ā§āĻŸāĻŋ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°ā§āĻ¨ (āĻŸāĻŋāĻĒāĻ˛āĻžāĻ°).
āĻāĻ¸āĻ†āĻ°āĻĒāĻŋ āĻ¨ā§€āĻ¤āĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻŽāĻ°āĻž āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦāĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻ­āĻžāĻ—ā§‡ āĻ­āĻžāĻ— āĻ•āĻ°āĻŦ:

  • āĻāĻ• āĻĸāĻžāĻ˛āĻž (āĻĒā§‹āĻ°āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨)
  • āĻāĻ•āĻŸāĻŋ āĻĒāĻžāĻ¨ā§€āĻ¯āĻŧ (āĻĄā§āĻ°āĻŋāĻ‚āĻ•āĻ†āĻĒ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨)
  • āĻāĻ•āĻœāĻ¨ā§‡āĻ° āĻœāĻ˛āĻ–āĻžāĻŦāĻžāĻ° āĻ†āĻ›ā§‡ (āĻŸā§‡āĻ•āĻŦāĻžāĻ‡āĻŸ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨)

āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ…āĻ‚āĻļāĻ—ā§āĻ°āĻšāĻŖāĻ•āĻžāĻ°ā§€ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻŸāĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĻāĻžāĻ¯āĻŧā§€, āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻāĻ•āĻŸāĻŋ āĻĒāĻžāĻ°āĻŽāĻžāĻŖāĻŦāĻŋāĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ - āĻĒāĻžāĻ¨ āĻ•āĻ°āĻž, āĻĸāĻžāĻ˛āĻž āĻŦāĻž āĻœāĻ˛āĻ–āĻžāĻŦāĻžāĻ°āĨ¤

āĻĒāĻžāĻ¨ā§€āĻ¯āĻŧ āĻ—āĻ°ā§āĻ¤, āĻ˜ā§āĻ°ā§‡, āĻāĻ‡ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽā§āĻŽā§āĻ–āĻ­āĻžāĻ—:

Ņlass Tippler {
    //...
    void Act(){
        _pourOperation.Do() // ĐŊĐ°ĐģиŅ‚ŅŒ
        _drinkUpOperation.Do() // вŅ‹ĐŋиŅ‚ŅŒ
        _takeBiteOperation.Do() // СаĐēŅƒŅĐ¸Ņ‚ŅŒ
    }
}

āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ¨ā§€āĻ¤āĻŋāĨ¤ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻšāĻœ āĻŽāĻ¨ā§‡ āĻšāĻ¯āĻŧ āĻ¤āĻ¤āĻŸāĻž āĻ¨āĻ¯āĻŧ

āĻ•ā§‡āĻ¨?

āĻŽāĻžāĻ¨āĻŦ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ° āĻŦāĻžāĻ¨āĻ°-āĻŽāĻžāĻ¨ā§āĻˇā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§‹āĻĄ āĻ˛ā§‡āĻ–ā§‡āĻ¨, āĻāĻŦāĻ‚ āĻŦāĻžāĻ¨āĻ°-āĻŽāĻžāĻ¨ā§āĻˇ āĻ…āĻŽāĻ¨ā§‹āĻ¯ā§‹āĻ—ā§€, āĻŽā§‚āĻ°ā§āĻ– āĻāĻŦāĻ‚ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¤āĻžāĻĄāĻŧāĻžāĻšā§āĻĄāĻŧā§‹ āĻ•āĻ°ā§‡āĨ¤ āĻ¤āĻŋāĻ¨āĻŋ āĻāĻ• āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻĒā§āĻ°āĻžāĻ¯āĻŧ 3 - 7 āĻĒāĻĻ āĻ§āĻ°ā§‡ āĻ°āĻžāĻ–āĻ¤ā§‡ āĻāĻŦāĻ‚ āĻŦā§āĻāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤
āĻāĻ•āĻœāĻ¨ āĻŽāĻžāĻ¤āĻžāĻ˛ā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻāĻ‡ āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻĒāĻĻ āĻ†āĻ›ā§‡āĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻļā§€āĻŸ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ•ā§‹āĻĄ āĻ˛āĻŋāĻ–āĻŋ, āĻ¤āĻŦā§‡ āĻ¤āĻžāĻ¤ā§‡ āĻĨāĻžāĻ•āĻŦā§‡ āĻšāĻžāĻ¤, āĻšāĻļāĻŽāĻž, āĻŽāĻžāĻ°āĻžāĻŽāĻžāĻ°āĻŋ āĻāĻŦāĻ‚ āĻ°āĻžāĻœāĻ¨ā§€āĻ¤āĻŋ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ…āĻ¨ā§āĻ¤āĻšā§€āĻ¨ āĻ¤āĻ°ā§āĻ•āĨ¤ āĻ†āĻ° āĻāĻ¸āĻŦāĻ‡ āĻšāĻŦā§‡ āĻāĻ• āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻŦāĻĄāĻŋāĻ¤ā§‡āĨ¤ āĻ†āĻŽāĻŋ āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ¯ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ…āĻ¨ā§āĻļā§€āĻ˛āĻ¨ā§‡ āĻāĻ‡ āĻœāĻžāĻ¤ā§€āĻ¯āĻŧ āĻ•ā§‹āĻĄ āĻĻā§‡āĻ–ā§‡āĻ›ā§‡āĻ¨āĨ¤ āĻŽāĻžāĻ¨āĻ¸āĻŋāĻ•āĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻŽāĻžāĻ¨āĻŦāĻŋāĻ• āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ¨āĻ¯āĻŧāĨ¤

āĻ…āĻ¨ā§āĻ¯āĻĻāĻŋāĻ•ā§‡, āĻŦāĻžāĻ¨āĻ° āĻŽāĻžāĻ¨ā§āĻˇāĻŸāĻŋāĻ•ā§‡ āĻ¤āĻžāĻ° āĻŽāĻžāĻĨāĻžāĻ¯āĻŧ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻŦāĻŋāĻļā§āĻŦā§‡āĻ° āĻŦāĻ¸ā§āĻ¤ā§ āĻ…āĻ¨ā§āĻ•āĻ°āĻŖ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ¤āĻžāĻ° āĻ•āĻ˛ā§āĻĒāĻ¨āĻžāĻ¯āĻŧ, āĻ¤āĻŋāĻ¨āĻŋ āĻ¤āĻžāĻĻā§‡āĻ° āĻāĻ•āĻ¸āĻžāĻĨā§‡ āĻ ā§‡āĻ˛ā§‡ āĻĻāĻŋāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ¤āĻžāĻĻā§‡āĻ° āĻĨā§‡āĻ•ā§‡ āĻ¨āĻ¤ā§āĻ¨ āĻŦāĻ¸ā§āĻ¤ā§ āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻāĻŦāĻ‚ āĻāĻ•āĻ‡āĻ­āĻžāĻŦā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻŦāĻŋāĻšā§āĻ›āĻŋāĻ¨ā§āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤ āĻāĻ•āĻŸāĻŋ āĻĒā§āĻ°āĻžāĻ¨ā§‹ āĻŽāĻĄā§‡āĻ˛ā§‡āĻ° āĻ—āĻžāĻĄāĻŧāĻŋ āĻ•āĻ˛ā§āĻĒāĻ¨āĻž āĻ•āĻ°ā§āĻ¨āĨ¤ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ•āĻ˛ā§āĻĒāĻ¨āĻžāĻ¯āĻŧ, āĻ†āĻĒāĻ¨āĻŋ āĻĻāĻ°āĻœāĻžāĻŸāĻŋ āĻ–ā§āĻ˛āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻĻāĻ°āĻœāĻžāĻ° āĻ›āĻžāĻāĻŸāĻž āĻ–ā§āĻ˛āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ‰āĻ‡āĻ¨ā§āĻĄā§‹ āĻ˛āĻŋāĻĢā§āĻŸ āĻŽā§‡āĻ•āĻžāĻ¨āĻŋāĻœāĻŽ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ¯āĻžāĻ° āĻ­āĻŋāĻ¤āĻ°ā§‡ āĻ—āĻŋāĻ¯āĻŧāĻžāĻ° āĻĨāĻžāĻ•āĻŦā§‡āĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ "āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž" āĻ āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻŽā§‡āĻļāĻŋāĻ¨ā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŦā§‡āĻ¨ āĻ¨āĻžāĨ¤ āĻ…āĻ¨ā§āĻ¤āĻ¤ "āĻŦāĻžāĻ¨āĻ° āĻŽāĻžāĻ¨ā§āĻˇ" āĻĒāĻžāĻ°ā§‡ āĻ¨āĻžāĨ¤

āĻ…āĻ¤āĻāĻŦ, āĻŽāĻžāĻ¨āĻŦ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ°āĻ°āĻž āĻœāĻŸāĻŋāĻ˛ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ•āĻŽ āĻœāĻŸāĻŋāĻ˛ āĻāĻŦāĻ‚ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ°ā§€ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ¸ā§‡āĻŸā§‡ āĻĒāĻšāĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻāĻŸāĻŋ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ‰āĻĒāĻžāĻ¯āĻŧā§‡ āĻĒāĻšā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡: āĻ…āĻ¨ā§‡āĻ• āĻĒā§āĻ°āĻžāĻ¨ā§‹ āĻ—āĻžāĻĄāĻŧāĻŋāĻ¤ā§‡, āĻŦāĻžāĻ¯āĻŧā§ āĻ¨āĻžāĻ˛ā§€ āĻĻāĻ°āĻœāĻžāĻ¯āĻŧ āĻ¯āĻžāĻ¯āĻŧ āĻāĻŦāĻ‚ āĻ†āĻ§ā§āĻ¨āĻŋāĻ• āĻ—āĻžāĻĄāĻŧāĻŋāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡, āĻ˛āĻ• āĻ‡āĻ˛ā§‡āĻ•āĻŸā§āĻ°āĻ¨āĻŋāĻ•ā§āĻ¸ā§‡āĻ° āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻ‡āĻžā§āĻœāĻŋāĻ¨āĻ•ā§‡ āĻļā§āĻ°ā§ āĻšāĻ¤ā§‡ āĻŦāĻžāĻ§āĻž āĻĻā§‡āĻ¯āĻŧ, āĻ¯āĻž āĻŽā§‡āĻ°āĻžāĻŽāĻ¤ā§‡āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĨ¤

āĻāĻ–āĻ¨, SRP āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻ¨ā§€āĻ¤āĻŋ āĻ¯āĻž āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž āĻ•āĻ°ā§‡ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻĒāĻšāĻ¤ā§‡ āĻšāĻ¯āĻŧ, āĻ…āĻ°ā§āĻĨāĻžā§Ž āĻ•ā§‹āĻĨāĻžāĻ¯āĻŧ āĻŦāĻŋāĻ­āĻžāĻœāĻ• āĻ°ā§‡āĻ–āĻž āĻ†āĻāĻ•āĻ¤ā§‡ āĻšāĻ¯āĻŧ.

āĻ¤āĻŋāĻ¨āĻŋ āĻŦāĻ˛ā§‡āĻ›ā§‡āĻ¨ āĻ¯ā§‡ "āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ" āĻāĻ° āĻŦāĻŋāĻ­āĻžāĻœāĻ¨ā§‡āĻ° āĻ¨ā§€āĻ¤āĻŋ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡ āĻĒāĻšāĻ¨ āĻ•āĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨, āĻ…āĻ°ā§āĻĨāĻžā§Ž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻ•āĻžāĻœ āĻ…āĻ¨ā§āĻ¸āĻžāĻ°ā§‡āĨ¤

āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ¨ā§€āĻ¤āĻŋāĨ¤ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻšāĻœ āĻŽāĻ¨ā§‡ āĻšāĻ¯āĻŧ āĻ¤āĻ¤āĻŸāĻž āĻ¨āĻ¯āĻŧ

āĻ†āĻ¸ā§āĻ¨ āĻŽāĻĻā§āĻ¯āĻĒāĻžāĻ¨ā§‡ āĻĢāĻŋāĻ°ā§‡ āĻ†āĻ¸āĻŋ āĻāĻŦāĻ‚ āĻĒāĻšāĻ¨ā§‡āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻžāĻ¨āĻ° āĻŽāĻžāĻ¨ā§āĻˇ āĻ¯ā§‡ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ—ā§āĻ˛āĻŋ āĻĒāĻžāĻ¯āĻŧ:

  • āĻ•ā§‹āĻĄ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ¸ā§āĻ¤āĻ°ā§‡ āĻ…āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻšāĻ¯āĻŧā§‡ āĻ‰āĻ ā§‡āĻ›ā§‡
  • āĻ•ā§‹āĻĄāĻŸāĻŋ āĻāĻ•āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻžāĻ§āĻŋāĻ• āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ (āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĒā§ƒāĻĨāĻ• āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻ˛ā§‡āĻ–ā§‡)
  • āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ¸āĻ°āĻ˛ā§€āĻ•ā§ƒāĻ¤ - āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ āĻ¯āĻ¤ āĻ¸āĻšāĻœ, āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻ¤āĻ¤ āĻ¸āĻšāĻœ
  • āĻ•ā§‹āĻĄā§‡āĻ° āĻ¸āĻ‚āĻŽāĻŋāĻļā§āĻ°āĻŖ āĻ‰āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧ - āĻ†āĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻĄā§āĻ°āĻŋāĻ‚āĻ•āĻ†āĻĒ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻāĻ•āĻŸāĻŋ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻāĻ•āĻœāĻ¨ āĻŽāĻžāĻ¤āĻžāĻ˛ āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡āĻ° āĻ¨āĻŋāĻšā§‡ āĻ¤āĻ°āĻ˛ āĻĸā§‡āĻ˛ā§‡ āĻĻā§‡āĻ¯āĻŧāĨ¤ āĻ…āĻĨāĻŦāĻž āĻĸāĻžāĻ˛āĻž āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨āĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°ā§āĻ¨ āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ“āĻ¯āĻŧāĻžāĻ‡āĻ¨ āĻāĻŦāĻ‚ āĻœāĻ˛ āĻŦāĻž āĻ­āĻĻāĻ•āĻž āĻāĻŦāĻ‚ āĻŦāĻŋāĻ¯āĻŧāĻžāĻ° āĻŽāĻŋāĻļā§āĻ°āĻŋāĻ¤ āĻ•āĻ°ā§āĻ¨āĨ¤ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧāĻ¤āĻžāĻ° āĻ‰āĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ° āĻ•āĻ°ā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ•ā§‹āĻĄ āĻ¸ā§āĻĒāĻ°ā§āĻļ āĻ¨āĻž āĻ•āĻ°ā§‡āĻ‡ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻŸāĻŋāĻĒāĻ˛āĻžāĻ°.āĻ…ā§āĻ¯āĻžāĻ•ā§āĻŸ.
  • āĻāĻ‡ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨āĻ—ā§āĻ˛āĻŋ āĻĨā§‡āĻ•ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻĒā§‡āĻŸā§āĻ• āĻ­āĻžāĻāĻœ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ (āĻ•ā§‡āĻŦāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ TakeBitOperation), āĻ…ā§āĻ¯āĻžāĻ˛āĻ•ā§‹āĻšāĻ˛āĻŋāĻ• (āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻĄā§āĻ°āĻŋāĻ‚āĻ•āĻ†āĻĒ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻŦā§‹āĻ¤āĻ˛ āĻĨā§‡āĻ•ā§‡) āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ…āĻ¨ā§‡āĻ• āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧāĻ¤āĻž āĻĒā§‚āĻ°āĻŖ āĻ•āĻ°ā§āĻ¨āĨ¤

(āĻ“āĻš, āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡ āĻāĻŸāĻŋ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻāĻ•āĻŸāĻŋ OCP āĻ¨ā§€āĻ¤āĻŋ, āĻāĻŦāĻ‚ āĻ†āĻŽāĻŋ āĻāĻ‡ āĻĒā§‹āĻ¸ā§āĻŸā§‡āĻ° āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ˛āĻ™ā§āĻ˜āĻ¨ āĻ•āĻ°ā§‡āĻ›āĻŋ)

āĻāĻŦāĻ‚, āĻ…āĻŦāĻļā§āĻ¯āĻ‡, āĻ…āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ—ā§āĻ˛āĻŋ:

  • āĻ†āĻŽāĻ°āĻž āĻ†āĻ°ā§‹ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡.
  • āĻāĻ•āĻœāĻ¨ āĻŽāĻžāĻ¤āĻžāĻ˛ āĻĒā§āĻ°āĻĨāĻŽāĻŦāĻžāĻ° āĻĒāĻžāĻ¨ āĻ•āĻ°ā§‡ āĻ¤āĻžāĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻ•āĻ¯āĻŧā§‡āĻ• āĻ˜āĻŖā§āĻŸāĻž āĻĒāĻ°ā§‡āĨ¤

āĻ¸āĻ‚āĻœā§āĻžāĻž 2. āĻ‡āĻ‰āĻ¨āĻŋāĻĢāĻžāĻ‡āĻĄ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛āĻ¤āĻžāĨ¤

āĻ†āĻŽāĻžāĻ•ā§‡ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻāĻŋāĻ¨, āĻ­āĻĻā§āĻ°āĻ˛ā§‹āĻ•! āĻŽāĻĻā§āĻ¯āĻĒāĻžāĻ¨āĻ•āĻžāĻ°ā§€ āĻļā§āĻ°ā§‡āĻŖā§€āĻ°āĻ“ āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ†āĻ›ā§‡ - āĻāĻŸāĻŋ āĻĒāĻžāĻ¨ āĻ•āĻ°ā§‡! āĻāĻŦāĻ‚ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ­āĻžāĻŦā§‡, "āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ" āĻļāĻŦā§āĻĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ…āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ…āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻ§āĻžāĻ°āĻŖāĻžāĨ¤ āĻ•ā§‡āĻ‰ āĻŽāĻžāĻ¨āĻŦāĻ¤āĻžāĻ° āĻ­āĻžāĻ—ā§āĻ¯ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĻāĻžāĻ¯āĻŧā§€, āĻāĻŦāĻ‚ āĻ•ā§‡āĻ‰ āĻŽā§‡āĻ°ā§āĻ¤ā§‡ āĻ‰āĻ˛ā§āĻŸā§‡ āĻ¯āĻžāĻ“āĻ¯āĻŧāĻž āĻĒā§‡āĻ™ā§āĻ—ā§āĻ‡āĻ¨āĻĻā§‡āĻ° āĻ‰āĻ¤ā§āĻĨāĻžāĻĒāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĻāĻžāĻ¯āĻŧā§€āĨ¤

āĻ†āĻ¸ā§āĻ¨ āĻĒāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻ° āĻĻā§āĻŸāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°āĻŋāĨ¤ āĻ‰āĻĒāĻ°ā§‡ āĻ‰āĻ˛ā§āĻ˛āĻŋāĻ–āĻŋāĻ¤ āĻĒā§āĻ°āĻĨāĻŽāĻŸāĻŋāĻ¤ā§‡ āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻļā§āĻ°ā§‡āĻŖā§€ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ - āĻĸāĻžāĻ˛āĻž, āĻĒāĻžāĻ¨ā§€āĻ¯āĻŧ āĻāĻŦāĻ‚ āĻœāĻ˛āĻ–āĻžāĻŦāĻžāĻ°āĨ¤

āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧāĻŸāĻŋ "āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻāĻŦāĻ‚ āĻ…āĻ¨āĻ˛āĻŋ āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ˛ā§‡āĻ–āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡ āĻ†āĻ‡āĻ¨:

//НĐĩ Ņ‚Ņ€Đ°Ņ‚ŅŒŅ‚Đĩ вŅ€ĐĩĐŧŅ  ĐŊĐ° иСŅƒŅ‡ĐĩĐŊиĐĩ ŅŅ‚ĐžĐŗĐž ĐēĐģĐ°ŅŅĐ°. ЛŅƒŅ‡ŅˆĐĩ ŅŅŠĐĩŅˆŅŒŅ‚Đĩ ĐŋĐĩŅ‡ĐĩĐŊŅŒĐēŅƒ
Ņlass BrutTippler {
   //...
   void Act(){
        // ĐŊĐ°ĐģиваĐĩĐŧ
    if(!_hand.TryDischarge(from:_bottle, to:_glass, size:_glass.Capacity))
        throw new OverdrunkException();

    // вŅ‹ĐŋиваĐĩĐŧ
    if(!_hand.TryDrink(from: _glass,  size: _glass.Capacity))
        throw new OverdrunkException();

    //ЗаĐēŅƒŅŅ‹Đ˛Đ°ĐĩĐŧ
    for(int i = 0; i< 3; i++){
        var food = _foodStore.TakeOrDefault();
        if(food==null)
            throw new FoodIsOverException();

        _hand.TryEat(food);
    }
   }
}

āĻāĻ‡ āĻ‰āĻ­āĻ¯āĻŧ āĻļā§āĻ°ā§‡āĻŖā§€, āĻŦāĻžāĻ‡āĻ°ā§‡āĻ° āĻĒāĻ°ā§āĻ¯āĻŦā§‡āĻ•ā§āĻˇāĻ•ā§‡āĻ° āĻĻā§ƒāĻˇā§āĻŸāĻŋāĻ•ā§‹āĻŖ āĻĨā§‡āĻ•ā§‡, āĻĻā§‡āĻ–āĻ¤ā§‡ āĻšā§āĻŦāĻšā§ āĻāĻ•āĻ‡ āĻāĻŦāĻ‚ "āĻĒāĻžāĻ¨" āĻāĻ° āĻāĻ•āĻ‡ āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ­āĻžāĻ— āĻ•āĻ°ā§‡ āĻ¨ā§‡āĻ¯āĻŧāĨ¤

āĻŦāĻŋāĻ­ā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ !

āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻ†āĻŽāĻ°āĻž āĻ…āĻ¨āĻ˛āĻžāĻ‡āĻ¨ā§‡ āĻ¯āĻžāĻ‡ āĻāĻŦāĻ‚ SRP-āĻāĻ° āĻ†āĻ°ā§‡āĻ•āĻŸāĻŋ āĻ¸āĻ‚āĻœā§āĻžāĻž āĻ–ā§āĻāĻœā§‡ āĻĒāĻžāĻ‡ - āĻāĻ•āĻ• āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯āĻ¤āĻž āĻ¨ā§€āĻ¤āĻŋāĨ¤

SCP āĻŦāĻ˛ā§‡ āĻ¯ā§‡ "āĻāĻ•āĻŸāĻŋ āĻŽāĻĄāĻŋāĻ‰āĻ˛ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻāĻŦāĻ‚ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ°āĻŖ āĻ†āĻ›ā§‡" āĻ…āĻ°ā§āĻĨāĻžā§Ž, "āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ°āĻŖāĨ¤"

(āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡ āĻ¯ā§‡ āĻ›ā§‡āĻ˛ā§‡āĻ°āĻž āĻ†āĻ¸āĻ˛ āĻ¸āĻ‚āĻœā§āĻžāĻž āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻāĻ¸ā§‡āĻ›ā§‡āĻ¨ āĻ¤āĻžāĻ°āĻž āĻŦāĻ¨āĻŽāĻžāĻ¨ā§āĻˇā§‡āĻ° āĻŸā§‡āĻ˛āĻŋāĻĒā§āĻ¯āĻžāĻĨāĻŋāĻ• āĻĻāĻ•ā§āĻˇāĻ¤āĻžāĻ¯āĻŧ āĻ†āĻ¤ā§āĻŽāĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ā§€ āĻ›āĻŋāĻ˛ā§‡āĻ¨)

āĻāĻ–āĻ¨ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻœāĻžāĻ¯āĻŧāĻ—āĻžāĻ¯āĻŧ āĻĒāĻĄāĻŧā§‡āĨ¤ āĻ†āĻ˛āĻžāĻĻāĻžāĻ­āĻžāĻŦā§‡, āĻ†āĻŽāĻ°āĻž āĻĸāĻžāĻ˛āĻž, āĻŽāĻĻā§āĻ¯āĻĒāĻžāĻ¨ āĻāĻŦāĻ‚ āĻ¸ā§āĻ¨ā§āĻ¯āĻžāĻ•āĻŋāĻ‚āĻ¯āĻŧā§‡āĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ—ā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻŽāĻĻā§āĻ¯āĻĒāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻ° āĻŽāĻ§ā§āĻ¯ā§‡āĻ‡ āĻ†āĻŽāĻ°āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒā§‡āĻ° āĻ•ā§āĻ°āĻŽ āĻāĻŦāĻ‚ āĻ—āĻ āĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻĒāĻžāĻ¨ āĻ•āĻ°āĻžāĻ° āĻ†āĻ—ā§‡ āĻœāĻ˛āĻ–āĻžāĻŦāĻžāĻ° āĻ¸āĻ°āĻžāĻ¨ā§‹ āĻŦāĻž āĻŸā§‹āĻ¸ā§āĻŸā§‡āĻ° āĻĒāĻžāĻ  āĻ¯ā§‹āĻ— āĻ•āĻ°ā§‡āĨ¤

"āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻāĻŦāĻ‚ āĻ…āĻ¨āĻ˛āĻŋ āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§‡, āĻ¯āĻž āĻ•āĻŋāĻ›ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¤āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ āĻ†āĻ‡āĻ¨. āĻāĻŸāĻŋ āĻĒāĻ āĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯ āĻāĻŦāĻ‚ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¯āĻ–āĻ¨ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻĨāĻžāĻ•ā§‡ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻ–ā§āĻŦ āĻ•āĻŽāĻ‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ‡ āĻāĻŸāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ 500 āĻ˛āĻžāĻ‡āĻ¨ā§‡āĻ° āĻ­āĻ¯āĻŧāĻžāĻ¨āĻ• āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§‡ āĻļā§‡āĻˇ āĻšāĻ¯āĻŧ, āĻ°āĻžāĻļāĻŋāĻ¯āĻŧāĻžāĻ° āĻ¨ā§āĻ¯āĻžāĻŸā§‹āĻ¤ā§‡ āĻ¯ā§‹āĻ—āĻĻāĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§‡āĻ° āĻšā§‡āĻ¯āĻŧā§‡ āĻŦā§‡āĻļāĻŋ āĻ¯āĻĻāĻŋ-āĻŦāĻŋāĻŦā§ƒāĻ¤āĻŋ āĻĨāĻžāĻ•ā§‡āĨ¤

āĻ¸āĻ‚āĻœā§āĻžāĻž 3. āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧāĻ•āĻ°āĻŖāĨ¤

āĻŽāĻĻā§āĻ¯āĻĒāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻ°āĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ‡ āĻŦā§āĻāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ¨āĻž āĻ•ā§‡āĻ¨ āĻ¤āĻžāĻ°āĻž āĻ…āĻ¨ā§āĻ¯ āĻ•āĻžāĻ°ā§‹ āĻ…ā§āĻ¯āĻžāĻĒāĻžāĻ°ā§āĻŸāĻŽā§‡āĻ¨ā§āĻŸā§‡ āĻœā§‡āĻ—ā§‡āĻ›ā§‡ āĻŦāĻž āĻ¤āĻžāĻĻā§‡āĻ° āĻŽā§‹āĻŦāĻžāĻ‡āĻ˛ āĻĢā§‹āĻ¨ āĻ•ā§‹āĻĨāĻžāĻ¯āĻŧ āĻ†āĻ›ā§‡āĨ¤ āĻāĻŸāĻŋ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻ˛āĻ—āĻŋāĻ‚ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ.

āĻĸāĻžāĻ˛āĻž āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ¸āĻžāĻĨā§‡ āĻ˛āĻ—āĻŋāĻ‚ āĻļā§āĻ°ā§ āĻ•āĻ°āĻž āĻ¯āĻžāĻ•:

class PourOperation: IOperation{
    PourOperation(ILogger log /*....*/){/*...*/}
    //...
    void Do(){
        _log.Log($"Before pour with {_hand} and {_bottle}");
        //Pour business logic ...
        _log.Log($"After pour with {_hand} and {_bottle}");
    }
}

āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻŸāĻŋ encapsulating āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§‹āĻ°āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨, āĻ†āĻŽāĻ°āĻž āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻāĻŦāĻ‚ āĻāĻ¨āĻ•ā§āĻ¯āĻžāĻĒāĻ¸ā§āĻ˛ā§‡āĻļāĻ¨ā§‡āĻ° āĻĻā§ƒāĻˇā§āĻŸāĻŋāĻ•ā§‹āĻŖ āĻĨā§‡āĻ•ā§‡ āĻŦā§āĻĻā§āĻ§āĻŋāĻŽāĻžāĻ¨ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°ā§‡āĻ›āĻŋ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§€āĻ˛āĻ¤āĻžāĻ° āĻ¨ā§€āĻ¤āĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻŦāĻŋāĻ­ā§āĻ°āĻžāĻ¨ā§āĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĨ¤ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻ›āĻžāĻĄāĻŧāĻžāĻ“, āĻ¯āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻ˛āĻ—āĻŋāĻ‚ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯ āĻšāĻ¯āĻŧā§‡ āĻ“āĻ ā§‡āĨ¤ āĻĸāĻžāĻ˛āĻž āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ†āĻ˛āĻžāĻĻāĻž āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻŦāĻŋāĻļā§‡āĻˇ āĻ˛āĻ—āĻžāĻ° āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡:

interface IPourLogger{
    void LogBefore(IHand, IBottle){}
    void LogAfter(IHand, IBottle){}
    void OnError(IHand, IBottle, Exception){}
}

class PourOperation: IOperation{
    PourOperation(IPourLogger log /*....*/){/*...*/}
    //...
    void Do(){
        _log.LogBefore(_hand, _bottle);
        try{
             //... business logic
             _log.LogAfter(_hand, _bottle");
        }
        catch(exception e){
            _log.OnError(_hand, _bottle, e)
        }
    }
}

āĻ¸āĻ¤āĻ°ā§āĻ• āĻĒāĻžāĻ āĻ• āĻ¤āĻž āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ˛āĻ—āĻ†āĻĢāĻŸāĻžāĻ°, āĻ˛āĻ— āĻŦāĻŋāĻĢā§‹āĻ° и OnError āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ āĻĒā§ƒāĻĨāĻ•āĻ­āĻžāĻŦā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡, āĻāĻŦāĻ‚, āĻĒā§‚āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§€ āĻ§āĻžāĻĒā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻžāĻĻā§ƒāĻļā§āĻ¯ āĻĻā§āĻŦāĻžāĻ°āĻž, āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻļā§āĻ°ā§‡āĻŖā§€ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻŦā§‡: PourLoggerBefore, PourLoggerAfter и PourErrorLogger.

āĻāĻŦāĻ‚ āĻŽāĻ¨ā§‡ āĻ°āĻžāĻ–āĻŦā§‡āĻ¨ āĻ¯ā§‡ āĻāĻ•āĻœāĻ¨ āĻĒāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻ†āĻ›ā§‡, āĻ†āĻŽāĻ°āĻž āĻ¨āĻ¯āĻŧāĻŸāĻŋ āĻ˛āĻ—āĻŋāĻ‚ āĻ•ā§āĻ˛āĻžāĻ¸ āĻĒāĻžāĻ‡āĨ¤ āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ¸āĻŽāĻ—ā§āĻ° āĻĒāĻžāĻ¨ā§€āĻ¯āĻŧ āĻŦā§ƒāĻ¤ā§āĻ¤ 14 (!!!) āĻļā§āĻ°ā§‡āĻŖā§€ āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ—āĻ āĻŋāĻ¤āĨ¤

āĻ…āĻ§āĻŋāĻŦā§ƒāĻ¤ā§āĻ¤? āĻ•āĻ āĻŋāĻ¨āĻ­āĻžāĻŦā§‡! āĻāĻ•āĻŸāĻŋ āĻĒāĻšāĻ¨āĻļā§€āĻ˛ āĻ—ā§āĻ°ā§‡āĻ¨ā§‡āĻĄ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻŦāĻžāĻ¨āĻ° āĻŽāĻžāĻ¨ā§āĻˇ "āĻĸāĻžāĻ˛āĻž"āĻŸāĻŋāĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ•ā§āĻ¯āĻžāĻ¨ā§āĻŸāĻžāĻ°, āĻāĻ•āĻŸāĻŋ āĻ—ā§āĻ˛āĻžāĻ¸, āĻĸāĻžāĻ˛āĻž āĻ…āĻĒāĻžāĻ°ā§‡āĻŸāĻ°, āĻāĻ•āĻŸāĻŋ āĻœāĻ˛ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž, āĻ…āĻŖā§āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻ‚āĻ˜āĻ°ā§āĻˇā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻļāĻžāĻ°ā§€āĻ°āĻŋāĻ• āĻŽāĻĄā§‡āĻ˛ā§‡ āĻŦāĻŋāĻ­āĻ•ā§āĻ¤ āĻ•āĻ°āĻŦā§‡ āĻāĻŦāĻ‚ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ¤ā§āĻ°ā§ˆāĻŽāĻžāĻ¸āĻŋāĻ•ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸ā§‡ āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¤āĻžāĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻŽā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°āĻŦā§‡āĨ¤ āĻ—ā§āĻ˛ā§‹āĻŦāĻžāĻ˛ āĻ­ā§‡āĻ°āĻŋāĻ¯āĻŧā§‡āĻŦāĻ˛āĨ¤ āĻāĻŦāĻ‚ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ āĻ•āĻ°ā§āĻ¨, āĻ¤āĻŋāĻ¨āĻŋ āĻĨāĻžāĻŽāĻŦā§‡āĻ¨ āĻ¨āĻžāĨ¤

āĻāĻ‡ āĻŽā§āĻšā§āĻ°ā§āĻ¤ā§‡ āĻ…āĻ¨ā§‡āĻ•ā§‡āĻ‡ āĻāĻ‡ āĻ‰āĻĒāĻ¸āĻ‚āĻšāĻžāĻ°ā§‡ āĻĒā§ŒāĻāĻ›ā§‡ āĻ¯ā§‡ SRP āĻšāĻ˛ āĻ—ā§‹āĻ˛āĻžāĻĒā§€ āĻ°āĻžāĻœā§āĻ¯ā§‡āĻ° āĻ°ā§‚āĻĒāĻ•āĻĨāĻž, āĻāĻŦāĻ‚ āĻ¨ā§āĻĄā§āĻ˛āĻ¸ āĻ–ā§‡āĻ˛āĻ¤ā§‡ āĻšāĻ˛ā§‡ āĻ¯āĻžāĻ¯āĻŧ...

... Srp-āĻāĻ° āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ° āĻ…āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ¨āĻž āĻļāĻŋāĻ–ā§‡:

“āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ¨ā§€āĻ¤āĻŋ āĻŦāĻ˛ā§‡ āĻ¯ā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻœāĻŋāĻ¨āĻŋāĻ¸āĻ—ā§āĻ˛āĻŋ āĻāĻ• āĻœāĻžāĻ¯āĻŧāĻ—āĻžāĻ¯āĻŧ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤" āĻ…āĻĨāĻŦāĻž "āĻ•āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ•āĻ¸āĻžāĻĨā§‡ āĻāĻ• āĻœāĻžāĻ¯āĻŧāĻ—āĻžāĻ¯āĻŧ āĻ°āĻžāĻ–āĻ¤ā§‡ āĻšāĻŦā§‡"

āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ā§‡āĻ° āĻ˛āĻ—āĻŋāĻ‚ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻŋ, āĻ¤āĻŦā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻœāĻžāĻ¯āĻŧāĻ—āĻžāĻ¯āĻŧ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ…āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ āĻŦāĻŋāĻˇāĻ¯āĻŧ - āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻ‰āĻĒāĻ°ā§‡ SRP-āĻāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻžāĻ¯āĻŧ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻ¯ā§‡ āĻŸāĻžāĻ‡āĻĒāĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻšā§‚āĻ°ā§āĻŖ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻŋāĻˇā§‡ āĻĢā§‡āĻ˛āĻž āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ›āĻŋāĻ˛, āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻ¤āĻžāĻ°āĻž āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻ†āĻ•āĻžāĻ°ā§‡āĻ° āĻ‰āĻĒāĻ° āĻāĻ•āĻŸāĻŋ "āĻ‰āĻ°ā§āĻ§ā§āĻŦ āĻ¸ā§€āĻŽāĻž" āĻ†āĻ°ā§‹āĻĒ āĻ•āĻ°ā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻāĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ "āĻ¨āĻŋāĻŽā§āĻ¨ āĻ¸ā§€āĻŽāĻž" āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ•āĻĨāĻž āĻŦāĻ˛āĻ›āĻŋāĨ¤ āĻ…āĻ¨ā§āĻ¯ āĻ•āĻĨāĻžāĻ¯āĻŧ, āĻāĻ¸āĻ†āĻ°āĻĒāĻŋ-āĻ° āĻœāĻ¨ā§āĻ¯ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "āĻ•ā§āĻ°āĻžāĻļ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻŋāĻˇā§‡ āĻĢā§‡āĻ˛āĻž" āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻšāĻ¯āĻŧ āĻ¨āĻž, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻ•āĻ°āĻžāĻ“ āĻ¨āĻ¯āĻŧ - "āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻ˛āĻ•āĻŋāĻ‚ āĻœāĻŋāĻ¨āĻŋāĻ¸āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ•ā§āĻ°āĻžāĻļ āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¨āĻž". āĻ“āĻ•āĻžāĻŽā§‡āĻ° āĻ°ā§‡āĻœāĻžāĻ° āĻ†āĻ° āĻāĻĒ āĻŽā§āĻ¯āĻžāĻ¨ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ‡ āĻŽāĻšāĻžāĻ¯ā§āĻĻā§āĻ§!

āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ¨ā§€āĻ¤āĻŋāĨ¤ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻšāĻœ āĻŽāĻ¨ā§‡ āĻšāĻ¯āĻŧ āĻ¤āĻ¤āĻŸāĻž āĻ¨āĻ¯āĻŧ

āĻāĻ–āĻ¨ āĻĒāĻžāĻ¨āĻ•āĻžāĻ°ā§€ āĻ­āĻžāĻ˛ āĻŦā§‹āĻ§ āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤ IPourLogger āĻ˛āĻ—āĻžāĻ°āĻ•ā§‡ āĻ¤āĻŋāĻ¨āĻŸāĻŋ āĻļā§āĻ°ā§‡āĻŖā§€āĻ¤ā§‡ āĻŦāĻŋāĻ­āĻ•ā§āĻ¤ āĻ•āĻ°āĻžāĻ° āĻ•ā§‹āĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ¨ā§‡āĻ‡ āĻ¤āĻž āĻ›āĻžāĻĄāĻŧāĻžāĻ“, āĻ†āĻŽāĻ°āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ˛āĻ—āĻžāĻ°āĻ•ā§‡ āĻāĻ• āĻĒā§āĻ°āĻ•āĻžāĻ°ā§‡ āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°āĻŋ:

class OperationLogger{
    public OperationLogger(string operationName){/*..*/}
    public void LogBefore(object[] args){/*...*/}       
    public void LogAfter(object[] args){/*..*/}
    public void LogError(object[] args, exception e){/*..*/}
}

āĻāĻŦāĻ‚ āĻ¯āĻĻāĻŋ āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻšāĻ¤ā§āĻ°ā§āĻĨ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻŋ, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ˛āĻ—āĻŋāĻ‚ āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĨ¤ āĻāĻŦāĻ‚ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻ•ā§‹āĻĄ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻāĻŦāĻ‚ āĻ…āĻŦāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻ—ā§‹āĻ˛āĻŽāĻžāĻ˛ āĻŽā§āĻ•ā§āĻ¤.

āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻŽāĻĻā§āĻ¯āĻĒāĻžāĻ¨ā§‡āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻžāĻĻā§‡āĻ° 5āĻŸāĻŋ āĻ•ā§āĻ˛āĻžāĻ¸ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡:

  • āĻĸāĻžāĻ˛āĻž āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨
  • āĻŽāĻĻā§āĻ¯āĻĒāĻžāĻ¨ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨
  • āĻœā§āĻ¯āĻžāĻŽāĻŋāĻ‚ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨
  • āĻ˛āĻ—āĻžāĻ°
  • āĻŽāĻĻā§āĻ¯āĻĒ āĻ¸āĻŽā§āĻŽā§āĻ–āĻ­āĻžāĻ—

āĻ¤āĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻžāĻ°āĻŋāĻ¤āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻ ā§‹āĻ°āĻ­āĻžāĻŦā§‡ āĻĻāĻžāĻ¯āĻŧā§€ āĻāĻŦāĻ‚ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ°āĻŖ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻ•āĻžāĻ›āĻžāĻ•āĻžāĻ›āĻŋ āĻ…āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤.

āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻœā§€āĻŦāĻ¨ā§‡āĻ° āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ

āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŦāĻžāĻ° āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻ­āĻžāĻŦā§‡ āĻāĻ•āĻŸāĻŋ b2b āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻ˛āĻŋāĻ–ā§‡āĻ›āĻŋāĻ˛āĻžāĻŽāĨ¤ āĻāĻŦāĻ‚ āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§āĻ° 200 āĻ˛āĻžāĻ‡āĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻˆāĻļā§āĻŦāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ‰āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡:

  • 1C āĻ āĻ¯āĻžāĻ¨ āĻāĻŦāĻ‚ āĻāĻ•āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻ•āĻžāĻ‰āĻ¨ā§āĻŸ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨
  • āĻāĻ‡ āĻ…ā§āĻ¯āĻžāĻ•āĻžāĻ‰āĻ¨ā§āĻŸā§‡āĻ° āĻ¸āĻžāĻĨā§‡, āĻĒā§‡āĻŽā§‡āĻ¨ā§āĻŸ āĻŽāĻĄāĻŋāĻ‰āĻ˛ā§‡ āĻ¯āĻžāĻ¨ āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ–āĻžāĻ¨ā§‡ āĻāĻŸāĻŋ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨
  • āĻšā§‡āĻ• āĻ•āĻ°ā§āĻ¨ āĻ¯ā§‡ āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ…ā§āĻ¯āĻžāĻ•āĻžāĻ‰āĻ¨ā§āĻŸā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻāĻ•āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻ•āĻžāĻ‰āĻ¨ā§āĻŸ āĻŽā§‚āĻ˛ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ
  • āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ…ā§āĻ¯āĻžāĻ•āĻžāĻ‰āĻ¨ā§āĻŸ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨
  • āĻĒā§‡āĻŽā§‡āĻ¨ā§āĻŸ āĻŽāĻĄāĻŋāĻ‰āĻ˛ā§‡ āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°ā§‡āĻļāĻ¨ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻāĻŦāĻ‚ āĻ°ā§‡āĻœāĻŋāĻ¸ā§āĻŸā§āĻ°ā§‡āĻļāĻ¨ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ¤ā§‡ 1c āĻ¨āĻŽā§āĻŦāĻ° āĻ¯ā§‹āĻ— āĻ•āĻ°ā§āĻ¨
  • āĻāĻ‡ āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡ āĻ…ā§āĻ¯āĻžāĻ•āĻžāĻ‰āĻ¨ā§āĻŸ āĻ¤āĻĨā§āĻ¯ āĻ¯ā§‹āĻ— āĻ•āĻ°ā§āĻ¨
  • āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ¸āĻžāĻ°ā§āĻ­āĻŋāĻ¸ā§‡ āĻāĻ‡ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ¨āĻŽā§āĻŦāĻ° āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°ā§āĻ¨āĨ¤ āĻāĻ‡ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ¤ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° 1c āĻ…ā§āĻ¯āĻžāĻ•āĻžāĻ‰āĻ¨ā§āĻŸ āĻ¨āĻŽā§āĻŦāĻ° āĻĒāĻžāĻ¸ āĻ•āĻ°ā§āĻ¨āĨ¤

āĻāĻŦāĻ‚ āĻ­āĻ¯āĻŧāĻžāĻ¨āĻ• āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻ¸āĻš āĻāĻ‡ āĻ¤āĻžāĻ˛āĻŋāĻ•āĻžāĻ¯āĻŧ āĻ†āĻ°āĻ“ 10āĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ• āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒ āĻ›āĻŋāĻ˛āĨ¤ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§‡āĻ•ā§‡āĻ°āĻ‡ āĻ…ā§āĻ¯āĻžāĻ•āĻžāĻ‰āĻ¨ā§āĻŸ āĻ…āĻŦāĻœā§‡āĻ•ā§āĻŸā§‡āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ›āĻŋāĻ˛āĨ¤ āĻ…āĻ°ā§āĻ§ā§‡āĻ• āĻ•āĻ˛ā§‡ āĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ†āĻ‡āĻĄāĻŋ āĻāĻŦāĻ‚ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻ¨āĻžāĻŽ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ›āĻŋāĻ˛āĨ¤

āĻ°āĻŋāĻĢā§āĻ¯āĻžāĻ•ā§āĻŸāĻ°āĻŋāĻ‚āĻ¯āĻŧā§‡āĻ° āĻāĻ• āĻ˜āĻ¨ā§āĻŸāĻž āĻĒāĻ°ā§‡, āĻ†āĻŽāĻ°āĻž āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻ•ā§‹āĻĄ āĻāĻŦāĻ‚ āĻ…ā§āĻ¯āĻžāĻ•āĻžāĻ‰āĻ¨ā§āĻŸā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻœ āĻ•āĻ°āĻžāĻ° āĻ•āĻŋāĻ›ā§ āĻ¸ā§‚āĻ•ā§āĻˇā§āĻŽāĻ¤āĻžāĻ•ā§‡ āĻ†āĻ˛āĻžāĻĻāĻž āĻĒāĻĻā§āĻ§āĻ¤āĻŋ/āĻ•ā§āĻ˛āĻžāĻ¸ā§‡ āĻ†āĻ˛āĻžāĻĻāĻž āĻ•āĻ°āĻ¤ā§‡ āĻ¸āĻ•ā§āĻˇāĻŽ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĨ¤ āĻˆāĻļā§āĻŦāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻŸāĻŋ āĻāĻŸāĻŋāĻ•ā§‡ āĻ¸āĻšāĻœ āĻ•āĻ°ā§‡ āĻĻāĻŋāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ•ā§‹āĻĄā§‡āĻ° 100āĻŸāĻŋ āĻ˛āĻžāĻ‡āĻ¨ āĻŦāĻžāĻ•āĻŋ āĻ›āĻŋāĻ˛ āĻ¯āĻž āĻ•ā§‡āĻŦāĻ˛ āĻ…āĻ—ā§‹āĻ›āĻžāĻ˛ā§‹ āĻšāĻ¤ā§‡ āĻšāĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤

āĻŽāĻžāĻ¤ā§āĻ° āĻ•āĻ¯āĻŧā§‡āĻ•āĻĻāĻŋāĻ¨ āĻĒāĻ°ā§‡āĻ‡ āĻāĻŸāĻž āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻšāĻ¯āĻŧā§‡ āĻ—ā§‡āĻ˛ āĻ¯ā§‡ āĻāĻ‡ "āĻšāĻžāĻ˛āĻ•āĻž" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻ¸āĻžāĻ°āĻŽāĻ°ā§āĻŽ āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ• āĻ…ā§āĻ¯āĻžāĻ˛āĻ—āĻ°āĻŋāĻĻāĻŽāĨ¤ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ā§‡āĻ° āĻŽā§‚āĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻŸāĻŋ āĻŦā§‡āĻļ āĻœāĻŸāĻŋāĻ˛ āĻ›āĻŋāĻ˛āĨ¤ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻāĻ‡ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻŸāĻŋāĻ•ā§‡ āĻŸā§āĻ•āĻ°ā§‹ āĻŸā§āĻ•āĻ°ā§‹ āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ¯āĻž SRP āĻ˛āĻ™ā§āĻ˜āĻ¨ āĻ•āĻ°āĻŦā§‡, āĻāĻŦāĻ‚ āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§€āĻ¤ā§‡ āĻ¨āĻ¯āĻŧāĨ¤

āĻ†āĻ¨ā§āĻˇā§āĻ āĻžāĻ¨āĻŋāĻ•āĻ¤āĻžāĨ¤

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŽāĻžāĻ¤āĻžāĻ˛āĻ•ā§‡ āĻāĻ•āĻž āĻ›ā§‡āĻĄāĻŧā§‡ āĻĻā§‡āĻ“āĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ¸ā§‡āĻ›ā§‡āĨ¤ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ…āĻļā§āĻ°ā§ āĻļā§āĻ•āĻŋāĻ¯āĻŧā§‡ āĻĻāĻŋāĻ¨ - āĻ†āĻŽāĻ°āĻž āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻāĻ•āĻĻāĻŋāĻ¨ āĻāĻŸāĻŋāĻ¤ā§‡ āĻĢāĻŋāĻ°ā§‡ āĻ¯āĻžāĻŦāĨ¤ āĻāĻ–āĻ¨ āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ āĻĨā§‡āĻ•ā§‡ āĻœā§āĻžāĻžāĻ¨ āĻ†āĻ¨ā§āĻˇā§āĻ āĻžāĻ¨āĻŋāĻ• āĻ•āĻ°āĻž āĻ¯āĻžāĻ•.

āĻ†āĻ¨ā§āĻˇā§āĻ āĻžāĻ¨āĻŋāĻ•āĻ¤āĻž 1. SRP āĻāĻ° āĻ¸āĻ‚āĻœā§āĻžāĻž

  1. āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ†āĻ˛āĻžāĻĻāĻž āĻ•āĻ°ā§āĻ¨ āĻ¯āĻžāĻ¤ā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻœāĻŋāĻ¨āĻŋāĻ¸ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĻāĻžāĻ¯āĻŧā§€āĨ¤
  2. āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻŽāĻžāĻ¨ā§‡ "āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻ•āĻžāĻ°āĻŖ"āĨ¤ āĻ…āĻ°ā§āĻĨāĻžā§Ž, āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ• āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ° āĻĒāĻ°āĻŋāĻĒā§āĻ°ā§‡āĻ•ā§āĻˇāĻŋāĻ¤ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨ā§‡āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ°āĻŖ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤
  3. āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ• āĻ¯ā§āĻ•ā§āĻ¤āĻŋāĻ¤ā§‡ āĻ¸āĻŽā§āĻ­āĻžāĻŦā§āĻ¯ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĨ¤ āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧāĻ•āĻ°āĻŖ āĻ•āĻ°āĻž āĻ†āĻŦāĻļā§āĻ¯āĻ•āĨ¤ āĻ¸āĻŋāĻ™ā§āĻ•ā§āĻ°ā§‹āĻ¨āĻžāĻ¸āĻ­āĻžāĻŦā§‡ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ•āĻžāĻ›āĻžāĻ•āĻžāĻ›āĻŋ āĻšāĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

āĻ†āĻ¨ā§āĻˇā§āĻ āĻžāĻ¨āĻŋāĻ•āĻ¤āĻž 2. āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¸ā§āĻŦ-āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻŽāĻžāĻ¨āĻĻāĻŖā§āĻĄāĨ¤

āĻ†āĻŽāĻŋ āĻāĻ¸āĻ†āĻ°āĻĒāĻŋ āĻĒā§‚āĻ°āĻŖā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒāĻ°ā§āĻ¯āĻžāĻĒā§āĻ¤ āĻŽāĻžāĻ¨āĻĻāĻŖā§āĻĄ āĻĻā§‡āĻ–āĻŋāĻ¨āĻŋāĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻļāĻ°ā§āĻ¤ āĻ†āĻ›ā§‡:

1) āĻ¨āĻŋāĻœā§‡āĻ•ā§‡ āĻœāĻŋāĻœā§āĻžāĻžāĻ¸āĻž āĻ•āĻ°ā§āĻ¨ āĻāĻ‡ āĻ•ā§āĻ˛āĻžāĻ¸/āĻĒāĻĻā§āĻ§āĻ¤āĻŋ/āĻŽāĻĄāĻŋāĻ‰āĻ˛/āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻ•āĻŋ āĻ•āĻ°ā§‡āĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻšāĻœ āĻ¸āĻ‚āĻœā§āĻžāĻž āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ‰āĻ¤ā§āĻ¤āĻ° āĻĻāĻŋāĻ¤ā§‡ āĻšāĻŦā§‡. ( āĻ§āĻ¨ā§āĻ¯āĻŦāĻžāĻĻ āĻŦā§āĻ°āĻžāĻ‡āĻŸāĻ°āĻŋ )

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž

āĻ¯āĻžāĻ‡āĻšā§‹āĻ•, āĻ•āĻ–āĻ¨āĻ“ āĻ•āĻ–āĻ¨āĻ“ āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻšāĻœ āĻ¸āĻ‚āĻœā§āĻžāĻž āĻ–ā§āĻāĻœā§‡ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ–ā§āĻŦ āĻ•āĻ āĻŋāĻ¨

2) āĻāĻ•āĻŸāĻŋ āĻŦāĻžāĻ— āĻ¸āĻ‚āĻļā§‹āĻ§āĻ¨ āĻ•āĻ°āĻž āĻŦāĻž āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• āĻĢāĻžāĻ‡āĻ˛/āĻ•ā§āĻ˛āĻžāĻ¸āĻ•ā§‡ āĻĒā§āĻ°āĻ­āĻžāĻŦāĻŋāĻ¤ āĻ•āĻ°ā§‡ā§ˇ āĻ†āĻĻāĻ°ā§āĻļāĻ­āĻžāĻŦā§‡ - āĻāĻ•.

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž

āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻĻāĻžāĻ¯āĻŧāĻŦāĻĻā§āĻ§āĻ¤āĻž (āĻāĻ•āĻŸāĻŋ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ āĻŦāĻž āĻŦāĻžāĻ—) āĻāĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛/āĻ•ā§āĻ˛āĻžāĻ¸ā§‡ āĻāĻ¨āĻ•ā§āĻ¯āĻžāĻĒāĻ¸ā§āĻ˛ā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻ āĻŋāĻ• āĻœāĻžāĻ¨ā§‡āĻ¨ āĻ•ā§‹āĻĨāĻžāĻ¯āĻŧ āĻĻā§‡āĻ–āĻ¤ā§‡ āĻšāĻŦā§‡ āĻāĻŦāĻ‚ āĻ•ā§€ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ: āĻ˛āĻ—āĻŋāĻ‚ āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒā§‡āĻ° āĻ†āĻ‰āĻŸāĻĒā§āĻŸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻžāĻ° āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯āĻŸāĻŋāĻ° āĻœāĻ¨ā§āĻ¯ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ˛āĻ—āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻŦāĻžāĻ•āĻŋ āĻ•ā§‹āĻĄā§‡āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻšāĻžāĻ˛āĻžāĻ¨ā§‹āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ¨ā§‡āĻ‡āĨ¤

āĻ†āĻ°ā§‡āĻ•āĻŸāĻŋ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻšāĻ˛ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ UI āĻ•āĻ¨ā§āĻŸā§āĻ°ā§‹āĻ˛ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡, āĻ†āĻ—ā§‡āĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻŽāĻ¤ā§‹āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻŸāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ 10āĻŸāĻŋ āĻ­āĻŋāĻ¨ā§āĻ¨ āĻ¸āĻ¤ā§āĻ¤āĻž āĻāĻŦāĻ‚ 15āĻŸāĻŋ āĻ­āĻŋāĻ¨ā§āĻ¨ āĻ°ā§‚āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻ•āĻžāĻ°ā§€ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻ¤ā§‡ āĻŦāĻžāĻ§ā§āĻ¯ āĻ•āĻ°ā§‡, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻāĻŸāĻŋāĻ•ā§‡ āĻ…āĻ¤āĻŋāĻ°āĻŋāĻ•ā§āĻ¤ āĻ•āĻ°āĻ›ā§‡āĻ¨ā§ˇ

3) āĻ¯āĻĻāĻŋ āĻŦā§‡āĻļ āĻ•āĻ¯āĻŧā§‡āĻ•āĻŸāĻŋ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ•āĻ˛ā§āĻĒā§‡āĻ° āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯ā§‡āĻ° āĻ‰āĻĒāĻ° āĻ•āĻžāĻœ āĻ•āĻ°ā§‡, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻāĻ•āĻŸāĻŋ āĻŽāĻžāĻ°ā§āĻœ āĻŦāĻŋāĻ°ā§‹āĻ§ā§‡āĻ° āĻ¸āĻŽā§āĻ­āĻžāĻŦāĻ¨āĻž, āĻ…āĻ°ā§āĻĨāĻžā§Ž āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡ āĻāĻ•āĻžāĻ§āĻŋāĻ• āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ•āĻ‡ āĻĢāĻžāĻ‡āĻ˛/āĻļā§āĻ°ā§‡āĻŖā§€ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽā§āĻ­āĻžāĻŦāĻ¨āĻž āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽāĨ¤

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž

āĻ¯āĻĻāĻŋ, āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ "āĻŸā§‡āĻŦāĻŋāĻ˛ā§‡āĻ° āĻ¨ā§€āĻšā§‡ āĻ­āĻĻāĻ•āĻž āĻĸāĻžāĻ˛āĻž" āĻ¯ā§‹āĻ— āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ˛āĻ—āĻžāĻ°, āĻŽāĻĻā§āĻ¯āĻĒāĻžāĻ¨ āĻāĻŦāĻ‚ āĻĸāĻžāĻ˛āĻžāĻ° āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨āĻ•ā§‡ āĻĒā§āĻ°āĻ­āĻžāĻŦāĻŋāĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻŽāĻ¨ā§‡ āĻšāĻšā§āĻ›ā§‡ āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦāĻ—ā§āĻ˛āĻŋ āĻŦāĻžāĻāĻ•āĻžāĻ­āĻžāĻŦā§‡ āĻ­āĻžāĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻ…āĻŦāĻļā§āĻ¯āĻ‡, āĻāĻŸāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¸āĻŽā§āĻ­āĻŦ āĻ¨āĻ¯āĻŧ, āĻ¤āĻŦā§‡ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻāĻ‡ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĻŸāĻŋ āĻšā§āĻ°āĻžāĻ¸ āĻ•āĻ°āĻžāĻ° āĻšā§‡āĻˇā§āĻŸāĻž āĻ•āĻ°āĻž āĻ‰āĻšāĻŋāĻ¤āĨ¤

4) āĻ¯āĻ–āĻ¨ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ• āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻŸ āĻĒā§āĻ°āĻļā§āĻ¨ āĻœāĻŋāĻœā§āĻžāĻžāĻ¸āĻž āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ (āĻāĻ•āĻœāĻ¨ āĻŦāĻŋāĻ•āĻžāĻļāĻ•āĻžāĻ°ā§€ āĻŦāĻž āĻĒāĻ°āĻŋāĻšāĻžāĻ˛āĻ•ā§‡āĻ° āĻ•āĻžāĻ› āĻĨā§‡āĻ•ā§‡), āĻ†āĻĒāĻ¨āĻŋ āĻ•āĻ ā§‹āĻ°āĻ­āĻžāĻŦā§‡ āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ˛āĻžāĻ¸/āĻĢāĻžāĻ‡āĻ˛ā§‡ āĻ¯āĻžāĻ¨ āĻāĻŦāĻ‚ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸ā§‡āĻ–āĻžāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻ¨āĨ¤

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž

āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯, āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŦāĻž āĻ…ā§āĻ¯āĻžāĻ˛āĻ—āĻ°āĻŋāĻĻāĻŽāĻ—ā§āĻ˛āĻŋ āĻ¸āĻ‚āĻ•ā§āĻˇāĻŋāĻĒā§āĻ¤āĻ­āĻžāĻŦā§‡ āĻ˛ā§‡āĻ–āĻž āĻšāĻ¯āĻŧ, āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻāĻ• āĻœāĻžāĻ¯āĻŧāĻ—āĻžāĻ¯āĻŧ, āĻāĻŦāĻ‚ āĻ•ā§‹āĻĄ āĻ¸ā§āĻĒā§‡āĻ¸ āĻœā§āĻĄāĻŧā§‡ āĻĒāĻ¤āĻžāĻ•āĻž āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ›āĻĄāĻŧāĻŋāĻ¯āĻŧā§‡ āĻ›āĻŋāĻŸāĻŋāĻ¯āĻŧā§‡ āĻ¨ā§‡āĻ‡āĨ¤

5) āĻ¨āĻžāĻŽāĻ•āĻ°āĻŖ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ°āĨ¤

āĻŦā§āĻ¯āĻžāĻ–ā§āĻ¯āĻž

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻļā§āĻ°ā§‡āĻŖā§€ āĻŦāĻž āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻ•āĻŸāĻŋ āĻœāĻŋāĻ¨āĻŋāĻ¸ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĻāĻžāĻ¯āĻŧā§€, āĻāĻŦāĻ‚ āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦāĻŸāĻŋ āĻ¤āĻžāĻ° āĻ¨āĻžāĻŽā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻĢāĻ˛āĻŋāĻ¤ āĻšāĻ¯āĻŧ

AllManagersManagerService - āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻāĻ•āĻŸāĻŋ āĻˆāĻļā§āĻŦāĻ° āĻļā§āĻ°ā§‡āĻŖā§€
āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ āĻĒā§‡āĻŽā§‡āĻ¨ā§āĻŸ - āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻ¨āĻž

āĻ†āĻ¨ā§āĻˇā§āĻ āĻžāĻ¨āĻŋāĻ•āĻ¤āĻž 3. āĻ“āĻ•āĻžāĻŽ-āĻĒā§āĻ°āĻĨāĻŽ āĻŦāĻŋāĻ•āĻžāĻļ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĨ¤

āĻ¨āĻ•āĻļāĻžāĻ° āĻļā§āĻ°ā§āĻ¤ā§‡, āĻŦāĻžāĻ¨āĻ° āĻŽāĻžāĻ¨ā§āĻˇ āĻœāĻžāĻ¨ā§‡ āĻ¨āĻž āĻāĻŦāĻ‚ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸ā§‚āĻ•ā§āĻˇā§āĻŽāĻ¤āĻž āĻ…āĻ¨ā§āĻ­āĻŦ āĻ•āĻ°ā§‡ āĻ¨āĻž āĻāĻŦāĻ‚ āĻ­ā§āĻ˛ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ†āĻĒāĻ¨āĻŋ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻ‰āĻĒāĻžāĻ¯āĻŧā§‡ āĻ­ā§āĻ˛ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

  • āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻ•āĻ°ā§‡ āĻŦāĻ¸ā§āĻ¤ā§āĻ•ā§‡ āĻ…āĻ¨ā§‡āĻ• āĻŦāĻĄāĻŧ āĻ•āĻ°ā§āĻ¨
  • āĻāĻ•āĻŸāĻŋ āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦāĻ•ā§‡ āĻŦāĻŋāĻ­āĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ°āĻ•āĻžāĻ°ā§‡ āĻ­āĻžāĻ— āĻ•āĻ°ā§‡ āĻ°āĻŋāĻĢā§āĻ°ā§‡āĻŽāĻŋāĻ‚
  • āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦā§‡āĻ° āĻ¸ā§€āĻŽāĻžāĻ¨āĻž āĻ­ā§āĻ˛āĻ­āĻžāĻŦā§‡ āĻ¸āĻ‚āĻœā§āĻžāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ•āĻ°ā§āĻ¨

āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŸāĻŋ āĻŽāĻ¨ā§‡ āĻ°āĻžāĻ–āĻž āĻ—ā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§‚āĻ°ā§āĻŖ: "āĻāĻ•āĻŸāĻŋ āĻŦāĻĄāĻŧ āĻ­ā§āĻ˛ āĻ•āĻ°āĻž āĻ­āĻžāĻ˛," āĻŦāĻž "āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻļā§āĻšāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ¨ āĻ¤āĻŦā§‡ āĻāĻŸāĻŋāĻ•ā§‡ āĻ­āĻžāĻ— āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¨āĻžāĨ¤" āĻ¯āĻĻāĻŋ, āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, āĻ†āĻĒāĻ¨āĻžāĻ° āĻ•ā§āĻ˛āĻžāĻ¸ā§‡ āĻĻā§āĻŸāĻŋ āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻĨāĻžāĻ•ā§‡, āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻāĻ–āĻ¨āĻ“ āĻŦā§‹āĻ§āĻ—āĻŽā§āĻ¯ āĻāĻŦāĻ‚ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ•ā§‹āĻĄā§‡ āĻ¨ā§āĻ¯ā§‚āĻ¨āĻ¤āĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻĻā§āĻŸāĻŋ āĻ­āĻžāĻ—ā§‡ āĻŦāĻŋāĻ­āĻ•ā§āĻ¤ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻ•āĻžāĻšā§‡āĻ° āĻŸā§āĻ•āĻ°ā§‹ āĻĨā§‡āĻ•ā§‡ āĻāĻ•āĻŸāĻŋ āĻ—ā§āĻ˛āĻžāĻ¸ āĻāĻ•āĻ¤ā§āĻ°āĻŋāĻ¤ āĻ•āĻ°āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ†āĻ°āĻ“ āĻ•āĻ āĻŋāĻ¨ āĻ•āĻžāĻ°āĻŖ āĻĒā§āĻ°āĻ¸āĻ™ā§āĻ—āĻŸāĻŋ āĻŦā§‡āĻļ āĻ•āĻ¯āĻŧā§‡āĻ•āĻŸāĻŋ āĻĢāĻžāĻ‡āĻ˛ āĻœā§āĻĄāĻŧā§‡ āĻ›āĻĄāĻŧāĻŋāĻ¯āĻŧā§‡ āĻĒāĻĄāĻŧā§‡ āĻāĻŦāĻ‚ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻ•ā§‹āĻĄā§‡ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¤āĻžāĻ° āĻ…āĻ­āĻžāĻŦāĨ¤

āĻāĻŸāĻŋ āĻāĻ•āĻŸāĻŋ āĻĻāĻŋāĻ¨ āĻ•āĻ˛ āĻ•āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ

SRP āĻāĻ° āĻĒāĻ°āĻŋāĻ§āĻŋ OOP āĻāĻŦāĻ‚ SOLID āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻŸāĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ, āĻĢāĻžāĻ‚āĻļāĻ¨, āĻ•ā§āĻ˛āĻžāĻ¸, āĻŽāĻĄāĻŋāĻ‰āĻ˛, āĻŽāĻžāĻ‡āĻ•ā§āĻ°ā§‹āĻ¸āĻžāĻ°ā§āĻ­āĻŋāĻ¸ āĻāĻŦāĻ‚ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻĒā§āĻ°āĻ¯ā§‹āĻœā§āĻ¯āĨ¤ āĻāĻŸāĻŋ "āĻĢāĻŋāĻ—ā§āĻ¯āĻžāĻ•ā§āĻ¸-āĻĢāĻŋāĻ—āĻžāĻ•ā§āĻ¸-āĻāĻ¨ā§āĻĄ-āĻĒā§āĻ°ā§‹āĻĄ" āĻāĻŦāĻ‚ "āĻ°āĻ•ā§‡āĻŸ-āĻ¸āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻ¸" āĻ‰āĻ­āĻ¯āĻŧā§‡āĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡āĻ‡ āĻĒā§āĻ°āĻ¯ā§‹āĻœā§āĻ¯, āĻ¯āĻž āĻŦāĻŋāĻļā§āĻŦāĻ•ā§‡ āĻ¸āĻ°ā§āĻŦāĻ¤ā§āĻ° āĻāĻ•āĻŸā§ āĻ­āĻžāĻ˛ā§‹ āĻ•āĻ°ā§‡ āĻ¤ā§‹āĻ˛ā§‡āĨ¤ āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ āĻāĻŸāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻšāĻŋāĻ¨ā§āĻ¤āĻž āĻ•āĻ°ā§‡āĻ¨, āĻāĻŸāĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻ•ā§ŒāĻļāĻ˛ā§‡āĻ° āĻŽā§ŒāĻ˛āĻŋāĻ• āĻ¨ā§€āĻ¤āĻŋāĨ¤ āĻŽā§‡āĻ•āĻžāĻ¨āĻŋāĻ•ā§āĻ¯āĻžāĻ˛ āĻ‡āĻžā§āĻœāĻŋāĻ¨āĻŋāĻ¯āĻŧāĻžāĻ°āĻŋāĻ‚, āĻ•āĻ¨ā§āĻŸā§āĻ°ā§‹āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ•ā§ƒāĻ¤āĻĒāĻ•ā§āĻˇā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻœāĻŸāĻŋāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻ—ā§āĻ˛āĻŋ āĻĨā§‡āĻ•ā§‡ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻŦāĻ‚ "āĻ†āĻ¨ā§āĻĄāĻžāĻ°āĻĢā§āĻ°ā§āĻ¯āĻžāĻ—āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨" āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨āĻžāĻ°āĻĻā§‡āĻ° āĻ¨āĻŽāĻ¨ā§€āĻ¯āĻŧāĻ¤āĻž āĻĨā§‡āĻ•ā§‡ āĻŦāĻžā§āĻšāĻŋāĻ¤ āĻ•āĻ°ā§‡, "āĻ“āĻ­āĻžāĻ°āĻĢā§āĻ°ā§āĻ¯āĻžāĻ—āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨" āĻĄāĻŋāĻœāĻžāĻ‡āĻ¨āĻžāĻ°āĻĻā§‡āĻ° āĻĻāĻ•ā§āĻˇāĻ¤āĻž āĻĨā§‡āĻ•ā§‡ āĻŦāĻžā§āĻšāĻŋāĻ¤ āĻ•āĻ°ā§‡, āĻāĻŦāĻ‚ āĻ­ā§āĻ˛ āĻ¸ā§€āĻŽāĻžāĻ¨āĻž āĻ¤āĻžāĻĻā§‡āĻ° āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻāĻŦāĻ‚ āĻŽāĻžāĻ¨āĻ¸āĻŋāĻ• āĻļāĻžāĻ¨ā§āĻ¤āĻŋ āĻĨā§‡āĻ•ā§‡ āĻŦāĻžā§āĻšāĻŋāĻ¤ āĻ•āĻ°ā§‡āĨ¤

āĻāĻ•āĻ• āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ¨ā§€āĻ¤āĻŋāĨ¤ āĻ¯āĻ¤āĻŸāĻž āĻ¸āĻšāĻœ āĻŽāĻ¨ā§‡ āĻšāĻ¯āĻŧ āĻ¤āĻ¤āĻŸāĻž āĻ¨āĻ¯āĻŧ

SRP āĻĒā§āĻ°āĻ•ā§ƒāĻ¤āĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ‰āĻĻā§āĻ­āĻžāĻŦāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ āĻāĻŦāĻ‚ āĻ¸āĻ āĻŋāĻ• āĻŦāĻŋāĻœā§āĻžāĻžāĻ¨ā§‡āĻ° āĻ…āĻ‚āĻļ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻŸāĻŋ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻœā§ˆāĻŦāĻŋāĻ• āĻāĻŦāĻ‚ āĻŽāĻ¨āĻ¸ā§āĻ¤āĻžāĻ¤ā§āĻ¤ā§āĻŦāĻŋāĻ• āĻ¸ā§€āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻĨā§‡āĻ•ā§‡ āĻŦā§‡āĻ°āĻŋāĻ¯āĻŧā§‡ āĻ†āĻ¸ā§‡āĨ¤āĻāĻŸāĻŋ āĻŦāĻžāĻ¨āĻ°-āĻŽāĻžāĻ¨ā§āĻˇā§‡āĻ° āĻŽāĻ¸ā§āĻ¤āĻŋāĻˇā§āĻ• āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻœāĻŸāĻŋāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽāĻ—ā§āĻ˛āĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻŦāĻ‚ āĻŦāĻŋāĻ•āĻžāĻļ āĻ•āĻ°āĻžāĻ° āĻāĻ•āĻŸāĻŋ āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻŽāĻžāĻ¤ā§āĻ°āĨ¤ āĻ¤āĻŋāĻ¨āĻŋ āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻŦāĻ˛ā§‡āĻ¨ āĻ•āĻŋāĻ­āĻžāĻŦā§‡ āĻāĻ•āĻŸāĻŋ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĒāĻšāĻ¨āĻļā§€āĻ˛. āĻŽā§‚āĻ˛ āĻĒā§āĻ°āĻŖāĻ¯āĻŧāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§‡ āĻŸā§‡āĻ˛āĻŋāĻĒā§āĻ¯āĻžāĻĨāĻŋāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻ›āĻŋāĻ˛, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ†āĻŽāĻŋ āĻ†āĻļāĻž āĻ•āĻ°āĻŋ āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŸāĻŋ āĻ•āĻŋāĻ›ā§ āĻ¸ā§āĻŽā§‹āĻ•āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻ¨ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°āĻŦā§‡āĨ¤

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨