рдЖрдкрдХрд╛ C # рдкрд╣рд▓реЗ рд╕реЗ рд╣реА "рдХрд╛рд░реНрдпрд╛рддреНрдордХ" рд╣реИ, рдмрд╕ рдЗрд╕реЗ рдХрд░рдиреЗ рджреЗрдВред

рд╣реЗрд▓реЛ, рд╣реЗрдмреНрд░! рдореИрдВ рдЖрдкрдХреЗ рд▓рд┐рдП рдореВрд▓ рд▓реЗрдЦ "рдпреЛрд░ рд╕реА # рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдЕрдЧрд░ рдЖрдк рдЗрд╕реЗ рджреЗрддреЗ рд╣реИрдВ рддреЛ" Igal Tabachnik рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реВрдВ ред

рдХреБрдЫ рджрд┐рди рдкрд╣рд▓реЗ, рдореИрдВрдиреЗ рдПрдХ C # рдХреЛрдб рд╕реНрдирд┐рдкреЗрдЯ рдЯреНрд╡реАрдЯ рдХрд┐рдпрд╛ рдерд╛ рдЬреЛ FizzBuzz рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ , C # 8.0 рдореЗрдВ рдХреБрдЫ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП ред рдЯреНрд╡реАрдЯ "рд╡рд╛рдпрд░рд▓ рд╣реЛ рдЧрдпрд╛", рдХрдИ рд▓реЛрдЧреЛрдВ рдиреЗ рдЗрд╕рдХреА рд╕рд╣рдорддрд┐ рдФрд░ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдкреНрд░рд╢рдВрд╕рд╛ рдХреА, рдЬрдмрдХрд┐ рдЕрдиреНрдп рдиреЗ рдореБрдЭрд╕реЗ рдкреВрдЫрд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ F # рдореЗрдВ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд▓рд┐рдЦрд╛?

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

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣ рдХреЛрдб рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реИ:

public static void Main(string[] args)
{
      string FizzBuzz(int x) => 
            (x % 3 == 0, x % 5 == 0) switch
            {  
                  (true, true) => "FizzBuzz", 
                  (true, _) => "Fizz", 
                  (_, true) => "Buzz", 
                  _ => x.ToString()
            };
    
      Enumerable.Range(1, 100 ) 
            .Select(FizzBuzz).ToList() 
            .ForEach(Console.WriteLine); 
}

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

рдпрд╣рд╛рдБ рдирд╡реАрдирддрд╛ рджреЛ рднрд╛рд╡реЛрдВ рдХреА рдПрдХ рд╕рд╛рде рдЧрдгрдирд╛ (x% 3 = = 0 рдФрд░ x% 5 = = 0) рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ tuple (рдпреБрдЧреНрдо) рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдЕрдВрддрд┐рдо рдкрд░рд┐рдгрд╛рдо рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреИрдЯрд░реНрди рдорд┐рд▓рд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрджрд┐ рдХреЛрдИ рднреА рд╡рд┐рдХрд▓реНрдк рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддрд╛ рд╣реИ, рддреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рд╡рд╛рдкрд╕ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреЛрдб рдХреЗ рдЗрд╕ рдЯреБрдХрдбрд╝реЗ (LINQ-style foreach loops рд╕рд╣рд┐рдд) рдореЗрдВ рдкреНрд░рдпреБрдХреНрдд рдХрдИ "рдХрд╛рд░реНрдпрд╛рддреНрдордХ" "рд╕реБрд╡рд┐рдзрд╛рдУрдВ" рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рдЗрд╕ рдХреЛрдб рдХреЛ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИред рдпрд╣ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдмрдирд╛рддрд╛ рд╣реИ рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐, рдкрд░рд┐рдгрд╛рдо рдХреЛ рд╕рд╛рдВрддреНрд╡рдирд╛ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде, рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рддрд░реАрдХреЗ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИрдВред

рд╕реАрдзреЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдХрд╣реЗрдВ, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдПрдХ рд╕рд╡рд╛рд▓ рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╣рдореЗрд╢рд╛ рдПрдХ рдЬрд╡рд╛рдм рд╣реЛрддрд╛ рд╣реИред рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╕реНрдерд┐рд░рд╛рдВрдХ, рдЪрд░, рдСрдкрд░реЗрдЯрд░реЛрдВ, рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдПрдХ рд╕рдВрдпреЛрдЬрди рд╣реИ рдЬреЛ рд░рдирдЯрд╛рдЗрдо рджреНрд╡рд╛рд░рд╛ рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ ("рд╡рд╛рдкрд╕реА") рдПрдХ рдореВрд▓реНрдпред рдмрдпрд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдВрддрд░ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдЗрдП C # рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реНрд╕ рдХреЗ рд▓рд┐рдП FizzBuzz рдХрд╛ рдЕрдзрд┐рдХ рдкрд░рд┐рдЪрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рд▓рд┐рдЦреЗрдВ:

public static void Main(string[] args) 
{
      foreach( int x in Enumerable.Range(1, 100)) 
      {
             FizzBuzz(x);
      }
} 

public static void FizzBuzz( int x) 
{
      if (x % 3 == 0  && x % 5 == 0) 
             Console.WriteLine("FizzBuzz"); 
      else if (x % 3 == 0 ) 
             Console.WriteLine("Fizz"); 
      else if (x % 5 == 0 ) 
             Console.WriteLine("Buzz"); 
      else
             Console.WriteLine(x);
}

рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рдпрд╣ "рд╕реНрд╡рдЪреНрдЫ" рдХреЛрдб рд╣реЛрдиреЗ рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЛрдИ рднреА рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд╛рдзрд╛рд░рдг # # рдХреЛрдб рд╣реИред FizzBuzz рд╡рд┐рдзрд┐ рдХреЗ рдХрд░реАрдм рд╕реЗ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдкрд░, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЗрд╕рдХреА рд╕рд╛рджрдЧреА рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реБрдП, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдХрдИ рдбрд┐рдЬрд╝рд╛рдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред

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

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

public static string FizzBuzz(int x)
{
      if (x % 3 == 0 && x % 5 == 0)
            return "FizzBuzz";
      else if (x % 3 == 0)
            return "Fizz";
      else if (x % 5 == 0)
            return "Buzz";
      else
            return x.ToString();
}

рдмреЗрд╢рдХ, рдпреЗ рдореМрд▓рд┐рдХ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ:

  1. FizzBuzz рдкрджреНрдзрддрд┐ рдЕрдм рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реИ рдЬреЛ рдПрдХ рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдорд╛рди рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд▓реМрдЯрд╛рддрд╛ рд╣реИред
  2. рдЗрд╕рдХреА рдХреЛрдИ рдЕрдиреНрдп рдЬрд┐рдореНрдореЗрджрд╛рд░рд┐рдпрд╛рдВ рдФрд░ рдЫрд┐рдкреЗ рд╣реБрдП рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реИрдВ, рдЬреЛ рдЗрд╕реЗ рдПрдХ рд╢реБрджреНрдз рдХрд╛рд░реНрдп рдореЗрдВ рдмрджрд▓ рджреЗрддрд╛ рд╣реИред
  3. рдпрд╣ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рдирд┐рд░реНрднрд░рддрд╛ рдФрд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ, рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  4. рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдб рдкрд░рд┐рдгрд╛рдо рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рд╣реИ - рдЕрдм рдпрд╣ рд╣рдорд╛рд░реА рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдирд╣реАрдВ рд╣реИред

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

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

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЗрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╢реИрд▓реА рдХреЛ рдЕрдм рд╕реА # рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдПрдирдбреАрд╕реА рд▓рдВрджрди рдореЗрдВ рд╣рд╛рд▓ рдХреЗ рдПрдХ рднрд╛рд╖рдг рдореЗрдВ, рдмрд┐рд▓ рд╡реИрдЧрдирд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдЕрдкрдиреА (рдЕрдирд┐рд╡рд╛рд░реНрдп) рдЖрджрддреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдФрд░ рдЖрдзреБрдирд┐рдХ рддрд░реАрдХреЛрдВ рдХреЛ рдЕрдкрдирд╛рдиреЗ рдХрд╛ рдЖрдЧреНрд░рд╣ рдХрд░рддрд╛ рд╣реИ:


C # (рдФрд░ рдЬрд╛рд╡рд╛ рдЬреИрд╕реА рдЕрдиреНрдп рдЕрдирд┐рд╡рд╛рд░реНрдп рднрд╛рд╖рд╛рдУрдВ) рдХреЛ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкреНрд░рдпрд╛рд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпреЗ рднрд╛рд╖рд╛рдПрдБ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рд╢реИрд▓реА рдХреЛ рдЕрдкрд╡рд╛рдж рдмрдирд╛рддреА рд╣реИрдВ, рдЖрджрд░реНрд╢ рдирд╣реАрдВред рдореИрдВ рдЖрдкрдХреЛ рдкреНрд░рдердо рд╢реНрд░реЗрдгреА рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд╕реАрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рддрд╛ рд╣реВрдВред

All Articles