Rehber Yazılım nasıl geliştirilir?

Merhabalar bu rehberde bir yazılım geliştirme aşamalarını anlatacağım.

  1. Konu belirlemek.
  2. Konu ile ilgili bilgi toplamak.
  3. Dil seçmek.
  4. Tasarım fikirleri üretmek.
  5. Veri yönetimi için kullanılacak sistemleri belirlemek.
  6. Programı tasarlamak.
  7. Programı kodlamak.
  8. Programı optimize etmek.
  9. Programın hatalarını ve akışlarını iyileştirmek.
  10. program geliştirme sırasında her bir geliştirmede sürüm vermek.
  11. Yama notları eklemek.
  12. Programı yayınlamak.


Müslüman-aklı-ile-düşünmek-nasıl-olur.jpg


1- Konu bulmak: Evet saçma gelebilir ama işin temeli konu bulmaktır. Programın neye hitap edeceği ne işe yarayacağını seçmeliyiz bu sayede bir proje fikrimiz hazır olur.

en-cok-kullanilan-arama-motorlari-1.png


2 - Konu ile ilgili bilgi toplamak: Konuyu seçtikten sonra konu hakkında internet üzerinden bilgi toplamalıyız, ben bu konuda gözcü programını ele alacağım. Logo tasarımlarını yaptık diyelim programın arayüz resimleri hazır. Sıra geldi dil seçmeye.


cpp-ornekleri-c.jpg


3 - Dil seçmek: Bir yazılımın en önemli temellerinden biri dil seçmektir. Aynı program birden farklı dilde yazılabilir. Burada önemli olan dilin işlevidir. Programı hangi dille daha kararlı ve geliştirmesi size göre anlamlıysa o dili seçiniz.

Graphic-Design-Course-1080x635.jpg


4 - Tasarım fikirleri üretmek: Adobe XD gibi yazılımlar ile bir tasarım şablonu yaratın koda dökmeden önce bir kağıt üzerinde çizin ve tasarımı netleştirin. Renk seçimlerini ayarlayın, çünkü renk kullanıcı çekmek için en önemli etkendir.


cropped-metrics.png


5 - Veri yönetimi için kullanılacak sistemleri belirlemek: Veri yönetimi kısmında bir veri tabanınız var ise mesela kullanıcı bilgilerini aldınız diyelim bunları doğrudan veri tabanında tutarsanız veri çalınabilir. Veriyi şifreleyip saklamanız lazım bu sayede kullanıcı programınızı kullanırken endişe duymaz.

design-tools.jpeg


6 - Programı tasarlamak: Sıra geldi en can alıcı kısma tasarım fikrini koda dökme aşaması, bu aşama oldukça önemlidir tasarım eski gözükmesi kullanıcı kaybına neden olur her zaman güncel ve özgün tasarımlar yapmaya çalışın. Ama asla fazla kaçırmayın :D.

code-1.jpg.optimal.jpg


7 - Programı kodlamak: Burası işte programın asıl yeridir. Programın akışını, işleyişini bir algoritma tasarlayarak başlarsınız ve geliştirirsiniz küçük bir hata her şeyi mahvedebilir. Kod yazarken yazdığınız kodu bilmiyorsanız dikkat ediniz. Özellikle döngülerde ve veri güncelleme işlemlerinde.


How-to-Optimize-your-Referral-Program-and-Boost-Sales-1280x720.png


8 - Programı optimize etmek: Geldik işin püf noktasına, programı optimize etmek demek programın hızını, veri işleme sistemini, kod akışını, kodun verimli çalışması demektir. Ne kadar bir kod optimize edilirse o kadar daha az kaynak tüketir. Bu sayede program daha hızlı çalışır ve daha az yük kullanır.


4-Figure3-1.png


9 - Programın hatalarını ve akışlarını iyileştirmek: Programı oldukça geliştirdiniz ve programı kullanan kullanıcılar programın bazı kısımlarında sorun olduğu size rapor etti diyelim. İşte burası en uzun süren kısımdır hatayı aramanız lazım binlerce satın kodun içinde didik didik ede ede hata kaynağını bulmanız lazım.



fe191ac3-f61b-4e55-b014-2665375edb29.png


10 - Program geliştirme sırasında her bir geliştirmede sürüm vermek: Sürüm vermek oldukça önemlidir, sürüm vermek program güncellemeleri sonrası kafa karışıklığını önler.

overwatch-ptr-1-8-0.jpg


11 - Yama notları eklemek: Yama notları çoğu programda olmalıdır. Yama notları o sürümde program üzerinde ne yaptığınızı, hangi hataları giderdiğinizi, hangi özellikleri eklediğiniz gibi verileri yazmalısınız. Kullanıcılar bu yazıları okuduğu zaman programa özen gösterildiğini anlarlar.


Cloud-streaming-platform-vsn.jpg


12 - Programı yayınlamak: Programı ister açık kaynak ister kapalı kaynak yayınlayın bu size kalmış. Kar amacı güdüyorsanız kapalı kaynak yapmalısınız, ama ben kar amacı gütmüyorum diyorsanız açık kaynak yapınız bu sayede diğer yazılımcılar projeyi geliştirmekte yardımcı olur.


Okuduğunuz için teşekkür ederim başarılar dilerim.
 
Son düzenleme:
Kar amacı güdüp, açık kaynak da yapmak veya tam tersi de mümkün.

Bkz: FDM kapalı kaynak, ama ticari değil.
Red Hat, açık kaynak, ama ticari yazılım.


Bu arada gaza geldim :D
12 - Programı yayınlamak: Programı ister açık kaynak ister kapalı kaynak yayınlayın bu size kalmış. Kar amacı güdüyorsanız kapalı kaynak yapmalısınız, ama ben kar amacı gütmüyorum diyorsanız açık kaynak yapınız bu sayede diğer yazılımcılar projeyi geliştirmekte yardımcı olur.
Ek olarak lisanslama ve kopya koruma(ücretli ise) çok önemli etken. Açıklardan yararlanan bir sürü kişi var çünkü :D
 
Kar amacı güdüp, açık kaynak da yapmak veya tam tersi de mümkün.

Bkz: FDM kapalı kaynak, ama ticari değil.
Red Hat, açık kaynak, ama ticari yazılım.


Bu arada gaza geldim :D

Ek olarak lisanslama ve kopya koruma(ücretli ise) çok önemli etken. Açıklardan yararlanan bir sürü kişi var çünkü :D
Hocam o işin diğer tarafı :D bu konu temel yazılım geliştirme. Tersine mühendislik konusunda da rehber yapacağım.
 
@Eray T hocam benim yazılıma girme hevesim var. En kolay seviye de ne yapabilirim? İngilizcem kötü. Sence hangi dilde başlamalıyım. Yaparak öğrenmeyi seviyorum. Rehber olacak bir video vs varsa önerebilir misin?

Hocam önce donanım bilgilerini öğrenin ardından bilgisayarın çalışma mantığını öğrenin ardından algoritma nedir öğrenin.
 

Geri
Yukarı