Kuhusu mradi huu
Nyaraka za mradi wa kitabu: jinsi kilivyounganishwa, jinsi ya kukijenga na kukikagua, na ambapo chanzo cha ukweli kinakaa. Kwa kitabu chenyewe, tazama yaliyomo.
Ramani ya mradi
- Kitabu: kimechapishwa katika lugha nne chini ya
locales/; tazama spec/locales.md. Lugha hii,en-gb-oxendict/topics/(faili 63),en-gb-oxendict/front-matter/, na viambatisho vya Sehemu ya 9 ndivyo chanzo kilichoandikwa kwa mkono;en-001,en-gb, naen-uszinatokana nacho. - Chanzo cha ukweli:
spec/kwenye mzizi wa hazina (haichapishwi kwenye tovuti). Muundo unatangazwa katikaspec/structure.md, kanuni za uandishi katikaspec/conventions.md, na tahajia katikaspec/oxford-spelling.md. Kila kitu kingine kimejengwa kulingana. - Zana:
tools/localize.pyinapata lugha nyingine tatu;tools/gen_nav.pyinazalisha uelekezaji;tests/validate.pyinatekeleza vipimo;justfileinaviunganisha pamoja. - Mwongozo kwa wachangiaji:
AGENTS.mdkwenye mzizi wa hazina, na miongozo katika sehemu ya kuchangia.
Kujenga na kukagua
Mkusanyiko wa uthibitishaji unaendeshwa kwenye Python 3 bila utegemezi mwingine na bila ufikiaji wa mtandao. Kazi zinaendeshwa kupitia just.
just test # thibitisha muundo, mtindo, viungo, na vipimo-dhidi-ya-diski
just nav # zalisha upya faili za uelekezaji zinazozalishwa
just check # nav, kisha test
just stats # hesabu za mada na maneno Hazina hii ina maudhui ya kitabu na vipimo. Inatolewa kuwa tovuti na hazina tofauti ya software-engineering-metrics.github.io.
Jinsi maendeleo yanayoendeshwa na vipimo yanavyofanya kazi hapa
Vipimo vinakuja kwanza. spec/structure.md inasema ni mada zipi zipo na zinavyopewa namba. spec/conventions.md inasema jinsi zinavyopaswa kuandikwa. Mada zinaandikwa kutimiza yote mawili. tools/gen_nav.py inapata uelekezaji kutoka mada, na tests/validate.py inakagua matokeo kurudi dhidi ya vipimo. Mada na vipimo vikitofautiana, majaribio yanashindwa, ambayo ni ishara ya kuvirudisha kwenye mpangilio.
Hii inazuia mkengeuko: badiliko “limekamilika” tu wakati vipimo, mada, uelekezaji unaozalishwa, na majaribio vyote vinakubaliana.
Maamuzi ya ubunifu yanayostahili kujulikana
- Mada tambarare, zenye namba za desimali. Faili ni
locales/<locale>/topics/PP-CC-slug.md, slug ileile katika kila lugha. Sehemu ni namba nzima; mada ni desimali; N.0 ni utangulizi wa sehemu. Hii inahifadhi vitambulisho thabiti na kuruhusu zana kupanga na kugawa bila mti wa saraka. - Lugha moja iliyoandikwa kwa mkono, tatu zinazotokana.
en-gb-oxendictni tahajia ya Oxford, mtindo wa nyumbani wa vyombo vingi vya viwango vya kimataifa (tazamaspec/oxford-spelling.md);en-001,en-gb, naen-uszinapatikana kimakanika kutoka kwayo, kwa hiyo tafsiri haikengeuki kutoka chanzo. - Uelekezaji unaozalishwa. Yaliyomo, ukurasa wa yaliyomo, na faharasa ya mada vinazalishwa, kwa hiyo havikengeuki kutoka mada.
- Majaribio ya nje ya mtandao, yasiyo na utegemezi. Mkusanyiko unatumia maktaba ya kawaida tu ili uendeshwe popote, ikijumuisha CI na viunganishi vya kabla ya kuwasilisha.
- Marejeo mtambuka yanabaki maandishi wazi. Maandishi yanarejelea mada kwa namba ya desimali (“tazama mada ya 2.1”), kama vipimo vinavyohitaji; tovuti inayoonyesha ndiyo inayowajibika kugeuza marejeo hayo kuwa viungo.
- Hakuna vistari virefu, kwa kanuni na kwa jaribio. Chaguo la makusudi la mtindo, linalotekelezwa ili libaki kweli kitabu kinapokua.
- Kila familia ya vipimo inataja njia yake ya kuchezea. Hii ndiyo kanuni moja katika kiolezo isiyo na sawa katika mradi mwenzi wa
software-engineering-guide: ipo kwa sababu mada nzima ya kitabu hiki ni upimaji, kwa hiyo hatari ya upimaji yenyewe lazima iwe ya daraja la kwanza, si ya dhahiri.
Usomaji zaidi
- Uandishi : kuandika na kuhariri mada.
- Uelekezaji : jinsi faili zinazozalishwa zinavyofanya kazi.
- Majaribio : majaribio yanakagua nini na jinsi ya kurekebisha kushindwa.
- Mifano : mifano midogo, thabiti.
- Orodha ya mabadiliko : historia ya mabadiliko muhimu.