Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
YayınlayanArier Kaya Değiştirilmiş 10 yıl önce
1
1.Yazılım Geliştirme Biligisayar techolojisinin iki bir birine bağalı konusu var: Donanım (hardware) Yazılım (software)
2
2. İyi Bir Yazılımın Özellikleri Doğruluk (Correctness) Bir yuilimi yazmaya başlamadan önce yazılımdan beklenenlerin belirlenmesi gerekir. Yazılım ortaya çıktıktan sonra bu belirlenen özellikleri tam olarak sağalamalıdır. Dayanıklık (Robustness) Program iyi yönde bile olsa kendinden beklenmeyen iş1emler yapmamalıdır. Programcı hataları yüzünden kesintiye uğramaması için önlemler alınmalıdır.
3
Genişleyebilme (Extendibility), ileri aşamalarda verilen görevlerin değiştirelmesi veya yenilerinin ilave edilmesi kolay olmalıdır. Bunun için: -basit tasarımlar yaparak karmaşık tasarımlardan kaçınmak gerekir (Design simplicity). - mödüler bir vapı kullanarak yerel bir yönetim şekli seçilmesi gerekir (tek program var ise kontrol bir merkezinden etmek zorundayız) (Decentralization)
4
Tekrar kullanma (Reusability), bir proje içinde kullanılan elemanların yenı bır projede kullanılabilmesini eklemek gerekir. Uygunluk (Compatibility), farklı bilgisayar sistemlerinde aynı ortak özzelliklere sahip olunması. Bunun için çeşitli standartları kabul etmek gerekir (veri dosya, veri yapı, ara yüzü – User Interface - için) Kaynakların kullanımı (Efficiency), bilgisayarınızı en iyi şekilde kullanmak gerekyor.
5
Taşınabilirlik ( Portability ),bir yazılım ürününün geliştirildiği bilgisayar ortamlarından farklı bilgisayar ortamlarına taşinarak çalıstırılması gerekir. Bu iki şekilde olabilir. - Kaynak taşımalı ( Source Compatible ), - taşınma, derlenme,çalıştırma. - Hedef taşımalı ( Binary Compatible ), - taşınma, çalıştırma. Kontrol edlilebilirlik ( Verıfiability ), bir yazilimin hatalı durumlar ile karşılaşması halinde programın devam etmesine engel olan ve hatta programı çalıştırmayan hatalar ortaya çıktığında kullanıcıya ve programcıya hatanın ne olduğu konusunda yeterli bilginin verilmesi.
6
Bütünlük (Integrity),- istenmeyen erişimler ve değiştirmeler karşısında program, data, doküman gibi yazılım bileşenlerinin korunması. Kolay kullanım (Ease of use), - yazılım ürününü kullanan kişinin ürünü kolayca ögrenmesi, kullanabilmesi,sonuçlarını yorumlayabilmesi, hatalarını düzelterek işlerini fazIa bir zahmete girmeden yapabilmesi. Beraber Çalışma (Interoperability), bu durumda iki program ard arda çalışma dışında bir birleri ile veri alış verişinde bulunabilmelidirler.
7
3. Modüler Yapının Şartları Parçalanabilirlik (Modular Decomposability), bir problemi alt parçalara ayırarak yazmak. Birleştirilebilirlik (Modular Composability), bir birinden habersizçe oluşturulan modüllerin bir araya getirilerek bütünü meydana getirdiklerinde eksik veya yetersiz modüllerin olmamasi. Anlayilirlik (Modular Understandability), farklı kişiler tarafindan yazılsa bile, okunduğunda programın antaşılabilmesi.
8
Koruma (Modular Protection) – bir modülün çalışma şekline ve datalarınadiğer bir modülün izin verilenin dışında müdehale etmemesi. Süreklilik (Modular Continuity) - problemin tanımındaki küçük degişikliler bir yada daha fazla parçanın değişmesine neden olurken program mimarısı olarak anılan modüller arasındaki arayüzü (örneğin fonksiyon prototipleri) bozulmaması gerekir. Şimdi de nesneye dayalı programlamanın özellikleri inceleyelim.
9
4. Nesneye Dayalı Programlama Nesneler = isimler (gerçek dünyanın örnekleri). Nesne, belirlenmiş işlevleri yerine getiren, bunun içinde çeşitli fonksiyonlar içeren bir yapıdır. Bu yapı, değişkenleri de bünyesinde bulundurabilir. Fakat esas, işlevini belli edecek fonksiyonları bünyesinde bulundurmasıdır : bunun adı Paketleme (Encapsulation). Bir diğer özellik de, paketlenecek fonksiyonların nasil bir işlev göstereceği belirtilmeksizin, sadece nasıl kullanılacağının belirtilmesi yapılabilir ki, bu zorunludur. Buna da Soyutlama (Abstraction) adı verilir. Paketleme ve Soyutlama bir nesneyi belli etmek için yeterli iki özelliktir.
10
Nesneler için soylenebilecek özelliklerden biri de tureme özelliğidir. Bir nesne tanımlanırken daha önceden tanımlanmış bir başka nesneyi kendisine taban olarak seçebilir. Bu durum, yeni tanımlanan nesnenin kendisine taban seçtiği nesnenin özelliklerini kullanma hakkına karşılık gelir. Aynı zamanda yeni nesnenin taban nesne ile aynı özellikleri taşımasına neden olur. Yeni nesne kendisine yeni özellikler katabileceği gibi devraldığı özellikleri de geliştirebilir, değiştirebilir. Bu özelliğe Türeme (Derivation), özellikleri devralmaya da Miras alma veya Katılım (Inheritance) adı verilir.
11
Üç önemli özellik göze çarpmaktadır: 1.Türeyen nesneler taban nesnenin koruyarak devam ettirip kullanabilirler. 2. Türeyen nesneler türedikleritaban nesnelerin ozellikleri değiştirebilirler. 3. Türeyen nesneler yeni özellikler kazanabilir veya mevcüt özellikleri kaybedebilirler. Bir sistem icerisinde bir birinden farklı türemiş nesneler bulunsun. Bu nesnelerin benzer özellikleri olabilir ve bu ozelliklerin aynı isim de olabılır.Bu duruma Benzerlik (Polymorphism) adı verilir. Aslında bir nesneden türeyen sınıfların anasında benzerliklerin olması kaçınılmazdır, bir bakıma zorunludur.
12
Burada miras bırakmanın tersi bir işlem söz konusudur. Bir nesne bazı özelliklerini saklayıp sadece kendisi kullanır. Diğer nesnelerin ulaşmasına izin vermez veya sınırlar. Bu dört farklı durum ile açiklanabilir. 1- Özel (Private) 2 ‑ Korumalı (Protected) 3 ‑ Ortak (Public) 4 ‑ Arkadaş (Friend), bir nesnenin bir başka nesneyi arkadaşı ilan ederek, üyelerinin tümünün bu nesne tarafından kullanılmasına izin vermesi.
13
Nesneye dayalı programlamada bir diğer önemli özellik ise Dinamik Bağalanma (Dynamic Binding) dir. Bu özellik ile türeyen bir nesnenin adresini türediği nesnelerden birinin gösterici (pointer) değişkenine atamak mümkündür. Bu durumda adresi atanan nesne, göstericisine atandığı taban nesne gibi davranacak, fakat kendine has hünerlerini sergilemekten de geri kalmayacaktır.
14
Türeme özelliği ile ilgili olarak söylenebilicek bir diğer özellik ise bir nesnenin bir nesneden değil de birden çok nesneden türemiş olması özelliği (Çok Tabanlılık veya Çoktan Türeme özellik– Multiple Inheritance). Programlar içinde belirli kalıpların hazırlanarak tekrar tekrar onları kullanmak icin – bu özellığine Şablonlama (Template) adı verilir. Şablonlar, yazılan bir kodun farklı benzer durumlar için kullanılmasını ifade eder.
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.