>> HOPARL脰R 1: m蓹n ist蓹yirdim ki, indi d眉艧眉n蓹k dan谋艧谋q imkan谋 verm蓹k 眉莽眉n
h蓹m莽inin asq谋rmaq.
Yax艧谋, m蓹nim ilk instinktl蓹rd蓹n ki etm蓹k 眉莽眉n 蓹vv蓹lki kimi, ola bir
blok, bu asq谋rmaq z蓹ng.
M蓹n m眉蓹yy蓹n etm蓹k ist蓹rdim ki, m眉蓹yy蓹n bir s谋ra ne莽蓹 d蓹f蓹
Scratch asq谋rmaq laz谋md谋r.
Bundan sonra OK t谋klayarak.
M蓹n蓹 sa臒a Bu art谋q h蓹r蓹k蓹t ed蓹k 枚z眉m b蓹zi daha 莽ox otaq verm蓹k.
>> V蓹 sonra m蓹ni yen蓹 t蓹krar getm蓹k bildirin, n default 10 蓹sas.
M蓹n蓹 dem蓹k 艧蓹rh蓹 ged蓹k v蓹 "salam" dem蓹k, lakin
Bir ikinci "achoo".
Sonra bir d蓹qiq蓹lik m枚hl蓹t almaq.
V蓹 bu.
>> 陌ndi asq谋rmaq adl谋 blok var, el蓹c蓹 d蓹 枚sk眉r蓹k adl谋 blok.
M蓹n ist蓹yir蓹m 蓹g蓹r indi 枚sk眉r蓹k Scratch Bel蓹 ki v蓹 asq谋r谋q, m蓹n sad蓹c蓹 bir belirtebilirsiniz
onun 枚sk眉r蓹k a艧a臒谋da asq谋rmaq.
脺莽 d蓹f蓹, dem蓹k.
Ya艧谋l bayra臒谋 bas谋n v蓹 m蓹n h蓹qiq蓹t蓹n g枚rm蓹k, 枚sk眉r蓹k, 枚sk眉r蓹k, 枚sk眉r蓹k.
Achoo, achoo, achoo izl蓹di.
G眉n蓹 q蓹d蓹r m蓹nim 蓹n real asq谋rarkn.
>> 陌ndi ki, bir 艧ey qeyd Bu dizayn haqq谋nda pis.
M蓹n a莽谋q c眉t etm蓹di baxmayaraq bir puzzle 蓹d蓹d, m蓹n
m眉tl蓹q olduqca s眉r眉kl蓹n蓹c蓹kl蓹r v蓹 d眉艧m眉艧d眉r verilm蓹si 莽ox eyni puzzle 蓹d蓹d,
bir funksiya bir he莽 bel蓹 y眉ng眉l dig蓹r, asq谋rmaq daha f蓹rqli ad谋
枚sk眉r蓹k qar艧谋.
Bel蓹 ki, bu faktoring 眉莽眉n bir f眉rs蓹tdir b蓹zi 眉mumi indeksi h蓹yata.
H蓹qiq蓹t蓹n, yaln谋z fark 枚sk眉r蓹k v蓹 asq谋rmaq aras谋nda biridir
Scratch s枚z "枚sk眉r蓹k," var "achoo." dey蓹r蓹k dig蓹r olan
>> Bel蓹likl蓹, biz el蓹 bu 眉mumil蓹艧dirm蓹k bilm蓹di ki, biz sad蓹c蓹 bel蓹 bir 艧蓹kild蓹 kodu
biz ist蓹diyiniz n蓹 s枚z daxil qalmaq Not 眉莽眉n?
V蓹 s枚z as谋l谋 olaraq, o, s蓹m蓹r蓹li 枚sk眉r蓹k v蓹 ya
bu bir asq谋r谋q olacaq.
Bel蓹 nin ir蓹li getm蓹k v蓹 bunu bildirin.
Bir 眉莽眉nc眉 funksiyas谋 ed蓹k v蓹 z蓹ng bu bir "deyirl蓹r." v蓹 m蓹n onu ist蓹yir蓹m
, bir s谋ra, lakin bu d蓹f蓹 yaln谋z q蓹bul ba艧qa bir kimi tan谋nan string,
s枚z v蓹 ya s枚z.
>> And we'll call this "word."
V蓹 ne莽蓹 d蓹f蓹 m蓹n bu s枚z眉 dem蓹k ist蓹yir蓹m?
Yax艧谋 bir say谋 daxil bildirin, n yenid蓹n z蓹ng.
V蓹 daha 莽ox Bu blok etm蓹k oxunaql谋, m蓹n蓹 ir蓹li getm蓹k v蓹 bir 蓹lav蓹 ed蓹k
etiket "d蓹f蓹." adl谋 Bel蓹 ki, zaman soldan sa臒a bu blok oxumaq, bu
s枚z眉n "s枚z眉 n d蓹f蓹 dem蓹k." deyir
>> 陌ndi m蓹n蓹 ir蓹li getm蓹k v蓹 OK bas谋n bildirin.
V蓹 indi m蓹n蓹 bu blok h蓹yata bildirin, yen蓹 t蓹krar blok istifad蓹.
M蓹n ist蓹yir蓹m ki, ifad蓹 n d蓹f蓹 t蓹krar.
M蓹n dem蓹k ist蓹yir蓹m ki, ifad蓹 bir ikinci bir 艧ey.
Amma daha 莽ox bir 艧ey a臒谋r kodlu bu funksiya daxil, yerin蓹 drag imkan
v蓹 ki, s枚z a莽谋l谋r daxil ke莽irildi
Nin sonra bir ikinci g枚zl蓹yin.
Bel蓹 ki, indi m蓹n蓹 geri getm蓹k v蓹 safla艧d谋rmaq m蓹nim 枚sk眉r蓹k v蓹 asq谋rmaq t蓹tbiq,
bel蓹 bir 艧蓹kild蓹 ki, bu iki funksiyalar谋 bununla da, bu 眉莽眉nc眉 funksiyas谋 z蓹ng
m蓹bl蓹臒i minimuma endirilm蓹si kodunu dublikat.
Bel蓹 ki, s枚z眉n atmaq bildirin 眉z kodu.
脺z Bu kodu atmaq ed蓹k.
V蓹 bu zaman, sad蓹c蓹 m眉蓹yy蓹n ed蓹k ki, 枚sk眉r蓹k t蓹r蓹find蓹n h蓹yata ke莽irilir
d蓹f蓹 bir s谋ra n "枚sk眉r蓹k". s枚yl蓹y蓹r蓹k
>> V蓹 eyni, biz geri getm蓹k bil蓹r v蓹 istifad蓹 edir, bel蓹 ki, asq谋rmaq yenid蓹n h蓹yata
bir arqumenti il蓹 dem蓹k "achoo" n d蓹f蓹.
Bel蓹likl蓹, biz n蓹 etmi艧ik?
Biz ki, kodu tan谋n谋r etdik Bizim 枚sk眉r蓹k v蓹 bizim, h蓹m d蓹 眉mumi
funksiyalar谋 asq谋rmaq, onu h蓹yata factored sonra yeni bir 眉莽眉nc眉 funksiyas谋, v蓹
yenid蓹n 枚sk眉r蓹k v蓹 bel蓹 asq谋rmaq onlar z蓹ng ki, bir yol
眉莽眉nc眉 v蓹 yeni funksiya.
>> 陌ndi biz tamamil蓹 bu b眉t眉n etdik proqram bu 莽ox m眉r蓹kk蓹b
h蓹qiq蓹t蓹n olmal谋d谋r.
B眉t眉n sonra, g眉n眉n sonunda, biz yaln谋z 眉莽 d蓹f蓹 枚sk眉rm蓹k Not laz谋md谋r
v蓹 眉莽 d蓹f蓹 asq谋rmaq.
V蓹 biz ki, ed蓹 bil蓹rdi yaln谋z bir ne莽蓹 puzzle 蓹d蓹d.
Amma bizim proqramlar谋 daha 莽ox almaq kimi m眉r蓹kk蓹b v蓹 proqramlar谋 daha
inki艧af etmi艧, bu texnika 眉mumi kodunu faktorinq, v蓹 ya
iyerarxik proqram t蓹hlil ki莽ik funksiyas谋 daxil, h蓹r hans谋
dig蓹r funksiyalar谋 z蓹ng, bir 莽ox, 莽ekici texnika.
Sizin kodu t蓹min ed蓹c蓹k, 莽眉nki, daha m眉r蓹kk蓹b, qal谋qlar谋 olur, h蓹tta kimi
yenil蓹m蓹k 眉莽眉n asan v蓹 莽ox oxunaql谋.
>> H蓹qiq蓹t蓹n, son n蓹tic蓹 hesab edir.
Ya艧谋l bayraq, 枚sk眉r蓹k t谋kland谋臒谋nda 眉莽 d蓹f蓹, 眉莽 d蓹f蓹 asq谋rmaq.
V蓹 bu.
茝slind蓹 is蓹 m蓹hz bunu bildirin.
Ya艧谋l bayra臒谋 bas谋n v蓹 biz bir almaq , iki 枚sk眉r蓹k, 眉莽 枚sk眉r蓹k 枚sk眉r蓹k.
Izl蓹di, biz bir d蓹f蓹 asq谋rmaq, 眉mid iki asq谋rarkn v蓹 眉莽眉nc眉 asq谋rmaq.
O, tezlikl蓹 daha yax艧谋 olur 眉mid edirik.