0Pricing
Learn AI with Python · Ders

Kapsülleme ve Soyutlama

Karmaşıklığı gizlemeyi ve yalnızca gerekli olanı sunmayı anlama

Kapsülleme ve Soyutlama, CoddyKit'te ücretsiz bir Learn AI with Python dersidir. Bu, 6 dersinin 5. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Learn AI with Python öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Learn AI with Python kursu toplamda 6 dersten oluşur.

Kapsülleme ve Soyutlamaya Giriş

Kapsülleme ve Soyutlamaya Giriş

Kapsülleme ve soyutlama, karmaşıklığı yönetmeye ve kodun düzenini iyileştirmeye yardımcı olan Nesne Yönelimli Programlamanın (NYP) temel ilkeleridir.

Kapsülleme, bir nesnenin verilerine doğrudan erişimi kısıtlarken soyutlama, gerçekleştirim ayrıntılarını gizler ve yalnızca temel özellikleri dışa sunar.

Kapsülleme ve Soyutlama — resim 1

Kapsülleme Nedir?

Kapsülleme Nedir?

Kapsülleme, verileri (öznitelikleri) ve metotları bir sınıf içinde bir araya getirmek ve bunlara doğrudan erişimi kısıtlamak anlamına gelir.

# Example of encapsulation
class Person:
    # Private attribute (indicated by double underscores)
    def __init__(self, name):
        self.__name = name

    # Public method to access the private attribute
    def get_name(self):
        return self.__name

person = Person("Alice")
# Accessing private data via a public method
print(person.get_name())

Özel Öznitelikler

Özel Öznitelikler

Python'da özel öznitelikler, çift alt çizgi __ ile gösterilir. Bunlara sınıfın dışından doğrudan erişilemez.

# Private attributes
class Car:
    def __init__(self, brand):
        self.__brand = brand  # Private attribute

    def get_brand(self):
        # Public method to access the private attribute
        return self.__brand

car = Car("Toyota")
print(car.get_brand())  # Outputs: Toyota

Soyutlama Nedir?

Soyutlama Nedir?

Soyutlama, bir sınıfın dahili gerçekleştirim ayrıntılarını gizler ve kullanıcıya yalnızca gerekli işlevselliği sunar.

# Example of abstraction
from abc import ABC, abstractmethod

# Abstract Base Class
class Shape(ABC):
    @abstractmethod
    def area(self):
        pass

# Subclass implementing the abstract method
class Circle(Shape):
    def __init__(self, radius):
        self.radius = radius

    def area(self):
        return 3.14 * self.radius * self.radius

circle = Circle(5)
print(circle.area())  # Outputs: 78.5

Soyut Sınıflar

Soyut Sınıflar

Soyut sınıflar, doğrudan örneği oluşturulamayan sınıflardır. Alt sınıfları için ortak bir arayüz tanımlamak amacıyla kullanılırlar.

# Abstract Base Class with multiple subclasses
from abc import ABC, abstractmethod

class Animal(ABC):
    @abstractmethod
    def speak(self):
        pass

class Dog(Animal):
    def speak(self):
        print("Dog barks")

class Cat(Animal):
    def speak(self):
        print("Cat meows")

dog = Dog()
cat = Cat()
dog.speak()  # Outputs: Dog barks
cat.speak()  # Outputs: Cat meows

Kapsülleme ve Soyutlama Karşılaştırması

Kapsülleme ve Soyutlama Karşılaştırması

Kapsülleme ve soyutlama birbiriyle yakından ilişkili, ancak birbirinden farklı kavramlardır:

  • Kapsülleme: Bir sınıf içindeki verilere erişimi kısıtlar.
  • Soyutlama: Uygulama ayrıntılarını gizler ve anlaşılır bir arayüz sağlar.

Kapsülleme ve Soyutlamanın Avantajları

Kapsülleme ve Soyutlamanın Avantajları

Başlıca avantajlardan bazıları şunlardır:

  • Kod güvenliğini ve bakım kolaylığını iyileştirir.
  • Modüler ve yeniden kullanılabilir kodu teşvik eder.
  • Kodun okunmasını ve anlaşılmasını kolaylaştırır.

Kapsülleme ve Soyutlamayla İlgili Yaygın Hatalar

Kapsülleme ve Soyutlamayla İlgili Yaygın Hatalar

Kaçınmanız gereken bazı hatalar şunlardır:

  • Getirici ve ayarlayıcı metotları kullanmak yerine özel özniteliklere doğrudan erişmek.
  • Soyut sınıfların örneğini doğrudan oluşturmak.
  • Alt sınıflarda gerekli tüm soyut metotları implementing etmemek.

Neler Öğrendiniz?

Neler Öğrendiniz?

Bu derste şunları öğrendiniz:

  • Kapsüllemenin ne olduğunu ve özel öznitelikleri kullanarak verilere erişimin nasıl kısıtlanacağını.
  • Soyutlamanın ne olduğunu ve ortak arayüzler tanımlamak için soyut sınıfların nasıl kullanılacağını.
  • Kapsülleme ve soyutlama arasındaki farkları ve bu kavramların avantajlarını.

Harika iş çıkardınız! Şimdi sonraki konuya geçelim.

Kapsülleme ve Soyutlama — resim 11

Sıkça Sorulan Sorular

“Kapsülleme ve Soyutlama” dersi ücretsiz mi?

Evet — “Kapsülleme ve Soyutlama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Learn AI with Python kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Learn AI with Python kursu toplamda 6 dersten oluşur.

“Kapsülleme ve Soyutlama” dersinde ne öğreneceğim?

Karmaşıklığı gizlemeyi ve yalnızca gerekli olanı sunmayı anlama Learn AI with Python ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Learn AI with Python öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Learn AI with Python, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 6 dersinin 5. dersidir.

“Kapsülleme ve Soyutlama” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Learn AI with Python dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Learn AI with Python dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Sınıflar ve Nesneler
  2. Öznitelikler ve Yöntemler
  3. Kalıtım
  4. Çok Biçimlilik
  5. Kapsülleme ve Soyutlama
  6. Sihirli Yöntemler (__str__, __repr__ vb.)
← Learn AI with Python Sayfasına Dön