
рд╣рдорд╛рд░реЗ рдХрдИ рд▓реЗрдЦ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдЯреВрд▓ рдХреЗ рд▓рд┐рдП рд╣реА рдирд╣реАрдВред рд▓реЗрдХрд┐рди рд╣рдо рдЕрдкрдиреЗ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХреБрдЫ рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╣ рдареАрдХ рд╡рд╣реА рд╣реИ рдЬреЛ рдЕрдХреНрд╕рд░ рдкрд░реНрджреЗ рдХреЗ рдкреАрдЫреЗ рд╣реЛрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдкреНрд▓рдЧрдЗрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдпрджрд┐ рдЖрдк Visual Studio рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд▓реЗрдЦ рдЖрдкрдХреЗ рд▓рд┐рдП рд╣реИред
рд╕реНрдереИрддрд┐рдХ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреНрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ
рд╕реНрдЯреЗрдЯрд┐рдХ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдФрд░ рдХрдорд┐рдпреЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛ рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХреЛрдб рд╕рдореАрдХреНрд╖рд╛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рд╕рд╣рдпреЛрдЧреА
рдХреЛрдб рд╕рдореАрдХреНрд╖рд╛ рдПрдХ рдорд╣рд╛рди рдХрд╛рд░реНрдпрдкреНрд░рдгрд╛рд▓реА рд╣реИред рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрдореА рднреА рд╣реИ - рдЙрдЪреНрдЪ рд▓рд╛рдЧрддред рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдирдП рдХреЛрдб рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдпрд╛ рдХреЛрдб рдХреА рдлрд┐рд░ рд╕реЗ рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдХрдИ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдПрдХ рдУрд░, рдореИрдВ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдХреЛрдб рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рджреВрд╕рд░реА рдУрд░, рдпрд╣ рдмрд╣реБрдд рдорд╣рдВрдЧрд╛ рд╣реИред Tradeoff рд╕реНрдерд┐рд░ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЙрдкрдХрд░рдг рд╣реИред рд╡реЗ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдЕрдердХ рд░реВрдк рд╕реЗ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдХреЛрдб рдХреЗ рдХреБрдЫ рд╡рд░реНрдЧреЛрдВ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рджреЗрддреЗ рд╣реИрдВред рдмреЗрд╢рдХ, рдкреНрд░реЛрдЧреНрд░рд╛рдо рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреА рдПрдХ рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХреЛрдб рдХреА рдкреВрд░реА рд╕рдореАрдХреНрд╖рд╛ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд▓рд╛рдн / рдореВрд▓реНрдп рдЕрдиреБрдкрд╛рдд рд╕реНрдерд┐рд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдИ рдХрдВрдкрдирд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рдЕрднреНрдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдкрд╛рдардХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддрд╛ рд╣реИ, рддреЛ рдореИрдВ "
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдЖрд░рдУрдЖрдИ " рд▓реЗрдЦ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░рддрд╛ рд╣реВрдВред
рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡рд╛рдгрд┐рдЬреНрдпрд┐рдХ рдФрд░ рдореБрдХреНрдд рд╕реНрдерд┐рд░ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╣реИрдВред рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрдХрд░реНрддрд╛рдУрдВ рдХреА рдПрдХ рдмрдбрд╝реА рд╕реВрдЪреА рдЙрдкрд▓рдмреНрдз рд╣реИ:
рд╕реНрдереИрддрд┐рдХ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдХрд░рдгреЛрдВ рдХреА рд╕реВрдЪреА ред рдЙрди рднрд╛рд╖рд╛рдУрдВ рдХреА рд╕реВрдЪреА, рдЬрд┐рдирдХреЗ рд▓рд┐рдП рд╕реНрдерд┐рд░ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдореМрдЬреВрдж рд╣реИрдВ, рд╡реЗ рднреА рдХрд╛рдлреА рдмрдбрд╝реА рд╣реИрдВ (C, C ++, C #, Java, Ada, Fortran, Perl, Ruby, ...)ред рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рд╣рдо рдЖрдкрдХреЛ
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рдПрдВрдЧреЗред
рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд╛ рдореБрдЦреНрдп рд▓рд╛рдн рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рджреЛрд╖реЛрдВ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рд▓рд╛рдЧрдд рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрдореА рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред рдкрд╣рд▓реЗ рд╡рд╛рд▓реА рддреНрд░реБрдЯрд┐ рдкрд╣рдЪрд╛рдиреА рдЬрд╛рддреА рд╣реИ, рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреА рд▓рд╛рдЧрдд рдХрдо рд╣реЛрддреА рд╣реИред рдЗрд╕рд▓рд┐рдП рдореИрдХрдХреЛрдиреЗрд▓ рдХреА рдкреБрд╕реНрддрдХ "рдкрд░рдлреЗрдХреНрдЯ рдХреЛрдб" рдореЗрдВ рджрд┐рдП рдЧрдП рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдкрд░реАрдХреНрд╖рдг рдХреЗ рдЪрд░рдг рдореЗрдВ рдПрдХ рдЧрд▓рддреА рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдкрд░ рдбрд┐рдЬрд╛рдЗрди (рд▓реЗрдЦрди) рдЪрд░рдг рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рджрд╕ рдЧреБрдирд╛ рдЕрдзрд┐рдХ рдЦрд░реНрдЪ рд╣реЛрдЧрд╛:

рдЪрд┐рддреНрд░рд╛ 1. рдЙрдирдХреЗ рдкрд░рд┐рдЪрдп рдФрд░ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд╕рдордп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рджреЛрд╖реЛрдВ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреА рдФрд╕рдд рд▓рд╛рдЧрдд (рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдПрд╕ред рдореИрдХрдХреЛрдиреЗрд▓ "рдкрд░рдлреЗрдХреНрдЯ рдХреЛрдб" рджреНрд╡рд╛рд░рд╛ рдкреБрд╕реНрддрдХ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ)редрд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЙрдкрдХрд░рдг рдЖрдкрдХреЛ рдбрд┐рдЬрд╝рд╛рдЗрди рдЪрд░рдг рдореЗрдВ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВ, рдЬреЛ рд╕рдВрдкреВрд░реНрдг рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреА рд▓рд╛рдЧрдд рдХреЛ рдХрд╛рдлреА рдХрдо рдХрд░ рджреЗрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕реНрдЯреИрдЯрд┐рдХ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╕рдВрдХрд▓рди рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рд╢реБрд░реВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдХреЛрдИ рд╕рдВрднрд╛рд╡рд┐рдд рддреНрд░реБрдЯрд┐ рдкрд╛рдИ рдЬрд╛рддреА рд╣реИ, рддреЛ рдпрд╣ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░реЗрдЧрд╛ред рдЗрд╕ рдореЛрдб рдкрд░ рдФрд░ рдЕрдзрд┐рдХ рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕реНрдЯреЗрдЯрд┐рдХ рдХреЛрдб рдПрдирд╛рд▓рд╛рдЗрдЬрд░
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдПрдХ рд╕реНрдерд┐рд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╣реИ рдЬреЛ рд╕реА, рд╕реА ++ рдореЗрдВ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддрд╛ рд╣реИ (рдПрдХреНрд╕рдЯреЗрдВрд╢рди рднреА рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ:
рд╕реА ++ / рд╕реАрдПрд▓рдЖрдИ рдФрд░
рд╕реА ++ / рд╕реАрдПрдХреНрд╕ ), рд╡рд┐рдВрдбреЛрдЬ рдФрд░ рд▓рд┐рдирдХреНрд╕ рдФрд░ рдореИрдХрдмреБрдХ рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдкрд░ рд╕реА # рдФрд░ рдЬрд╛рд╡рд╛ред рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рджреГрд╢реНрдп рд╕реНрдЯреВрдбрд┐рдпреЛ 2010 - 2019 рдФрд░ рдЗрдВрдЯреЗрд▓реАрдЬ рдЖрдИрдбреАрдИрдП рдХреЗ рд╕рд╛рде рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдПрдХреАрдХреГрдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рд╣рдо C, C ++, рдФрд░ C # рдореЗрдВ рдХреЛрдб рдХреА рдЬрд╛рдБрдЪ рдХреЗ рд▓рд┐рдП PVS-Studio рдХреЗ рдХрд╛рдо рдкрд░ рдХрд░реАрдм рд╕реЗ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВрдЧреЗред рдЖрдк
рдпрд╣рд╛рдВ IntelliJ IDEA рдореЗрдВ Java рдХреЛрдб рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП PVS-Studio рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдФрд░ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдореБрдЦреНрдп рдореЗрдиреВ рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд "рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ" рдЖрдЗрдЯрдо рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЦрд┐рдбрд╝рдХреА (рдЪрд┐рддреНрд░рд╛ 2 рджреЗрдЦреЗрдВ)ред
рдЪрд┐рддреНрд░рд╛ 2. рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдПрдХреАрдХрд░рдг рдХреЗ рджреМрд░рд╛рди рдЬреЛрдбрд╝реЗ рдЧрдП рдореБрдЦреНрдп рддрддреНрд╡редрдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реЗрдЯрд┐рдВрдЧреНрд╕
рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рддреИрдпрд╛рд░ рд╣реИред рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдкрд╣рд▓реЗ рд░рди рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХреБрдЫ рднреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд╢реБрд░реБрдЖрдд рдореЗрдВ рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рд╕реЗрдЯрдЕрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рд╡рд╣ рд╣реИ рдерд░реНрдб-рдкрд╛рд░реНрдЯреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдмрд╣рд┐рд╖реНрдХрд╛рд░ред рдЖрдЦрд┐рд░рдХрд╛рд░, рдЖрдк рдЕрднреА рднреА рд╕реНрд░реЛрдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдХреБрдЫ рднреА рд╕рдВрдкрд╛рджрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬреЗрдкреАрдИрдЬреА рдкреБрд╕реНрддрдХрд╛рд▓рдп, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХреЗ рдмрд╣рд┐рд╖реНрдХрд╛рд░ рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕рдордп рдХрдо рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓реА рдЧрдИ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдпрд╣рд╛рдВ рд╕реЗрдЯ рдХреА рдЧрдИ рд╣реИрдВ: рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ> рд╡рд┐рдХрд▓реНрдк ...> рдлрд╛рдЗрд▓реЛрдВ рдХреА рдЬрд╛рдВрдЪ рди рдХрд░реЗрдВ> рдкрд╛рде рдорд╛рд╕реНрдХ (рдЪрд┐рддреНрд░ 3 рджреЗрдЦреЗрдВ)ред

рдЪрд┐рддреНрд░рд╛ 3. рдЙрди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдХрд╛ рд╕рдВрдкрд╛рджрди рдХрд░рдирд╛ рдЬреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдЬрд╛рдВрдЪ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛редрдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╛рдореЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдкреВрд░реНрдг рдкрде рдореЗрдВ рд╣реИ, рддреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдХреБрдЫ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рдирд╛рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реВрдЪреА рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ ZLib рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╡рд╛рд▓реЗ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ "zlib" рдирд╣реАрдВ рдХрд╣рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "zip_lib"ред рдЗрд╕рд▓рд┐рдП, рдЖрдкрдХреЛ рдЗрд╕ рд╕реВрдЪреА рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рдВрдкрд╛рджрди рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рддреАрди рдбреЙрдЯреНрд╕ рд╡рд╛рд▓реЗ рдмрдЯрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред
PathMasks рд╕реВрдЪреА рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп рдорд╛рд╕реНрдХ рдХреЗ рдЙрджрд╛рд╣рд░рдг:
- c: \ Libs \ - рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдФрд░ рдЙрд╕рдХреЗ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдореЗрдВ рд╕реНрдерд┐рдд рд╕рднреА рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред
- \ Libs \ рдпрд╛ * \ Libs \ * - рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╕рднреА рдлрд╛рдЗрд▓реЗрдВ рдЬрд┐рдирдХреЗ рдкрде рдореЗрдВ рдПрдХ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ "Libs" рд╢рд╛рдорд┐рд▓ рд╣реИ, рдХреЛ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рдпрджрд┐ "*" рд╡рд░реНрдг рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рд╡реЗ рдЕрднреА рднреА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬреЛрдбрд╝ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рджреЛрдиреЛрдВ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк рд╕рдорд╛рди рд╣реИрдВред
- Libs рдпрд╛ * Libs * - рд╡реЗ рд╕рднреА рдлрд╛рдЗрд▓реЗрдВ рдЬрд┐рдирдореЗрдВ рдПрдХ рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ 'Libs' рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд╕рдмрдлрд╝реЛрд▓реНрдбрд░ рд╣реЛрддрд╛ рд╣реИ рдпрд╛ рдХрд┐рд╕реА рдирд╛рдо рдХрд╛ рдЯреБрдХрдбрд╝рд╛ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рд╕рд╛рде рд╣реА рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдирд╛рдо рдореЗрдВ Libs рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, c: \ project \ mylibs.cppред рднреНрд░рдо рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рд╣рдореЗрд╢рд╛ рд╕реНрд▓реИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рд╕рдВрдкреВрд░реНрдг рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рд╕реНрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП, рдПрдХ FileNameMasks рд╕реЗрдЯрд┐рдВрдЧ рд╣реИред рдмрд╣рд┐рд╖реНрдХрд░рдг рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рджреЗрдЦреЗрдВ:
рд╕реЗрдЯрд┐рдВрдЧреНрд╕: рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдЬрд╛рдБрдЪ рди рдХрд░реЗрдВрдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╕рддреНрдпрд╛рдкрди
рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдкрд░, рдЖрдк рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЬрд╛рдВрдЪ рд╢реБрд░реВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред Visual Studio рдХреЗ рд▓рд┐рдП PVS-Studio C ++ (.vcxproj) рдФрд░ C # (.csproj) рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЖрдк рддреБрд░рдВрдд рдПрдХ рдРрд╕реЗ рд╕рдорд╛рдзрд╛рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХрд╛ рднреА рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдБ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореЗрдиреВ рдЖрдЗрдЯрдо рдПрдХреНрд╕рдЯреЗрдВрд╢рди> рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ> рдЪреЗрдХ> рд╕рдорд╛рдзрд╛рди (рдЪрд┐рддреНрд░ 4 рджреЗрдЦреЗрдВ) рдХрд╛ рдЪрдпрди рдХрд░реЗрдВред

рдЪрд┐рддреНрд░рд╛ 4. рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдорд╛рдзрд╛рди рд╕рддреНрдпрд╛рдкрдиредрдпрджрд┐ рд╕рддреНрдпрд╛рдкрди рдореЗрдВ рдХреЛрдИ рдХрдард┐рдирд╛рдИ рд╣реИ, рддреЛ рд╣рдо рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк рд╣рдорд╛рд░реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ "
рд╕рддреНрдпрд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ? " рдЕрдиреБрднрд╛рдЧ рджреЗрдЦреЗрдВред рдпреЗ рдХреНрд▓реВрд▓реЗрд╕ рдирд╣реАрдВ рд╣реИрдВ "рдЪреЗрдХ рдХрд░реЗрдВ рдХрд┐ рдкреНрд▓рдЧ" рд░рд┐рд╕реЗрдкреНрдЯреЗрдХрд▓реНрд╕ рдореЗрдВ рдкреНрд▓рдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЕрдиреБрднрд╛рдЧ рдЙрди рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдиреЗ рд╣рдорд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд┐рдпрд╛ рд╣реИ рдФрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЗ рд▓рд┐рдП рд╕реБрдЭрд╛рдП рдЧрдП рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рдеред
рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╕реВрдЪреА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛
рдЬрд╛рдБрдЪ рдХреЗ рдмрд╛рдж, рд╕рднреА рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рдПрдХ рд╡рд┐рдВрдбреЛ рдореЗрдВ рдХрдИ рдирд┐рдпрдВрддреНрд░рдг рд╣реЛрддреЗ рд╣реИрдВред рд╡реЗ рд╕рднреА рдмрд┐рд▓реНрдХреБрд▓ рдЙрди рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рджрд┐рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрд╡рд╛ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдкрд╣рд▓реА рдмрд╛рд░ рдореЗрдВ, рд╡рд┐рдВрдбреЛ рдЬрдЯрд┐рд▓ рд▓рдЧ рд╕рдХрддреА рд╣реИред рдЖрдЗрдП рд╕рднреА рдирд┐рдпрдВрддреНрд░рдгреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ (рдЪрд┐рддреНрд░ 5 рджреЗрдЦреЗрдВ)ред
рдЪрд┐рддреНрд░рд╛ 5. рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЦрд┐рдбрд╝рдХреАред- рджрд░рдЕрд╕рд▓, рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд┐рдВрдбреЛред
- рдЕрддрд┐рд░рд┐рдХреНрдд рдореЗрдиреВред рдЖрдкрдХреЛ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ: рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдЧрд▓рдд рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдирд╛, рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЫрд┐рдкрд╛рдирд╛, рдЕрдкрд╡рд╛рджреЛрдВ рдХреЛ рдлрд╛рдЗрд▓ рдЬреЛрдбрд╝рдирд╛ (рдиреАрдЪреЗ рдЗрд╕ рдкрд░ рдЕрдзрд┐рдХ)ред
- рдмрдЯрди рдореЗрдВ рд╕рдВрджреЗрд╢ рд╢рд╛рдорд┐рд▓ рд╣реИ "рдХреБрдЫ рдЧрд▓рдд рд╣реЛ рдЧрдпрд╛ред" рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдХрд┐рд╕реА рдПрдХ рдлрд╛рдЗрд▓ рдХреЛ рдкреНрд░реАрдкреНрд░реЛрд╕реЗрд╕ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
- рдкрд┐рдЫрд▓реЗ / рдЕрдЧрд▓реЗ рд╕рдВрджреЗрд╢ рдкрд░ рдЬрд╛рдПрдВред рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓рддрд╛ рд╣реИ, рдФрд░ рдХрд░реНрд╕рд░ рдХреЛ рд╕рдВрднрд╛рд╡рд┐рдд рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рд▓рд╛рдЗрди рдкрд░ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдк рд╣рдореЗрд╢рд╛ рд╕реВрдЪреА рд╕реЗ рдбрдмрд▓ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХреНрд╕ рдХрд╛ рдЪрдпрди рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдкрд┐рдЫрд▓реЗ / рдЕрдЧрд▓реЗ рд╕рдВрджреЗрд╢ рдкрд░ рдЬрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЙрдЯрдХреА рдХреЛ рдЕрд╕рд╛рдЗрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдпреЗ Alt + '[' рдФрд░ Alt + ']' рд╣реИрдВред
- рдмрдЯрди рдЬрд┐рд╕рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рд╕реНрддрд░реЛрдВ рдкрд░ рдЕрд▓рд░реНрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЕрдм рдирд┐рджрд╛рди рдХреЗ рдкрд╣рд▓реЗ рджреЛ рд╕реНрддрд░ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЗрд╕реА рд╕рдордп, рдкрд╣рд▓реЗ рд╕реНрддрд░ рдХреА 90 рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ рдФрд░ рджреВрд╕рд░реЗ рд╕реНрддрд░ рдХреА 6700 рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ рдЦрд┐рдбрд╝рдХреА рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВред рд╕рдВрджреЗрд╢ рд╕реНрддрд░ рдЦрд┐рдбрд╝рдХреА рдХреЗ рдмрд╛рдИрдВ рдУрд░ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдмрд╛рд░ рдХреЗ рд░рдВрдЧ рдХреЗ рдЕрдиреБрд░реВрдк рдмрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕реА рд╕реНрддрд░ рдХреЗ рдмрдЯрди рдкрд░ред рдХреНрдпреЛрдВ рдЗрддрдиреЗ рд╕рд╛рд░реЗ рд╕рдХрд╛рд░рд╛рддреНрдордХ рд╣реИрдВ? 6700 рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ рдХрд╣рд╛рдБ рд╕реЗ рд╣реИрдВ? рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, MISRA рдирд┐рдпрдореЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЬреЛ рд╕рд╛рдзрд╛рд░рдг рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП contraindicated рд╣реИ :)ред
- рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрдирд┐рдпрдореЛрдВ рдХреЗ рд╕рдХреНрд░рд┐рдп рд╕реЗрдЯред рд╕рд╛рдорд╛рдиреНрдп - рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░рдпреЛрдЬрди рдирд┐рджрд╛рди, рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди - microoptimization, 64-рдмрд┐рдЯ - 64-рдмрд┐рдЯ рдбрд╛рдпрдЧреНрдиреЙрд╕реНрдЯрд┐рдХреНрд╕, MISRA - MISRA C рдФрд░ MISRA C ++ рдорд╛рдирдХ рдирд┐рджрд╛рдиред рдЕрдм рд╡рд┐рдВрдбреЛ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрд▓рд░реНрдЯ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреА рд╣реИред
- рдЧрд▓рдд рдЕрд▓рд╛рд░реНрдо рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИред рдЖрдк рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ рдЯреИрдЧ рдХрд┐рдП рдЧрдП рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди, рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ> рд╡рд┐рдХрд▓реНрдк ...> рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╕реЗрдЯрд┐рдВрдЧреНрд╕> рдкреНрд░рджрд░реНрд╢рди рдЕрд▓рд╛рд░реНрдо рдХреЛ рд╕рдХреНрд╖рдо / рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
- рддреНрд╡рд░рд┐рдд рдлрд╝рд┐рд▓реНрдЯрд░ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рд╕реВрдЪреА рдореЗрдВ рдХреЗрд╡рд▓ V501 рдХреЛрдб рд╡рд╛рд▓реЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЬреЛ рдХрд┐ XYZ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд╣реИрдВред
- рдХреБрдЫ рдирд┐рджрд╛рди рдПрдХ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрдИ рд▓рд╛рдЗрдиреЛрдВ рдкрд░ред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдкрдВрдХреНрддрд┐ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЖрдЧреЗ рдПрдХ рджреАрд░реНрдШрд╡реГрддреНрдд рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред рдорд╛рдЙрд╕ рд╕реЗ рдЙрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ, рдЖрдк рд▓рд╛рдЗрдиреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢реЛрдВ рд╡рд╛рд▓реА рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реНрддрдВрднреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
- рд╕реНрддрд░ред рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рд╕реНрддрд░ рдЬреЛ рддреНрд░реБрдЯрд┐ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдкрд╣рд▓рд╛ рд╕реНрддрд░ (рд▓рд╛рд▓) - рд╕рдмрд╕реЗ рд╕рдВрджрд┐рдЧреНрдз рд╕реНрдерд╛рдиред рддреАрд╕рд░рд╛ (рдкреАрд▓рд╛) рд╕реНрддрд░ - рдХреЛрдб рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рдПрдХ рдЫреЛрдЯреА рд╕реА рдЕрд╢реБрджреНрдзрд┐ рд╣реИред
- рддрд╛рд░рд╛рдВрдХрдиред рдЙрд╕рдХрд╛ рдХреЛрдИ рд╡рд┐рд╢реЗрд╖ рдЙрджреНрджреЗрд╢реНрдп рдирд╣реАрдВ рд╣реИред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рд╡рд┐рд╡реЗрдХ рдкрд░ рдЗрд╕рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡рд╣ рдЖрдЧреЗ рдХреЗ рд╕рд╛рд╡рдзрд╛рди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рд╕рд╛рджреГрд╢реНрдп рдердВрдбрд░рдмрд░реНрдб рдпрд╛ рдЖрдЙрдЯрд▓реБрдХ рдЬреИрд╕реЗ рдИрдореЗрд▓ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдПрдХ рддрд╛рд░рд╛рдВрдХрди рдЪрд┐рд╣реНрди рдХреЗ рд╕рд╛рде рдЕрдХреНрд╖рд░реЛрдВ рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдирд╛ рд╣реИред
- рдЖрдИрдбреАред рдЕрджреНрд╡рд┐рддреАрдп рд╕рдВрджреЗрд╢ рд╕рдВрдЦреНрдпрд╛ред рдмрдбрд╝реА рд╕реВрдЪреА рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдкрд░ рдпрд╣ рдХрд╛рдо рдЖ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрджреЗрд╢ рдкрд░ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ ( рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдореЗрдВ "рдЖрдИрдбреА рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░реЗрдВ ..." рдЖрдЗрдЯрдо рджреЗрдЦреЗрдВ )ред
- рдХреЛрдбред рд╕рдВрджреЗрд╢ рдХреЛрдб рдпрджрд┐ рдЖрдк рдорд╛рдЙрд╕ рдХреЗ рд╕рд╛рде рдЙрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рд╡рд┐рд╡рд░рдг рд╡рд╛рд▓рд╛ рдПрдХ рдкреГрд╖реНрда рдЦреБрд▓ рдЬрд╛рдПрдЧрд╛ред
- CWEред CWE (рдХреЙрдорди рд╡реЗрдХрдиреЗрд╕ рдПрдиреНрдпреВрдорд░реЗрд╢рди) рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддрд╛ рд╣реИред рд▓рд┐рдВрдХ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ, рдЖрдк рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдЗрд╕ рд╕реАрдбрдмреНрд▓реНрдпреВрдИ рдХрд╛ рд╡рд┐рд╡рд░рдг рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
- рдорд┐рд╢реНрд░рд╛ред рдЙрдкрд░реЛрдХреНрдд рдХреЗ рд╕рдорд╛рди, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ MISRA рдорд╛рдирдХ рдХреЗ рд▓рд┐рдП ред
- рд╕рдВрджреЗрд╢ред рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрд╕рдВрджреЗрд╢ рдХрд╛ рдкрд╛рдаред
- рдкрд░рд┐рдпреЛрдЬрдирд╛ред рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд╛рдо (рдЖрдк рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕ рдХреЙрд▓рдо рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред
- рдлрд╝рд╛рдЗрд▓ред рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдоред
- рд▓рд╛рдЗрдиред рдкрдВрдХреНрддрд┐ рд╕рдВрдЦреНрдпрд╛ред рдорд╣рддреНрд╡рдкреВрд░реНрдг! рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рдмрд╛рдж рдПрдХ рджреАрд░реНрдШрд╡реГрддреНрдд рд╣реИред рдЙрджрд╛рд╣рд░рдг: "123 (...)"ред рдЗрд╕ рдирдВрдмрд░ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ, рдЖрдкрдХреЛ рдХреЛрдб рдХреА рд╕рднреА рд▓рд╛рдЗрдиреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдорд┐рд▓ рдЬрд╛рдПрдЧреА рдЬреЛ рдЗрд╕ рд╕рдВрджреЗрд╢ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕реВрдЪреА рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдореЗрдВ рдЬрд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИред
рд╣рд╛рдВ, рдпрд╣ рд╕рдм рдкрдврд╝рдирд╛ рдердХрд╛ рджреЗрдиреЗ рд╡рд╛рд▓рд╛ рдерд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдЖрдкрдХреЛ рдЖрд╢реНрд╡рд╛рд╕рди рджреЗрддрд╛ рд╣реВрдВ, рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛, рдЖрдк рдЬрд▓реНрджреА рд╕реЗ рдЙрдкрдХрд░рдг рдХреЗ рд╕рд╛рде рд╕рд╣рдЬ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рдФрд░ рдЖрдк рд╢рд╛рдпрдж рд╣реА рдХрднреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рджрдмрд╛рдПрдВрдЧреЗред
рдкреНрд░рд╕рдВрдЧ рдореЗрдиреВ
рдЗрд╕рд▓рд┐рдП, рд╕рдВрджреЗрд╢ рдкрд░ рдбрдмрд▓-рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдЖрдк рдЗрдЪреНрдЫрд┐рдд рдХреЛрдб рдЯреБрдХрдбрд╝рд╛ рдкрд░ рдЬрд╛рдПрдВред рд╕рд╣реА рдорд╛рдЙрд╕ рдмрдЯрди рджрдмрд╛рдиреЗ рд╕реЗ, рдПрдХ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдЦреБрд▓рддрд╛ рд╣реИред
рдореЗрдиреВ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЖрдЗрдЯрдо рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рд▓реЗрдЦ рдХреЛ рдЕрдзрд┐рднрд╛рд░ рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрджрд┐ рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдк рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдЭрд╛рдВрдХ рд╕рдХрддреЗ рд╣реИрдВред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВ рдПрдХ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╕реБрд╡рд┐рдзрд╛ рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЖрдк рдЕрдкрд╡рд░реНрдЬрди рдХреЗ рд▓рд┐рдП рдлрд╝реЛрд▓реНрдбрд░ / рдлрд╝рд╛рдЗрд▓реЗрдВ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ (рдЪрд┐рддреНрд░ 2 рджреЗрдЦреЗрдВ)ред рддреЛ, рдХреБрдЫ рдЬреЛрдбрд╝рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ рдЬрд┐рддрдирд╛ рд▓рдЧрддрд╛ рд╣реИ!
рдЖрдЗрдЯрдо рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ "рдлрд╛рдЗрд▓реЛрдВ рдХреА рдЬрд╛рдВрдЪ рди рдХрд░реЗрдВ рдФрд░ рд╕рднреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЫрд┐рдкрд╛рдПрдВ ..."ред рдЬрдм рдЖрдк рдЙрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд░рд╛рд╕реНрддреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдЬреЛрдбрд╝реА рдЬрд╛ рд╕рдХрддреА рд╣реИ рдЬрд┐рд╕реЗ рдЕрдкрд╡рд╛рдж рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЪрд┐рддреНрд░ 6 рджреЗрдЦреЗрдВ)ред

рдЪрд┐рддреНрд░рд╛ 6. рд╕реНрдХреИрдирд┐рдВрдЧ рд╕реЗ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░редрдЖрдк рдПрдХрд▓ рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдПрдХ рдХрд╛ рдЪрдпрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ рдХрд┐ рдлрд╝реЛрд▓реНрдбрд░ "SDL2-2.0.9 \ src \ haptic \ windows" рдЪреБрдирд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдХреА рд╕рднреА рдлрд╛рдЗрд▓реЗрдВ рдФрд░ рд╕рднреА рд╕рдмрдлреЛрд▓реНрдбрд░реНрд╕ рдХреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕реЗ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рднреА рд╕рдВрджреЗрд╢ рддреБрд░рдВрдд рд╕реВрдЪреА рд╕реЗ рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред рдмрд╣реБрдд рд╕рд╣рдЬ рд╣реИред рдЖрдкрдХреЛ рдкрд░реАрдХреНрд╖рдг рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рднреА рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
рд╡реГрджреНрдзрд┐рд╢реАрд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдореЛрдб
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдкрд░рд┐рдЪрдп рдЕрдзреВрд░рд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ -
рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдХреЛрдб
рд╡рд┐рд╢реНрд▓реЗрд╖рдг ред
рдкрд╣рд▓реЗ рд╡рд╛рд▓реА рддреНрд░реБрдЯрд┐ рдкрд╛рдИ рдЧрдИ рд╣реИ, рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рд╕рд╕реНрддрд╛ рд╣реИред рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рд╕рдВрдкрд╛рджрд┐рдд рдкрд╛рда рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдкрд░ рддреБрд░рдВрдд рдЬреЛрд░ рджреЗрдирд╛ рдЖрджрд░реНрд╢ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ рдХрдард┐рди рдФрд░ рд╕рдВрд╕рд╛рдзрди рдЧрд╣рди рд╣реИред рдЗрд╕рд▓рд┐рдП, рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдЙрд╕ рд╕рдордп рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рд╕рд╣реА рдХреЛрдб рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдХреЗрд╡рд▓ рд╕рдВрд╢реЛрдзрд┐рдд рдХреЛрдб рдореЗрдВ рдЦреЛрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╣реЛ рд░рд╣рд╛ рд╣реИ, рд╕рд┐рд╕реНрдЯрдо рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЖрдЗрдХрди рджреНрд╡рд╛рд░рд╛ рдЖрдВрдХрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЬрдм рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ, рддреЛ рдкреЙрдк-рдЕрдк рд╡рд┐рдВрдбреЛ рдЦрддрд░реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рджреЗрддреА рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ (рдЪрд┐рддреНрд░ 7 рджреЗрдЦреЗрдВ)ред
рдЪрд┐рддреНрд░ 7. рдПрдХ рдкреЙрдк-рдЕрдк рд╕рдВрджреЗрд╢ рдЬреЛ рд╕рдВрдкрд╛рджрд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рдВрджрд┐рдЧреНрдз рд╕реНрдерд╛рди рдкрд╛рдП рдЧрдП рдереЗредрдпрджрд┐ рдЖрдк рдЖрдЗрдХрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдИрдбреАрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕рддреНрдпрд╛рдкрди рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЗ рд╕рд╛рде рдЦреБрд▓реЗрдЧрд╛ (рдЪрд┐рддреНрд░ 2 рджреЗрдЦреЗрдВ) рдФрд░ рд╕рдВрджрд┐рдЧреНрдз рдХреЛрдб рдЕрдВрд╢реЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЗрд╕ рдореЛрдб рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред рдЖрдк рдкрд╣рд▓реЗ рдХреА рддрд░рд╣ рдХреЛрдб рд▓рд┐рдЦреЗрдВред рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдЖрдкрдХреЛ рдкрд░реЗрд╢рд╛рди рдХрд░реЗрдЧрд╛ред рдЗрд╕реЗ рдЖрдЬрдорд╛рдЗрдП!
рд╣рдо рд╕реНрд╡рдпрдВ рд▓рдЧрд╛рддрд╛рд░ рдЗрд╕ рд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рдВ, рд╣рдо рдХрднреА-рдХрднреА рдХреЛрдбрд┐рдВрдЧ рддреНрд░реБрдЯрд┐рдпрд╛рдВ рднреА рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдЙрдиреНрд╣реЗрдВ рддреБрд░рдВрдд рдареАрдХ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдПрдХ рджреЛрд╖ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдХреЛ рдХрдо рдХрд░рддреА рд╣реИ рдФрд░ рдпрд╣ рд╕рдордЭрдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреА рд╣реИ рдХрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо рдирд┐рдпреЛрдЬрд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣ 15-20 рдорд┐рдирдЯ рдбрд┐рдмрдЧрд┐рдВрдЧ рдЦрд░реНрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд░реНрдо рдХреА рдмрд╛рдд рд╣реИ, рдлрд┐рд░ рд╕реВрдЪрдХрд╛рдВрдХ рдореЗрдВ рдПрдХ рдЯрд╛рдЗрдкреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдПред рдпрд╣рд╛рдВ рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ рдЬрдм рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЛ рдХреЛрдб рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рдХреЗ рдареАрдХ рдмрд╛рдж рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА:
if (in[0] == '\\' && in[1] == '.' && in[1] == '\\') { in += 2; continue; }
рд▓реЗрдХрд┐рди рдпреЗ, рдЬрд╝рд╛рд╣рд┐рд░ рд╣реИ, рдлреВрд▓ рд╣реИрдВред рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХрднреА-рдХрднреА рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣рд╛рдБ рд╣рдорд╛рд░реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╕рдореАрдХреНрд╖рд╛ рд╣реИ: "
рдПрдХ рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг ред" рдкрд╛рда рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрдирд╛рддрд╛ рд╣реИред
рдореИрдВ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдмрддрд╛рддрд╛ рд╣реВрдВред рд╡реГрджреНрдзрд┐рд╢реАрд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдкрдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП рдЬреИрд╕реЗ рд╣реА рдЖрдк рддрд╛рдЬрд╛ рдХреЛрдб рдореЗрдВ рдХреБрдЫ рдЧрд▓рддрд┐рдпрд╛рдВ рдвреВрдВрдвреЗрдВрдЧреЗ, рдЖрдкрдХреЛ рдЙрд╕рд╕реЗ рдкреНрдпрд╛рд░ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕реБрд╡рд┐рдзрд╛рдПрдБ
рдЪрд▓реЛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╣реИред рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╕рднреА рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХреНрд╕ рдХрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд░реНрдгрди рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред рдирд┐рджрд╛рди рдХреА рдПрдХ рдкреВрд░реА рд╕реВрдЪреА рдФрд░ рдЙрдирдХрд╛ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рд╡рд░рдг рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
рдирд┐рджрд╛рди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рд╡рд┐рд╡рд░рдг ред рд╣рдо рдЦреБрдж рдХреЛ рдПрдХ рдореЗрдЬ рдкрд░ рд╕реАрдорд┐рдд рд░рдЦрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдореЗрдВ рдирд┐рджрд╛рди рдкреНрд░рдХрд╛рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣реАрдХреГрдд рд╣реЛрддреЗ рд╣реИрдВред рдХреБрдЫ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХреНрд╕ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдореВрд╣реЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╡рд┐рднрд╛рдЬрди рдмрд╣реБрдд рдордирдорд╛рдирд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЯрд╛рдЗрдкреЛ, рдЕрд╕рдВрдмрджреНрдз рд╕реНрдореГрддрд┐ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдЬрдиреНрдо рджреЗ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдХреБрдЫ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдЬрдЧрд╣ рдирд╣реАрдВ рдорд┐рд▓реА, рд╡реЗ рдмрд╣реБрдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИрдВред рдлрд┐рд░ рднреА, рдПрдХ рдкреВрд░реЗ рдХреЗ рд░реВрдк рдореЗрдВ рддрд╛рд▓рд┐рдХрд╛ рдПрдХ рд╕реНрдерд┐рд░ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдПрдХ рд╡рд┐рдЪрд╛рд░ рджреЗрддреА рд╣реИ (рдЪрд┐рддреНрд░ 8 рджреЗрдЦреЗрдВ)ред

рдЪрд┐рддреНрд░рд╛ 8. рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕реБрд╡рд┐рдзрд╛рдПрдБредрдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдЯрд╛рдЗрдкреЛ, рдХреЙрдкреА-рдкреЗрд╕реНрдЯ рдХреЗ рдХрд╛рд░рдг рд╣реБрдИ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдЦреЛрдЬ рдЬреИрд╕реЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдпрдерд╛рд╕рдВрднрд╡ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдЙрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдирд┐рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдХреЛрдб рд╕реБрд░рдХреНрд╖рд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВред
рдЖрдк рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ
рдХрд┐ рддреНрд░реБрдЯрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЛ рджреЗрдЦрдХрд░ рдпрд╣ рд╕рдм рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╣рдо рдЗрд╕ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЙрди рд╕рднреА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдПрдХрддреНрд░ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╣рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдУрдкрди-рд╕реЛрд░реНрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдХреЗ рдорд┐рд▓реА рдереАрдВред
SAST
PVS- рд╕реНрдЯреВрдбрд┐рдпреЛ рд╕реНрдереИрддрд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╕реБрд░рдХреНрд╖рд╛ рдкрд░реАрдХреНрд╖рдг (SAST) рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдХрд░рдг рд╣реИ - рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛрдб рдореЗрдВ рд╕рдВрднрд╛рд╡рд┐рдд рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреА рдкрд╣рдЪрд╛рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╡рд░реНрдЧреАрдХрд░рдг рдореЗрдВ рд╕рдВрдмрдВрдзрд┐рдд рддреНрд░реБрдЯрд┐ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЛ рджрд┐рдЦрд╛ рд╕рдХрддрд╛ рд╣реИред
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддреНрд░реБрдЯрд┐ рд╡рд░реНрдЧреАрдХрд░рдг рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ:
- CWE
- рдПрд╕рдИрдЖрдИ рд╕реАрдИрдЖрд░рдЯреА
- рдорд┐рд╢реНрд░рд╛
рдЖрдк рд╢реЛ рдХреЙрд▓рдо> CWE рдХреЗ рддрд╣рдд рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╡рд┐рдВрдбреЛ рдореЗрдВ рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ CWE рдХреЛрдб рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рд╕рдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдЪрд┐рддреНрд░ 9. рд╕рдВрджрд░реНрдн рдореЗрдиреВ рдФрд░ CWE рдХреЛрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдгредрдпрд╛ рдКрдкрд░ рдХреЗ рдореЗрдиреВ рдореЗрдВ (рдПрдХреНрд╕рдЯреЗрдВрд╢рди> PVS-Studio> рдЖрдЙрдЯрдкреБрдЯ рд╡рд┐рдВрдбреЛ рдореЗрдВ CWE рдХреЛрдб рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ)
рдЪрд┐рддреНрд░ 10. рд╡рд┐рд╕реНрддрд╛рд░ рдореЗрдиреВредMISRA рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХреНрд╕ рдХреЛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдЕрд▓рдЧ рд╕реЗ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
рдЪрд┐рддреНрд░рд╛ 11. рдкрд╛рдпрд╛ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рд╕реВрдЪреАредрдЗрди рд╡рд░реНрдЧреАрдХрд░рдгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рдпрд╣рд╛рдБ рдФрд░ рдкрдврд╝реЗрдВред
рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛
PVS-Studio_Cmd.exe C ++ / C # рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ (.vcxproj / .csproj) рдФрд░ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рд╕реЗ .sln рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рд╣реИред рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИ рдЬрд╣рд╛рдВ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ - рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ 'C: \ Program Files (x86) \ PVS-Studio' рд╣реИред
рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдХрдИ
рдкреИрд░рд╛рдореАрдЯрд░ рд╣реИрдВ , рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ рд╣рдореЗрдВ рдЙрдирдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ 3 рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
- --target: рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдпрд╛ рд╕рдорд╛рдзрд╛рди рдлрд╝рд╛рдЗрд▓ред
- --output: рд╡рд╣ рдкреЛрдЧрд▓ рдлрд╝рд╛рдЗрд▓ рдЬрд╣рд╛рдБ рдЖрдк рд░рд┐рдкреЛрд░реНрдЯ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
- --рдкреНрд░реЛрдЧреНрд░реЗрд╕: тАЛтАЛрд╕рддреНрдпрд╛рдкрди рдкреНрд░рдЧрддрд┐ рджрд┐рдЦрд╛рдПрдВред
рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рд▓реЙрдиреНрдЪ рдХреА рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛:
рдЪрд┐рддреНрд░ 12. PVS-Studio_Cmd.exe рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛ рдЖрдЙрдЯрдкреБрдЯрдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ plog рдлрд╝рд╛рдЗрд▓ рдорд┐рд▓реЗрдЧреА, рдЬрд┐рд╕ рдкрде рдХреЛ рд╣рдордиреЗ рд▓реЙрдиреНрдЪ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕ рд░рд┐рдкреЛрд░реНрдЯ рдХреЛ PlogConverter.exe рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдиреНрдп рдкреНрд░рд╛рд░реВрдкреЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЖрдИрдбреАрдИ рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХреНрд╕рдкреНрд▓реЛрд░рд░ рдореЗрдВ рдХреЗрд╡рд▓ plog рдлрд╝рд╛рдЗрд▓ рдкрд░ рдбрдмрд▓-рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред
рдЖрдк рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЗрдиреВ рдХреЗ рддрд╣рдд рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЗрдиреВ рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдлрд╝рд╛рдЗрд▓ рднреА рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ> PVS-Studio> рдЦреЛрд▓реЗрдВ / рд╕рд╣реЗрдЬреЗрдВ> рдУрдкрди рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд░рд┐рдкреЛрд░реНрдЯ ...
рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдФрд░ рдЗрд╕рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдкрд░ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА
рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИред
рдЭреВрдареА рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХрд╛ рджрдорди
рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рджреНрд╡рд╛рд░рд╛ рдЬрд╛рд░реА рдХрд┐рдП рдЧрдП рдХреБрдЫ рд╕рдВрджреЗрд╢ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЧрд▓рдд рд╣реЛрдВрдЧреЗред рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╕рд┐рд░реНрдл рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХреГрддреНрд░рд┐рдо рдмреБрджреНрдзрд┐рдорддреНрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдФрд░ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рддреНрд░реБрдЯрд┐ рд╣реИ рдпрд╛ рдирд╣реАрдВред
рдЭреВрдареА рд╕рдХрд╛рд░рд╛рддреНрдордХрддрд╛ рдХрд╛ рдореБрдХрд╛рдмрд▓рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рд╡рд┐рднрд┐рдиреНрди рддрдВрддреНрд░реЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЙрдиреНрд╣реЗрдВ рдкреНрд░рд▓реЗрдЦрди рдХреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
рдирд┐рд╖реНрдХрд░реНрд╖
рдмреЗрд╢рдХ, рдпрд╣рд╛рдВ рд╣рдордиреЗ рд╕рд╛рдзрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рдирд╣реАрдВ рдмрддрд╛рдпрд╛ред рдпрджрд┐ рдЖрдк рд╕рдм рдХреБрдЫ рдмрддрд╛рддреЗ рд╣реИрдВ, рддреЛ рд▓реЗрдЦ рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ред рд▓рдХреНрд╖реНрдп рдпрд╣ рджрд┐рдЦрд╛рдирд╛ рдерд╛ рдХрд┐ рд╡рд┐рдЬрд╝реБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЯреВрд▓ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдХрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИред рдЖрдк рд╣рдорд╛рд░реА
рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкрд░ рд╕реНрдерд┐рдд рдкреНрд░рд▓реЗрдЦрди рдФрд░ рдЕрдиреНрдп рд▓реЗрдЦреЛрдВ рдореЗрдВ рдЕрдиреНрдп рд╡рд╛рддрд╛рд╡рд░рдг рдФрд░ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рдореЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд╣рд╛рдБ, рд╡реИрд╕реЗ, рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реА рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рддреЗрдВред рдЗрдзрд░ рдЙрдзрд░ рднрдЯрдХрдирд╛ред
рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рди рдХреЗрд╡рд▓ рдорд╛рдЗрдХреНрд░реЛрд╕реЙрдлреНрдЯ рд╕реЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╣рдо рдЬрд╛рд╡рд╛ рднрд╛рд╖рд╛ рдХрд╛ рднреА рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ, рд╣рдо рд▓рд┐рдирдХреНрд╕ рдФрд░ рдореИрдХрдУрдПрд╕ рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реАрдПрдордХреЗ рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдмрд╣реБрдд рдХреБрдЫред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП,
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рджреЗрдЦреЗрдВред
рдореИрдВ рдЖрдкрдХреЛ рдПрдХ рдХреЛрдбрд▓реЗрд╕ рдХреЛрдб рдХреА рдХрд╛рдордирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЖрд╢рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХрд╛ рдЖрдирдВрдж рд▓реЗрдВрдЧреЗред рдпрджрд┐ рдЖрдкрдХреЗ рдХреЛрдИ рдкреНрд░рд╢реНрди рд╣реИрдВ, рддреЛ рд╣рдо рд╣рдореЗрд╢рд╛ рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛ рдХрд░реЗрдВрдЧреЗ рдФрд░ рдЖрдкрдХреЛ рдмрддрд╛рдПрдВрдЧреЗред
рд╣рдореЗрдВ рд▓рд┐рдЦреЗрдВ ред
рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрд╕рд╛рдзрди:
- рдХреЛрдб рд╕рдореАрдХреНрд╖рд╛
- рд╕реНрдереИрддрд┐рдХ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг ред
- рд╕реНрдереИрддрд┐рдХ рдХреЛрдб рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЙрдкрдХрд░рдг ред
- рд╕ рд╕ рд╕ ред
- рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рддрдХрдиреАрдХреЗрдВ ред
- PVS-Studio рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдПрдБред
- рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ 2019 рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди ред
- рдЕрдкрдиреА рдЯреАрдо рдХреЗ рд▓рд┐рдП рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХреА рдХреАрдордд рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ рдХреИрд╕реЗ рдЦрд░реАрджреЗрдВ : рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдЦрд░реАрджреЗрдВ ред
- рдПрдХ рд╕реНрдерд┐рд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг ред
- рд╕рдореНрдореЗрд▓рдиреЛрдВ рдореЗрдВ рдЕрдХреНрд╕рд░ рдкреВрдЫреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдЙрддреНрддрд░ ред
- рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдЬрд╛рд╡рд╛ рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд░реЗрдВ
- рд▓рд┐рдирдХреНрд╕ рдФрд░ рдореИрдХрдУрдПрд╕ рдкрд░ рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреИрд╕реЗ рдЪрд▓рд╛рдПрдВ

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