52.75K
AI

6-7 тема

1.

ПМ6
DEBUG MODE
6–7 тақырып
Бағдарламалық түзеткіш және
Breakpoint
6. Бағдарламалық түзеткіш мүмкіндіктерін сипаттайды
7. Тоқтату нүктесінің мақсатын түсіндіреді
Breakpoint
student.py
score = 45
if score < 50:
print("Қате емес — тексер!")
Сабақ соңында студент:
• түзеткіштің негізгі құралдарын атайды;
• Breakpoint мақсатын түсіндіреді;
• Python кодын Debug режимінде зерттейді.
ПМ6 • ОН6.1 • 6–7 тақырып
Код тоқтайды → күйін көреміз →
себебін талдаймыз

2.

Бағдарламалық түзеткіш дегеніміз не?
2
Debugger — бағдарламаның орындалуын басқаруға және зерттеуге арналған құрал
Түзеткіш не үшін қажет?
Run және Debug айырмашылығы
• бағдарламаны белгілі бір жерде тоқтату;
Run
Debug
• кодты қадам бойынша орындау;
Бағдарлама
басынан аяғына
дейін әдеттегі
режимде
орындалады.
Breakpoint-та
тоқтайды,
айнымалылар мен
орындалу ретін
зерттеуге болады.
• айнымалылар мәндерін бақылау;
• функция шақыруларын зерттеу;
• қатенің нақты себебін оқшаулау.
Негізгі сұрақ: «Бағдарлама осы сәтте не
істеп жатыр?»
ПМ6 • ОН6.1 • 6–7 тақырып
Run → нәтиже көреміз
Debug → нәтиженің қалай алынғанын
көреміз

3.

Түзеткіштің негізгі мүмкіндіктері
3
6-тақырып: құралдарды тану және олардың қызметін түсіну
↑
Breakpoint
Continue
Кодты таңдалған
жолда
тоқтатады.
Келесі
Breakpoint-қа
дейін
жалғастырады.
Step Out
Ағымдағы
функциядан
шығады.
ПМ6 • ОН6.1 • 6–7 тақырып
x
Variables /
Watch
Айнымалыларды
ң ағымдағы
мәндерін
көрсетеді.
↓
Step Into
→
Функцияның
ішіне кіреді.
≡
Call Stack
Функциялар
шақырылу
тізбегін
көрсетеді.
Step Over
Жолды
орындайды,
функция ішіне
кірмейді.
>
_
Debug
Console
Өрнектерді
тексеруге және
хабарламаларды
көруге мүмкіндік
береді.

4.

Breakpoint дегеніміз не?
4
7-тақырып: тоқтату нүктесінің мақсаты
result.py
1
2
3
4
5
6
7
8
9
Breakpoint мақсаты
score = 45
limit = 50
• кодтың дәл сол сәттегі күйін көру;
if score >= limit:
result = "Өтті"
else:
result = "Өтпеді"
• айнымалылар мәнін тексеру;
• шарттың дұрыс жұмысын анықтау;
• қате қай жерде пайда болғанын табу;
print(result)
Breakpoint → 4-жол
ПМ6 • ОН6.1 • 6–7 тақырып
• кодты түзетпей тұрып себебін түсіну.
Бағдарлама `if` жолына
келгенде тоқтайды.
Breakpoint — қате емес. Ол кодты зерттеу
құралы.

5.

Breakpoint арқылы айнымалыларды зерттеу
5
Мысал: цикл ішіндегі мәндердің қалай өзгеретінін бақылау
Breakpoint кезінде байқалатын мәндер
sum_debug.py
1
2
3
4
5
6
numbers = [10, 20, 30, 40]
total = 0
for number in numbers:
total += number
print(total)
Breakpoint → total += number
ПМ6 • ОН6.1 • 6–7 тақырып
Әр циклде `number`
және `total` өзгереді.
Қадам
number
total
Нәтиже
1
10
10
10
2
20
30
30
3
30
60
60
4
40
100
100
Түзеткіш кодтың нәтижесін ғана емес, оның өзгеру
процесін көрсетеді.

6.

Қадамдық орындау командаларын қысқаша түсіну
6-тақырып аясында негізгі мүмкіндіктермен танысу
steps.py
1
2
3
4
5
6
7
8
def calculate(a, b):
result = a + b
return result
x = 5
y = 7
answer = calculate(x, y)
print(answer)
↓
Step Into
calculate(x, y) функциясының ішіне кіреді.
→
Step Over
calculate(x, y) жолын бір қадам ретінде орындайды.
↑
Step Out
Функция ішінде тұрсаңыз, одан шығып келесі
деңгейге өтеді.
Ескерту: бұл командалар келесі тақырыптарда тереңірек
қарастырылады.
ПМ6 • ОН6.1 • 6–7 тақырып
6

7.

Практикалық тапсырма 1
7
Breakpoint көмегімен логикалық қатені табыңыз
students.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
students = [
{"name": "Aruzhan", "score": 85},
{"name": "Dias", "score": 45},
{"name": "Amina", "score": 72},
{"name": "Miras", "score": 38}
]
passed = 0
for student in students:
if student["score"] < 50:
passed += 1
Орындау реті
• `if student['score'] < 50:` жолына Breakpoint
қойыңыз.
• `student`, `score`, `passed` мәндерін
бақылаңыз.
• Бағдарлама кімдерді санап тұрғанын анықтаңыз.
• Логикалық қатені түсіндіріңіз.
• Дұрыс шартты ұсыныңыз.
print("Өткен студенттер саны:", passed)
Маңызды: кодты бірден түзетпеңіз — алдымен
Debug!
ПМ6 • ОН6.1 • 6–7 тақырып

8.

Практикалық тапсырма 2
8
Breakpoint арқылы есептеу процесін бақылаңыз
discount.py
1
2
3
4
5
6
7
8
9
10
11
prices = [1200, 3500, 800, 4200, 1500]
total = 0
for price in prices:
discount = 0
Дәптерге арналған бақылау кестесі
price
discount
final_price
total
1200
if price > 3000:
discount = price * 0.2
3500
final_price = price - discount
total += final_price
800
4200
1500
Breakpoint: if / final_price / total
Сұрақ: `discount` қай жағдайда 0-ден өзгеше болады?
ПМ6 • ОН6.1 • 6–7 тақырып

9.

Мини-челлендж: «Кодты қорғау»
9
Студент код құрылымын түсінгенін ауызша және Debug арқылы дәлелдейді
1
Түсіндір
Кодтың әр бөлігінің қызметін 1
сөйлеммен түсіндір.
2
Көрсет
Breakpoint қойып, 2
айнымалының өзгеруін көрсет.
3
Өзгерт
Оқытушы айтқан бір шағын
өзгерісті орында және
нәтижесін тексер.
Қорғау кезінде қойылатын сұрақтар
• Breakpoint не үшін дәл осы жолға қойылды? • Қай айнымалы өзгеріп жатыр? • Run мен Debug айырмашылығы қандай?
• Егер шартты өзгерткенде нәтиже қалай өзгереді? • Қатені Breakpoint болмаса қалай іздер едің?
ПМ6 • ОН6.1 • 6–7 тақырып

10.

Жадынама: 1–7 тақырыптың негізгі терминдері
Қысқа қайталау — осы ұғымдарды студент түсіндіре алуы керек
1
Бағдарламалық кодты түзету
Debugging • ақау • қатені табу • түзету
2
Бағдарламалық қателер түрлері
Syntax error • Logical error • Runtime error
3
Түзету кезеңдері
анықтау → орнын табу → себебін табу → түзету → қайта тексеру
4
Қадамдық түзету сценарийі
step-by-step • орындалу реті • айнымалы күйі
5
Breakpoint орнату
тоқтату нүктесі • Debug mode • код жолы
6
Түзеткіш мүмкіндіктері
Continue • Step Into • Step Over • Step Out • Variables/Watch • Call Stack • Debug Console
7
Breakpoint мақсаты
код күйін көру • қатені оқшаулау • айнымалыны тексеру
ПМ6 • 1–7 тақырып бойынша қорытынды
Көр → Тоқтат → Бақыла → Талда → Түзет → Қайта тексер
1
0
English     Русский Rules