ОПП (Объект-ориентированное программирование) — бул программалоо ыкмасы, анда код объекттер түрүндө уюштурулат
Инкапсуляция
Инкапсуляция — бул маалыматтарды жана алар менен иштөөчү ыкмаларды бир класста бириктирүү, ошондой эле түздөн-түз кирүүгө чектөө.
Жөнөкөй сөздөр менен: объект өзү өзүнүн маалыматтарын башкарат, сырттан келген код аны ыкмалар аркылуу иштетет.
Абстракция
Абстракция — бул объекттин маанилүү мүнөздөмөлөрүн бөлүп көрсөтүү жана анын ишке ашыруу деталдарын жашыруу.
Жөнөкөй сөздөр менен: колдонуучу үчүн маанилүү — объект эмне кылат, ал эми кантип кылат — маанилүү эмес.
Полиморфизм
Полиморфизм — бул ар башка ишке ашыруу менен объекттердин бир интерфейсти колдонушу мүмкүнчүлүгү.
Бул тестирүүдө универсалдуу код жазууга жардам берет, ал ар кандай маалымат түрлөрү же класстар менен иштейт.
Python мисалы:
class Animal:
def make_sound(self):
pass
class Dog(Animal):
def make_sound(self):
return "Woof!"
class Cat(Animal):
def make_sound(self):
return "Meow!"
def animal_sound(animal: Animal):
print(animal.make_sound())
dog = Dog()
cat = Cat()
animal_sound(dog) # Woof!
animal_sound(cat) # Meow!
Автоматтык тесттерде полиморфизм пайдалуу:
- Универсал текшерүү ыкмаларын түзүү үчүн
- Ар кандай тест стратегияларын бир интерфейс аркылуу ишке ашыруу үчүн
- API/UIнин ар кандай версияларын колдоо үчүн, тесттерди өзгөртпөстөн
Наследственность
Наследственность — бул жаңы классга мурунку класс колдонулуп, анын касиеттерин жана ыкмаларын автоматтык түрдө алуу механизми.
Жөнөкөй сөздөр менен: жаңы класс ата-эненин кодун кайра колдонуп, керек болсо кеңейтет.
Git
1. Версия көзөмөлдөө системалары. Локалдык, борборлоштурулган, таралган.
2. Негизги түшүнүктөр. Репозиторий, индекс, коммит, көрсөткүчтөр, бутак, иштөө көчүрмөсү.
3. Репозиторий менен иштөө. Командалар: init, clone, status
4. Коммит түзүү. Командалар: add, commit.
5. Бутактарды түзүү, көрүү, которуу, өчүрүү. Командалар: branch, checkout, log, diff.
6. Өзгөртүүлөрдү жокко чыгарыш. Командалар: restore, rm, checkout, revert.
7. Өзгөртүүлөрдү бириктирүү. Командалар: merge, cherry-pick, rebase.
8. Алыстагы репозиторий менен иштөө. Командалар: fetch, pull, push.
9. GitHub менен иштөө, форк жана Pull Requests.