OLIY TA'LIM MUASSASALARIDA TA'LIM SIFATINI BOShQARISh TIZIMINI MODELLASHTIRISHNING USLUBIY YONDASHUVLARI
PDF

Keywords

C++ dasturlash tili, Xatoliklarni qayta ishlash, Istisno bilan ishlash (Exception Handling), Statik tahlil (clang-tidy, Cppcheck), Dinamik sanitayzerlar (AddressSanitizer, UBSan), True Positive Rate (TPR) va False Positive Rate (FPR), CI/CD pipeline’da kod sifati nazorati, Ishlash kechikishi (Performance Overhead)

Abstract

Ushbu maqolada C++ dasturlash tilida xatoliklarni aniqlash, ularni qayta ishlash va tuzatish usullari tahlil qilinadi. Avvalo, xatolik turlari (sintaksis, semantika, bajarilish paytida yuz beradigan xatolar) ko‘rib chiqilib, ularni qayta ishlash uchun bir nechta asosiy mexanizmlar – qaytish kodlari, istisnolar (exceptions), statik va dinamik tahlil vositalari – taqdim etiladi. Metodologiya qismida adabiyotni o‘rganish, misol dasturlar va empirik sinovlar orqali yondashuvlarning samaradorligi solishtiriladi. Natijalarimiz shuni ko‘rsatdiki, turli xatoliklarga mos moslashuvchan yondashuv: istisnolarni qo‘llash semantik xatolarni aniqlashda, sanitayzerlar va analizatorlar esa bajarilish paytida yuz beradigan xatolarni bartaraf etishda yuqori samaradorlikni namoyon etadi. Muhokama qismida ko‘rib chiqilgan yondashuvlar afzalliklari va cheklovlari tahlil qilinib, real loyihalarda eng maqbul kombinatsiya – unit-testlar bilan birgalikda istisnolarga asoslangan qayta ishlash va sanitayzerlardan foydalanuvchi yondashuv ekanligi ta’kidlanadi.

PDF

References

1. ISO/IEC. ISO/IEC 14882:2017 – Programming Languages – C++. International Organization for Standardization, 2017.

2. Stroustrup, B. The C++ Programming Language, 4th Edition. Addison-Wesley, 2013.

3. Boost C++ Libraries Documentation. Error Handling. Boost.org, 2020.

4. Klock, F. Static Analysis of C++ Software: Tools and Techniques. Journal of Software Engineering, vol. 12, no. 3, 2019, pp. 45–59.

5. Serebryany, K., Iskhodzhanov, T. AddressSanitizer: Fast Memory Error Detector. Proceedings of the 2012 USENIX Annual Technical Conference, 2012.

6. UBSan Documentation. Undefined Behavior Sanitizer. Clang/LLVM Project, 2015.

7. Meyers, S. Effective C++: 55 Specific Ways to Improve Your Programs and Designs. Addison-Wesley, 2005.

8. Meyers, S. Exception Safety in C++. ACCU Conference, 2006.