- Barnaamij-samaynta shayga ku jihaysan (OOP) waxay abaabushaa koodh ku wareegsan walxaha, taas oo sahlaysa in lagu matalo dunida dhabta ah.
- Fikradaha muhiimka ah ee OOP waxaa ka mid ah koobinta, dhaxalka, polymorphism, iyo soo saarista.
- OOP waxay kor u qaadaa dib-u-isticmaalka koodka waxayna wanaajisaa qaab-dhismeedka software iyo amniga.
- Luqadaha OOP ee caanka ah sida Java, C++, iyo Python waxay bixiyaan sifooyin iyo habab kala duwan.

Luqadda Barnaamijka Ku Wajahan Shayga: Aasaaska iyo Horumarka
Fasallada iyo Walxaha: Tiirarka OOP
class Coche:
def __init__(self, color, marca, modelo):
self.color = color
self.marca = marca
self.modelo = modelo
def arrancar(self):
print("El coche está arrancando")
def acelerar(self):
print("El coche está acelerando")
mi_coche = Coche("rojo", "Toyota", "Corolla")
coche_de_mi_amigo = Coche("azul", "Honda", "Civic")
Soo koobid: Ilaalinta xogta OOP
class CuentaBancaria:
def __init__(self, saldo_inicial):
self.__saldo = saldo_inicial # El doble guion bajo hace que sea privado
def depositar(self, cantidad):
if cantidad > 0:
self.__saldo += cantidad
return True
return False
def retirar(self, cantidad):
if cantidad > 0 and self.__saldo >= cantidad:
self.__saldo -= cantidad
return True
return False
def obtener_saldo(self):
return self.__saldo
Dhaxalka: Dib u isticmaal iyo kala sareynta Xeerka
class Vehiculo:
def __init__(self, marca, modelo):
self.marca = marca
self.modelo = modelo
def arrancar(self):
print(f"El {self.marca} {self.modelo} está arrancando")
class Coche(Vehiculo):
def __init__(self, marca, modelo, num_puertas):
super().__init__(marca, modelo)
self.num_puertas = num_puertas
def abrir_maletero(self):
print(f"Abriendo el maletero del {self.marca} {self.modelo}")
Polymorphism: Dabacsanaanta Barnaamijyada Ku Wajahan Shayga
Waxaa jira laba nooc oo waaweyn oo polymorphism ah:
- Xad-dhaaf ah polymorphismWaxay ogolaataa habab badan inay yeeshaan magac isku mid ah laakiin cabbirro kala duwan.
- Dib u qor polymorphismWaxay u ogolaataa fasal-hoosaadku inuu bixiyo hirgelin gaar ah oo hab horay loogu qeexay heerkiisa sare.
class Animal:
def hacer_sonido(self):
pass
class Perro(Animal):
def hacer_sonido(self):
return "Guau!"
class Gato(Animal):
def hacer_sonido(self):
return "Miau!"
def animal_sonido(animal):
print(animal.hacer_sonido())
perro = Perro()
gato = Gato()
animal_sonido(perro) # Imprime: Guau!
animal_sonido(gato) # Imprime: Miau!
Soo koobid: Fududeynta Kakanaanta OOP
from abc import ABC, abstractmethod
class FiguraGeometrica(ABC):
@abstractmethod
def area(self):
pass
@abstractmethod
def perimetro(self):
pass
class Rectangulo(FiguraGeometrica):
def __init__(self, base, altura):
self.base = base
self.altura = altura
def area(self):
return self.base * self.altura
def perimetro(self):
return 2 * (self.base + self.altura)
Faa'iidooyinka iyo Khasaaraha ee Luuqadda Barnaamujka Ku Wajahan Shayga
Ventajas:
- Dib -u -adeegsiga xeerkaDhaxalka iyo ka koobnaantu waxay ogolaadaan kood dib u isticmaalid hufan.
- Qaab dhismeedka: Koodhku wuxuu u habaysan yahay unugyo macquul ah (walxaha), taas oo sahlaysa in la ilaaliyo lagana saaro.
- FududeynPolymorphism waxay u ogolaataa walxaha inay u dhaqmaan si ka duwan iyadoo ku xiran macnaha guud.
- AmnigaEncapsulation waxay ka ilaalisaa xogta gelitaan aan la oggolayn.
- Qaabaynta aduunka dhabta ahOOP waxay ogolaataa hay'adaha aduunka dhabta ah in lagu matalo si dareen leh.
Dhibaatooyinka:
- Xirfadaha barashada: Waxaa laga yaabaa inay ku adkaato in la fahmo kuwa bilowga ah ee loo isticmaalo barnaamijka habraaca.
- WaxqabadkaXaaladaha qaarkood, OOP waxaa laga yaabaa inay ka tayo yar tahay jaangooyooyinka kale.
- Cabbirka barnaamijkaBarnaamijyada ujeedadoodu waxay u muuqdaan inay ka weyn yihiin kuwa dhigooda ah ee habraaca.
- Naqshadaynta bilowga ah: Waxay u baahan tahay naqshad taxadar leh bilawga, taas oo qaadan karta waqti badan.
Luuqadaha OOP ee caanka ah: Java, C++, Python iyo in ka badan
- JavaWaxaa loo yaqaanaa hal-ku-dheggeeda “hal mar wax ku qor, meel kasta ku orod”, Java waxa si weyn loogu adeegsadaa ganacsiga iyo horumarinta Android.
- C ++: Kordhinta C oo ku daraysa sifooyinka OOP. Waxay caan ku tahay nidaamka iyo horumarinta ciyaaraha fiidiyowga sababtoo ah waxqabadkeeda.
- Python: Luuqad heerkeedu sareeyo oo lagu yaqaano fudayd iyo akhris. Waxay taageertaa habab badan, oo ay ku jiraan OOP.
- C#: Waxaa soo saartay Microsoft, waxay la mid tahay Java, waxaana aad loogu isticmaalaa horumarinta codsiyada Windows iyo ciyaaraha Unity.
- Ruby: Waxaa loo yaqaan eray-bixinteeda xarrago leh iyo qaabka Ruby on Rails ee horumarinta shabakadda.
- SwiftLuqadda Apple ee horumarinta macOS iyo macOS, oo loogu talagalay inay noqoto mid ammaan ah oo hawlkar ah.
# Ejemplo en Python
class Persona:
def __init__(self, nombre):
self.nombre = nombre
def saludar(self):
print(f"Hola, soy {self.nombre}")
persona = Persona("Ana")
persona.saludar() # Imprime: Hola, soy Ana
// Ejemplo en Java
public class Persona {
private String nombre;
public Persona(String nombre) {
this.nombre = nombre;
}
public void saludar() {
System.out.println("Hola, soy " + nombre);
}
}
public class Main {
public static void main(String[] args) {
Persona persona = new Persona("Ana");
persona.saludar(); // Imprime: Hola, soy Ana
}
}
Qaababka Nakhshad ee OOP: Xalka La Xaqiijiyay ee Dhibaatooyinka Caadiga ah
Waxaa jira saddex qaybood oo waaweyn oo qaababka naqshadaynta:
- Hababka Hal-abuurka: Waxay wax ka qabtaan hababka abuuritaanka shayga. Tusaalooyinka waxaa ka mid ah:
- Singleton: Wuxuu xaqiijiyaa in fasalku leeyahay hal tusaale.
- Habka Warshada: Waxay qeexaysaa is-dhex-galka abuurista shay, laakiin waxay u ogolaataa fasal-hoosaadyada inay go'aan ka gaaraan fasalka la dedejinayo.
- Qaab-dhismeedka: Waxay la tacaalaan sida fasallada iyo walxaha ay ka kooban yihiin si ay u sameeyaan dhismayaal waaweyn. Tusaalooyinka waxaa ka mid ah:
- Adapter: Oggolow is-dhexgalka aan ku habboonayn inay wada shaqeeyaan.
- Qurxiyaha: Ku dar mas'uuliyadaha walxaha si firfircoon.
- Qaababka Dhaqanka: Waxay wax ka qabtaan xidhiidhka ka dhexeeya walxaha. Tusaalooyinka waxaa ka mid ah:
- Kormeere: Wuxuu qeexayaa ku-tiirsanaanta hal-ilaa-badan ee u dhexeeya walxaha.
- Istaraatiijiyad: Waxay qeexdaa qoyska algorithms, koobay mid walba, oo ka dhigaya kuwo la is beddeli karo.
class Singleton:
_instance = None
def __new__(cls):
if cls._instance is None:
cls._instance = super(Singleton, cls).__new__(cls)
return cls._instance
# Uso
s1 = Singleton()
s2 = Singleton()
print(s1 is s2) # Imprime: True
Mustaqbalka Luqadda Barnaamijka Ku Wajahan Shayga
- La-qabsiga qaababka kaleWaxaan aragnaa isbeddel dhanka luqadaha ah iyo qaab-dhismeedyo isku daraya OOP oo leh barnaamijyo shaqeynaya iyo jaangooyooyin kale, oo bixiya waxa ugu wanaagsan labada adduun.
- OOP daruurahaKor u kaca xisaabinta daruuraha, mabaadi'da OOP ayaa la waafajiyay qaab dhismeedka qaybsan iyo adeegyada yar yar.
- OOP iyo Sirdoonka ArtificialOOP waxay ka helaysaa codsiyo cusub naqshadaynta AI iyo nidaamyada barashada mashiinka.
- Luuqado badan oo muujin karaLuqadaha cusub ee barnaamijka waxay raadinayaan siyaabo ay OOP uga dhigaan mid dareen leh oo muujin kara.
- XajmigaFarsamo cusub ayaa la soo saaray si looga dhigo nidaamyada shayga ku jihaysan kuwo aad u miisaan badan xogta iyo codsiyada waaweyn.
Gabagabo: Aqoonta OOP ee Guusha Horumarinta Software-ka
Jadwalka Tusmada
- Luqadda Barnaamijka Ku Wajahan Shayga: Aasaaska iyo Horumarka
- Fasallada iyo Walxaha: Tiirarka OOP
- Soo koobid: Ilaalinta xogta OOP
- Dhaxalka: Dib u isticmaal iyo kala sareynta Xeerka
- Polymorphism: Dabacsanaanta Barnaamijyada Ku Wajahan Shayga
- Soo koobid: Fududeynta Kakanaanta OOP
- Faa'iidooyinka iyo Khasaaraha ee Luuqadda Barnaamujka Ku Wajahan Shayga
- Luuqadaha OOP ee caanka ah: Java, C++, Python iyo in ka badan
- Qaababka Nakhshad ee OOP: Xalka La Xaqiijiyay ee Dhibaatooyinka Caadiga ah
- Mustaqbalka Luqadda Barnaamijka Ku Wajahan Shayga
- Gabagabo: Aqoonta OOP ee Guusha Horumarinta Software-ka