ΠΠ΅ΡΠ½ΠΎ Π΅ Π΄Π° ΠΎΠΏΠΈΡΠ°ΡΠ΅ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ Π½Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ ΠΊΠΎΠ΄. ΠΠΎ ΠΏΡΠΈΠ»Π°Π³Π°Π½Π΅ΡΠΎ ΠΌΡ, ΠΎΡΠΎΠ±Π΅Π½ΠΎ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π³ΠΎΠ»ΡΠΌ ΡΡΠ°Ρ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΈΠ·ΠΈΡΠΊΠ²Π° ΡΠΌΠ΅Π½ΠΈΡ. ΠΠΊΠΎ ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ, Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡΡ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈ ΡΠ°Π±ΠΎΡΠ°, Π΄Π° Π·Π°Π±Π°Π²ΠΈ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ΡΠΎ ΠΈ Π΄Π° Π΄Π΅ΠΌΠΎΡΠΈΠ²ΠΈΡΠ° Π΅ΠΊΠΈΠΏΠ°. ΠΠ΅ΠΊΠ° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π½Π°ΠΊΡΠ°ΡΠΊΠΎ Π·Π° ΡΠΎΠ²Π° ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎ Π΄Π° ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΈΠΌ ΠΊΡΠΌ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· Π² ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° ΠΈ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΠΌ Π΄Π° Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ ΠΊΠ°ΡΠΎ ΡΠ°ΡΡ ΠΎΡ CI/CD.
Π²ΡΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΠ°ΡΠΊΠΎΡΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ΡΠΎ ΠΌΠΈ Π±Π΅ΡΠ΅ ΠΏΡΠΈΠ²Π»Π΅ΡΠ΅Π½ΠΎ ΠΎΡ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡΡΠ° "
ΠΠ°ΡΠΈΡΡ Π΅ΠΊΠΈΠΏ Π½Π° PVS-Studio ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΡΠ²ΠΎΠ΅ΡΠΎ Π²ΠΈΠΆΠ΄Π°Π½Π΅ ΠΏΠΎ ΡΠ°Π·ΠΈ ΡΠ΅ΠΌΠ°. ΠΠ΅ΠΊΠ° Π΄Π° ΡΠ°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠ°ΠΊ Π²ΡΠ·Π½ΠΈΠΊΠ²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΡΡ Ρ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ Π½Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ ΠΊΠΎΠ΄ Π½Π° ΠΏΡΡΠ²ΠΎ ΠΌΡΡΡΠΎ, ΠΊΠ°ΠΊ Π΄Π° ΠΏΡΠ΅ΠΎΠ΄ΠΎΠ»Π΅Π΅ΠΌ ΡΠΎΠ·ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΈ ΠΊΠ°ΠΊ Π±Π΅Π·Π±ΠΎΠ»Π΅Π·Π½Π΅Π½ΠΎ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ Π΄Π° ΠΏΡΠ΅ΠΌΠ°Ρ Π½Π΅ΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ Π΄ΡΠ»Π³.
ΠΡΠΎΠ±Π»Π΅ΠΌΠΈ
ΠΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π½Π΅ Π΅ ΡΡΡΠ΄Π½ΠΎ Π΄Π° ΡΡΠ°ΡΡΠΈΡΠ°ΡΠ΅ ΠΈ Π΄Π° Π²ΠΈΠ΄ΠΈΡΠ΅ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠΈ ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ [
ΠΡΠΈΡΠΊΠΈ ΡΡΠ°ΡΠΈΡΠ½ΠΈ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΈ Π΄Π°Π²Π°Ρ ΡΠ°Π»ΡΠΈΠ²ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ. Π’ΠΎΠ²Π° Π΅ Ρ
Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ° Π½Π° ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡΡΠ° Π·Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ ΠΊΠΎΠ΄ ΠΈ Π½ΠΈΡΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ Π½Π°ΠΏΡΠ°Π²ΠΈ ΠΏΠΎ Π²ΡΠΏΡΠΎΡΠ°. Π ΠΎΠ±ΡΠΈΡ ΡΠ»ΡΡΠ°ΠΉ ΡΠΎΠ²Π° Π΅ Π½Π΅ΡΠ°Π·ΡΠ΅ΡΠΈΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΊΠ°ΠΊΡΠΎ ΡΠ΅ ΠΏΠΎΡΠ²ΡΡΠΆΠ΄Π°Π²Π° ΠΎΡ ΡΠ΅ΠΎΡΠ΅ΠΌΠ°ΡΠ° Π½Π° Π Π°ΠΉΡ [
Π€Π°Π»ΡΠΈΠ²ΠΈΡΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ Π½Π΅ ΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌ, Π°ΠΊΠΎ ΡΡΠ°ΡΠΈΡΠ½ΠΈΡΡ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ Π²Π΅ΡΠ΅ Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½:
- ΠΠ΅Π·Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ΠΈ Π½Π΅ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈ Π½Π°Π±ΠΎΡΠΈ ΠΎΡ ΠΏΡΠ°Π²ΠΈΠ»Π°;
- ΠΡΠΊΠΎΠΈ Π½Π΅ΡΠΌΠ΅ΡΡΠ½ΠΈ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠΈ ΡΠ° Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ΠΈ;
- ΠΠΊΠΎ Π³ΠΎΠ²ΠΎΡΠΈΠΌ Π·Π° C ΠΈΠ»ΠΈ C++, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΠΌΠ°ΡΠΊΠΈΡΠ°Ρ ΠΌΠ°ΠΊΡΠΎΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΡΠ΄ΡΡΠΆΠ°Ρ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΡΠΈΡΠΈΠ½ΡΠ²Π°Ρ Π±Π΅Π·ΠΏΠΎΠ»Π΅Π·Π½ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π΄Π° ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π°Ρ Π½Π° Π²ΡΡΠΊΠΎ ΠΌΡΡΡΠΎ, ΠΊΡΠ΄Π΅ΡΠΎ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΠ°ΠΊΠΈΠ²Π° ΠΌΠ°ΠΊΡΠΎΡΠΈ;
- ΠΠ°ΡΠΊΠΈΡΠ°Π½ΠΈ ΡΠ° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΈΠ·ΠΏΡΠ»Π½ΡΠ²Π°Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΠΈΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ (Π½Π΅Π³ΠΎΠ² ΡΠΎΠ±ΡΡΠ²Π΅Π½ Π°Π½Π°Π»ΠΎΠ³ memcpy ΠΈΠ»ΠΈ Π€ΠΠ ΠΠΠ’) [
4 ]; - Π€Π°Π»ΡΠΈΠ²ΠΈΡΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ ΡΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»Π½ΠΎ Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ΠΈ ΡΡΠ΅Π· ΠΊΠΎΠΌΠ΅Π½ΡΠ°ΡΠΈ;
- Π ΡΠ°ΠΊΠ° Π½Π°ΡΠ°ΡΡΠΊ.
Π ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡΠ°ΠΊΠ²Π°ΠΌΠ΅ Π½ΠΈΡΡΠΊ ΡΠ°Π»ΡΠΈΠ² ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»Π΅Π½ ΠΏΡΠΎΡΠ΅Π½Ρ ΠΎΡ ΠΎΠΊΠΎΠ»ΠΎ 10-15% [
Π Π΅Π°Π»Π½ΠΎ ΠΏΡΠΈ Π³ΠΎΠ»ΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΡΡΠ²ΠΎΠ½Π°ΡΠ°Π»Π½Π°ΡΠ° ΠΊΠ°ΡΡΠΈΠ½Π° ΡΠ΅ Π±ΡΠ΄Π΅ ΡΡΠ²ΡΠ΅ΠΌ ΡΠ°Π·Π»ΠΈΡΠ½Π°. ΠΠ½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡΡ ΠΈΠ·Π΄Π°Π²Π° ΡΡΠΎΡΠΈΡΠΈ ΠΈΠ»ΠΈ Ρ
ΠΈΠ»ΡΠ΄ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π·Π° Π½Π°ΡΠ»Π΅Π΄Π΅Π½ ΠΊΠΎΠ΄. ΠΠ΅Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π±ΡΡΠ·ΠΎ Π΄Π° ΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ ΠΊΠΎΠΈ ΠΎΡ ΡΠ΅Π·ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΡΠ° ΡΠΌΠ΅ΡΡΠ½ΠΈ ΠΈ ΠΊΠΎΠΈ Π½Π΅. ΠΡΠ°ΡΠΈΠΎΠ½Π°Π»Π½ΠΎ Π΅ Π΄Π° ΡΠ΅Π΄Π½Π΅ΡΠ΅ ΠΈ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅ Π΄Π° ΡΠ΅ ΡΠΏΡΠ°Π²ΡΡΠ΅ Ρ Π²ΡΠΈΡΠΊΠΈ ΡΠ΅Π·ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ° Π² ΡΠΎΠ·ΠΈ ΡΠ»ΡΡΠ°ΠΉ ΡΠ΅ ΡΠΏΡΠ΅ Π·Π° Π΄Π½ΠΈ ΠΈΠ»ΠΈ ΡΠ΅Π΄ΠΌΠΈΡΠΈ. ΠΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ Π΅Π΄ΠΈΠ½ ΠΎΡΠ±ΠΎΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ ΡΠ°ΠΊΡΠ² ΡΡΠ΅Π½Π°ΡΠΈΠΉ. Π©Π΅ ΠΈΠΌΠ° ΠΈ ΠΎΠ³ΡΠΎΠΌΠ΅Π½ Π±ΡΠΎΠΉ ΡΠ°Π·Π»ΠΈΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ°Π·Π²Π°Π»ΡΡ ΠΈΡΡΠΎΡΠΈΡΡΠ° Π½Π° ΠΏΡΠΎΠΌΠ΅Π½ΠΈΡΠ΅. Π Π±ΡΡΠ·ΠΎΡΠΎ ΠΌΠ°ΡΠΎΠ²ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΎΠ»ΠΊΠΎΠ²Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΈ Π² ΠΊΠΎΠ΄Π° Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΠΎ ΡΠ΅ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Π½ΠΎΠ²ΠΈ ΠΏΡΠ°Π²ΠΎΠΏΠΈΡΠ½ΠΈ ΠΈ Π³ΡΠ΅ΡΠΊΠΈ.
Π Π½Π°ΠΉ-Π²Π°ΠΆΠ½ΠΎΡΠΎ Π΅, ΡΠ΅ ΡΠ°ΠΊΡΠ² ΠΏΠΎΠ΄Π²ΠΈΠ³ Π² Π±ΠΎΡΠ±Π°ΡΠ° ΡΡΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡΠ° Π½ΡΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΌΠΈΡΡΠ». Π‘ΡΠ³Π»Π°ΡΠ΅ΡΠ΅ ΡΠ΅, ΡΠ΅ ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΏΡΠΎΠ΅ΠΊΡΡΡ ΡΠ°Π±ΠΎΡΠΈ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π² ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ, ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΎΡ ΠΊΡΠΈΡΠΈΡΠ½ΠΈΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈ Π² Π½Π΅Π³ΠΎ Π²Π΅ΡΠ΅ ΡΠ° ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Π½ΠΈ. ΠΠ°, ΡΠ΅Π·ΠΈ ΠΏΠΎΠΏΡΠ°Π²ΠΊΠΈ Π±ΡΡ Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΊΡΠΏΠΈ, ΡΡΡΠ±Π²Π°ΡΠ΅ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΎΡΡΡΡΠ°Π½Π΅Π½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ, ΠΏΠΎΠ»ΡΡΠΈΡ Π° ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»Π½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ ΠΎΡΠ·ΠΈΠ²ΠΈ Π·Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ Ρ.Π½. Π‘ΡΠ°ΡΠΈΡΠ½ΠΈΡΡ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ Π±ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π°Π» Π΄Π° ΠΊΠΎΡΠΈΠ³ΠΈΡΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ ΡΠ΅Π·ΠΈ Π³ΡΠ΅ΡΠΊΠΈ Π½Π° Π΅ΡΠ°ΠΏΠ° Π½Π° ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅, Π±ΡΡΠ·ΠΎ ΠΈ Π΅Π²ΡΠΈΠ½ΠΎ. ΠΠΎ Π² ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΏΠΎ Π΅Π΄ΠΈΠ½ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ Π½Π°ΡΠΈΠ½ ΡΠ΅Π·ΠΈ Π³ΡΠ΅ΡΠΊΠΈ ΡΠ° ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Π½ΠΈ ΠΈ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡΡ ΠΎΡΠΊΡΠΈΠ²Π° Π³Π»Π°Π²Π½ΠΎ Π½Π΅ΠΊΡΠΈΡΠΈΡΠ½ΠΈ Π³ΡΠ΅ΡΠΊΠΈ Π² ΡΡΠ°ΡΠΈΡ ΠΊΠΎΠ΄. Π’ΠΎΠ·ΠΈ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΠ΄ΠΊΠΎ ΠΈ Π³ΡΠ΅ΡΠΊΠ° Π² Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π΅ Π΄ΠΎΠ²Π΅Π΄Π΅ Π΄ΠΎ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ. ΠΠΎΠΆΠ΅ Π±ΠΈ Π½ΡΠΊΡΠ΄Π΅ ΡΡΠ½ΠΊΠ°ΡΠ° ΠΎΡ Π±ΡΡΠΎΠ½Π° Π΅ Ρ Π³ΡΠ΅ΡΠ΅Π½ ΡΠ²ΡΡ, Π½ΠΎ ΡΠΎΠ²Π° Π½Π΅ ΠΏΡΠ΅ΡΠΈ Π½Π° Π½ΠΈΡΠΈΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΏΡΠΎΠ΄ΡΠΊΡΠ°.
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅, Π΄ΠΎΡΠΈ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»Π½ΠΈΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈ ΡΠΈ ΠΎΡΡΠ°Π²Π°Ρ Π³ΡΠ΅ΡΠΊΠΈ. Π ΠΏΠΎΠ½ΡΠΊΠΎΠ³Π° Π΅Π΄Π½Π° Π³ΡΠ΅ΡΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠΊΡΠΈΠ΅ ΠΈΡΡΠΈΠ½ΡΠΊΠ° ΡΡΠ·Π²ΠΈΠΌΠΎΡΡ. ΠΡΠΏΡΠ΅ΠΊΠΈ ΡΠΎΠ²Π° Π΄Π° ΡΠ΅ ΠΎΡΠΊΠ°ΠΆΠ΅ΡΠ΅ ΠΎΡ Π²ΡΠΈΡΠΊΠΎ ΠΈ Π΄Π° ΠΏΡΠ΅ΠΊΠ°ΡΠ²Π°ΡΠ΅ Π΄Π½ΠΈ/ΡΠ΅Π΄ΠΌΠΈΡΠΈ Π² ΡΠΏΡΠ°Π²ΡΠ½Π΅ Ρ Π΄Π΅ΡΠ΅ΠΊΡΠΈ, ΠΊΠΎΠΈΡΠΎ Π΅Π΄Π²Π° ΡΠ΅ ΠΏΡΠΎΡΠ²ΡΠ²Π°Ρ, ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π° ΡΡΠΌΠ½ΠΈΡΠ΅Π»Π½Π° ΠΈΠ΄Π΅Ρ.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΈΡΡΠΈΡΠ΅ Π³Π»Π΅Π΄Π°Ρ, Π³Π»Π΅Π΄Π°Ρ, Π³Π»Π΅Π΄Π°Ρ Π²ΡΠΈΡΠΊΠΈ ΡΠ΅Π·ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π·Π° ΡΡΠ°ΡΠΈΡ ΡΠ°Π±ΠΎΡΠ΅Ρ ΠΊΠΎΠ΄... Π ΡΠΈ ΠΌΠΈΡΠ»ΡΡ: ΠΌΠΎΠΆΠ΅ΠΌ ΠΈ Π±Π΅Π· ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ·. Π₯Π°ΠΉΠ΄Π΅ Π΄Π° Π½Π°ΠΏΠΈΡΠ΅ΠΌ Π½ΠΎΠ²Π° ΠΏΠΎΠ»Π΅Π·Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ.
ΠΠΎ ΡΠ²ΠΎΠΉ Π½Π°ΡΠΈΠ½ ΡΠ΅ ΡΠ° ΠΏΡΠ°Π²ΠΈ. Π’Π΅ ΡΠΌΡΡΠ°Ρ, ΡΠ΅ ΠΏΡΡΠ²ΠΎ ΡΡΡΠ±Π²Π° ΠΏΠΎ Π½ΡΠΊΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½ Π΄Π° ΡΠ΅ ΠΎΡΡΡΠ²Π°Ρ ΠΎΡ Π²ΡΠΈΡΠΊΠΈ ΡΠ΅Π·ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ. Π‘Π°ΠΌΠΎ ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° ΡΠ΅ Π²ΡΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΎΡ ΡΠ΅Π΄ΠΎΠ²Π½ΠΎΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΈΡ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ. Π ΠΏΡΠΎΡΠΈΠ²Π΅Π½ ΡΠ»ΡΡΠ°ΠΉ Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΡΠΎΡΡΠΎ ΡΠ΅ ΡΠ΅ ΡΠ΄Π°Π²ΡΡ Π² ΡΡΠ°ΡΠΈΡΠ΅ ΠΈ Π½ΠΈΠΊΠΎΠΉ Π½ΡΠΌΠ° Π΄Π° ΠΈΠΌ ΠΎΠ±ΡΡΠ½Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅.
Π’ΠΎΠ²Π° Π΅ ΡΡΡΠ°ΡΠ° Π°Π½Π°Π»ΠΎΠ³ΠΈΡ ΠΊΠ°ΡΠΎ Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠ°. ΠΠ΅ Π½Π°ΠΏΡΠ°Π·Π½ΠΎ ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π°Ρ Π±ΡΠΎΡΡ Π½Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡΠ° Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠ° Π΄Π° ΠΎΡΡΠ°Π½Π΅ 0. ΠΠΊΠΎ ΠΈΠΌΠ° 1000 ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, ΡΠΎΠ³Π°Π²Π° ΠΊΠΎΠ³Π°ΡΠΎ ΠΈΠΌΠ° 1001, Π½ΠΈΠΊΠΎΠΉ Π½ΡΠΌΠ° Π΄Π° ΠΌΡ ΠΎΠ±ΡΡΠ½Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈ Π½Π΅ Π΅ ΡΡΠ½ΠΎ ΠΊΡΠ΄Π΅ Π΄Π° ΡΡΡΡΠΈΠΌ ΡΠΎΠ²Π° Π½Π°ΠΉ-Π½ΠΎΠ²ΠΎ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅.
ΠΠ°ΠΉ-Π»ΠΎΡΠΎΡΠΎ Π² ΡΠ°Π·ΠΈ ΠΈΡΡΠΎΡΠΈΡ Π΅, Π°ΠΊΠΎ Π½ΡΠΊΠΎΠΉ ΠΎΡΠ³ΠΎΡΠ΅ Π² ΡΠΎΠ·ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΠΈ ΠΏΡΠΈΠ½ΡΠ΄ΠΈ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· Π½Π° ΠΊΠΎΠ΄Π°. Π’ΠΎΠ²Π° ΡΠ°ΠΌΠΎ ΡΠ΅ Π΄Π΅ΠΌΠΎΡΠΈΠ²ΠΈΡΠ° Π΅ΠΊΠΈΠΏΠ°, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΎΡ ΡΡΡ
Π½Π° Π³Π»Π΅Π΄Π½Π° ΡΠΎΡΠΊΠ° ΡΠ΅ ΠΈΠΌΠ° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½Π° Π±ΡΡΠΎΠΊΡΠ°ΡΠΈΡΠ½Π° ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ, ΠΊΠΎΡΡΠΎ ΡΠ°ΠΌΠΎ ΡΠ΅ ΠΏΡΠ΅ΡΠΈ. ΠΠΈΠΊΠΎΠΉ Π½ΡΠΌΠ° Π΄Π° Π³Π»Π΅Π΄Π° ΠΎΡΡΠ΅ΡΠΈΡΠ΅ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΠΈ ΡΡΠ»Π°ΡΠ° ΡΠΏΠΎΡΡΠ΅Π±Π° ΡΠ΅ Π±ΡΠ΄Π΅ ΡΠ°ΠΌΠΎ βΠ½Π° Ρ
Π°ΡΡΠΈΡβ. Π’Π΅Π·ΠΈ. Π€ΠΎΡΠΌΠ°Π»Π½ΠΎ Π°Π½Π°Π»ΠΈΠ·ΡΡ Π΅ Π²Π³ΡΠ°Π΄Π΅Π½ Π² ΠΏΡΠΎΡΠ΅ΡΠ° DevOps, Π½ΠΎ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° ΡΠΎΠ²Π° Π½Π΅ Π΅ ΠΎΡ ΠΏΠΎΠ»Π·Π° Π·Π° Π½ΠΈΠΊΠΎΠ³ΠΎ. Π§ΡΡ
ΠΌΠ΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΈ ΠΈΡΡΠΎΡΠΈΠΈ Π½Π° ΡΠ°Π½Π΄ΠΎΠ²Π΅ ΠΎΡ ΡΡΠ°ΡΡΠ½ΠΈΡΠΈ Π² ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΡΡΠ°. Π’Π°ΠΊΠΎΠ²Π° ΠΏΡΠ΅ΠΆΠΈΠ²ΡΠ²Π°Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΠ±Π΅Π·ΡΡΡΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΡΠΈΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· Π·Π° Π΄ΡΠ»Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅, Π°ΠΊΠΎ Π½Π΅ ΠΈ Π·Π°Π²ΠΈΠ½Π°Π³ΠΈ.
ΠΠ½Π΅Π΄ΡΡΠ²Π°Π½Π΅ ΠΈ ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π°Π½Π΅ Π½Π° ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ Π΄ΡΠ»Π³
ΠΡΡΡΠ½ΠΎΡΡ Π½ΡΠΌΠ° Π½ΠΈΡΠΎ ΡΡΡΠ΄Π½ΠΎ ΠΈΠ»ΠΈ ΡΡΡΠ°ΡΠ½ΠΎ Π²ΡΠ² Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ΡΠΎ Π½Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· Π΄ΠΎΡΠΈ Π² Π³ΠΎΠ»ΡΠΌ ΡΡΠ°Ρ ΠΏΡΠΎΠ΅ΠΊΡ.
CI / CD
ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡΡ ΠΌΠΎΠΆΠ΅ Π½Π΅Π·Π°Π±Π°Π²Π½ΠΎ Π΄Π° ΡΡΠ°Π½Π΅ ΡΠ°ΡΡ ΠΎΡ Π½Π΅ΠΏΡΠ΅ΠΊΡΡΠ½Π°ΡΠΈΡ ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΡΡΠ° Π½Π° PVS-Studio ΡΡΠ΄ΡΡΠΆΠ° ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ Π·Π° ΡΠ΄ΠΎΠ±Π½ΠΎ ΡΠ°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΠΎΡΡΠ΅ΡΠ° Π²ΡΠ² ΡΠΎΡΠΌΠ°ΡΠ°, ΠΎΡ ΠΊΠΎΠΉΡΠΎ ΡΠ΅ Π½ΡΠΆΠ΄Π°Π΅ΡΠ΅, ΠΈ ΠΈΠ·Π²Π΅ΡΡΠΈΡ Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ° Π½Π°ΠΏΠΈΡΠ°Π»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΠΈ ΡΠ΅ΠΊΡΠΈΠΈ ΠΎΡ ΠΊΠΎΠ΄Π°. ΠΠ° ΡΠ΅Π·ΠΈ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΠ²Π°Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ ΡΡΠ°ΡΡΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° PVS-Studio ΠΎΡ CI/CD ΡΠΈΡΡΠ΅ΠΌΠΈ, ΠΏΡΠ΅ΠΏΠΎΡΡΡΠ²Π°ΠΌ Π΄Π° ΡΠ΅ Π·Π°ΠΏΠΎΠ·Π½Π°Π΅ΡΠ΅ ΡΡΡ ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΈΡΠ΅
PVS-Studio ΠΎΡΠΈΠ²Π° Π² ΠΎΠ±Π»Π°ΡΠΈΡΠ΅: Azure Devops PVS-Studio ΠΎΡΠΈΠ²Π° Π² ΠΎΠ±Π»Π°ΡΠΈΡΠ΅: Travis CI PVS-Studio ΠΎΡΠΈΠ²Π° Π² ΠΎΠ±Π»Π°ΡΠΈΡΠ΅: GitLab CI/CD PVS-Studio ΠΎΡΠΈΠ²Π° Π² ΠΎΠ±Π»Π°ΡΠΈΡΠ΅: CircleCI
ΠΠΎ Π½Π΅ΠΊΠ° ΡΠ΅ Π²ΡΡΠ½Π΅ΠΌ ΠΊΡΠΌ Π²ΡΠΏΡΠΎΡΠ° Π·Π° Π³ΠΎΠ»ΡΠΌ Π±ΡΠΎΠΉ ΡΠ°Π»ΡΠΈΠ²ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ Π½Π° ΠΏΡΡΠ²ΠΈΡΠ΅ Π΅ΡΠ°ΠΏΠΈ ΠΎΡ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈ Π·Π° Π°Π½Π°Π»ΠΈΠ· Π½Π° ΠΊΠΎΠ΄.
ΠΠΎΡΠΈΠ³ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°Ρ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ Π΄ΡΠ»Π³ ΠΈ ΡΠΏΡΠ°Π²ΡΠ½Π΅ Ρ Π½ΠΎΠ²ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ
Π‘ΡΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΈΡΠ΅ ΡΡΡΠ³ΠΎΠ²ΡΠΊΠΈ ΡΡΠ°ΡΠΈΡΠ½ΠΈ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΈ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ Π΄Π° ΠΈΠ·ΡΡΠ°Π²Π°ΡΠ΅ ΡΠ°ΠΌΠΎ Π½ΠΎΠ²ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ ΡΠ΅ ΠΏΠΎΡΠ²ΡΠ²Π°Ρ Π² Π½ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π΅Π½ ΠΊΠΎΠ΄. ΠΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΠΎΠ·ΠΈ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ Π΅ ΡΠ°Π·Π»ΠΈΡΠ½ΠΎ, Π½ΠΎ ΡΡΡΠ½ΠΎΡΡΡΠ° Π΅ Π΅Π΄Π½Π° ΠΈ ΡΡΡΠ°. Π ΡΡΠ°ΡΠΈΡΠ½ΠΈΡ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ Π½Π° PVS-Studio ΡΠ°Π·ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎ ΡΠ»Π΅Π΄Π½ΠΈΡ Π½Π°ΡΠΈΠ½.
ΠΠ° Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅ Π±ΡΡΠ·ΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ·, ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΠΌΠ΅ Π½Π° ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΠΈΡΠ΅ Π½Π° PVS-Studio Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠ° Π·Π° ΠΌΠ°ΡΠΎΠ²ΠΎ ΠΏΠΎΡΠΈΡΠΊΠ°Π½Π΅ Π½Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ [
ΠΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΊΠ°ΠΆΠ΅ΡΠ΅ Π½Π° PVS-Studio Π΄Π° ΡΡΠΈΡΠ° ΡΠ΅Π·ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π·Π° Π½Π΅ΡΠΌΠ΅ΡΡΠ½ΠΈ Π·Π°ΡΠ΅Π³Π° (Π·Π°ΠΏΠ°Π·Π΅ΡΠ΅ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈ Π΄ΡΠ»Π³ Π·Π° ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ) ΠΈ ΡΠΎ ΠΏΠΎΠ²Π΅ΡΠ΅ Π½ΡΠΌΠ° Π΄Π° Π³ΠΈ ΠΏΠΎΠΊΠ°Π·Π²Π°. ΠΠ½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡΡ ΡΡΠ·Π΄Π°Π²Π° ΡΠΏΠ΅ΡΠΈΠ°Π»Π΅Π½ ΡΠ°ΠΉΠ», ΠΊΡΠ΄Π΅ΡΠΎ Π·Π°ΠΏΠΈΡΠ²Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° Π³ΡΠ΅ΡΠΊΠΈ, ΠΊΠΎΠΈΡΠΎ Π²ΡΠ΅ ΠΎΡΠ΅ Π½Π΅ ΡΠ° ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΈ. Π ΡΠ΅Π³Π° PVS-Studio ΡΠ΅ ΠΈΠ·Π΄Π°Π²Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΡΠ°ΠΌΠΎ Π·Π° Π½ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π΅Π½ ΠΊΠΎΠ΄. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° Π²ΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° Π΅ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΎ Ρ ΠΈΡΡΠΎ. ΠΠΊΠΎ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈ ΠΏΡΠ°Π·Π΅Π½ ΡΠ΅Π΄ Π² Π½Π°ΡΠ°Π»ΠΎΡΠΎ Π½Π° ΡΠ°ΠΉΠ»Π° Ρ ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄, ΡΠΎΠ³Π°Π²Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡΡ ΡΠ°Π·Π±ΠΈΡΠ°, ΡΠ΅ Π²ΡΡΡΠ½ΠΎΡΡ Π½ΠΈΡΠΎ Π½Π΅ ΡΠ΅ Π΅ ΠΏΡΠΎΠΌΠ΅Π½ΠΈΠ»ΠΎ ΠΈ ΡΠ΅ ΠΏΡΠΎΠ΄ΡΠ»ΠΆΠΈ Π΄Π° ΠΌΡΠ»ΡΠΈ. Π’ΠΎΠ·ΠΈ ΠΌΠ°ΡΠΊΠΈΡΠ°Ρ ΡΠ°ΠΉΠ» ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΏΠΎΡΡΠ°Π²Π΅Π½ Π² ΡΠΈΡΡΠ΅ΠΌΠ° Π·Π° ΠΊΠΎΠ½ΡΡΠΎΠ» Π½Π° Π²Π΅ΡΡΠΈΠΈΡΠ΅. Π€Π°ΠΉΠ»ΡΡ Π΅ Π³ΠΎΠ»ΡΠΌ, Π½ΠΎ ΡΠΎΠ²Π° Π½Π΅ Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΡΡΠΉ ΠΊΠ°ΡΠΎ Π½ΡΠΌΠ° ΡΠΌΠΈΡΡΠ» Π΄Π° Π³ΠΎ ΡΡΡ ΡΠ°Π½ΡΠ²Π°ΡΠ΅ ΡΠ΅ΡΡΠΎ.
Π‘Π΅Π³Π° Π²ΡΠΈΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΡΠΈ ΡΠ΅ Π²ΠΈΠΆΠ΄Π°Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ ΡΠ°ΠΌΠΎ Ρ Π½ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΡΠΎΠΌΠ΅Π½Π΅Π½ ΠΊΠΎΠ΄. ΠΠΎ ΡΠΎΠ·ΠΈ Π½Π°ΡΠΈΠ½ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π·Π°ΠΏΠΎΡΠ½Π΅ΡΠ΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ΅ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ°, ΠΊΠ°ΠΊΡΠΎ ΡΠ΅ ΠΊΠ°Π·Π²Π°, ΠΎΡ ΡΠ»Π΅Π΄Π²Π°ΡΠΈΡ Π΄Π΅Π½. Π ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΡΠ΅ Π²ΡΡΠ½Π΅ΡΠ΅ ΠΊΡΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ Π΄ΡΠ»Π³ ΠΏΠΎ-ΠΊΡΡΠ½ΠΎ ΠΈ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ Π΄Π° ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°ΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈΡΠ΅ ΠΈ Π΄Π° ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°ΡΠ΅ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ°.
Π ΡΠ°ΠΊΠ°, ΠΏΡΡΠ²ΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ Π²Π½Π΅Π΄ΡΡΠ²Π°Π½Π΅ΡΠΎ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ° Π² Π³ΠΎΠ»ΡΠΌ ΡΡΠ°Ρ ΠΏΡΠΎΠ΅ΠΊΡ Π΅ ΡΠ΅ΡΠ΅Π½. Π‘Π΅Π³Π° Π½Π΅ΠΊΠ° Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° ΠΏΡΠ°Π²ΠΈΠΌ Ρ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ Π΄ΡΠ»Π³.
ΠΠΎΠΏΡΠ°Π²ΠΊΠΈ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΠ°ΠΉ-ΠΏΡΠΎΡΡΠΎΡΠΎ ΠΈ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½ΠΎ Π½Π΅ΡΠΎ Π΅ Π΄Π° ΠΎΡΠ΄Π΅Π»ΠΈΡΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅, Π·Π° Π΄Π° Π°Π½Π°Π»ΠΈΠ·ΠΈΡΠ°ΡΠ΅ ΠΌΠ°ΡΠΎΠ²ΠΎ ΠΏΠΎΡΠΈΡΠ½Π°ΡΠΈΡΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΠΈ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ Π΄Π° ΡΠ΅ ΡΠΏΡΠ°Π²ΠΈΡΠ΅ Ρ ΡΡΡ . ΠΡΠΊΡΠ΄Π΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°ΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈ Π² ΠΊΠΎΠ΄Π°, Π½ΡΠΊΡΠ΄Π΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠΈΡΠ΅, Π·Π° Π΄Π° ΠΊΠ°ΠΆΠ΅ΡΠ΅ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ°, ΡΠ΅ ΠΊΠΎΠ΄ΡΡ Π½Π΅ Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΡΠΈΡΠ΅Π½. ΠΡΠΎΡΡ ΠΏΡΠΈΠΌΠ΅Ρ:
if (a = b)
ΠΠΎΠ²Π΅ΡΠ΅ΡΠΎ C++ ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡΠΈ ΠΈ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΈ ΡΠ΅ ΠΎΠΏΠ»Π°ΠΊΠ²Π°Ρ ΠΎΡ ΡΠ°ΠΊΡΠ² ΠΊΠΎΠ΄, ΡΡΠΉ ΠΊΠ°ΡΠΎ ΠΈΠΌΠ° Π³ΠΎΠ»ΡΠΌΠ° Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡ ΡΠ΅ Π½Π°ΠΈΡΡΠΈΠ½Π° Π΄Π° ΠΈΡΠΊΠ°Ρ Π΄Π° ΠΏΠΈΡΠ°Ρ (a == b). ΠΠΎ ΠΈΠΌΠ° Π½Π΅Π³Π»Π°ΡΠ½ΠΎ ΡΠΏΠΎΡΠ°Π·ΡΠΌΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠΎΠ²Π° ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ ΡΠ΅ ΠΎΡΠ±Π΅Π»ΡΠ·Π²Π° Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°, ΡΠ΅ Π°ΠΊΠΎ ΠΈΠΌΠ° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΡΠΊΠΎΠ±ΠΈ, ΡΠΎΠ³Π°Π²Π° ΡΠ΅ ΡΡΠΈΡΠ°, ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΡΡΡ ΡΠΌΠΈΡΠ»Π΅Π½ΠΎ Π΅ Π½Π°ΠΏΠΈΡΠ°Π» ΡΠ°ΠΊΡΠ² ΠΊΠΎΠ΄ ΠΈ Π½ΡΠΌΠ° Π½ΡΠΆΠ΄Π° Π΄Π° ΡΠ΅ ΠΊΡΠ»Π½Π΅ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ° Π½Π° PVS-Studio Π·Π° Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ°
if ((a = b))
ΠΡΡΠ³ ΠΏΡΠΈΠΌΠ΅Ρ. ΠΠ°Π±ΡΠ°Π²Π΅Π½ΠΎ Π»ΠΈ Π΅ Π² ΡΠΎΠ·ΠΈ C++ ΠΊΠΎΠ΄? ΠΏΠΎΡΠΈΠ²ΠΊΠ° ΠΈΠ»ΠΈ Π½Π΅?
case A:
foo();
case B:
bar();
break;
ΠΠ½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡΡ Π½Π° PVS-Studio ΡΠ΅ ΠΈΠ·Π΄Π°Π΄Π΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΡΠΊ
case A:
foo();
[[fallthrough]];
case B:
bar();
break;
ΠΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΊΠ°ΠΆΠ΅, ΡΠ΅ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠ΄Π° Π½Π΅ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Ρ Π³ΡΠ΅ΡΠΊΠ°ΡΠ°. ΠΠ°, ΡΠΎΠ²Π° Π΅ Π²ΡΡΠ½ΠΎ, Π½ΠΎ ΠΏΡΠ°Π²ΠΈ Π΄Π²Π΅ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ Π½Π΅ΡΠ°. ΠΡΡΠ²ΠΎ, ΠΎΡΡΠ΅ΡΡΡ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΠΏΡΠ΅ΠΌΠ°Ρ Π²Π° ΡΠ°Π»ΡΠΈΠ²ΠΈΡΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ. ΠΡΠΎΡΠΎ, ΠΊΠΎΠ΄ΡΡ ΡΡΠ°Π²Π° ΠΏΠΎ-ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌ Π·Π° Ρ ΠΎΡΠ°ΡΠ°, ΡΡΠ°ΡΡΠ²Π°ΡΠΈ Π² ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° ΠΌΡ. Π ΡΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½ΠΎ! Π‘Π°ΠΌΠΎ Π·Π° ΡΠΎΠ²Π° ΡΠΈ ΡΡΡΡΠ²Π° Π΄Π° ΠΈΠ·Π²ΡΡΡΠΈΡΠ΅ ΠΌΠ°Π»ΠΊΠΈ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠΊΠΈ, Π·Π° Π΄Π° Π½Π°ΠΏΡΠ°Π²ΠΈΡΠ΅ ΠΊΠΎΠ΄Π° ΠΏΠΎ-ΡΡΠ΅Π½ ΠΈ Π»Π΅ΡΠ΅Π½ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°. Π’ΡΠΉ ΠΊΠ°ΡΠΎ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡΡ Π½Π΅ ΡΠ°Π·Π±ΠΈΡΠ° Π΄Π°Π»ΠΈ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ βΠΏΡΠ΅ΠΊΡΡΠ²Π°Π½Π΅β ΠΈΠ»ΠΈ Π½Π΅, ΡΠΎΠ²Π° ΡΡΡΠΎ ΡΠ΅ Π±ΡΠ΄Π΅ Π½Π΅ΡΡΠ½ΠΎ Π·Π° ΠΊΠΎΠ»Π΅Π³ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈΡΡΠΈ.
Π Π΄ΠΎΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΡΠΌ ΠΊΠΎΡΠ΅ΠΊΡΠΈΠΈΡΠ΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ ΠΈ ΠΏΡΠ΅ΡΠ°Π±ΠΎΡΠ²Π°Π½Π΅ΡΠΎ, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ Π΄Π° ΠΏΠΎΡΠΈΡΠΊΠ°ΡΠ΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ ΡΠ°Π»ΡΠΈΠ²ΠΈΡΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ°. ΠΡΠΊΠΎΠΈ Π½Π΅ΡΠΌΠ΅ΡΡΠ½ΠΈ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠΈ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ Π΄Π΅Π°ΠΊΡΠΈΠ²ΠΈΡΠ°Π½ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π½ΡΠΊΠΎΠΉ ΡΠΌΡΡΠ°, ΡΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡΠ° ΡΠ° Π±Π΅Π·ΡΠΌΠΈΡΠ»Π΅Π½ΠΈ
ΠΠΌΠ° ΠΈ Π΄ΡΡΠ³ΠΈ Π½Π°ΡΠΈΠ½ΠΈ Π·Π° ΠΏΠΎΡΠΈΡΠΊΠ°Π½Π΅ Π½Π° ΡΠ°Π»ΡΠΈΠ²ΠΈΡΠ΅ ΡΠΈΠ³Π½Π°Π»ΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ ΠΌΠ°ΠΊΡΠΎ ΠΌΠ°ΡΠΊΠΈΡΠ°Π½Π΅ΡΠΎ Π±Π΅ΡΠ΅ ΡΠΏΠΎΠΌΠ΅Π½Π°ΡΠΎ ΠΏΠΎ-ΡΠ°Π½ΠΎ. ΠΡΠΈΡΠΊΠΎ ΡΠΎΠ²Π° Π΅ ΠΎΠΏΠΈΡΠ°Π½ΠΎ ΠΏΠΎ-ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡΠ°. ΠΠ°ΠΉ-Π²Π°ΠΆΠ½ΠΎΡΠΎ Π΅ Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΡΠ΅, ΡΠ΅ Π°ΠΊΠΎ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡΠ΅ ΠΊΡΠΌ ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠ°Π»ΡΠΈΠ²ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ, Π½ΡΠΌΠ° Π½ΠΈΡΠΎ Π»ΠΎΡΠΎ Π² ΡΡΡ . ΠΠΎ-Π³ΠΎΠ»ΡΠΌΠ°ΡΠ° ΡΠ°ΡΡ ΠΎΡ Π±Π΅Π·ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΈΡΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΈΠ·ΡΠ΅Π·Π²Π°Ρ ΡΠ»Π΅Π΄ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ ΠΈ ΠΎΡΡΠ°Π²Π°Ρ ΡΠ°ΠΌΠΎ ΠΌΠ΅ΡΡΠ°, ΠΊΠΎΠΈΡΠΎ Π½Π°ΠΈΡΡΠΈΠ½Π° ΠΈΠ·ΠΈΡΠΊΠ²Π°Ρ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»Π½ΠΎ ΠΏΡΠΎΡΡΠ²Π°Π½Π΅ ΠΈ Π½ΡΠΊΠΎΠΈ ΠΏΡΠΎΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠ΄Π°.
ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° Π²ΠΈΠ½Π°Π³ΠΈ ΠΏΠΎΠΌΠ°Π³Π°ΠΌΠ΅ Π½Π° Π½Π°ΡΠΈΡΠ΅ ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ Π΄Π° Π½Π°ΡΡΡΠΎΡΡ PVS-Studio, Π°ΠΊΠΎ Π²ΡΠ·Π½ΠΈΠΊΠ½Π°Ρ Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΈΡ. ΠΡΠ²Π΅Π½ ΡΠΎΠ²Π° ΠΈΠΌΠ°ΡΠ΅ ΡΠ»ΡΡΠ°ΠΈ, ΠΊΠΎΠ³Π°ΡΠΎ Π½ΠΈΠ΅ ΡΠ°ΠΌΠΈ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡΠ°Ρ
ΠΌΠ΅ ΡΠ°Π»ΡΠΈΠ²ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΈ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Ρ
ΠΌΠ΅ Π³ΡΠ΅ΡΠΊΠΈ [
ΠΠ΅ΡΠΎΠ΄ Π½Π° ΡΡΠ΅ΡΡΠΎΡΠΊΠ°
ΠΠΌΠ° Π΄ΡΡΠ³ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π·Π° ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎΡΠΎ Π½Π° ΠΊΠΎΠ΄Π° ΡΡΠ΅Π· Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡΠ°Π½Π΅ Π½Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° ΡΡΠ°ΡΠΈΡΠ½ΠΈΡ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ. ΠΠ·Π²ΠΎΠ΄ΡΡ Π΅, ΡΠ΅ Π±ΡΠΎΡΡ Π½Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡΠ° ΠΌΠΎΠΆΠ΅ ΡΠ°ΠΌΠΎ Π΄Π° Π½Π°ΠΌΠ°Π»ΡΠ²Π°.
ΠΡΠΎΡΡ Π½Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡΠ°, ΠΈΠ·Π΄Π°Π΄Π΅Π½ΠΈ ΠΎΡ ΡΡΠ°ΡΠΈΡΠ½ΠΈΡ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ, ΡΠ΅ Π·Π°ΠΏΠΈΡΠ²Π°. ΠΠΎΡΡΠ°ΡΠ° Π·Π° ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ Π΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π° ΠΏΠΎ ΡΠ°ΠΊΡΠ² Π½Π°ΡΠΈΠ½, ΡΠ΅ ΡΠ΅Π³Π° ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° Π²ΡΠ²Π΅Π΄Π΅ΡΠ΅ ΡΠ°ΠΌΠΎ ΠΊΠΎΠ΄, ΠΊΠΎΠΉΡΠΎ Π½Π΅ ΡΠ²Π΅Π»ΠΈΡΠ°Π²Π° Π±ΡΠΎΡ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈΡΠ΅. Π ΡΠ΅Π·ΡΠ»ΡΠ°Ρ Π½Π° ΡΠΎΠ²Π° ΠΏΡΠΎΡΠ΅ΡΡΡ Π½Π° ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π±ΡΠΎΡ Π½Π° Π°Π»Π°ΡΠΌΠΈΡΠ΅ Π·Π°ΠΏΠΎΡΠ²Π° ΡΡΠ΅Π· Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΠΈ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Π½Π΅ Π½Π° Π³ΡΠ΅ΡΠΊΠΈ.
ΠΠΎΡΠΈ Π°ΠΊΠΎ ΡΠΎΠ²Π΅ΠΊ ΠΈΡΠΊΠ° Π΄Π° ΠΈΠ·ΠΌΠ°ΠΌΠΈ ΠΌΠ°Π»ΠΊΠΎ ΠΈ ΡΠ΅ΡΠΈ Π΄Π° ΠΏΡΠ΅ΠΌΠΈΠ½Π΅ ΠΏΠΎΡΡΠ°ΡΠ° Π·Π° ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ Π½Π΅ ΠΊΠ°ΡΠΎ Π΅Π»ΠΈΠΌΠΈΠ½ΠΈΡΠ° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡΠ° Π² Π½ΠΎΠ²ΠΈΡ ΡΠΈ ΠΊΠΎΠ΄, Π° ΠΊΠ°ΡΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΠΈ ΡΡΠ°ΡΠΈΡ ΠΊΠΎΠ΄ Π½Π° ΡΡΠ΅ΡΠ° ΡΡΡΠ°Π½Π°, ΡΠΎΠ²Π° Π½Π΅ Π΅ ΡΡΡΠ°ΡΠ½ΠΎ. ΠΡΠ΅ ΠΏΠ°ΠΊ ΡΡΠ΅ΡΡΠΎΡΠΊΠ°ΡΠ° ΡΠ΅ Π²ΡΡΡΠΈ Π² Π΅Π΄Π½Π° ΠΏΠΎΡΠΎΠΊΠ° ΠΈ ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ Π±ΡΠΎΡΡ Π½Π° Π΄Π΅ΡΠ΅ΠΊΡΠΈΡΠ΅ ΡΠ΅ Π½Π°ΠΌΠ°Π»Π΅Π΅. ΠΠΎΡΠΈ Π°ΠΊΠΎ ΡΠΎΠ²Π΅ΠΊ Π½Π΅ ΠΈΡΠΊΠ° Π΄Π° ΠΊΠΎΡΠΈΠ³ΠΈΡΠ° ΡΠΎΠ±ΡΡΠ²Π΅Π½ΠΈΡΠ΅ ΡΠΈ Π½ΠΎΠ²ΠΈ Π΄Π΅ΡΠ΅ΠΊΡΠΈ, ΡΠΎΠΉ Π²ΡΠ΅ ΠΏΠ°ΠΊ ΡΠ΅ ΡΡΡΠ±Π²Π° Π΄Π° ΠΏΠΎΠ΄ΠΎΠ±ΡΠΈ Π½Π΅ΡΠΎ Π² ΡΡΡΠ΅Π΄Π½ΠΈΡ ΠΊΠΎΠ΄. Π Π΅Π΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ Π»Π΅ΡΠ½ΠΈΡΠ΅ Π½Π°ΡΠΈΠ½ΠΈ Π·Π° Π½Π°ΠΌΠ°Π»ΡΠ²Π°Π½Π΅ Π½Π° Π±ΡΠΎΡ Π½Π° ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡΡΠ° ΡΠ²ΡΡΡΠ²Π°Ρ ΠΈ ΠΈΠ΄Π²Π° ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π°ΡΠΎ ΠΈΡΡΠΈΠ½ΡΠΊΠΈΡΠ΅ Π³ΡΠ΅ΡΠΊΠΈ ΡΠ΅ Π±ΡΠ΄Π°Ρ ΠΊΠΎΡΠΈΠ³ΠΈΡΠ°Π½ΠΈ.
Π’Π°Π·ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ»ΠΎΠ³ΠΈΡ Π΅ ΠΎΠΏΠΈΡΠ°Π½Π° ΠΏΠΎ-ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π² ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π° ΡΡΠ°ΡΠΈΡ Π½Π° ΠΠ²Π°Π½ ΠΠΎΠ½ΠΎΠΌΠ°ΡΠ΅Π² "
ΠΠ²ΡΠΎΡΡΡ Π½Π° ΡΡΠ°ΡΠΈΡΡΠ° ΡΡΡΠΎ ΠΈΠΌΠ° Π΄ΠΎΠΊΠ»Π°Π΄ ΠΏΠΎ ΡΠ°Π·ΠΈ ΡΠ΅ΠΌΠ°: "
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ°Π΄ΡΠ²Π°ΠΌ ΡΠ΅, ΡΠ΅ ΡΠ»Π΅Π΄ ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ ΡΠΈΡΠ°ΡΠ΅Π»ΠΈΡΠ΅ ΡΠ΅ ΠΏΡΠΈΠ΅ΠΌΠ°Ρ ΠΏΠΎ-Π΄ΠΎΠ±ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΈΡΠ΅ Π·Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· ΠΈ ΡΠ΅ ΠΈΡΠΊΠ°Ρ Π΄Π° Π³ΠΈ Π²Π½Π΅Π΄ΡΡΡ Π² ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°. ΠΠΊΠΎ ΠΈΠΌΠ°ΡΠ΅ Π²ΡΠΏΡΠΎΡΠΈ, Π²ΠΈΠ½Π°Π³ΠΈ ΡΠΌΠ΅ Π³ΠΎΡΠΎΠ²ΠΈ
ΠΠΌΠ° ΠΈ Π΄ΡΡΠ³ΠΈ ΡΠΈΠΏΠΈΡΠ½ΠΈ ΡΡΠΌΠ½Π΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΡΠ½ΠΎ ΡΠΎΠ²Π° Π΄Π°Π»ΠΈ ΡΡΠ°ΡΠΈΡΠ½ΠΈΡΡ Π°Π½Π°Π»ΠΈΠ· Π½Π°ΠΈΡΡΠΈΠ½Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΡΠ΄ΠΎΠ±Π΅Π½ ΠΈ ΠΏΠΎΠ»Π΅Π·Π΅Π½. ΠΠΏΠΈΡΠ°Ρ
ΡΠ΅ Π΄Π° ΡΠ°Π·ΡΠ΅Ρ ΠΏΠΎΠ²Π΅ΡΠ΅ΡΠΎ ΠΎΡ ΡΠ΅Π·ΠΈ ΡΡΠΌΠ½Π΅Π½ΠΈΡ Π² ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΡΡΠ° βΠΡΠΈΡΠΈΠ½ΠΈ Π·Π° Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ° Π½Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ ΠΊΠΎΠ΄ PVS-Studio Π² ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°β [
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ Π²ΠΈ Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ΡΠΎ ΠΈ Π·Π°ΠΏΠΎΠ²ΡΠ΄Π°ΠΉΡΠ΅
ΠΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ Π²ΡΡΠ·ΠΊΠΈ
- ΠΠ½Π΄ΡΠ΅ΠΉ ΠΠ°ΡΠΏΠΎΠ².
ΠΠ°ΠΊ ΠΌΠΎΠ³Π° Π±ΡΡΠ·ΠΎ Π΄Π° Π²ΠΈΠ΄Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΈ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ, ΠΊΠΎΠΈΡΠΎ PVS-Studio Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΡΡ ΠΏΡΠΎΠΈΠ·Π²Π΅ΠΆΠ΄Π° Π·Π° C ΠΈ C++ ΠΊΠΎΠ΄? - Wikipedia.
Π’Π΅ΠΎΡΠ΅ΠΌΠ° Π½Π° Π Π°ΠΉΡ . - ΠΠ½Π΄ΡΠ΅ΠΉ ΠΠ°ΡΠΏΠΎΠ², ΠΠΈΠΊΡΠΎΡΠΈΡ Π₯Π°Π½ΠΈΠ΅Π²Π°.
ΠΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΌΠ°ΡΠΈΠ½Π½ΠΎ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· Π½Π° ΠΈΠ·Ρ ΠΎΠ΄Π½ΠΈΡ ΠΊΠΎΠ΄ Π½Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°ΡΠ° . - PVS-ΡΡΡΠ΄ΠΈΠΎ. ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ.
ΠΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΡΠ½ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ . - ΠΠ½Π΄ΡΠ΅ΠΉ ΠΠ°ΡΠΏΠΎΠ².
Π₯Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠΈ Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ° PVS-Studio, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π½Π° EFL Core Libraries, 10-15% ΡΠ°Π»ΡΠΈΠ²ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»Π½ΠΈ ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠΈ . - PVS-ΡΡΡΠ΄ΠΈΠΎ. ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ.
ΠΠ°ΡΠΎΠ²ΠΎ ΠΏΠΎΡΠΈΡΠΊΠ°Π½Π΅ Π½Π° ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡΡΠ° Π½Π° Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠ° . - ΠΠ²Π°Π½ ΠΠ½Π΄ΡΡΡΠΈΠ½.
ΠΠ° ΡΠΎΠ²Π° ΠΊΠ°ΠΊ ΡΠ΅ΡΡΠ²Π°Ρ ΠΌΠ΅ ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ· Π½Π° Π½Π°ΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡ Π·Π° ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»Π΅Π½ ΡΠΈΠΌΡΠ»Π°ΡΠΎΡ Π½Π° ΡΠ΅Π½ΡΠ³Π΅Π½ΠΎΠ²Π° Π΅Π½Π΄ΠΎΠ²Π°ΡΠΊΡΠ»Π°ΡΠ½Π° Ρ ΠΈΡΡΡΠ³ΠΈΡ . - ΠΠ°Π²Π΅Π» ΠΡΠ΅ΠΌΠ΅Π΅Π², Π‘Π²ΡΡΠΎΡΠ»Π°Π² Π Π°Π·ΠΌΠΈΡΠ»ΠΎΠ².
ΠΠ°ΠΊ Π΅ΠΊΠΈΠΏΡΡ Π½Π° PVS-Studio ΠΏΠΎΠ΄ΠΎΠ±ΡΠΈ ΠΊΠΎΠ΄Π° Π½Π° Unreal Engine . - ΠΠ½Π΄ΡΠ΅ΠΉ ΠΠ°ΡΠΏΠΎΠ².
ΠΡΠΈΡΠΈΠ½ΠΈ Π·Π° Π²ΡΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΡΠ°ΡΠΈΡΠ΅Π½ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ Π½Π° ΠΊΠΎΠ΄ PVS-Studio Π² ΠΏΡΠΎΡΠ΅ΡΠ° Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ° .
ΠΠΊΠΎ ΠΈΡΠΊΠ°ΡΠ΅ Π΄Π° ΡΠΏΠΎΠ΄Π΅Π»ΠΈΡΠ΅ ΡΠ°Π·ΠΈ ΡΡΠ°ΡΠΈΡ Ρ Π°Π½Π³Π»ΠΎΠ΅Π·ΠΈΡΠ½Π° Π°ΡΠ΄ΠΈΡΠΎΡΠΈΡ, ΠΌΠΎΠ»Ρ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡΠ΅ Π²ΡΡΠ·ΠΊΠ°ΡΠ° Π·Π° ΠΏΡΠ΅Π²ΠΎΠ΄: ΠΠ½Π΄ΡΠ΅ΠΉ ΠΠ°ΡΠΏΠΎΠ².
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: www.habr.com