Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
OOP : Polymorphism, Inherited Class
#11
Emeğinize sağlık uğur bey yararlı bir eğitim videosu hazırlamışsınız. Kendi adıma naçizane olarak bu tarz videoların arka fonlarında hareketli müziklerin biraz dikkat dağıtıcı olduğunu söylemek isterim.
Cevapla
#12
Teşekkürler @uparlayan bey.

Videoda konuşma olmadığı için @delphi.developer ses kısılabilir, nede olsa müzik zevkleri herkesin farklı olabiliyor Smile
Cevapla
#13
(29-06-2020, Saat: 13:12)delphi.developer Adlı Kullanıcıdan Alıntı: Emeğinize sağlık uğur bey yararlı bir eğitim videosu hazırlamışsınız. Kendi adıma naçizane olarak bu tarz videoların arka fonlarında hareketli müziklerin biraz dikkat dağıtıcı olduğunu söylemek isterim.

Eyvallah Wink 

(29-06-2020, Saat: 18:21)frmman Adlı Kullanıcıdan Alıntı: Teşekkürler @uparlayan  bey.

Videoda konuşma olmadığı için @delphi.developer ses kısılabilir, nede olsa müzik zevkleri herkesin farklı olabiliyor Smile

En çok o konuda zorlanıyorum zaten Smile Müziği beğenmek bi dert, seçmek başka dert, beğendirmek ap ayrı   Wink



Bu arada, bir sonraki video hangi konuda olmalı sizce?
YouTube Delphi Tips
"Yaşlanarak değil, yaşayarak tecrübe kazanılır. Zaman insanları değil, armutları olgunlaştırır" Peyami Safa
WWW
Cevapla
#14
Sırası belli üstadım,
  • Sınıfı başka sınıftan inherited aldık, tüm özellikler cepte, 
  • Buna ek özellik ile donatmak, 
  • Ardından da ürünü bir unit altında vcl bileşen formuna evirmek. 
  • Bileşen paletinde görüp gururla bunu formumuza koyup çalıştığını görmek.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla
#15
(29-06-2020, Saat: 20:23)mrmarman Adlı Kullanıcıdan Alıntı: Sırası belli üstadım,
  • Sınıfı başka sınıftan inherited aldık, tüm özellikler cepte, 
  • Buna ek özellik ile donatmak, 
  • Ardından da ürünü bir unit altında vcl bileşen formuna evirmek. 
  • Bileşen paletinde görüp gururla bunu formumuza koyup çalıştığını görmek.
Abi bence sıralamayı ileri değil geriye doğru yapalım  Smile 
Bilenler zaten biliyor, bilmeyenler için sıfırdan, küçük bir örnek üzerinden constructor, destructor, özellikler, metotlar, kapsülleme, creat-free vs vs neyin ne işe yaradığını, ne zaman kullanacağımızı bilerek öğrensek fena mı olur? 

Elimdeki kitapLAR da dahil delphi de class yapısını baştan sona anlatan ne yazılı ne görsel Türkçe kaynak görmedim. Kendi adıma konuşayım python java c# bir sürü video var ve gayet anlaşılır, ama gel gör ki delphi syntax'ına uyarlamada zorluk çekiyorum şahsen, yoksa soyut manada class ları kavradığımı düşünüyorum (yapı doğru-yanlış olur o ayrı). Ayrıca yükü sadece Uğur hocaya yüklemeyelim Smile Sorulan soruların verilen cevapların hayranlıkla izlendiği bu güzide platforma böyle bir kaynak yakışmaz mı? Bir makale yazmak, ders çekmek istemez miydiniz? (Derler ki: evet cevabını duymak için, öncesinde cevabı evet yan sorular sorun... bakalım işe yarayacak mı Smile ). Kusurum oldu ise affola, saygılar.
Cevapla
#16
Ben öncesinin var olduğunu değerlendirdim devamını yazdım.

Fesih beyin kitabının görsel haline namzet olur.
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla
#17
(29-06-2020, Saat: 22:08)mrmarman Adlı Kullanıcıdan Alıntı: Ben öncesinin var olduğunu değerlendirdim devamını yazdım.

Fesih beyin kitabının görsel haline namzet olur.

Kitabın ilk dönemlerinde (taslak aşamasında),  OOP konu başlığı vardı. En temel kavramlardan, @uparlayan üstadın bahsetmiş olduğu kalıtım ve çok biçimlilik kavramları ile multi-platform bileşen hazırlamaya kadar vardı. 
Yazım sürecinde, OOP ile birlikte bir çok konuyu da elemek zorunda kaldım. Bunun sebebi kitap kalınlığını azaltma ve konu bütünlüğününü (Platformlar arası uygulama geliştirme konseptinin dışına çıkmamak) bozmamak idi.


(29-06-2020, Saat: 20:00)uparlayan Adlı Kullanıcıdan Alıntı: Bu arada, bir sonraki video hangi konuda olmalı sizce?  

Eğer OOP ile devam edilecekse, önümüzde bir çok konu başlığı var.
  • private, public, protected,
  • strict private, strict protected
  • property, read, write, default, nodefault, stored, index, reintroduce, setter ve getter kavramı
  • Static, virtual, dynamic, override, overload
  • Interface ve Implementation kavramları
  • Owner, parent, sender, self
  • Type, enum, implicit, explicit, set of, of object, record, record helper, type cast
  • Class, class method, class var, nested class, nested type ve nested const, class helper, class operator
  • Abstract, sealed, persistent
  • Destructor (FreeAndNil olmazsa olmaz), constructor, raise, initialization, finalization
  • Property, methods (function, procedure ve parametrik direktifleri; const, var, out, ref), events, published ve register kavramlarını bilmeden bileşen yazmak oldukça güç.
  • As, is, in

ve object hiyerarşisini de bilmek gerekiyor.

VCL Object Hiyerarşi:

   

FMX Object Hiyerarşi:

   

Son olarak bolca, soyutlama (abstraction), kapsülleme (encapsulation), miras alma (inheritance) ve çok biçimlilik (polymorphism) örneklerini içeren uygulamalarla devam etmek.
Cevapla
#18
(28-06-2020, Saat: 18:11)uparlayan Adlı Kullanıcıdan Alıntı: En basit haliyle, bir class, başka bir class gibi nasıl davranabilir? Atalarında tanımlı olan niteliklere torun class nasıl erişir? Class'lar çok biçimli olarak nasıl kullanır? Ata, yavru ve torun class arasındaki ilişki nedir gibi sorulara yanıt arıyoruz...




Emeğinize sağlık çok güzel olmuş. Dikkatimi birşey çekti, Reportmemoryshutdown çoğu videonuzda ekliyorsunuz sebebi nedir ne işe yarar ?
Cevapla
#19
(14-05-2021, Saat: 02:30)CesuR Adlı Kullanıcıdan Alıntı:
(28-06-2020, Saat: 18:11)uparlayan Adlı Kullanıcıdan Alıntı: En basit haliyle, bir class, başka bir class gibi nasıl davranabilir? Atalarında tanımlı olan niteliklere torun class nasıl erişir? Class'lar çok biçimli olarak nasıl kullanır? Ata, yavru ve torun class arasındaki ilişki nedir gibi sorulara yanıt arıyoruz...




Emeğinize sağlık çok güzel olmuş. Dikkatimi birşey çekti, Reportmemoryshutdown çoğu videonuzda ekliyorsunuz sebebi nedir ne işe yarar ?

Teşekkür ederim,

@CesuR  haklısınız, buna özellikle dikkat ediyorum. OOP ile uğraşınca ister istemez oluşturduğunuz nesnelerin zamanında yok edilmesini de takip etmeniz gerekiyor. 

ReportMemoryLeaksOnShutdown, Delphi için global bir değişkendir. Bellek Yöneticisi bu değişkenin TRUE olması halinde, uygulamanız sonlandığında meydana gelen bellek sızıntılarının ( henüz bellekten atmamış / temizlememiş olduğunuz bellek bloklarının ( ekseriyetle nesnelerinizin ) ) rapor edilmesini sağlar. Bu önemlidir, çünkü programınızda işi bittiği halde, yok edilmemiş olan nesneleriniz bellekte yer kaplamaya devam eder.

Çok yoğun nesne kullanımı ve uygulamanızın günlerce çalışması durumunda programınızın çöktüğünü görebilirsiniz. Bu tür durumlara sebep olmamak için bunlara dikkat etmek gerekir. Bunu problemli bir insanın kafasının şişmesi, günler sonra bunalıma girmesi gibi düşünün.

http://docwiki.embarcadero.com/Libraries...OnShutdown
YouTube Delphi Tips
"Yaşlanarak değil, yaşayarak tecrübe kazanılır. Zaman insanları değil, armutları olgunlaştırır" Peyami Safa
WWW
Cevapla
#20
Ben de geliştirme aşamasında hep ReportMemoryLeaksOnShutdown := True; yaparım.
Hatta Delphi'de standart olarak yeni proje oluştuğunda neden şöyle değil diye de düşünürüm:
{$IFDEF DEBUG}
ReportMemoryLeaksOnShutdown := True;
{$ENDIF}
There's no place like 127.0.0.1
WWW
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Interposer Class Nedir, Nasıl Kullanılır uparlayan 31 23.217 18-09-2019, Saat: 21:35
Son Yorum: Aktolgali
  Class Helper da Generic Collection Kullanma witalihakko 1 2.562 08-02-2018, Saat: 10:48
Son Yorum: klavye
  Class Helper ile Listview Loop witalihakko 2 3.408 20-03-2017, Saat: 00:42
Son Yorum: witalihakko



Konuyu Okuyanlar: 1 Ziyaretçi