Sobes.tech
Middle

OPP (Objektorientēta programmēšana) ir pieeja programmu izstrādei, kurā kods tiek organizēts kā objekti Inkapsepulācija Inkapsepulācija ir datu un ar tiem strādājošo metožu apvienošana vienā klasē, kā arī tiešas piekļuves ierobežošana objekta iekšējajam stāvoklim. Vienkāršos vārdos: objekts pats pārvalda savus datus, bet ārējais kods ar to sadarbojas caur metodēm. Abstrakcija Abstrakcija ir tikai svarīgo īpašību izdalīšana un detaļu slēpšana. Vienkāršos vārdos: lietotājam ir svarīgi, ko objekts dara, nevis kā tieši tas tiek darīts. Polimorfisms Polimorfisms ir iespēja objektiem ar dažādu realizāciju izmantot vienu interfeisu. Tas palīdz rakstīt universālu kodu, kas darbojas ar dažādiem datu vai klases tipiem. Piemērs 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! Automātiskajos testos polimorfisms ir noderīgs: - Izveidot universālas pārbaudes metodes - Realizēt dažādas testēšanas stratēģijas ar vienu interfeisu - Atbalstīt dažādas API/UI versijas bez testu izmaiņām Mantošana Mantošana ir mehānisms, kas ļauj jaunai klasei izmantot esošo, automātiski iegūstot tās īpašības un metodes. Vienkāršos vārdos: jauna klase atkārtoti izmanto vecā klases kodu un, ja nepieciešams, to paplašina. Git 1. Versiju kontroles sistēmas. Lokālas, centrālas, izplatītas. 2. Galvenie jēdzieni. Repozitārijs, indekss, komits, norādītāji, zars, darba kopija. 3. Darbs ar repozitāriju. Komandas: init, clone, status 4. Komits izveide. Komandas: add, commit. 5. Zaru izveide, skatīšana, pārslēgšanās, dzēšana. Komandas: branch, checkout, log, diff. 6. Izmaiņu atcelšana. Komandas: restore, rm, checkout, revert. 7. Izmaiņu apvienošana. Komandas: merge, cherry-pick, rebase. 8. Darbs ar attālinātu repozitāriju. Komandas: fetch, pull, push. 9. Darbs ar GitHub, kopijas un Pull Requests.