GitHub рдкрд░ рд╣реЛрд╕реНрдЯ рдХреА рдЧрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдореБрдлреНрдд PVS-Studio рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреА рдЪрд░реНрдЪрд╛

GitHub рдкрд░ рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдореБрдлреНрдд PVS-Studio

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

рдореИрдВ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рд▓реЗрдЦ рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╣реИ рдФрд░ рдПрдХ рдЪрд░реНрдЪрд╛ рдЖрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд▓рдХреНрд╖реНрдп рд╣реИред рдпрджрд┐ рдЖрдк 2019 рдореЗрдВ рдЗрд╕ рдкрдж рдкрд░ рдЖрдП рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рд▓реЗрдЦ рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдЬрд╛рдПрдВ ред

GitHub рдкрд░ рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ

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

рд╣рдо рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдмреЗрд╣рддрд░ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рдорд╛рд░реЗ рдкреНрд░рдХрд╛рд╢рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдУрдкрди рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдореЗрдВ 10,000 рд╕реЗ рдЕрдзрд┐рдХ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рддрдп рдХреА рдЧрдИ рд╣реИрдВ, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред рд╣рдорд╛рд░реА рдЯреАрдо рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рд╣рдЬрд╛рд░реЛрдВ рдЦреБрд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реИред рдЗрд╕рд▓рд┐рдП, 2016 рдореЗрдВ, рд╣рдордиреЗ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП рдПрдХ рдореБрдлреНрдд рд▓рд╛рдЗрд╕реЗрдВрд╕рд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ред рдПрдХрдорд╛рддреНрд░ рд╢рд░реНрдд рдПрдХ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдХрд╛рд░ рдХреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рдХреЛрдб рдореЗрдВ рдЙрдкрд╕реНрдерд┐рддрд┐ рд╣реИред рд▓реЗрдЦ рдореЗрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдкрдврд╝реЗрдВ " рдореБрдлреНрдд рдореЗрдВ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВ ред"

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

рд╕рднреА рдХрд╛рдорд░реНрд╕ рдХреЗ рд▓рд┐рдП, рд╣рдо 2 рд╕рд╛рд▓ рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рдореБрдлреНрдд рд▓рд╛рдЗрд╕реЗрдВрд╕ рдЬрд╛рд░реА рдХрд░рддреЗ рд╣реИрдВред рд▓рд╛рдЗрд╕реЗрдВрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдпрд╣ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

  1. рдкреГрд╖реНрда рдкрд░ рдЬрд╛рдПрдВ: ___;
  2. рдЕрдкрдиреЗ GitHub рдкреНрд░реЛрдлрд╝рд╛рдЗрд▓ рдХрд╛ рд▓рд┐рдВрдХ рджрд░реНрдЬ рдХрд░реЗрдВ;
  3. рдЙрд╕ рдИ-рдореЗрд▓ рдХреЛ рджрд░реНрдЬ рдХрд░реЗрдВ рдЬрд┐рд╕рдореЗрдВ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреБрдВрдЬреА рднреЗрдЬреА рдЬрд╛рдПрдЧреА;
  4. рдирд┐рдГрд╢реБрд▓реНрдХ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рднреЗрдЬреЗрдВред

рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреА рд╕рдордп рд╕реАрдорд╛ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЙрд╕реА рддрд░рд╣ рд╕реЗ рдирдИ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреБрдВрдЬреА рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдХреБрдВрдЬреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ GitHub рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдЦреБрд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдореБрдлреНрдд рд▓рд╛рдЗрд╕реЗрдВрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рджрд░реНрдкрдг рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

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

рд╕реНрдерд┐рддрд┐

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

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

рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореБрдлреНрдд рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рджрд░реНрдкрдг рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреНрд▓реИрдВрдЧ , рдХреНрд░реЛрдорд┐рдпрдо , рдХреЗрдбреАрдИ, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдРрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реА рдЯреАрдо рд╕реЗ рдХрд╛рдлреА рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдФрд░ рдпрд╣ рдЙрдЪрд┐рдд рд╣реЛрдЧрд╛ рдпрджрд┐ рдХрдВрдкрдирд┐рдпрд╛рдВ рдЬрд╣рд╛рдВ рдЗрди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдирд┐рдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рд╡реЗ рдПрдХ рднреБрдЧрддрд╛рди рд▓рд╛рдЗрд╕реЗрдВрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ :)ред

Source: https://habr.com/ru/post/hi431994/


All Articles