рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдпрд╛ рдЖрдкрдХреЛ рддрд▓рд╡рд╛рд░ рд╡рд╛рд▓реЗ рдЖрджрдореА рдореЗрдВ рдЭрдВрдбрд╛ рдбрд╛рд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИ



рдПрдиреЛрдЯреЗрд╢рди:

  1. рдПрдХ "рдзреНрд╡рдЬ" рдЬреЛрдбрд╝рдХрд░ рдХрдХреНрд╖рд╛ рдореЗрдВ рдирдИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдгред
  2. рдкреНрд░рднрд╛рд╡ред
  3. рд╡реИрдХрд▓реНрдкрд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдФрд░ рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рддреБрд▓рдирд╛ред
  4. рд╕реНрдерд┐рддрд┐ рд╕реЗ рдХреИрд╕реЗ рдмрдЪреЗрдВ: "рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд▓ рдУрд╡рд░рдХрд┐рд▓"?
  5. рд╡рд╣ рдкрд▓ рдЬрдм рд╕рдм рдХреБрдЫ рдмрджрд▓рдиреЗ рдХрд╛ рд╕рдордп рдЖрддрд╛ рд╣реИред

рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдиреЛрдЯреЛрдВ рдХреА рдПрдХ рдЬреЛрдбрд╝реА:

  • рдпрд╣ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдХрд╣рд╛рдиреА рд╣реИ - рдЗрд╕ рдЕрд░реНрде рдореЗрдВ рдХрд┐ рдЕрдВрдХрд▓ рдмреЙрдм рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рд╣рд╛рдБ, рд╡рд╣ рдПрдХред
  • рд╕рднреА рд╡рд░реНрдг, рдЙрдирдХреЗ рдирд╛рдо рдФрд░ рд▓реЗрдЦ рдореЗрдВ рдХреЛрдб рдХрд╛рд▓реНрдкрдирд┐рдХ рд╣реИрдВ, рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдХреЗ рд╕рд╛рде рдХреЛрдИ рднреА рд╕рдВрдпреЛрдЧ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╣реИрдВред


рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдореИрдВ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреНрд░реЛрдЧреНрд░рд╛рдорд░-рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣реВрдВред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдПрдХ рдРрд╕рд╛ рдЦреЗрд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдПрдХрд▓ рдирд╛рдпрдХ (рдЙрд░реНрдл рд╣реАрд░реЛ) рдмрд╛рдПрдВ рд╕реЗ рджрд╛рдПрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХреНрд╖реИрддрд┐рдЬ рд░реЗрдЦрд╛ рдХреЗ рд╕рд╛рде рдЬрд╛рддрд╛ рд╣реИред рд░рд╛рдХреНрд╖рд╕ рдЗрд╕ рдЕрджреНрднреБрдд рдпрд╛рддреНрд░рд╛ рдореЗрдВ рдмрд╛рдзрд╛ рдбрд╛рд▓рддреЗ рд╣реИрдВред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЖрджреЗрд╢ рдкрд░, рд╣реАрд░реЛ рдкреНрд░рд╕рд┐рджреНрдз рд░реВрдк рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдЧреЛрднреА рдореЗрдВ рддрд▓рд╡рд╛рд░ рд╕реЗ рдХрд╛рдЯрддрд╛ рд╣реИ рдФрд░ рдореВрдВрдЫреЛрдВ рдореЗрдВ рдирд╣реАрдВ рдЙрдбрд╝рд╛рддрд╛ рд╣реИред рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА 100K рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ, рдФрд░ "рдЖрдкрдХреЛ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреА рдЕрдзрд┐рдХ рд▓рд╛рдЗрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ!" рдЖрдЗрдП рджреЗрдЦреЗрдВ рд╣рдорд╛рд░реЗ рд╣реАрд░реЛ:

class Hero {
    func strike() {
        //   1
    }
    //   
}

рдпрд╣ рднреА рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдореЗрд░реА рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЯреАрдо рд▓реАрдб, рд╡реИрд╕рд┐рд▓реА, рднреА рдЫреБрдЯреНрдЯреА рдкрд░ рдЬрд╛ рд╕рдХрддреА рд╣реИред рдЕрдЪрд╛рдирдХ рд╕реЗред рдХрд┐рд╕рдиреЗ рд╕реЛрдЪрд╛ рд╣реЛрдЧрд╛? рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реНрдерд┐рддрд┐ рдорд╛рдирдХ рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддреА рд╣реИ: рдПрдХ рдЙрд▓реНрд▓реВ рддреБрд░рдВрдд рдФрд░ рддреБрд░рдВрдд рдЬрд░реВрд░рдд рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЙрдбрд╝ рдЬрд╛рддрд╛ рд╣реИ, рдЦреЗрд▓ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЪреБрдирдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рддрд╛ рд╣реИ: рдХреНрд▓рдм рдХреЗ рд╕рд╛рде рдпрд╛ рддрд▓рд╡рд╛рд░ рдХреЗ рд╕рд╛рде рд╣реАрд░реЛ рдХреЗ рд▓рд┐рдП рдЦреЗрд▓реЗрдВред

рдпрд╣ рдмрд╣реБрдд рддреЗрдЬ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рд╣рд╛рдВ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╡рд╣ рд╕реНрд╡рдпрдВ рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдерд╛ рдЬрд┐рддрдирд╛ рдореИрдВ рдЪрд▓ рд╕рдХрддрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рд╡рд╣ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рд░реНрдп рдкрд╛рдВрдЪ рдорд┐рдирдЯ рдХреЗ рд▓рд┐рдП рд╣реИред рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд╣реЛ, 2 рдШрдВрдЯреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдПрдВред рдЖрдкрдХреЛ рдмрд╕ рдПрдХ рдЪреЗрдХрдмреЙрдХреНрд╕ рдФрд░ рдЕрдЧрд░-рдЪрд┐рдХ рдЬреЛрдбрд╝рдирд╛ рд╣реИред

рдиреЛрдЯ: if-chik in value @! ^% $ # @ ^% & @! 11 $ # # $% ^ ^% @! @! рдореЗрдВ! ^% # $ ^%! 1 рдЕрдЧрд░-рдард╛рда!

рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░: тАЬрд╣рд╛! рджреЛ рдШрдВрдЯреЗ! рдХрд┐рдпрд╛ рд╣реБрдЖ! ":

class Hero {
    enum WeaponTypes {
        case sword:
        case club:
    }
	
    var weaponType: WeaponTypes?

    func strike() {
        guard let weaponType = weaponType else {
            assertionFailure()
            return	
        }
        //  : switch  Swift  if- -    !
        switch (weaponType) {
            case .sword: //     
            case .club:  //     
        }
    }
    //  
}

рдпрджрд┐ рдЖрдкрдХреЛ рдореЗрд░реЗ рдирд┐рд░реНрдгрдп рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛, рддреЛ, рдЕрдлрд╕реЛрд╕: рдореЗрд░реЗ рдкрд╛рд╕ рдЖрдкрдХреЗ рд▓рд┐рдП рджреЛ рдЦрдмрд░реЗрдВ рд╣реИрдВ:

  1. рдЬреИрд╕реЗ рдХрд┐ рдЕрдЪреНрдЫрд╛: рд╣рдо рджреЛрдиреЛрдВ рдЙрджреНрдзрд╛рд░ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдбрд┐рд▓реАрд╡рд░ рдХрд░рддреЗ рд╣реИрдВ - рд╢рдмреНрдж рдбрд┐рд▓реАрд╡рд░ рд╡реИрд▓реНрдпреВ рд╕реЗ рдпрд╛ рдлрдиреА (рдЖрдВрд╕реВ) рдХреЛрдб рд╕реЗред
  2. рдФрд░ рдмреБрд░рд╛ рдПрдХ: рд╡рд╕реАрд▓реА рдХреЗ рдмрд┐рдирд╛, рдХрд╛рдкреЗрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯред

рддреЛ рдХреНрдпрд╛ рд╣реБрдЖ? рдпрд╣ рдЕрднреА рддрдХ рдХреБрдЫ рднреА рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдЧреЗ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ (рдЬрдм рд╣рдо рд╡реЗрд╕рд┐рд▓реА рдХреЛ рдЫреБрдЯреНрдЯреА рдкрд░ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдХрд░ рд░рд╣реЗ рд╣реИрдВ)ред рдФрд░ рдлрд┐рд░ рдпрд╣ рд╣реЛрдЧрд╛: рдХреНрдпреВрдП рд╡рд┐рднрд╛рдЧ рд╣рдорд╛рд░реЗ рд╣реАрд░реЛ рдХреЗ рд╡рдЬрди рдкрд░ рдзреНрдпрд╛рди рджреЗрдЧрд╛ред рдФрд░ рдирд╣реАрдВ, рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣реАрд░реЛ рдХреЛ рдбрд╛рдЗрдЯ рдкрд░ рдЬрд╛рдирд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдпрд╣рд╛рдБ рдХреНрдпреЛрдВ рд╣реИ:

var weight: Stone {
    return meatbagWeight + pantsWeight + helmetWeight + swordWeight
}

рдореИрдВ рд╡рдЬрди рдЧрдгрдирд╛ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рднреВрд▓ рдЧрдпрд╛ред рдареАрдХ рд╣реИ, рдЖрдк рд╕реЛрдЪрддреЗ рд╣реИрдВ, рдЧрд▓рддреА, рдХрд┐рд╕рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ? рдердкреНрдкрдбрд╝-рдЦреВрди, рдмрдХрд╡рд╛рд╕-рдЯрд┐рдмрд┐рдбреЛрдЪ, рддреИрдпрд╛рд░:

var weight: Stone {
    //   guard let weaponType
    let weightWithoutWeapon = meatbagWeight + pantsWeight + helmetWeight
    switch (weaponType) {
        case .sword: return weightWithoutWeapon + swordWeight
        case .club:  return weightWithoutWeapon + clubWeight
    }
}

рд▓реЗрдХрд┐рди рдЬрд▓реНрджреА рд╕реЗ рдЗрд╕реЗ рдареАрдХ рдХрд░ рджрд┐рдпрд╛! рдирд╛рдпрдХ рдЕрдм рд╡рдЬрди рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдХреВрдж рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд░рд┐рдгрд╛рдо-рдЙрдиреНрдореБрдЦ рдХрд╛рдо! рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдирд╛рднрд┐, рд╡рд╛рд╕реНрддреБрд╢рд┐рд▓реНрдк рдЕрдВрддрд░рд┐рдХреНрд╖ рдпрд╛рддреНрд░рд┐рдпреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИред

рдареАрдХ рд╣реИ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдлрд┐рд░ рдЙрд╕рдиреЗ рдереЛрдбрд╝рд╛ рдФрд░ рд╕рд╣реА рдХрд┐рдпрд╛ред рд╡рд░реНрддрдиреА рд╕реВрдЪреА рдореЗрдВ, рдореБрдЭреЗ рдпрд╣ рдХрд░рдирд╛ рдерд╛:

var spells: [Spells] {
    //   guard let weaponType 
    // ,   let spellsWithoutWeapon: [Spells]
    switch (weaponType) {
        case .sword:
            //  let swordSpells: [Spells]
            return spellsWithoutWeapon + swordSpells
	case .club:
            //  let clubSpells: [Spells]
            return spellsWithoutWeapon + clubSpells
    }
}

рдФрд░ рдлрд┐рд░ рдкреЗрдЯреНрдпрд╛ рдиреЗ рдЖрдХрд░ рд╕рдм рдХреБрдЫ рддреЛрдбрд╝ рджрд┐рдпрд╛ред рдЦреИрд░, рд╕рдЪреНрдЪрд╛рдИ рдпрд╣ рд╣реИ рдХрд┐, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдПрдХ рдЬреВрди рд╣реИред рдЕрд╕рд╛рд╡рдзрд╛рдиред

рдЙрд╕реЗ рд╕рд┐рд░реНрдл рдЙрдбрд╝рд╛рдиреЗ рдХреА рддрд╛рдХрдд рдФрд░ рдирд╛рдпрдХ рдХреЗ рд╡рдЬрди рдХреА рдЧрдгрдирд╛ рдХреЗ рд▓рд┐рдП рд╕реВрддреНрд░ рдореЗрдВ "рд╣рдерд┐рдпрд╛рд░ рд╕реНрддрд░" рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рдФрд░ рдкреЗрдЯреНрдпрд╛ рдЪрд╛рд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╕реЗ рдЪреВрдХ рдЧрдпрд╛ред рд▓реЗрдХрд┐рди рдХреБрдЫ рдирд╣реАрдВ! рдореИрдВрдиреЗ рд╕рдм рдХреБрдЫ рдареАрдХ рдХрд┐рдпрд╛:

func strike() {
    //guard let weaponType
    switch (weaponType) {
        case .sword: //        weaponGrade
        case .club:  //        weaponGrade
    }
}

var weight: Stone {
    // guard let weaponType
    let weightWithoutWeapon = meatbagWeight + pantsWeight + helmetWeight
    switch (weaponType) {
        case .sword: return weightWithoutWeapon + swordWeight / grade
	case .club:  return weightWithoutWeapon + pow(clubWeight, 1 / grade)
    }
}

var spells: [Spells] {
    //     , ! 
    // ,     .    ,    ,   .   !
}

рдХрд╣рдиреЗ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИ, рдЬрдм (рдЕрдЪрд╛рдирдХ!) рдПрдХ рдзрдиреБрд╖ / рдЕрджреНрдпрддрди рд╕реВрддреНрд░реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛, рдлрд┐рд░ рд╕реЗ рдорд╛рдорд▓реЛрдВ, рдмрдЧреНрд╕ рдФрд░ рдпрд╣ рд╕рдм рднреВрд▓ рдЧрдП рдереЗред

рдХреНрдпрд╛ рдЧрд▓рдд рд╣реБрдЖ? рдореИрдВ рдХрд╣рд╛рдВ рдЧрд▓рдд рдерд╛, рдФрд░ (рд╕рд╛рдерд┐рдпреЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░) рд╡реЗрд╕рд┐рд▓реА рдиреЗ рдХреНрдпрд╛ рдХрд╣рд╛ рдерд╛ рдЬрдм рд╡рд╣ рдЫреБрдЯреНрдЯреА рд╕реЗ рд▓реМрдЯрд╛ рдерд╛?

рдпрд╣рд╛рдВ рдЖрдк рдХрд╣рд╛рдиреА рдХреЛ рдЖрдЧреЗ рдирд╣реАрдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╢рд╛рд╢реНрд╡рдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВред

рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЕрднреА рднреА рдкрдврд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ, рд╣рдо рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реИрдВред

рддреЛ, рдЖрдЗрдП рдХреНрд▓рд╛рд╕рд┐рдХреНрд╕ рдХреЛ рджреЗрдЦреЗрдВ:
рд╕рднреА рдмреБрд░рд╛рдИрдпреЛ рдХреА рдЬрдбрд╝ рд╕рдордпрдкреВрд░реНрд╡ рдЗрд╖реНрдЯрддрдореАрдХрд░рдг рд╣реИ!
рдФрд░ ... рдЙрд╣ ... рдпрд╣ рдмрд╛рдд рдирд╣реАрдВ рд╣реИред рдпрд╣рд╛рдБ рдмрд╛рдд рдпрд╣ рд╣реИ:

OOP рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ (рдЬреИрд╕реЗ рд╕реНрд╡рд┐рдлреНрдЯ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП), рдХрдХреНрд╖рд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреЗ рддреАрди рдореБрдЦреНрдп рддрд░реАрдХреЗ рд╣реИрдВ:

  1. рдкрд╣рд▓рд╛ рддрд░реАрдХрд╛ "рднреЛрд▓рд╛" рд╣реИред рд╣рдордиреЗ рдмрд╕ рдЙрд╕реЗ рджреЗрдЦрд╛ред рдПрдХ рдЪреЗрдХрдмреЙрдХреНрд╕ рдЬреЛрдбрд╝рдирд╛ред рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдЬреЛрдбрд╝рдирд╛ред рд╕реВрдЬрди рд╡рд░реНрдЧред
  2. рджреВрд╕рд░рд╛ рддрд░реАрдХрд╛ рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо рд╣реИред рд╣рд░ рдХреЛрдИ рдХреЛрдб рдХреЗ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рддрдВрддреНрд░ рдЬрд╛рдирддрд╛ рд╣реИред рдПрдХ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:
    • рдирдП рд╣реАрд░реЛ рдХреЗ рд╕рд╛рде рдмреЛ рдФрд░ рд╣реАрд░реЛ рдХреЗ рд╕рд╛рде рдбреБрдмрд┐рдирд╛ рд╕реЗ рд╣реАрд░реЛ (рдЬреЛ рдПрдХ рддрд▓рд╡рд╛рд░ рдкрдХрдбрд╝реЗ рд╣реБрдП рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдм рд╣реАрд░реЛ рд╡рд░реНрдЧ рдХреЗ рдирд╛рдо рд╕реЗ рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ) рдХреЛ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИред рдФрд░ рдлрд┐рд░ рд╡рд╛рд░рд┐рд╕реЛрдВ рдореЗрдВ, рдкрд░рд┐рд╡рд░реНрддрд┐рдд рддрд░реАрдХреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░реЗрдВред рдпрд╣ рд░рд╛рд╕реНрддрд╛ рдмрд╣реБрдд рдмреБрд░рд╛ рд╣реИ (рдмрд╕ рдореБрдЭреЗ рднрд░реЛрд╕рд╛ рд╣реИ)ред
    • рдмреЗрд╕ рдХреНрд▓рд╛рд╕ (рдпрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓) рдХреЛ рд╣реАрд░реЛ рдмрдирд╛рдПрдВ, рдФрд░ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣рдерд┐рдпрд╛рд░ рд╕реЗ рдЬреБрдбрд╝реЗ рд╕рднреА рдлреАрдЪрд░реНрд╕ рдХреЛ рд╡рд╛рд░рд┐рд╕ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдЯрд╛ рджреЗрдВ
      : рд╣реАрд░реЛ рд╡рд┐рде рдП
      рддрд▓рд╡рд╛рд░: рд╣реАрд░реЛ, рд╣реАрд░реЛ рд╡рд┐рде рдП рдзрдиреБрд╖: рд╣реАрд░реЛ, рд╣реАрд░реЛ рд╡рд┐рде
      рджреБрдмреАрдирд╛: рд╣реАрд░реЛред
      рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрди рд╡рд░реНрдЧреЛрдВ рдХреЗ рдирд╛рдо рдЦреБрдж рд╣рдореЗрдВ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдирд╛рд░рд╛рдЬ, рднрдпрдВрдХрд░ рдФрд░ рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рджреБрдЦреА рдФрд░ рд╣реИрд░рд╛рди рдорд╣рд╕реВрд╕ рдХрд░рддреЗ рд╣реИрдВред рдЕрдЧрд░ рд╡реЗ рдЙрд╕ рддрд░рд╣ рд╕реЗ рдХрд┐рд╕реА рдХреЛ рдирд╣реАрдВ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдПрдХ рдФрд░ рд▓реЗрдЦ рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рдЬрд╣рд╛рдВ рдЙрдмрд╛рдК рдорд░реНрджрд╛рдирд╛ рд╣реАрд░реЛ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╡реЗ рд╣реЛрдВрдЧреЗ ...
  3. рддреАрд╕рд░рд╛ рддрд░реАрдХрд╛ рдирд┐рд░реНрднрд░рддрд╛ рдЗрдВрдЬреЗрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХрд╛ рдкреГрдердХреНрдХрд░рдг рд╣реИред рдпрд╣ рдПрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдпрд╛ рдПрдХ рдмрдВрдж (рдЬреИрд╕реЗ рдХрд┐ рдПрдХ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рджреНрд╡рд╛рд░рд╛ рдмрдВрдж) рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрднрд░рддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЬреЛ рднреА рд╣реЛред рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдирдИ рдЬрд┐рдореНрдореЗрджрд╛рд░рд┐рдпреЛрдВ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореБрдЦреНрдп рд╡рд░реНрдЧ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдпрд╣ рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреИрд╕реЗ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕ рддрд░рд╣ (рд╡рд╕реАрд▓реА рд╕реЗ рдирд┐рд░реНрдгрдп):

class Hero {
    let weapon: Weapon //   , ..    

    init (_ weapon: Weapon) { //     
        self.weapon = weapon
    }
	
    func strike() {
        weapon.strike()
    }

    var weight: Stone {
        return meatbagWeight + pantsWeight + helmetWeight + weapon.weight
    }

    var spells: [Spells] {
        //   
        return spellsWithoutWeapon + weapon.spells
    }
}

рдЖрдкрдХреЛ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдХреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? Ninjutsu - рдкреНрд░реЛрдЯреЛрдХреЙрд▓:

protocol Weapon {
    func strike()
    var weight: Stone {get}
    var spells: [Spells] {get}
}

рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЙрджрд╛рд╣рд░рдг:

class Sword: Weapon {
    func strike() {
        // ,     Hero  switch   .sword
    }

    var weight: Stone {
        // ,     Hero  switch   .sword
    }

    var spells: [Spells] {
        // ,     Hero  switch   .sword
    }
}

рдЗрд╕реА рддрд░рд╣, Sword classes рдХреЗ рд▓рд┐рдП рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ: Club, Bow, Pike, рдЖрджрд┐ред "рдпрд╣ рджреЗрдЦрдирд╛ рдЖрд╕рд╛рди рд╣реИ" (рд╕реА) рдХрд┐ рдирдИ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣рдерд┐рдпрд╛рд░ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд╕рднреА рдХреЛрдб рд╕рдВрдмрдВрдзрд┐рдд рд╡рд░реНрдЧ рдореЗрдВ рд╡рд░реНрдЧреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рд╣реАрд░реЛ рдХреЗ рд╕рд╛рде рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣рдерд┐рдпрд╛рд░реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдирд╣реАрдВ рдлреИрд▓рд╛ рд╣реИред рдЗрд╕рд╕реЗ рд╣реАрд░реЛ рдФрд░ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рд╣рдерд┐рдпрд╛рд░ рдХреЛ рдкрдврд╝рдирд╛ рдФрд░ рд╕рдордЭрдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рд╕рд╛рде рд╣реА, рд▓рдЧрд╛рдП рдЧрдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг, рдЙрди рд╕рднреА рддрд░реАрдХреЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдПрдХ рдирдП рдкреНрд░рдХрд╛рд░ рдХреЗ рд╣рдерд┐рдпрд╛рд░ рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╕рдордп рдпрд╛ рдПрдХ рд╣рдерд┐рдпрд╛рд░ рдореЗрдВ рдПрдХ рдирдИ рд╕реБрд╡рд┐рдзрд╛ рдЬреЛрдбрд╝рддреЗ рд╕рдордп рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╣рдерд┐рдпрд╛рд░ рдХреА рдПрдХ рдореВрд▓реНрдп рдЧрдгрдирд╛ рд╡рд┐рдзрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ)ред

рдпрд╣рд╛рдВ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдирд┐рд░реНрднрд░рддрд╛ рдЗрдВрдЬреЗрдХреНрд╢рди рдиреЗ рд╣реАрд░реЛ рд╡рд░реНрдЧ рдХреА рд╡рд╕реНрддреБрдУрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рдЬрдЯрд┐рд▓ рдмрдирд╛ рджрд┐рдпрд╛ рд╣реИред рдХреНрдпрд╛ рдмрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

let lastHero = Hero()

рдЕрдм рдпрд╣ рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдПрдХ рд╕реЗрдЯ рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рднреА рд╣реАрд░реЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЬрд╣рд╛рдВ рднреА рдирдХрд▓ рдХреА рдЬрд╛рдПрдЧреАред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╡рд╕реАрд▓реА рдиреЗ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдзреНрдпрд╛рди рд░рдЦрд╛:

class HeroFactory {
    static func makeSwordsman() -> Hero { // ,  static -  
        let weapon = Sword(/*  */)
        return Hero(weapon)
    }

    static func makeClubman() -> Hero {
        let weapon = Club(/*  */)
        return Hero(weapon)
    }
}

рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдкреЗрдЯреА (рдФрд░ I) рджреНрд╡рд╛рд░рд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рдвреЗрд░ рдХреЛ рдвреЗрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╕реАрд▓реА рдХреЛ рдкрд╕реАрдирд╛ рдмрд╣рд╛рдирд╛ рдкрдбрд╝рд╛ ред

рдмреЗрд╢рдХ, рдЕрдВрддрд┐рдо рд╕рдорд╛рдзрд╛рди рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдЪрд╛рд░ рдЙрддреНрдкрдиреНрди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:
рдареАрдХ рд╣реИ, рдпрд╣ рдирд┐рдХрд▓рд╛, рдорд╛рдирджрдВрдбред рдпрд╣ рдкрдврд╝рдирд╛ рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдпреЗ рд╕рднреА рдХрд╛рд░рдЦрд╛рдиреЗ / рдкреНрд░реЛрдЯреЛрдХреЙрд▓ / рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рдУрд╡рд░рд╣реЗрдбреНрд╕ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реИрдВ? рдПрдХ рдХреЛрдб рдЬреЛ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдХреЛрдб рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрдж рд╣реИред "рдХреЛрдб рдХреЗ рдЖрдпреЛрдЬрди рдХреЗ рд▓рд┐рдП рдХреЛрдб", рдПрдордЬреАрдПрдоред рдХреНрдпрд╛ рдЗрд╕ рдмрд╛рдЧ рдХреЛ рд╣рдореЗрд╢рд╛ рдФрд░ рд╣рд░ рдЬрдЧрд╣ рдлреИрдВрд╕ рдХрд░рдирд╛ рдЬрд░реВрд░реА рд╣реИ?
рдкрд╣рд▓реЗ рд╕рд╡рд╛рд▓ рдХрд╛ рдПрдХ рдИрдорд╛рдирджрд╛рд░ рдЬрд╡рд╛рдм рд╣реЛрдЧрд╛:
рд╣рд╛рдВ, рдпрд╣ рдЙрди рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдУрд╡рд░рд╣реЗрдб рд╣реИ рдЬреЛ рд╡реНрдпрд╡рд╕рд╛рдп рдмрд╣реБрдд рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реИред
рдФрд░ рд╕рд╡рд╛рд▓ "рдХрдм?" рдЙрддреНрддрд░ рдЕрдиреБрднрд╛рдЧ:

рддрд▓рд╡рд╛рд░-рдЖрджрдореА рдХрд╛ рджрд░реНрд╢рди рдпрд╛ "рдЖрдкрдХреЛ рдХрдм рд╢рд╛рд╕рди рдХрд░рдирд╛ рд╣реИ?"


рд╢реБрд░реБрдЖрдд рдореЗрдВ рдПрдХ рддрд▓рд╡рд╛рд░ рд╡рд╛рд▓рд╛ рдЖрджрдореА рдерд╛ред рдкреБрд░рд╛рдиреЗ рдХреЛрдб рдХреЗ рдЕрд░реНрде рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ, рдпрд╣ рдХрд╛рдлреА рд╕рд╛рдорд╛рдиреНрдп рдерд╛ред рдЬрдм рддрдХ рдПрдХ рдирд╛рдпрдХ рдФрд░ рдПрдХ рд╣рдерд┐рдпрд╛рд░ рдерд╛, рддрдм рддрдХ рдЙрдирдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рдереА - рд╕рднреА рд╕рдорд╛рди, рдирд╛рдпрдХ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдФрд░ рдирд╣реАрдВ рдерд╛ред рдФрд░ рдЕрдЦрдВрдб рд╕рдВрд╣рд┐рддрд╛ рдиреЗ рдЗрд╕ рддрдереНрдп рдХреА рдкреБрд╖реНрдЯрд┐ рдЕрдкрдиреЗ рдкрд╛рда рд╕реЗ рдХреАред

рд╕реНрд╡реЛрд░реНрдбрдореИрди - рдпрд╣ рдЗрддрдирд╛ рдмреБрд░рд╛ рднреА рдирд╣реАрдВ рд▓рдЧрддрд╛ред

рдФрд░ рдкрд╣рд▓реЗ "рднреЛрд▓реЗ" рд╕рдВрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдиреЗрддреГрддреНрд╡ рдХрд┐рдпрд╛? рдЗрдл-рдЪрд┐рдХ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреНрдпрд╛ рд╣реБрдЖ?

рдПрдХ рдЕрдЧрд░ рдард╛рда рдЬреЛрдбрд╝рдиреЗ ... рдПрдХ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддреА рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд┐рдпрд╛! рдЙрддреНрдкрд░рд┐рд╡рд░реНрддреА, рдЕрд░реНрдерд╛рддреН рдПрдХ "рдорд╛рдирд╡" рдФрд░ "рдорд╛рдирд╡ рдбрдмрд▓рд┐рди" рдХреЗ рдмреАрдЪ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрд┐рдд рд╣реЛрдиреЗ рд╡рд╛рд▓реА рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд╡рд╕реНрддреБред рдЗрд╕реА рд╕рдордп, рдпрджрд┐ рдЖрдк рдЙрддреНрдкрд░рд┐рд╡рд░реНрддреА рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдереЛрдбрд╝реА рдЧрд▓рддреА рдХрд░рддреЗ рд╣реИрдВ, рддреЛ "рдорд╛рдирд╡-рдордЬреНрдЬрд╛" рдХреА рд╕реНрдерд┐рддрд┐ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИред рдРрд╕рд╛ рдордд рдХрд░рдирд╛! "рдорд╛рдирд╡ рдбрдмрд┐рди" рдХреА рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ:

  1. рддрд▓рд╡рд╛рд░ рдХреЗ рд▓рд┐рдП рдЖрджрдореА + рдХреА рд▓рдд (рддрд▓рд╡рд╛рд░ рдХреА рдЬрд░реВрд░рдд);
  2. рдПрдХ рдХреНрд▓рдм рдХреЗ рд▓рд┐рдП рдЖрджрдореА + рдХреА рд▓рдд (рдПрдХ рдХреНрд▓рдм рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛)ред

рд╣рд░ рд▓рдд рдмреБрд░реА рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ! рд╢рд░рд╛рдм рдХреА рдпрд╣ рд▓рдд рдмреБрд░рд╛рдИ рд╣реИ, рдФрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЕрдЪреНрдЫрд╛ рд╣реИред рд╣рд╛рдВ, рд╡рд╕реНрддреБ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рднреА "рдорд╛рдирд╡ рджреБрдмреЗ" рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИ!

рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрди рдХрдм рд╣реБрдЖ? рдПрдХ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддреА рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рддрдм рд╣реБрдЖ рдЬрдм рдзреНрд╡рдЬ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛: рдЕрдЦрдВрдб рдХреЛрдб рдЕрдЦрдВрдб рд░рд╣рд╛, рд▓реЗрдХрд┐рди рдЬрдм рдзреНрд╡рдЬ рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ (рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрд┐рдд), рдЙрд╕реА рд╡рд╕реНрддреБ рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛рдлреА рдмрджрд▓рдирд╛ рд╢реБрд░реВ рд╣реЛ рдЧрдпрд╛ред

рд╡рд╕реАрд▓реА рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рджреЛ рдЪрд░рдгреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░реЗрдЧрд╛:

  1. рдЭрдВрдбреЗ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдФрд░ рдзреНрд╡рдЬ рдХреЛ рдкрд╣рд▓реЗ "рдЕрдЧрд░" (рдпрд╛ "рд╕реНрд╡рд┐рдЪ", рдпрд╛ рдЕрдиреНрдп рд╢рд╛рдЦрд╛ рддрдВрддреНрд░)ред рд╕реНрдерд┐рддрд┐ рдЦрддрд░реЗ рдореЗрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрд╕реНрдХрд░рд╛рддреЗ рд╣реБрдП: рдирд╛рдпрдХ рдХреЛ рд░реЗрдбрд┐рдпреЛрдзрд░реНрдореА рдХрдЪрд░реЗ рдХреЗ рд╕рд╛рде рдбрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд╣ рдЗрд╕реЗ рдЦрддреНрдо рдХрд░ рджреЗрддрд╛ рд╣реИред
  2. ┬лif┬╗ , . . тАФ . , - - .

рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдорд╛рдирд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рддрдХрдиреАрдХреА рдЛрдг рдХреА рдШрдЯрдирд╛ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдкрд╣рд▓реЗ рдЪрд░рдг рд╕реЗ рдЧреБрдЬрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рджреВрд╕рд░реЗ рдХреЛред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддреА рдХрд╛ рдЗрд▓рд╛рдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕рд┐рд▓реА рдиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛?

рдПрдХ рддрдХрдиреАрдХреА рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ - рдЗрдВрдЬреЗрдХреНрд╢рди рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдмрдВрдж рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ред

рджрд╛рд░реНрд╢рдирд┐рдХ рд╕реЗ - рд╕рд╛рдЭрд╛ рдЬрд┐рдореНрдореЗрджрд╛рд░реАред

рд╡рд░реНрдЧ рдХреЗ рдХрд╛рдо рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ, рдЬреЛ рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдкрд░рд╕реНрдкрд░ рдЬреБрдбрд╝ рд╕рдХрддреА рд╣реИрдВ (рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╡реЗ рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рд▓рд┐рдП рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИрдВ), рд╣реАрд░реЛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╣рдЯрд╛ рджрд┐рдП рдЧрдП рдереЗред рдирдИ, рд╡реИрдХрд▓реНрдкрд┐рдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ - рддрд▓рд╡рд╛рд░ рдХреЗ рдХрд╛рдо рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди, рдХреНрд▓рдм рдХреЗ рдХрд╛рдо рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди - рдЗрд╕рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдкрд░, рдПрдХ-рджреВрд╕рд░реЗ рд╕реЗ рдЕрд▓рдЧ рд╣реЛ рдЧрдП рдФрд░ рдмрд╛рдХреА рдХреЗ рдкрд╣рд▓реЗ рд╕реЗ рдЕрд▓рдЧ рд╣реИрдВрдХреЛрдИ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реАрд░реЛ рдХреЛрдб рдирд╣реАрдВред рддреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА "рднреЛрд▓реЗ" рдХреЛрдб рдореЗрдВ рдХреБрдЫ рдирдпрд╛рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ рдЬреЛ рд╣реАрд░реЛ рдХреЗ рдирд┐рд░реНрд╡рд┐рд░реЛрдз рд╣рд┐рд╕реНрд╕реЗ рд╕реЗ рдЕрдкрдиреЗ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдЕрд▓рдЧ рдерд╛ ред рддреЛ "рднреЛрд▓реЗ" рдХреЛрдб рдореЗрдВ рдирдИ рд╡реНрдпрд╛рдкрд╛рд░рд┐рдХ рд╕рдВрд╕реНрдерд╛рдУрдВ рдХрд╛ рдПрдХ рд╕реНрдкрд╖реНрдЯ рд╡рд┐рд╡рд░рдг рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛: рдПрдХ рддрд▓рд╡рд╛рд░ рдФрд░ рдПрдХ рдХреНрд▓рдм, рд╣реАрд░реЛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдлреИрд▓ рдЧрдпрд╛ред рдирдИ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдиреНрд╣реЗрдВрдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рдердЕрд▓рдЧ рдХреЛрдб рд╕рдВрд╕реНрдерд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрд▓рдЧ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рдЧрдпрд╛ред рддреЛ рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдХрд╛ рдПрдХ рд╡рд┐рднрд╛рдЬрди рдерд╛ред рдкреАрдПрд╕ рдЯреАрдПрд▓; рдбреАрдЖрд░;



  1. рдЭрдВрдбрд╛ рджреЗрдЦреЗрдВ?
  2. рдорд░реНрдж рдмрдиреЛ, рдзрд┐рдХреНрдХрд╛рд░ рд╣реИ! рдЗрд╕реЗ рдорд┐рдЯрд╛рдПрдВ!
  3. рдирд╢реЗ рдХрд╛ рдЗрдВрдЬреЗрдХреНрд╢рди
  4. ...
  5. рд▓рд╛рдн! резрез

All Articles