Çok Yakında Yeni Bir Arayüzle karşınızdayız! http://yeni.delphican.com/

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Moduler Programlama Hakkinda
#1
Ustadlar merhabalar,

Uzerinde calismis oldugum proje gittikce buyuyor, ve bir sure sonra ucu kacmaya basladi ve dogal olarak hatalar olmaya basladi. Projeleri parca parca olarak nasil gelistirebilirim. Bu konuda yardimci olabilirseniz sevinirim.

Tesekkurler.
Cevapla
#2
Selamlar
İstersen her bir projeni ayrı bir exe olarak yazdıktan sonra, başka bir menü exe yazıp, bu exelerini menü yolu ile çağırabilirsin.
Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.
Cevapla
#3
Üniversitede hocamız "bir prosedür bir iş yapar. Eğer bir prosedür içinde iki tane iş yapıyorsanız o prosedürü parçalara ayırmalısınız." derdi.

Mesela parametre olarak verilen tarihi x gün kadar artırmak istiyorsanız öncelikle

1- verilen tarihi 1 gün artıran bir prosedür yazın
2- artırılmak istenen gün sayısı kadar 1 nolu maddedeki prosedürü çağıran ikinci bir metod yazın

Bu sayede bakım onarımı daha kolay olan modüler bir kodunuz olmuş olur.

Tabi bunlar pascal zamanlarında kalan yöntemler. İşin mantığı aynı kalsa da birçok değişiklikler oldu.

Projenizde ihtiyaç duyduğunuz nesneleri tasarlarsanız , bu nesneler arasındaki hiyerarşiyi düzgün belirleyebilirseniz , kodunuzu doğru şekilde katmanlara (görünüm, veri , iş) ayırabilirseniz nispeten daha yönetilebilir bir kod sahibi olursunuz.

Elbette ki kodu daha yönetilebilir yapmanın daha pek çok çeşitli yolları var. SOA (Servis odaklı mimari) gibi pek çok mimari mevcut.

Personel tablosundaki kayıtları listeleyen SQL cümlesi programın birden fazla yerinde varsa kaosa doğru ilerliyorsunuz demektir.
Bana göre en önemlisi ilk başta da belirttiğim gibi "tek bir görevi olan prosedürler" bu işin temelini oluşturuyor.
Bunun üzerine duruma göre nesneye yönelik tasarım , soa vs artık bu alanla ilgili ne varsa üzerine giydirebilirsiniz.
WWW
Cevapla
#4
(17-09-2019, Saat: 13:32)TheEAK Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Üye Olmanız Gerekiyor. Üye Olabilmek İçin Lütfen Buraya Tıklayınız.Ustadlar merhabalar,

Uzerinde calismis oldugum proje gittikce buyuyor, ve bir sure sonra ucu kacmaya basladi ve dogal olarak hatalar olmaya basladi. Projeleri parca parca olarak nasil gelistirebilirim. Bu konuda yardimci olabilirseniz sevinirim.

Tesekkurler.

Merhaba,

Büyük ihtimalle siz de Delphi'nin sunduğu RAD (Rapid Application Development - Hızlı Uygulama Geliştirme) tuzağına düştünüz. Bence Delphi'nin en zayıf ve ironik bir biçimde en güçlü özelliği burası.

Öncelikle işiniz uzun bir süre kağıt üstünde olacak. Önce projeyi modüllere ayırın, sonra bu modülleri küçük iş parçacıklarına bölüm. Buraya kadar kod yazmadınız Smile Sonra bu iş parçacıklarının Interface'lerini yazın. Bu Interface'leri implement eden sınıfları yazın. Artık sınıflar arasındaki bağlantı belli olduğu için hepsini birbirine bağlayın. 

Yazdıklarım çok kolay gibi görünüyor ama aslında gerçekten de zor. Eğer yeni bir Delphi programcısıysanız, işe Interface/Class arasındaki farklardan başlayabilirsiniz (Nesne yönelimli programcılıkla ilgili bilgi eksiğinizin olmadığını varsayıyorum). Zaten aradaki farkı anladığınız zaman iş parçacıkları ve modüller arasındaki bağlantıyı nasıl kuracağınız da kafanızda canlanacaktır.

Kodlama tavsiyesi olarak da SOLID ve KISS prensiplerini uygulamanızda fayda var (SOLID'i biraz gevşek uygulayabilirsiniz). @sadettinpolat'ın hocasının da dediği gibi, bir fonksiyon bir iş yapar (gerçi örnek biraz tartışılır olmuş ama önemli değil) ve bir fonksiyon 20 satırdan uzunsa bunun gerçekten de iyi bir sebebi olmalıdır. Her ne kadar Delphi dünyasında pek olmasa da benim tavsiyem unit'lerin de kısa tutulması, ama sayısının arttırılması. 

İyi çalışmalar
Cevapla
#5
Tesekkurler.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Personel Yıllık İzin Hakediş Hesaplama Hakkında bkantur 2 188 04-10-2019, Saat: 18:15
Son Yorum: uparlayan
  IDE çoklu monitör kullanımı hakkında adelphiforumz 2 320 10-07-2019, Saat: 12:45
Son Yorum: adelphiforumz
  GarantiBBVA SFTP işlemleri hakkında adelphiforumz 4 464 09-07-2019, Saat: 10:43
Son Yorum: r3n4m3
  read ve write kullanımı hakkında alisahin 3 493 21-05-2019, Saat: 14:57
Son Yorum: alisahin
  Enum da CustomAttribute erişimi hakkında kodamelesi 3 477 25-04-2019, Saat: 16:31
Son Yorum: kodamelesi



Konuyu Okuyanlar: 1 Ziyaretçi