Object Oriented Programming
(Nesle Yönelimli Programlama)
Programming
Write
Test
Debug
Maintain
Design
Temel Yapı
0 Object[Data] (Object)Human Human(«Murat»)
Data objeler içinde tutulur
İsimlendirilmiş objelere variable(değişken) denir
Variable içinde tutulan veriye value(değer) denir
Değişkenler farklı type(tip) olabilir
Value Types .NETByte = 8-bit integer (0-255 int)Sbyte = 8-bit integer(-128 <<>> 127)Int = 32-bit data type (-2,147,483,648 <<>> 2,147,483,647)Uint = 32-bit integer (0 <<>> 4,294,967,295)Short = 16-bit integer (-32,768 <<>> 32,767)Ushort = 16-bit integer (0 <<>> 65,535)Long = 64-bit data type(–9,223,372,036,854,775,808 <<>> 9,223,372,036,854,775,807)Ulong = 64-bit integer (0 <<>> 18,446,744,073,709,551,615)Float = 32-bit data type | 7 haneli rakamsal değerlere kadar (int)Double = 64-bit data type | 15-16 haneli rakamsal değerlere kadar(int)Decimal = 128-bit data type | 28-29 haneli önemli rakamsal değerlere kadar (int – real literal)Char = 16-bit unicode karakterEnum = Sayım işlemi için değer tipiStruct = İlişkisel değer tipleri oluştururBool = True | FalseString = Text (Unicode char)
Access Type .NET
Public • Class, Member
Internal • Class, Member
Protected • Member
Protected Internal
• Member
Private • Member
Erişim class veya türetilmiş class’a limitlidir
Herhangi bir limitleme yok, her yerden erişilebilir
Erişim mevcut assembly’e limitlidir
Erişim mevcut assembly veya türetilmiş class’a limitlidir.
Erişim class’a limitlidir.
DEMOBasit Paket Yapısı, scope ve operatör anlatımıyla
CLASS
Class
Class Class
Class
OBJECT
Temel Class Özellikleri
• Classlar özellik tanımlar• Durum• Davranış• Erişim Kontrolleri
• Objeler class örneği ve yaşayan varlıklardır• Birden fazla örnek oluşturulabilir• Her örnek farklı bir duruma sahip olabilir• Her örnek aynı şekilde davranır
DEMO
Temel Class Tipleri
• Base Class : DRY methodolojisine göre uygulanır ve uygulama tipi açıktır• Abstract Class: DRY methodolojisine göre uygulanır ancak türetilemez• Partial Class: Bir uygulamanın birden fazla class içerisinde farklı
şekillerde kullanılmasını sağlar• Static Class: TYPE oluşturmak için kullanılır ancak türetilemez• Sealed Class: Yanlış kullanım ve geliştirmeyi önlemek için kullanılır
DEMO
Temel Class Kullanım Methodolojileri
• Inheritance (Türetim) : Temel classları kullanarak yeni classlar oluşturmak• Encapsulation (Sarmalama) : Nesne tasarım kurallarına göre objelerin
bilme, karar verme ve işleme temeline göre ayırarak oluşturmak• Polymorphism (Birçok form) :
DEMO