Dart ve Flutter’da Nesne Yönelimli Tasarım Kalıplarının Uygulaması Hakkında Makaleler Dizisi Girişi
OOP: Nesne Yönelimli Programlama
Design Patterns: Tasarım Kalıpları, yazılım geliştirme sürecinde ortaya çıkan ve tekrar kullanılabilecek çözüm yolları içeren tasarım şablonlarıdır. Bunlar, benzer sorunları çözmek için ortaya çıkan ve tecrübeler ile test edilen yaklaşımlardır ve yazılım geliştirme sürecinde zaman ve kaynak tasarrufu sağlar.
OOP nedir?
OOP, “Nesne Yönelimli Programlama” anlamında bir sigladır. Basit bir şekilde, verileri temsil etmek için nesnelerin ve veriyi manipüle etmek için yöntemlerin fikrini kullanan bir programlama paradigmasıdır. Bu fikir, yazılım mühendislerine gerçek dünya nesnelerini, içindeki verileri ve diğer nesnelere olan ilişkilerini karşılık gelen kod yapıları ile temsil etmeyi sağlar. Dart veya diğer bir OOP programlama dili (C#, C++, Java sadece adını saymak gibi) kullanarak bazı kod yazdıysanız, muhtemelen sınıfları, sınıflar içindeki tanımlanmış özellikleri / veya yöntemleri, sınıf örneklerini oluşturduğunuzu ve onlarla çalıştığınızı, farklı nesne / sınıflar arasındaki ilişkileri belirlediğinizi gördünüz – bu Nesne Yönelimli programlamanın hiçbir şeyinden daha az değildir!
OOP Tasarım Kalıbı nedir?
OOP tasarım kalıbı, yazılım tasarımındaki yaygın bir sorunun tipik bir çözümüdür. GoF kitabında, tasarım kalıbının amacı şu şekilde tanımlanır:
Bir tasarım kalıbı, yineleyebilir bir nesne yönelimli tasarım oluşturmak için yararlı olan ortak tasarım yapısının anahtar yönlerini adlandırır, soyutlar ve tanımlar. Bir yazılım tasarım kalıbı, belirli Kullanıcı Arayüzü / Kullanıcı Deneyimi sorunlarını çözmekle ilgili değildir (birinci görüşte kelime tasarımı fark ettiğinde görünebileceği gibi), daha çok belirli bir nesne yönelimli tasarım sorununu veya kodunuzdaki sorunları çözmek için bir mühendislik çizimi gibi kod yapısıyla ilgilidir. Bu kalıpları uygulayarak, geliştirme sürecini hızlandırabilir, daha esnek, yeniden kullanılabilir kod yazabilirsiniz. Ancak bu kalıpların en zor kısmı, arkasındaki ana fikri anlamak, kodunuzda bu kalıpların uygulanabileceği yerleri tanımlamak ve çözülebilecek sorunları belirlemektir.