0Pricing
Python Academy · Ders

Kapsülleme ve Soyutlama

Karmaşıklığı nasıl gizleyeceğinizi ve yalnızca gerekli olanı nasıl sunacağınızı anlayın.

Kapsülleme ve Soyutlama, CoddyKit'te ücretsiz bir Python Academy 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, Python Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Python Academy 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 (OOP) temel ilkeleridir.

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

Kapsülleme ve Soyutlama — resim 1

Kapsülleme Nedir?

Kapsülleme Nedir?

Kapsülleme, verileri (öznitelikleri) ve yöntemleri bir sınıf içinde birlikte gruplayarak 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 belirtilir. 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 iç uygulama ayrıntılarını gizler ve kullanıcıya yalnızca gerekli işlevleri 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 örneklendirilemeyen 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 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 sunar.

Kapsülleme ve Soyutlamanın Avantajları

Kapsülleme ve Soyutlamanın Avantajları

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

  • Kodun güvenliğini ve sürdürülebilirliğini artırır.
  • Modüler ve yeniden kullanılabilir kod yazmayı 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:

  • Getter ve setter yöntemlerini kullanmak yerine özel özniteliklere doğrudan erişmek.
  • Soyut sınıfları doğrudan örneklendirmek.
  • Alt sınıflardaki tüm soyut yöntemler için implementing işlemini yapmamak.

Ne Öğrendik?

Ne Öğrendik?

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 Python Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Python Academy kursu toplamda 6 dersten oluşur.

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

Karmaşıklığı nasıl gizleyeceğinizi ve yalnızca gerekli olanı nasıl sunacağınızı anlayın. Python Academy 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.

Python Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Python Academy, 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 Python Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Python Academy 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.)
← Python Academy Sayfasına Dön