αααα»αβααααΌαβααΆαβαααα»αβα±ααβαααααβα’αααααβαααβαααβα ααα½αβααβα αααΎαβααβαααααΆααβαα βααΎβααΆαβαα·ααΆαβαα·αα·ααααβαααβαααα»αβααβααβαααβααΆαβα αΆααβα’αΆααααααβααααβαααα»αβααΆααβααβααααΆααβα‘αΎαβα ααΆααααΌα, αααα αααααααααααααΆααααα½αααΆαααΆαααααααα ααΎ Habre αααααΆααααα½αααΈααΆααα·αα·αααα‘αΎααα·αααΌαααα α»ααααααΆαααααΎααααα§ααααααααααα½ααααα αααα»ααααααααααααααΎαα αα α ααααΈαααα PVS-studio ααΆαα’αα»αααα α αΎαααΆααΆααα·αααΆαα α’αααα’αα·αααααα IntelliJ IDEA αααα§ααααααα·ααΆααααααααΆααααααΆαα½αααΊαααα ααααΆααααΎααααα»ααααααΆαα Java αααααααααααα .
αα αααα’αΆαααΆααα·αα·ααααααααα α’αααααα½αααΆαα’αΆααααααααΆααΎααααα»ααα·ααΆαα’αααΈααααααα elixir: α α»α αααΌαα»α α αΎααα ααΈαααααΆααΊααΆ - αααααΈαααα·ααΆαααΆααα»αααααααααααααα’αααα ααΆα αΆααααΈααΌα ααΆααααααα’ααααα·ααΆαααΆαααΆααααααΎαα‘αΎα ααα α»αααΆααααα αααΎαααΉαααααΌαααΆαααααΎααααααααααααααααα· α αΎαααα·ααααααααααααααααα»αααααααααΆαααααααΉαααΆαααααααααΎαα‘αΎα αα·αααΆαααααααααΎαα‘αΎαααααα·αααΆαααΆαααααΉααααααααΆαα½αααΈαααααααααααΎαα‘αΎαα
ααα»αααααα·αααΆα elixir αααααααααα αααα»αα αααα·ααΆαα’αααΈα’αααΈαααααΆααααααΆαα·αααααΌαααΆααα·ααΆαα’αααΈαα αααα»αααΆααααααΆαααΌα ααΆ "αααααΊααΆα’αααΈαααααα»αααααααααααααΎαα’αΆα ααααΎα"α α’αααΈαααα’ααααα·ααΆααα·αα’αΆα ααααΎ αα½ααΆααΈ αα·αααΈαααααααα·αααααΆαααααααα½ααααα αααα»αααααΎαααΆαα ααα αΆααααααα·ααΈ αα·αααααα’αα»αααααα½αααΆα±ααααΆαααααΉαααααΌαα .

Ratchet (αααααα ).
α’αααΈαααα’ααααα·ααΆααα·αα·αααααα·αα’αΆα ααααΎααΆα
ααΎααΆααα·ααΆαααΌααααααααΊααΆα’αααΈ ααΆαααααααααΆααααααα? ααΎααααααααΌαααααααα½αα ααα½αααΆααΆααααα αΌα αα·αααΆαααααα αααα»αααααααααααααΈ (ααααΈααΆαααΆαααααΎαααααααααααα»αααααΎαααΆα) ααΎαααα½αααΆαααααααΆααα½αα ααα½αα’αααΈααααααααααααααΎαα ααααααααααΆααΌαααααΆα αα·ααα·αα’αΆα αααααααααααΆαααΆαααα·ααα·ααααΆααΊααΆ ααΎαα’αΆα ααα½αααΆαααααααΆαααΌα α ααα’αααα½αααααΆααα·ααΈαααα
α§ααΆα αααααααααΈααααΆααααα»ααααααα αΆααααα·αα’αΆα αααααααΆαααΆααααααααΎααΆααα·ααΆααα·αα·ααααααΊ α αααααΊααΆααααΉααααΈααααααααα αΆαααΆααΆαα·αα’αΆα αα αα½α αααααα»αααΆαα’αα·αααααααα½ααααααααΆαααΌαα αααα’αΆα αααααααΈααΌαααααααααααααα·ααΈααΆααΎααΆααΉαααααα·ααα»α α¬αααα αααααα»ααααααααααααα αααααααααααααααααΉααααΈαααααααΊ αααα ααααΆαααααΆαααααααααααααααα·αα·αααααΆααααΆαα½ααααα»αααΆααααα’αΆα ααααΆααΆα ααΆααααααααΆααΎαααααα·ααΈααααΆαααΆααααααα»αααΆαααΆαα½ααααααααααααααα·ααααααααΊααΆαααα αΆααααα·αα’αΆα αααααααΆαααΆαααΆααα·ααΈαααααααΆαα ααΆα§ααΆα ααα ααΆαα·αα’αΆα αα αα½α αααααα»αααΆαααααααααααα·ααΈαα·ααΆααααα’αΆα αααααααΈααΌααααααααΆαα½αααΆααΎαααααα·ααΈααααααα»ααα·ααΆαααΊααΆααΆαα’αα»αααααααααα½ααααααααΆααααααααΆ squaring ααα ααα½ααααα
ααΌα αααααα»αααΆαααααα§ααααααα·ααΆααα·αα·ααααααΆαααααααααααααα·αα’αΆα αααααααααααΆαα α§ααααααα·ααΆααα·αα·ααααααΉααα·αα’αΆα ααααΎααααα»ααααααααααΈααΆααα’αα ααΌα ααΆα§ααΆα ααα ααΆαααΎαα‘αΎααα "ααΆαααΎααααααααα·α ααα" ααΆααΆααΆαααα’αα»ααααΆαα±ααααααααααααα α¬αααα»ααααααααααΈααΆααα’ααααΎααααΈαααααααΆαααΎαα‘αΎααα " αααα·αααΎααα»ααααααα" ααΆααΆααΆαααααΆαααΆααααα αΌαααΆαααααα α’αααΈααΆααα’αααααα§ααααααα·ααΆααα·αα·ααααααααα·αααααααααα»αα’αΆα ααααΎααΆαααΊααΌααααααΆααααΈααααΈαα·ααα α ααα½αααααααα»αα αααααααα αΆαααα’αΆα ααΎαααΆαααΆααα’ααααΆαα½αααΌααααααααααα’αααααΊ αααααααΆαααΆαααααααΎα ααΆαααααΆααα α»ααα αααα»ααα»αα
ααΆααα·ααΆααα·αα·αααααα·ααααα’αααΈααΆααααααααααα α»αααα
ααΈααΆαααΎ ααΆαααααα·ααααΆαααΌα ααΆααααααα ααΆααα·ααΆααα·αα·αααααα·ααααααΆαααααααΆαααααΆαααΆαααααααα ααα½ααααα·ααΆαααΆααα αααα»ααααααα·ααΈαααααα αααα»αα αααα·ααΆαααΆα αα αααα’αα»ααααααααααααααα’αααααΆααΎαααααΌα ααΆααΉαααααΎααααααα "αα½αα±ααα αΆααα’αΆαααααα" αα αααα»αααΌα ααα»ααααααααααΆααΆααΉααα·αααααΎααα·ααΆαααΆαααΆαα½αααααααααΆααααααα»αααΆααααααααα·ααΈααααα’αααααα
α§ααΆα ααααααα·ααΆαααΆααααααΆαααααΎααααααααααααααααα·αααα’ααααα·ααΆαααΊαα½αα’ααα αΆααα’αΆαααααα ααα»ααααααΎααα·ααα½αααααα ααΆα§ααΆα αααααΆαααααααααΌαααΆαααααΎααααααΆαααααααααα»αααΌαααααααααΌαααΌαααααΆαα ααΆααααααΆαααααΌα ααααΆ αα½α Hacker αααααΆαα±ααΆαααΆαααααααΆααααααααΆααααΆααααααΆα αααΎααα ααΎααααΈαα½αα ααα½ααααα ααΈαααα»αααααΎαααααΈααΆααααααααααΆαααΆααααααααΆααααΆααααα
ααΎαααααΆααααααΆαα·ααα½αααααΎααΆααα·ααΆααα·αα·αααααα? ααΆααΆααα·αααΆαααα·αααααα! α αΎααααααΆααα ααα»ααααΌα ααααΆαααααΆααΆαααααααα·αα·αααααΎαααΆααααααααΆααααααΈααΈαα½αα ααΎααααΈααααΆααααΆααΆααααΌαααΆααααα αΌααααα»ααααααΈααααααααΆααααααααΆαα "ααΆαααα"α
ααΆααα·ααΆααα·αα·ααααααΊα αααΎαααΆαααΆααααααααααα α»α
ααΆααα·ααααα αΆααααααααααΆααααααΆααα·ααΆαααΆαααααααααΊααΆαααααααααΌααααΌααΆαααΆαα αααΆαααΆαα·α ααΆααΌαα ααΆααα·ααΆααα·αα·ααααααΊααΆααΆααααααααααΆααααΆαα½αααααΌαααααααααααΆαααααΎα‘αΎααα»αααααα½αααΆααααΌαααΆαααΆααα±ααααααΎαααΆαα αααααΆααΏααα½αα ααα½ααααα’αααα’αΆα ααααΎααΆαα
- αα·αα·ααααα ααΆααααααααααααΌααααα»ααααααΌααααΌααΆαααααΆαααα ααααα½ααααα αΌαααΆααααΆααα·αα·αααααΎααααααα ααΆααααααααααΆαααααΎααααΆααααααααα αααα/αααααα ααΆααααααααααα·αααΎαααααα ααΌα ααΆα ααα½ααααααΆαα/ααΆααααα»αααααΆααααααααααα·ααΈααΆαααααααΆααΎαα αα αααα»α Java α§αααααααααααααΊ Checkstyle αα αααα»α Python - flake8 α αααααα·ααΈβααβααααΆααβαααβααααΌαβααΆαβααβα α βααΆβααΆβααααααΆβααΆβααΆ "αααααΆααβ"α
- αα·αβααααΉαβααβααα»αααααβααΌαβαααβα’αΆα βααααα·ααααα·βααΆαβα’αΆα βααααΌαβααΆαβαα·ααΆαα α―αααΆαααααΆαααΌα ααΆ JSON, YAML, XML, .properties α’αΆα (αα·ααα½α!) ααααΌαααΆααα·αα·ααααααααααααααααααα·αααααΆαααα»ααααΆαα αααΆαααΆαα·α ααΆααΆααΆααααααΎααααα»αααΆαααααααααααΆαα ααΆαααααααα JSON ααααΌαααΆαααΌα αααααΆαααααααααααααα·αααααΌαααααα½αα ααα½ααα ααααΆααααΆαααααΌαααααΆααααααααααΆααααΆαααααΎαα»αααΆααααααααααααααααα·ααΆαα’αα‘α»ααααααααΎαααΆαααΆααααα α¬αααααααΎαααΆα? α§αααααααααααα’αΆα ααααΆαα α§. , .
- ααΆαα ααααα (α¬ααααααααΆααααΆααΆααααααααααα·ααΈααΆααααα) ααααΆααααααααααΆααα·ααΆααα·αα·αααααααααα ααΆααΌαα α’αααα αααααααΆααααααααΆαααα·αααΆααααααΆαααααααα αΆαααΈαααα αΆααΆαα½αααΉααα»αααΆαααΌαααααα α αΎααα·ααα½αααααΌαααΆαα’αΎααΎα‘αΎαα
- αααααααααΆαα αααααααΊααΎαααΈααΆαα αααααααΌααααα’αΆα ααααα·ααααα·ααΆαα α§ααΆα ααα ααααα·αααΎα’αααααΆαα―αααΆααααα»ααααααα αααααΆαααααα αααααααααααΆαα ααΆ HTML/PDF α’ααααααααααΆα AsciiDoctor () α’αΆα α ααααΆααααααΆα α§ααΆα αααα’αααΈαααααααΆααααΆααααα»ααααααΌα α α αΎααααααΊααΆα ααα»ααααααα’αα½αααααα·αααα½αααααααΎαααΆαααΆαα½αααΉαααΆαααααΆααααααΌαα―αααΆαα
- ααΆααα·αα·αααα’αααααΆαα·αα»αααααααΆααααααααααΆααα·ααΆααα·αα·αααααααααα α§αααααααααΎααααΆαα α’αΆα αα·αα·αααα’αααααΆαα·αα»ααααα·αααααΉααααα αααα»αα―αααΆαααα»ααααααα ααα»αααααααααΆαααα αααα»αααΌαααααααααααα·ααΈ (ααα·ααααα αα·ααααααααα) ααΆααΆααΆααααααααααα·ααΈαααααα αα½αααΆαα C/C++, Java αα·α Python αααααα ααα α»αα’αααααΆαα·αα»ααααα αααα»αα ααα»α αααααΆααα’αααααααΎ α¬α―αααΆαααααΆααα α»ααα½αααα!
- ααΆαααααΎαααααααΆαααααααα ααΆαααααααα (α’αααΈα’αααΈααααα½αααααΆα - ααΌαααΎαα ΠΈ αααΆαααΆααα) αααααΈααΆααααΌαααΆαααααα·ααααα·αααα»αααααΎαααΆαααΆαααααα―αααΆααΌα ααΆ pytest ααααα ααΆααα·αααααΆααααααααααΆααα·ααΆααα·αα·ααααααα αααααΆααα½ααααα·αααααα·ααααα·ααΌααααααααα‘α»ααααααααα·ααααα·αααααα½αααα
ααΌα αααα’αααα’αΆα ααΎα ααΆααααααααααα α»ααααα»ααααααΈαααααΎααα½ααΆααΈαααΆααα·α αααα»α α αΎαα’αααΈαααααααααα’αΆα ααααΆααααααααΎα§ααααααααααααΎαα αα α₯ααα·αααααα
ααΎααΆααα·ααΆααα·αα·ααααααααααααΆαααααααα’ααααα½αααααΎαααα»αααααααααααα’ααα? αα·αααΆααααΆααααααα’! ααΏαααααΆααααΊααααΌαα’αα»ααααααΆα±ααααΆαααααΉαααααΌααααααΉαααααΌαααΆααα·ααΆααααΆαααααααααα
αααααα ααα αΆαααΆααααααα α»ααααΆααααΆα αα·αααΆααα·ααΆααα·αα·ααααααΆααααΆααααΆαααααΌαααααααΆα
ααΆααααααααααααα»ααΆααααααΆααααΆααα½ααααα αΌαααΆαααααααααΆααααΊααΆααααααααα αΌαααααααααααΆααααααΆαααααΆααααααΌαααα αΌα ααΈααΆαααααΆααααααΌαααΌαααααααα αΌααααααΆαα ααα αΆααα αΌααααααΆαααα·αα ααααΆαααααααααΆαααααααΆααααΆααα αααα»αααααααααααΎααα ααΌα αααα
- ααΆααα·ααΆααα·αα·αααα
- α’αΌα αΌ
- ααΆαααααΎαααααα―αααΆ
- ααΆαααααΎααααααα½ααααα αΌα
- ααΆαααααΎααααα UI
- ααΆααααα½ααα·αα·αααααααα
ααΆαααααΆααααααΌααααααααΌαααΆαααα·ααααα ααααΆααααΆαααΈ N ααααααααα·αααααΌαααΆαααααααα ααααΆααααΆα N + 1 ααα
α ααα»βα’αααΈβααΆαβααΆβααΆαβαα·ααΈβααα α αΎαβαα·αβααΌα αααα? αα αααα»ααααααααΆαααααααααααααααα αΌαααααα α’αααααΆαααααααΉαααα½αααααΆααααΈαααΆααΈαααΆαααααααααααΈα

ααΆαααααααΈαααΆααΈαα αααααα Martin Fowler α
αα αααααααΆααααααααααΈαααΆααΈααααααΊααΆααΆαααααΎααααααααααΆααααα½αααααα ααααΎαααΆαααΏαααΆααα»α αα·ααα·αααΆαααααααααα»αααΆααααΆααααααααα ααΌα αααααα½αααααΆαα αααΎα αα½ααααα½αααααααααααααααΌαααααααααα α αΎαααααΌαααααα·ααααα·ααΆαα»ααα·αα αα αααααααΆαααΎααααΆααΈαααα»α ααΆααααα»αααααΆααΊααΆααΆααα·α ααΌα ααααα ααα½αααααΆααα½ααααα αΌα αα·αααΆαααααΎααααα UI αα½αααααααΌαααΆαααΆααααααααα α’αααααααΆα αΆαααΆα αα ααα»ααααα αααα»ααααααααααΆαααααααΊααΆααααΆαααααααααααα»α ααΊα αα·ααα·αα’αΆα αα»αα α·αααααΆα ααΌα ααααααΆααααΊαα ααΈαααα ααα αΎαααααΆααααα’αα»ααααααΆαααΆαααααα·αααΎααααΆααααΆααα»ααα·αααΆαααααΎααα·ααΆαααΆαααΆαα½αα‘αΎαα αααααΆαααΆαααΆααααααααααΆαααααΌα ααααΆααααΌαααΆαααααΎααΎααααΈααΆααααααααααα αααα»ααααααααααα·αααΆαααααααααααΆαααα ααΉαααΆαααααΎααααα!
αααα»αα αααααααααΌαααΌαααΆαααααααααααΆαα½ααα αααα»αααααααααααααααααα αααααααΉααα α»ααααΆααααΆαα ααΉααααααα (ααΆαααααΆααααααΌαααΆαα½αααΉααα·ααΆαααΆα) ααααΌαααΆααααααααααααα ααΆααααα αΌα;

ααααααα α»ααααΆααααΆαα αααααα
ααΌα αααα’αααααΆαααΉαα αΎαααΆ ααααααααα’αΆαααααΌαααΆααα ααΆα‘αΎαααΎααααΈα±ααααααΆααααΆαααααααααΆααααΈαα½ααα’αΆα α ααααα ααααΌααααααΆαααα’α·αααα’ααααααΆαααΆαα»ααααααα αααα»ααααααΆαα½αααααΆααα ααΆαααααα»α coarser cascades ααΆαααααΎαααΆααααααααΆα αα·ααααααααΆαα αα αααα»αααΆαααααααααααΆααααααΎα αααααΆααααααΆα ααααα»αααΆααααα αΌαααΊααΏαααΆααα»α ααΆαααΆαααΆαααααΉαααααααα·α ααΎααααΈα αΆααααααΎα α αΎααααα½αααααΆαααααα·ααα½αα±ααααΏαααα»αααααα·ααααα·ααΆα - α αΎααααααΊααΆααααΆααααααα½αααααααΌαααΆαααΆααααα αα½ααΆααΈααααΆααα·ααΆααα·αα·αααα αααααΌα αααααΎαααααα αααααα ααΊααΆααααααααΆαααα αΆααα αααααα·ααΆαααΆααααα»α ααΊααΆαα½ααΆααΈαααααα‘αΆα αααααα "ααα" αα ααΎαααααΌααααααααΆααα αααααα
ααΆααα·ααΆααα·αα·ααααααααααα½αααΆααααΆαααα·αααααΎα’αααααααΎαα‘αΎαααΌααα»αααΆαααααα·αααα α»ααααααααααα ααΌα ααΆ "αααααααα" αα·αααααΎα±ααααΉαα’αΆα ααΉαααΆαααα αα·ααα α‘αΎααα, αα αααα»αααΆαααααΆααααΆαα½αααΆαα»ααααααααααααααα, ααΆααααααΆααααααααΆααΊααΆαααααααα αααααΈααΆαα αααα»αααααααα α»ααααΆααααΆα ααααΆααααΆαααααααααΆααααααΆαα»αααααα»αααΆαα αΆααααα’αααΈααααααααΆααααααααΆααααΆααααα αΌαααααΎααααα ααΆα αααΆααααΆααααΆααΎαααα·ααΆαα’αααΈααααααΉαααΎαα‘αΎαααΈααΆαααα»ααααααααΎααΆαα½αααααΆααααΆαααααΆαααααα»αααα’ααααααΆααα―ααααααααΆαααααΆααααΆααααα αΌαα
ααααααααα "α’ααααΆααααα" ααΊααΎααααΈααααΆααααΆαααααΆααααΆαααααααααΆααααΈααΆαα αΆαααααα·ααΆαααΆααααααααααα ααΆα§ααΆα ααα αααΆαα αα ααΆαα α’ααααααααααΎααΆααα·αα·αααααΌααα·ααα½αααααΌαααΆαααααΆααααααΌααααααΆαααααΎαααααααααΆααα·αααααΉαααααΌα αα·αααΆαααααΆαααΎαααααααΆαααΆααααααααΌααααααΆααααααΎαα‘αΎα (ααΌα ααΆααααααα ααααααα α¬ααΆααΆαααααΆαααααα αΌααααΆααααα ααα)α ααα α»αααΌα ααΆ NPEs αα½αααααααΌαααΆαα αΆααααΆααααααΆαααααΎαααααα―αααΆ ααα»ααααααααα·αααΎααΌααααΈαααα»ααααααααΎααααα α’ααααα·ααΆααααα αΆαααΎαααΆααα α»αααΉαααΎαα‘αΎα ααΆααΉααααααΎαααααΏαααΆααα½ααα»αααααααΆαααΆαααααΆααα
α₯α‘αΌαααααααα»αααΏααΆααΆα αααΆααα αΎαααΆα ααα»α’αααΈααΆαααΆααΆααα·ααΆααα·αα·αααααα·αααααΎα’αααα»αααΆαααααα·ααααααααΎαα‘αΎα ααααα·αααΎααααΎααααααααΆα α αΎααα½αααααααΌαααΆαααααΎααΆαα·α αα ααΎααααΈααααααΆαααααΆααααααΌααααααΆααα·ααΆαααΆαααα»αα αααα½αααΆααΎααΆαααααΎα§ααααααα·ααΆααα·αα·ααααααΉααααααα’αα»αααΆαααααα·αααααααα’αααααΊααααΎααΉαααΆααα½αααΆ "ααΎααΉααααααα ααααΈααααααααααααΉαααααΌαααΆααααααα’αα»αααΆαααααΆαααΉααααα¬αα ααααα·αααΎααΆααααΌαααΆαααααααΆαα colander αααα¬αα?"
ααΆαα’αα»αααααα αααα»ααααααααααααα·αααααα
αααα½αααΆαααααααααααΆαααα½αα ααααα’αα»ααααααΆααα·ααΆααα·αα·αααααα αααα»αααααΎαααΆααααΆα ααααααααααααΆ βα αααααααΆααα»αααΆαβ? αα αααα»αααααΈααααΆαααααΎααααααααααααααααααααα·α’αααΈααααααααΆαααΊααΆααααααα: ααΆααααα»αααααΆαααααΎαααααααΆααααΆααααααα½αααααΆαα½αααΊααΆα ααα»αααααααααααΆααααΎααααΈααΏααΆααΆααα½αααααα»αααααΆαα·αααΆαααααααΆααα αααααααΆααα»αααΆαα ααΆαααα»ααααααα‘αΎαα αααααΆααα·ααΈααΌα ααααΆαααααα’ααααΎααααααααααΆααα·ααΆααα·αα·ααααααΆααααΆαααα ααΆαααΆααααααΆαα’αααΈααΆααα·ααΆαα αααΎαααααα αααα»αααΌααααααα·αααααα α’ααααα·αα αααααααΎααααααΎαααΆαααααα»αααααα ααα»ααααααΆαααα·αα’αΆα αα αα½α αααααα»αααΆαααααααααΆαααΉααααααΌαααα·ααααααααα αααβααΆαβααβααΆβααΆαβααΆαβαααααΆαβααααβα’αααβαα·ααΆαα
αα αααααααΎααΆααΎαααααΌα α§ααααααα·ααΆααααααΎαααΆααααααΆαααΆα αααΎαααΎααααααααΆαα½α αααααΆαα αααΎααα·αααΆααααααΉαααααΎαααΆαααααΉαααααΌαααααα·ααααααααα ααΆαα·αα’αΆα αα αα½α αααααα»αααΆααααααααΌαααα·αααααααΆααα’ααααααααα»αααααααα½α α αΎαααα»αααααΆα αααΎααα·αα αΆαααΆα αααα αααΆαααΆαα·α ααΎαααΉαααΆααα·αααααααααΎαααΆααααΌαααααΎαααΆα ααΌααααΈαααα»ααααααααΆαααΆααα·ααΆααα·αα·ααααααααα!
ααΆαααααα ααα»αααααΆα αααΎαααααΌαααΆααααααα ααααααΆαααααΎααααΆααααααααααΆαααααΆααα·ααΆααα·αα·αααα α¬ααααΎααΆαααααα»αααααααααααΆα αα αααααααααΆαααΆαααα’ααααα·ααΆαααααΌαααΆαα αααααΆαααΆααααααα‘α»αααααα½αααααα»αααααΆα αααααΊααααΎααΉαα’ααααααΆαααααΆααα·ααΆαααΆαα½α ααΈαααααααααα·αααΎααΎαααΆαααΆααααααΆαααΆα αααΎααα½α α αΎα αααααΆαααΎαα‘αΎααα½αααα (αα·αααΆαααααααααααα»ααααΆαα) αα αααααααΆααααααΌαααΌαααΉααα·αααΆαααααΆααααααααΆααα
αα·ααΈααΆαααααααΆααααααααααΆαααααΆαα αααααααΆααα»αααΆαααααΌαααΆαααααααΆαα:
- αααααααααααααααΎα ααα½αααα»αααααΆααααααΆα α¬α ααα½αααααΆααααααΆαααααααα αααααα ααα½ααααααΆααααααΌαα αααααααΎαααΆααα·αααα’αα ααΈαααααα αααααααΆαααααααα’αα»ααααΆααααααααΈααΌαααΆαααααΆααααααΌααααααΆααα·ααΆαααΆαααααΈααααααΆαα αααΆαααΆααααααααααααααΆαα·αααααΌαααΆαααΎαα
- αα½ααα»ααα αααααΆααααΆαααα½α ααΆααααααΆαα αΆααααΆααα’αααα αααα»αααΌαααααα·αααααΌαααΆαα’αΎααΎ αα·αααα·ααααα·ααααααΎααα ααααααααΆααααααΆαααααΈααΎαα‘αΎαα αα»αααΆααααααααΌαααΆααααααααα PVS-studio αα·αααααΆαα’αα‘αΆααα½αα ααα½α α§ααΆα ααα Codacy α αααα»ααα·αααΆαα±ααΆαααααΎααΆααα αααα»α PVS-studio αα ααΌα ααΆαααα·ααααααααααααα»αααΆαα½α Codacy αααα αΆα αααααααααα½αααααΊααΆααααααααΆα’αααΈααΆ "α αΆαα" α αΎαα’αααΈαααααΆ "ααααΈ" error ααΊααΆαααα½ααααααααΆααααα»αααααΆαααααα·ααααααααααΎαααΆαα ααααΉαααααΌα ααΆαα·αααααααα·αααΎα―αααΆαααααΌαααΆααααααα α¬ααααΌαααααααααΆαααααΆααα ααΆααααα·ααααααααααααα»α Codacy α’αΆα ααΉααααααΎααααααΎαααΉαααΆααααααΆαααααΈαα αααα»αααααΎαααΆααα½α ααααααααααααα»αααααααα½ααα·αααααααΆααααααΎααΆααααααΆαααααΆααααααΆαααααα·αααΆαααααα ααΉαααΆαααααΆααααααΌαααΌααα PR αααααΆααααααα±ααα
- ααΆααααα·ααααααααα»α αααααααααΆαααααΆαααααα·αααααΆααααα»αααΊααΆααα·αααααΆαα αααα»αααααα "αα·ααΈααΆαααααααααΆαααα" α αααα·αααΆααΌαααααΆαααΊααΆα ααα½αααααΆααααααΆαα’αααΈααΆααα·ααΆααα·αα·ααααααΊααΆαααααααααααααα·ααααΆαα ααααααΆαααΈαα½αα α αΎαααΆαααααΆαααααΆααααααΌαααα»ααααααααααααΌαααΆαα’αα»ααααΆαααααα·ααααααΎαα ααα½αααα»αααααΆααααααΆαα
Ratchet
ααΆααααΎαααΆαααΆααα·ααΈαααα
- αα ααααΆααααΆαααααΌα αααααααααΆαα½αααααΌαααΆαααααΎα‘αΎααα αααα»ααα·ααααααααααΆα’αααΈααΆαα ααααααΆαα ααα½αααααΆααααααΆααα αααα»αααΌααααααΆαααααΎααααα’ααααα·ααΆαα ααΌα αααα αα αααα’ααααααααΎαα αααα α’ααααααααααααααααΆααααααα’αααααααααα·αααααΉααα "α ααααααΆα 7.0.2" ααα»ααααααα ααα»αααα "α ααααααΆα 7.0.2 αααααΆαααΆααααααΆα 100500 checkstyle α" ααααα·αααΎα’αααααααΎαααααα·ααΈαααααααααααααΆααααααα·αααααα (ααΌα ααΆ Artifactory) ααΆααααααΆαα»ααα·ααααααααααΆααααααα’αααΈααΆαα ααααααΆαααααα’αααααΊααΆααααα½αα
- α₯α‘αΌαααα ααααΎααΆαααΈαα½αα αα αααααΆαααα ααααααααα ααα½αααααΆααααααΆαααααααααΆαα½αααΉαα ααα½αααααΆααααααΆααααααΆααα αααα»αααΆαα ααααααΆααα αα α»ααααααα ααααα·αααΎ PR ααΆαα±ααααΆαααΆαααΎαα‘αΎαααα ααα½αααα ααααααααΌααα·αααααααΆααα ααααα»αααΆααααααΆααααΆααα·ααΆααα·αα·ααααααα ααααα·αααΎα ααα½αααααΆααααααΆαααα α»α α¬αα·αααααΆααααααΌα αααααΆααααααΆααα
- αα ααΆαα ααααααΆααααααΆαα α ααα½αααΆααααααΆααααααΆαααααΆα‘αΎααα·αααΉαααααΌαααΆααααααααΆααααααααα αααα»ααα·ααααααααααΆααααΆαα ααααααΆαα
ααααα·α ααααα ααα»ααααααΆααααΆαα (ααΌα ααΆαα αααααα ratchet ααααΎαααΆα) α ααα½αααααΆααααααΆαααΉαααΆαααααααα ααΌαααα ααΆααΆααα·αααΆαα αααααααααααα’αΆα ααααΌαααΆααααααααααααΆαααααΆαααΆααααααΆαααααΈαα½α ααα»ααααααΆααααααααΌαααααα’ααααααααα αααααΆααΏαααααααΆαα ααΈααααααααα»ααααα ααααΆαααααΆα ααΆαααααααααααα ααΆααααααΆαααααΌαααΆααααααααΌα ααΆαααα½α αα·αααααα»ααααααααΆααααα ααα»ααααααΆαααα»αααααααααααΆααααΆαααα½ααααα»αααααααα½α α αΎαααΆααααααΆααααα’αΆα ααα ααααΆααααΆαααΆααααα½αααΆααα’ααααααΌαααΆααα»αα αααααΆαααΆαααα ααα
ααααΆα ααααααααα αΆαααΈα ααα½αααα»αααααΆααααααΆα Checkstyle αααααΆααααααααααααΆααα½αααααααααα·ααααα·ααΆααα "ratchet" αααααααα ααΎ . α ααα½αβααβααΆαβαααααΆαβααΆαβααβα α»αβααΆαβααααΆααβααβααα·α ααα α αΎαβααΆβααΆαβααΎαβα‘αΎαβαααβααααααΆαα· ααααβααΉαβααΆαβα’αα·ααααβααα·ααα!

αααα»αααααΎαααααααααΆααααααααααα·ααΈααΆαααααααα αααααΆαααααα‘ααααΈααααΆααΌαααΆααααααΆαααααααΌαα»ααααααα αα·αα§ααααααα·ααΆα ααΆαααααααα
αααα»αα―αααΆα YAML αααααΆααα·ααααααααααΆααααααααΎααααααΎααα
ααΌα
αααα
celesta-sql:
checkstyle: 434
spotbugs: 45
celesta-core:
checkstyle: 206
spotbugs: 13
celesta-maven-plugin:
checkstyle: 19
spotbugs: 0
celesta-unit:
checkstyle: 0
spotbugs: 0
αα
αααα»ααααααααα CI ααααα·ααααααααΆαα½α ratchet α’αΆα
ααααΌαααΆαα’αα»αααααααααΆααα§ααααααα·ααΆααα·αα·ααααααΆαα½αααααα·αααΉαααα’ααααΎαααααα·ααΈαααα½α αα·αα§αααααααΆααΈααΈααΈα α’ααααα·ααΆαααΈαα½αααααααΎααααΆαααΆαααααααΆαααααα½αααΆα’αααααααΆαααα α¬αααααα XML αααααΆααααα½ααα·ααΆαα α’αααΈααααα
αααααΊααααΌαααααααααααα·ααααΆα
αΆαααΆα
ααα
αααα»αααααααΈα CI α α’αααα’αΆα
ααΎαααΎαααΈαααααααααΆααααΌαααΆαα’αα»αααααα
αααα»ααααααααααααααΎαα
αα ααααααΎααααααα’ααααΎ Jenkins αα·α Artifactory α¬ . α§ααΆα αααααΆααααΈαα’αΆαααααααΎαααααΆααα α αα·ααΈααΆααααα countWarnings() ααΆααααααΆα xml αα
αααα»αα―αααΆαααααααααΎαααα Checkstyle αα·α Spotbugs ααΆααα·ααΈααααααΆ αα·α compareWarningMaps() α’αα»αααα ratchet ααΌα
ααααΆααααααααα α»ααα
ααααααα
ααα½αααααΆααααααΆααα
αααα»αααααααααΆαα½αααΎαα‘αΎαα
ααΆαα’αα»αααααα½αα±ααα αΆααα’αΆαααααααα "ratchet" ααΊα’αΆα ααααΎαα ααΆααααααΆααααΆααα·ααΆαα’αααααΆαα·αα»αααααααα·ααααα, α’ααααα’αααααα·αα―αααΆααααααααΎα’ααααα ααΌα αααα’αααααΆαααΉαα αΎαααΆ αα ααααα·αα·αααα’αααααΆαα·αα»ααα αα·αααααααααααΆαααααααα·αααααΆααα αααααα ααΆαα»αααααααααααΆαααΊαα·αααααΉαααααΌααα αα½αααα’αΆα αααα αΌααα αααα»ααα ααΆαα»ααααα’αααααααΎααααΆααααΆαα ααααα·αααΎα’ααααααααΎαααααααα ααΆαα»ααααααααΆαααααα½αααααΌααααααααααααααααααα α ααααα»αααΆαα’αααααΆαα·αα»αααα’αΆα ααααΌαααΆααααααΎαααΆααα·ααΈαααα ααααΎαααΆα aspell ααΆαα½αααΉααα ααΆαα»αααααααααααΆα αα·αααααΆαααααα½α αααα·αααΎαααα α»αα’αααααΆαα·αα»αααα
α’αααΈααΆααααααΆααααααΆααα½ααα»αααααα§ααααααα·ααΆα
ααα»αααα ααααΈ α ααα»α αααααααΌαααααααααΆααααΊααΆ αα·αααΆα’αααα’αα»ααααααΆααα·ααΆααααααΆαα αααα»ααααααα ααα αΆαααααα’ααααα ααααααααα’ααααα·ααΆαααααΌαααααααΌαααΆααα½ααα»αα ααααα·αααΎα’αααα’αα»ααααΆαα±ααα’ααααα·ααΆαααααΎαα αα α»ααααααααΆααααα―αα―α ααααα ααααααα»αααααΎααΆααααααΆαα αα·ααΆαααΆαααααΈα’αΆα "ααα α‘αΎα" ααααα·αααΆααααααΉαααΆαααααΆααααααΌαααΌα ααα»ααααααΆααααααΉαααΆααα·ααααααΆα’ααααα·ααΆαααααΈα’αΆα ααααΎααα·ααΆαααΆαααααααααα - α αΎαααΆααΉααααααααααΎαααΆαααααα’ααααααα»αααΆαααα½αααααααΎααΆαα ααΆαααααΎα±αααααααΎαα‘αΎαααΌαα§ααααααα·ααΆααα½αααααΆαααααααΆααααααΉααααα½αα αααααΆαααΆαααΆααααα ααΆααα½ααα»ααααΆαααΉαααΉαααααααααααΆαα»ααααααααααα·ααΆαααΈαα½αα ααΆααΌαα ααΊααΆαααααΌαααΆαα αΆαααΆα α αα·αααΆαααααΆααααααααΆααααΆααα·ααΆααααΆααΆα ααααα‘αααα½αα
ααΆαααααΎα
- ααΆααα·ααΆααα·αα·ααααααΉααα·ααααααααααα α»ααααααΆααα’ααα α αΎαααΉααα·αααααΎα±αααα»αααΆαααααα·αααααααα’ααααααααΎαα‘αΎαααΆαααααααααααααα·ααΈαααα½ααααααα α₯αααα·αααα·αααααΆαααΎαα»αααΆαα’αΆα αααααα ααΆαααααΆααααααΆαααααΎααααΆαααααααααααΆαααα»αα’αα‘α»ααααααααΎαααΆαα ααα αΆαα
- ααΆααααααααααα α»ααα·ααααααΆααΆααα·α αα α ααααααααΆααα·ααΆαααΆααααααα αα»αααΆαααΆαααααααααααΆαα αααΎαααΆααα αααα»αα§ααααααααααααΎαα αα α
- α’αα»ααααα αααααααΆααα»αααΆααααααα’ααααΎααααααααααΆααα·ααΆααα·αα·αααααα ααααΆααααΆαααααΌααααααααα ααα αΆααααααααΎ "ratchet" αααααΆαααααααΌααααααα·ααααααα
ααα ααααΈααα
- ααΆαααΆαααα’αααΈαα·ααΈααΆαααααααααααααααΆααα·ααΆαααΌα (αα·αααααΉααααα·αα·αααααα!)
ααααα: www.habr.com
