BTAcademyOOPBootCamp1
Bazı notlarım
19.09.2022
-
Yazılımın arkasındaki felsefeyi anlamak önemli.
-
Ahtapot gibi olabiliyoruz,daldan dala atlıyoruz.
-
Başlangıç önemli değil,hedef önemli.
-
git init
git branch -M main
git remote add orign link
-
En önemli şeylerden biri Obje'yi anlamak.
-
OOP'nin kullanılması yazılımcı içindir. Kullanıcı için değil.
-
Reusabitlity -> Mesela kalemi tekrar tekrar kullanabiliyorum
-
Extensibility -> Genişletilebilirlik
-
Maintability -> Bakımı yapılabilir
-
Scability -> Ölçeklenebilir
-
Türkçe'de obje nedir? şey'dir. obje = şey = varlık
-
Felsefe de ise objenin üzerinde duranlar ise : Sokrates ve Descartes'tir.
-
idea evreni nedir araştırma yap.
-
Class,nesnenin nasıl olacağına dair tanımıdır.
-
Descartesin benlik kavramını çalış. Buradaki benzetimimiz ben adımdan dolayı string miyim,evliliğimden dolayı boolean mıyım, ben yaşımdan dolayı int miyim? Ben hepsiyim. Ideal bizim classımızdır.
-
class -> kedi nedir ? (bir tanım)
-
nesne -> bu kedidir (onun varlık hali)
-
instance olmak : nesne üretmek aynıdır ama
-
primitive : ilkel
-
stack'da sadece adres bilgisi tutuluyor
-
pointer -> beynimizdeki sinirler ile sayı tutma özelliği
ENCAPSULATION
-
Data Encapsulation ve Type Encapsulation
-
Mesela çamaşır makinesinin içindeki silindir kaç defa döndüğü bizi ilgilendirmiyor. Uzaktan kumandanın da nasıl çalıştığını bilmeden de kullanabiliyoruz.
-
Ürün fiyatı eksi olamaz.
CONSTRUCTOR
-
Çamaşır makinesinin varsayılan değeri hangi renktir.
-
İyi yazılımcı diğer yazılımcıyı düşünen yazılımcıdır.
-
Overloading aynı isimle farklı özellik kullanımı.
-
Eğer bir şeyde zorunlu bir şey varsa boş constructor'a gerek yok.Yani paramaetresiz constructor'ı kaldırıyoruz.
-
Constructor'ı cpnstructor'da çağırma işlemi C# da var.
-
Her constructorın parametreleri farklı olmalı , bu overloading in kuralı. Metodun adı ve parametreleri imzası var,aynı parametre olamamalı, 1 den fazla.
-
....... = new Personel(); ->new den sonra yazılan bir constructor çağırmak demek
-
Benim sorduğum sorunun cevabı -> nesneyi üretmek için, Entity boş constructor,mesela eve koltuk alırken evin boyutuna göre alırız,rastgele değil.
INHERITANCE
-
Miras bırakma.
-
Genelden özele doğru bir akıştır. (Devamını izleyemedim, dedemin yanına gittiğim zamandı,devamı yok :(( )
ABSTRACTION
-
ürün istiyorum örneği.
-
Bir veri kaynağında veri kaynağı okunur.
-
XML'e yazmak, database'e yazmak farklıdır.
-
Her write tüm yerlerde kullanabilir, ama her yerde farklı kullanabilir. Override etmemiz lazım.
-
Miras almaya mecbur olduğu ve abstract metotları ezmeye mecbur.
-
Abstract classtaki her metod abstract olmaz zorunda değil.
-
Tekrar kullanılamaz diye bir obje söz konusu değildir.