CodeGym /Kurslar /Frontend SELF AZ /Proqramın sazlanması

Proqramın sazlanması

Frontend SELF AZ
Səviyyə, Dərs
Mövcuddur

9.1 Bug-ların yaranması

Proqram təminatının debug olunması — proqramdakı səhvlərin və ya bug-ların tapılması və düzəldilməsi prosesidir. Bu, proqram təminatının işləmə düzgünlüyünü təmin etməyə kömək edən inkişafın ən maraqlı hissəsidir.

"Bug" termininin yaranma tarixi

"Bug" termini (səhv) kompüter proqramları kontekstində ilk dəfə 1940-cı illərdə istifadə olunmağa başlanıb. Baxmayaraq ki, "bug" anlayışı kompüterlərin yaranmasından əvvəl də mövcud olub və müxtəlif cihazlardakı mexaniki nasazlıqları ifadə edirdi.

"Bug" termininin kompüter texnologiyasında ilk dəfə sənədli hallarda istifadə olunması 1947(!)-ci ildə Harvard Universitetində Mark II kompüterində işləyən bir komanda ilə bağlıdır. Komanda maşının relelərindən birinin işləmədiyini gördü, çünki içəriyə bir güvə düşmüşdü. Onlar həşəratı çıxarıb bunu jurnal kimi qeyd etdilər: "ilk real həşəratın (literal bug) aşkar olunması".

Bu, "bug" termininin səhvləri ifadə etmək üçün ilk istifadəsi olmasa da, hadisə daha geniş tanındı və "bug" termininin populyarlaşmasına səbəb oldu.

bug

Proqramın debug olunması

Debug — proqram təminatında bug-ların tapılması, diaqnostikası və düzəldilməsi prosesidir. Debug prosesi bir neçə mərhələdən ibarətdir:

  1. Səhvin aşkar edilməsi: Proqramda səhv olduğunu göstərən əlamətlərin müəyyən edilməsi.
  2. Səhvin təkrar olunması: Səhvin təbiətini daha yaxşı başa düşmək üçün səhvi yenidən göstərən şərtlərin yaradılması.
  3. Problemin diaqnostikası: Kodu təhlil etmək və səhvin səbəbini tapmaq üçün müxtəlif alətlər və metodlardan istifadə edilməsi.
  4. Səhvin düzəldilməsi: Səhvi aradan qaldırmaq üçün koda dəyişikliklərin edilməsi.
  5. Test: Düzəlişi yoxlamaq və proqramı test etmək üçün, səhvin aradan qaldırılmasını və yeni problemlərin yaranmamasını təmin etmək.

Deməli, bug — proqramlardakı hər hansı bir səhvin ümumi adıdır, debug (de-bug) isə bu səhvlərin aşkarlanması və aradan qaldırılması prosesidir.

9.2 Debug üçün alətlər və metodlar

Log yazma

Proqram koduna log əlavə etmək onun icrasını izləməyə və müxtəlif icra nöqtələrində dəyişənlərin və əməliyyatların vəziyyəti haqqında məlumat əldə etməyə imkan verir. JavaScript-də log yazmaq üçün əla bir kitabxana var — winston.

Log istifadə nümunəsi:

JavaScript
    
      const { createLogger, format, transports } = require('winston');

      // Debug səviyyəsi ilə logger yaradılır
      const logger = createLogger({  level: 'debug' });

      // Bölmə funksiyası
      function divide(a, b) {
        logger.debug(`Bölünür: ${a} / ${b}`);
        if (b === 0) {
          logger.error("Sıfıra bölmə cəhdi!");
          return null;
        }
        return a / b;
      }

      // Funksiyanın istifadə nümunəsi
      const result = divide(10, 2);
      console.log(result); // Çap edəcək: 5
    
  

Debuggers istifadə etmək

Debugger-lər - proqramçıların proqramı addım-addım icra etməsinə, breakpoints (dayandırma nöqtələri) qoymasına, dəyişənlərin qiymətlərini yoxlamasına və onları proqramın icrası zamanı dəyişməsinə imkan verən alətlərdir.

JavaScript üçün məşhur debugger-lər:

  • Chrome DevTools: Google Chrome brauzerində inteqrasiya olunmuş debugger
  • Firefox Developer Tools: Mozilla Firefox brauzerində inteqrasiya olunmuş debugger
  • Node.js Debugger: Node.js-də server tərəfli JavaScript üçün inteqrasiya olunmuş debugger
  • Visual Studio Code Debugger: Visual Studio Code redaktorunda inteqrasiya olunmuş debugger

Node.js-də debugger istifadə nümunəsi:

JavaScript
    
      // Daxili debug modulunun importu
      const { inspect } = require('util');

      // Xətası olan funksiyanın nümunəsi
      function faultyFunction(a, b) {
        debugger; // Breakpoint qoyulur
        let result = a / b;
        return result;
      }

      // Xətası olan funksiyanın çağırışı
      console.log(faultyFunction(10, 0));
    
  

Proqram debugger-ə çatdığı zaman dayanır və siz addım-addım irəliləmə (step over), daxil olma (step into), çıxış (step out) kimi debug əmrindən istifadə edə, dəyişənlərin qiymətlərini yoxlaya bilərsiniz.

Biz sizinlə proqramların debug edilməyini Intellij IDEA-ya (Ultimate Edition versiyası lazımdır) inteqrasiya olunmuş debugger nümunəsi üzərində öyrənəcəyik.

9.3 debug istifadəsi

Ümumilikdə debug, səhvləri aşkar etmək və düzəltmək üçün aktiv şəkildə debug alətlərindən və təcrübələrindən istifadəni əhatə edir.

Sazlama addımları:

  1. Breakpoints (dayanma nöqtələri) təyin etmək: maraqlandığınız yerlərdə proqramı dayandırmaq üçün kodda dayanma nöqtələri təyin edin.
  2. Addım-addım icra: proqramı addım-addım işə salın, proqramın vəziyyətindəki dəyişiklikləri və dəyişənlərin qiymətlərini izləyin.
  3. Dəyişənlərin analizi: proqramın müxtəlif mərhələlərində dəyişənlərin və ifadələrin qiymətlərini öyrənin, düzgün olmayan məlumatları və ya məntiq səhvlərini aşkar edin.
  4. Səhvlərin düzəldilməsi: aşkar etdiyiniz səhvləri aradan qaldırmaq üçün kodda dəyişikliklər edin.
  5. Təkrar testlər: səhvlər düzəldildikdən sonra proqramı yenidən test edin ki, səhvlərin aradan qalxdığından və yeni problemlərin yaranmadığından əmin olasınız.

Sadə görünür, elə deyil? Baxın, növbəti dərsdə bu addımları daha ətraflı öyrənəcəyik :)

1
Tapşırıq
Frontend SELF AZ, səviyyə, dərs
Bağlanıb
Massivin cəmi
Massivin cəmi
Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION