
Karmaşık bir algoritma, modüller adı verilen küçük parçalara bölünür ve bölme işlemi, modülerleştirme olarak bilinir. Modülerleştirme, bir algoritma tasarlamanın komplikasyonlarını önemli ölçüde azaltır ve sürecinin tasarımını ve uygulamasını daha kolay hale getirir. Modüler programlama, her bir fonksiyonun birbirinden farklı olduğu ve bağımsız olarak çalıştığı fonksiyonlar biçiminde bir program tasarlama ve yazma tekniğidir. İşlevlerdeki içerik bir şekilde birbirine yapışır ve modüller arasında düşük bir bağlantı vardır.
Karşılaştırma Tablosu
Karşılaştırma için temel | Yukarıdan Aşağıya Yaklaşım | Aşağıdan yukarıya yaklaşım |
---|---|---|
Temel | Büyük problemi daha küçük alt problemlere böler. | Temel düşük seviye problemini çözer ve bunları daha büyük bir problemle bütünleştirir. |
süreç | Alt modüller soliter olarak analiz edilir. | Hangi verilerin kapsanacağını inceleyin ve bilgi gizleme kavramını ima eder. |
İletişim | Yukarıdan aşağıya yaklaşımda gerekli değildir. | Belirli bir miktarda iletişim gerektiriyor. |
fazlalık | Gereksiz bilgileri içerir. | Artıklık ortadan kaldırılabilir. |
Programlama dilleri | Yapı / prosedürel yönelimli programlama dilleri (yani C) yukarıdan aşağıya yaklaşımı izler. | Nesneye yönelik programlama dilleri (C ++, Java vb.) Aşağıdan yukarıya yaklaşımı takip eder. |
Temelde kullanılan | Modül dokümantasyonu, test senaryosu oluşturma, kod uygulaması ve hata ayıklama. | Test yapmak |
Yukarıdan Aşağıya Yaklaşımın Tanımı
Yukarıdan aşağıya yaklaşım, temel olarak karmaşık bir problemi veya algoritmayı daha küçük parçalara (modüller) ayırır. Bu modüller, ortaya çıkan modül, temel program esasen anlaşılana ve daha fazla ayrıştırılamayan ana program olana kadar ayrıştırılır. Belirli bir modülerlik seviyesine ulaşıldıktan sonra, modüllerin ayrışması durur. Yukarıdan aşağıya yaklaşma, programı etkin bir şekilde düzenlemek ve kodlamak için büyük program modülünün daha basit ve daha küçük modüllere bölünmesi aşamalı bir işlemdir. Bu yaklaşımdaki kontrol akışı her zaman aşağı yöndedir. Yukarıdan aşağıya yaklaşım, “C” programlama dilinde işlevler kullanılarak uygulanır.
Bu nedenle, yukarıdan aşağıya doğru yöntem soyut tasarımla başlar ve daha sonra sırayla bu tasarım ilave arıtma gerekene kadar daha somut seviyeler oluşturmak için rafine edilir.
Aşağıdan yukarıya yaklaşımın tanımı
Aşağıdan yukarıya yaklaşım, yukarıdan aşağıya yaklaşımın tam tersi şekilde çalışır. Başlangıçta, daha sonra üst seviye modül yapmak için birleştirilen en temel parçaların tasarımını içerir. Alt modüllerin ve modüllerin daha yüksek seviyeli modüle bu entegrasyonu, gerekli tam algoritma elde edilinceye kadar tekrar tekrar gerçekleştirilir.
Aşağıdan yukarıya yaklaşma, soyutlama katmanlarıyla çalışır. Aşağıdan yukarıya yaklaşımın birincil uygulaması, her temel modül ilk önce en büyüğüne birleştirilmeden önce test edildiğinden, test edilir. Test, bazı düşük seviyeli fonksiyonlar kullanılarak gerçekleştirilir.
Yukarıdan Aşağıya ve Aşağıdan Yukarıya Yaklaşım Arasındaki Temel Farklılıklar
- Yukarıdan aşağıya yaklaşım, büyük görevi daha küçük alt görevlere ayrıştırırken aşağıdan yukarıya yaklaşım ilk önce görevin farklı temel parçalarını doğrudan çözmeyi seçer, daha sonra bu kısımları bütün bir programda birleştirir.
- Her bir alt modül yukarıdan aşağıya bir yaklaşımla ayrı olarak işlenir. Karşıt olarak, aşağıdan yukarıya yaklaşım, kapsüllenecek verileri inceleyerek bilgi gizleme kavramını uygular.
- Yukarıdan aşağıya yaklaşımdaki farklı modüller fazla iletişim gerektirmez. Aksine, aşağıdan yukarıya yaklaşım, onları daha sonra birleştirmek için ayrı temel modüller arasındaki etkileşimi gerektirir.
- Yukarıdan aşağıya yaklaşım, fazlalık yaratabilirken aşağıdan yukarıya yaklaşım, gereksiz bilgileri içermez.
- Fortran, COBOL ve C gibi prosedürel programlama dilleri yukarıdan aşağıya bir yaklaşımı izler. Buna karşılık, C ++, Java, C #, Perl, Python gibi nesne yönelimli programlama dilleri aşağıdan yukarıya yaklaşımına uyuyor.
- Aşağıdan yukarıya yaklaşım önceden testlerde kullanılır. Tersine, yukarıdan aşağıya yaklaşım yaklaşımı modül belgelerinde, test senaryosunun yaratılmasında, hata ayıklama vb. İşlemlerde kullanılır.
Sonuç
Yukarıdan aşağıya yaklaşım ve aşağıdan yukarıya yaklaşım, yukarıdan aşağıya, sistemi yüksek seviye spesifikasyondan düşük seviye spesifikasyona dek uzanan geleneksel bir yaklaşım olan algoritma tasarım yöntemleridir. Öte yandan, aşağıdan yukarıya yaklaşımı daha verimlidir ve ilkel bileşenlerin ilk önce tasarlandığı ve daha sonra üst seviyeye çıktığı ters bir şekilde çalışır.
Yukarıdan aşağıya yaklaşım, iletişim ve yeniden kullanılabilirlik kavramının tanımlanmasını göz ardı ederken alt modüllerin izolasyonunu (modüller arasındaki düşük bağlantıyı gösterir) vurgular. Aşağıdan yukarıya yaklaşırken, bilginin gizlenmesi ve yeniden kullanılabilirlik öne çıkan faktörlerdir.