
Programmalıq injiniringge kirisiw / 9-ameliy PI_K
.pdf9-ámeliy sabaq. Islep shıǵılǵan prototip kodın GitHub-qa ornatıw hám júklew. Hújjetler smetası (bul tapsırma hár bir iteraciyadan keyin orınlanıwı kerek, keyingi basqıshında)
Jumıstıń maqseti:
Bul ámeliy sabaqtıń maqseti - studentlerge GitHub platformasın qollanıp programmalıq támiynat prototipleri menen islew, versiyalardı basqarıw, komandalıq islew kónlikpelerin úyretiw hám programmalıq támiynat jobaların hújjetlestiriw procesin ózlestiriw. Studentler bul ámeliy sabaqta Git versiyalardı basqarıw sistemasın qollanıwdı, GitHub platformasında proektlerdi basqarıwdı, programmalıq támiynat hújjetlestiriwin tayarlawdı hám hár bir iteraciya nátiyjelerin saqlawdı úyrenedi. Bul kónlikpeler programmalıq támiynat injeneriyası tarawında eń tiykarǵı hám áhmiyetli bolıp, studentlerdiń kásiplik rawajlanıwına úlken úles qosadı.
Ámeliy bólim:
Etap 1: Git hám GitHub-tı tanıstırıw hám ornatıw
Git - bul versiyalardı basqarıw sisteması, ol baǵdarlamashılarǵa kod ózgerislerin qadaǵalaw, birge islew hám kerek bolǵanda aldıńǵı versiyalarǵa qaytıw múmkinshiligin beredi. GitHub bolsa, Git repozitoriylerin saqlaw hám birge islew ushın onlayn platforma bolıp tabıladı.
Git ornatıw:
1. Windows operaciyalıq sistemasında:
oGit rásmiy saytına kiriń: https://git-scm.com/download/win
oGit for Windows programmasın júklep alıń hám ornatıń
oOrnatıw procesinde standart parametrlerdi qaldırıń
2.macOS operaciyalıq sistemasında:
oTerminaldı ashıń
obrew install git komandasın teriń (Homebrew ornatılǵan bolıwı kerek)
oYamasa Git rásmiy saytınan júklep alıp ornatıń: https://gitscm.com/download/mac
3.Linux operaciyalıq sistemasında:
oTerminaldı ashıń
o Debian/Ubuntu: sudo apt-get install git o Fedora: sudo dnf install git
o CentOS/RHEL: sudo yum install git
GitHub akkauntın jaratıw:
1.GitHub rásmiy saytına kiriń: https://github.com
2."Sign up" túymesin basıń
3.Qálegen email adresińizdi, login hám paroldi engiziń
4.Akkauntıńızdı tastıyıqlań (emailge kelgen xattı tekseriń)
5.GitHub interfeysi menen tanısıń
Etap 2: Git repozitoriyin jaratıw hám inicializaciyalaw
GitHubta jańa repozitoriy jaratıw:
1.GitHub profilińizge kiriń
2."New" (Jańa) túymesin basıń
3.Repozitoriy atın engiziń (mısalı, "prototype-project")
4.Qısqasha táriyip jazıń
5."Public" (Ashıq) yamasa "Private" (Jeke) opciyasın tańlań
6."Initialize this repository with a README" opciyasın belgileń
7."Create repository" (Repozitoriy jaratıw) túymesin basıń
Lokal kompyuterinizde repozitoriydi klonlaw:
1.Terminal (komandalıq qatar) ashıń
2.Kerekli direktoriyaǵa ótiń: cd Documents/Projects
3.GitHub repozitoriyińizdiń betinde "Code" túymesin basıń hám HTTPS URLın kóshiriń
4.git clone https://github.com/username/prototype-project.git komandasın teriń (URL'di ózińizdiń repozitoriy URL'i menen almastırıń)
5.Repozitoriy direktoriyasına ótiń: cd prototype-project
Etap 3: Jaratılǵan prototip kodın GitHub repozitoriyine júklew
Fayllardı qosıw hám júklew:
1.Jaratılǵan prototip faylların jumıs direktoriyasına kóshiriń
2.Terminalda jumıs direktoriyasına ótiń: cd prototype-project
3.Fayllardı indekske qosıń: git add . (barlıq fayllardı qosıw ushın)
4.Júklewdi tastıyıqlań: git commit -m "Initial prototype upload"
5.Ózgerislerdi GitHubqa júkleń: git push origin main
Jobanı strukturalaw:
Programmalıq támiynat prototipińizdi GitHubqa júklegende, onıń strukturasın tómendegi úlgide shólkemlestiriń:
prototype-project/ |
|
|
├── README.md |
# Joba haqqında ulıwma |
|
maǵlıwmat |
|
|
├── docs/ |
# |
Hújjetlestiriw faylları |
│ ├── technical-docs/ |
# |
Texnikalıq hújjetler |
│ |
├── user-guides/ |
# Paydalanıwshı |
qollanbaları |
|
|
│ |
└── design/ |
# Dizayn hújjetleri hám |
prototipler |
|
|
├── src/ |
# Derek kodları |
|
│ |
├── components/ |
# Komponentler |
│ |
├── models/ |
# Modeller |
│ |
└── controllers/ |
# Kontrollerler |
├── |
tests/ |
# Testler |
├── assets/ |
# Statik resurslar |
|
(súwretler, CSS, t.b.) |
|
|
└── .gitignore |
# Git tárepinen itibarǵa |
|
alınbatuǵın fayllar tizimi |
|
Etap 4: README.md faylın tayarlaw
README.md - bul jobanıń tiykarǵı hújjeti bolıp, onıń maqseti, ornatıw hám paydalanıw kórsetpelerin támiyinleydi. Markdown formatın qollanıp, jaqsı README faylın jaratıń:
# Prototype Project
Bul repozitoriy programalıq támiynat injeneriyası kursı sheńberinde jaratılǵan prototipti óz ishine aladı.
Joba haqqında
[Joba haqqında qısqasha maǵlıwmat, maqseti hám qanday mashqalanı sheshetuǵının jazıń]
Ornatıw
Bul proektti lokal kompyuterde ornatıw ushın tómendegi komandanı orınlań:
```bash
git clone https://github.com/username/prototypeproject.git
cd prototype-project
Paydalanıw
[Prototipti qalay isletiw tuwralı kórsetpeler]
Rawajlandırıwshı
[Óz atıńız hám kontakt maǵlıwmatlarıńız]
Etap 5: Hújjetler smetasın tayarlaw
Hújjetler smetası - bul programmalıq támiynat jobası ushın zárúr bolǵan hújjetlerdiń dizimi. Hújjetlerdiń túrleri hám olardıń mazmunı:
1. Texnikalıq hújjetlestiriw:
-Sistema arxitekturası: Programmalıq támiynattıń strukturasın, komponentlerin hám olardıń óz-ara baylanısların súwretleydi.
-API dokumentaciyası: Programmalıq interfeyslerdiń táriyipi, parametrleri hám juwapları.
-Maǵlıwmatlar bazası sxeması: Maǵlıwmatlar bazası strukturası, tablicalar, baylanıslar hám indeksler.
2. Paydalanıwshı dokumentaciyası:
-Paydalanıwshı qollanbası: Programmalıq támiynattı qalay paydalanıw kerek ekenligi tuwralı tolıq kórsetpeler.
-Ornatıw kórsetpeleri: Programmalıq támiynattı ornatıw procesin basqıshpabasqısh súwretleydi.
-FAQ (Kóp qoyılatuǵın sorawlar): Paydalanıwshılardıń kóp qoyılatuǵın sorawlarına juwaplar.
3. Jobalıq hújjetler:
-Joba rejesi: Jobanıń maqsetleri, múddetleri, resursları hám mánzilleri.
-Talaplar specifikaciyası: Funkcional hám funkcional emes talaplar dizimi.
-Ózgerislerdi basqarıw jurnalı: Programmalıq támiynat versiyalarınıń ózgerislerin táriyipleydi.
Etap 6: GitHubta proektti basqarıw
Issues (Máseleler) menen islew:
1.GitHub repozitoriyińizde "Issues" bólimine ótiń
2."New Issue" (Jańa másele) túymesin basıń
3.Máseleniń atın hám táriyipin engiziń
4.Belgiler (Labels) qosıń (mısalı, "bug", "enhancement", "documentation")
5.Máseleni belgili adamǵa tapsırıń (Assign)
6.Máseleni jaratıń
Pull Requests menen islew:
1. Jańa branch jaratıń: `git checkout -b feature/new-feature`
2.Ózgerislerdi engiziń hám saqlań
3.Ózgerislerdi indekske qosıń: `git add .`
4.Commit dúziń: `git commit -m "Add new feature"`
5.Ózgerislerdi GitHubqa júkleń: `git push origin feature/new-feature`
6.GitHub interfeysinde "Pull Requests" bólimine ótiń
7."New Pull Request" túymesin basıń
8.Base branchtı (kóbinese main) hám ózgerisler branchın tańlań
9.Pull Request mazmunın toltırıń hám jaratıń
GitHub Pages penen dokumentaciyanı járiyalaw:
1.GitHub repozitoriyinde "Settings" bólimine ótiń
2."Pages" bólimine ótiń
3.Source bóliminde "main" branch hám "/docs" yamasa "/(root)" direktoriyasın tańlań
4."Save" túymesin basıń
5.GitHub Pages URLi jaratıladı (mısalı, https://username.github.io/prototypeproject)
Etap 7: Iteraciyalar hám versiyalardı basqarıw
Git Tags arqalı versiyalardı belgilew:
1.Belgili bir versiyaǵa jetiw ushın: `git tag v1.0.0`
2.Tegtı GitHub'qa júklew: `git push origin v1.0.0`
3.Tolıq táriyip penen annotirovannıy teg jaratıw: `git tag -a v1.0.0 -m "Version 1.0.0 - Initial prototype release"`
GitHub Releases jaratıw:
1.GitHub repozitoriyińizde "Releases" bólimine ótiń
2."Create a new release" túymesin basıń
3.Teg versiyasın tańlań yamasa jańadan jaratıń
4.Release atın hám táriypin engiziń
5.Ózgerisler jurnalın (changelog) qosıń
6.Kerek bolsa, binar fayllardı júkleń
7."Publish release" túymesin basıń
Iteraciyalar arasında ózgerislerdi qadaǵalaw:
Hár bir iteraciyadan keyin ózgerislerdi jurnallaw ádeti:
1.Iteraciya nátiyjelerin súwretleytuǵın commit dúziń: `git commit -m "Iteration 1: Implemented user authentication"`
2.Jańa versiya biypul jaratıń: `git tag -a v0.2.0 -m "Iteration 2 completed"`

3.CHANGELOG.md faylın jańalań, onda barlıq ózgerislerdi jazıń
4.docs/iterations/ direktoriyasında iteraciya ushın esabat jaratıń
ÁMELIY TAPSÍRMALAR:
Tapsırma 1: GitHubta repozitoriy jaratıw hám jumıs ortalıǵın tayarlaw
1.GitHubta akkaunt jaratıń (eger bunnan aldın jaratpaǵan bolsańız)
2."program-engineering-prototype" atlı jańa repozitoriy jaratıń
3.Repozitoriydi lokal kompyuterińizge klonlań
4.Tiykarǵı direktoriya strukturasın jaratıń (src, docs, assets, tests)
5.README.md faylın tayarlań, onda jobanıń maqseti, ornatıw hám paydalanıw kórsetpelerin súwretleń
6..gitignore faylın jaratıń hám oǵan kerekli shablonlardı qosıń
(platform/framework'ke baylanıslı)
7.Jaratılǵan strukturanı GitHubqa júkleń
Tapsırma 2: Aldıńǵı ámeliy sabaqta jaratılǵan prototipti repozitoriyge júklew
1.Aldıńǵı ámeliy sabaqlardan birinde jaratılǵan programmalıq támiynat prototipin tańlań
2.Prototip faylların repozitoriyge jaylastırıń (strukturaǵa muwapıq)
3.Kodtı tártipke keltiriń hám kommentariyler qosıń
4.Ózgerislerdi commit etiń hám GitHubqa júkleń
5.v0.1.0 teg versiyasın jaratıń hám onı GitHubqa júkleń
Tapsırma 3: Programmalıq támiynat hújjetlestiriwin tayarlaw
1.docs/technical-docs/ direktoriyasında tómendegi hújjetlerdi jaratıń:
-architecture.md: Prototip arxitekturası
-api-docs.md: API kórsetpeleri (eger qollanılsa)
-database.md: Maǵlıwmatlar bazası sxeması (eger qollanılsa)
2.docs/user-guides/ direktoriyasında tómendegi hújjetlerdi jaratıń:
-installation.md: Ornatıw kórsetpeleri
-user-manual.md: Paydalanıwshı qollanbası
-faq.md: Kóp qoyılatuǵın sorawlar
3.docs/project/ direktoriyasında tómendegi hújjetlerdi jaratıń:
-requirements.md: Talaplar specifikaciyası
-project-plan.md: Proekt jobası
-changelog.md: Ózgerisler jurnalı
4.Hújjetler smetasın jaratıń (docs/document-list.md), onda jaratılǵan hám jaratılıwı kerek bolǵan barlıq hújjetler dizimin kórsetiń
5. Ózgerislerdi commit etiń hám GitHubqa júkleń
Tapsırma 4: GitHub Issues hám Project Board jaratıw
1.GitHub repozitoriyińizde 5 másele (issue) jaratıń:
-Birinshi másele: "Implement user authentication"
-Ekinshi másele: "Create database schema"
-Úshinshi másele: "Design main interface"
-Tórtinshi másele: "Write user documentation"
-Besinshi másele: "Add unit tests"
2.Hár bir másele ushın belgiler qosıń (bug, enhancement, documentation)
3.GitHub Projects qollanıp joba taqtasın jaratıń:
-"To Do" (Isleniwi kerek)
-"In Progress" (Proceste)
-"Review" (Qarap shıǵıw)
-"Done" (Tamamlanǵan)
4.Jaratılǵan máselelerdi joba taqtasına qosıń hám olardı "To Do" kolonkasına jaylastırıń
Tapsırma 5: Iteraciya nátiyjelerin hújjetlestiriw hám jańa versiya jaratıw
1.Prototipińizge jańa funkcionallıqtı yamasa ózgerislerdi engiziń (mısalı, paydalanıwshı interfeysin jaqsılaw)
2.docs/iterations/ direktoriyasında iteration-1.md faylın jaratıń, onda:
-Iteraciyanıń maqseti
-Orınlanǵan málimlemeler
-Sheshilgen mashqalalar
-Aldaǵı iteraciya jobaları
3.changelog.md faylın jańalań, onda engizilgen ózgerislerdi kórsetiń
4.Ózgerislerdi jańa branchta isleń (mısalı, feature/ui-improvements)
5.Branchtaǵı ózgerislerdi commit etiń hám GitHubqa júkleń
6.GitHubta Pull Request jaratıń hám onı main branchqa biriktiriń
7.v0.2.0 teg versiyasın jaratıń hám onı GitHubqa júkleń
8.GitHubta jańa Release jaratıń, onda iteraciyanıń nátiyjelerin súwretleń

Hár bir student óz jobasın GitHub Profile'inde saqlap, oqıtıwshı hám basqa studentler menen bólisiwi kerek. Jumıstıń nátiyjesi tómendegi kriteriyler boyınsha bahalanadı:
-Repozitoriy strukturasınıń durıs shólkemlestirilgenligi
-Hújjetlerdiń tolıq hám túsinikli etip jazılǵanlıǵı
-GitHub funkciyalarınıń (Issues, Projects, Releases) durıs qollanılıwı
-Versiyalardı basqarıw principleriniń saqlanıwı
-Komandalıq islew múmkinshiligin támiyinlew ushın repozitoriydiń shólkemlestirilgenligi