Program Tasarımı Nasıl Yapılıyor?

kaganyaprakli17

Kilopat
Katılım
21 Nisan 2018
Mesajlar
364
Yer
İstanbul
Daha fazla  
Cinsiyet
Erkek
Profil Kapağı
1524321022
Merhaba arkadaşlar başlıktan da anlayabileceğiniz gibi bir sorum var o da şu:

Programların kodları yazılıyor evet ama bu programların tasarımı nasıl ve hangi program ile yapılıyor? Yani demek istediğim Ekran kartı driveri gibi, Google Chrome gibi programların tasarımı hangi program ile yapılıyor ve bu kodlar tasarımdaki butonlara nasıl enjekte ediliyor? yani mesela Google Chrome'de sağ üstteki çarpıya bastığımızda kapanıyor ama bu tasarım nasıl oluştu ve bu komut oraya nasıl enjekte edildi? Visual Studio dili gibi olmadığı kesindir.
 
Bu forumda yazılım hakkında bilgisi olmayan arkadaşlar çok. Pek cevap alabileceğinizi sanmıyorum. Kendileri sadece sistem toplama konularında ve marka önerilerinde ortaya çıkıyor.
 
Basite inersek resime komut veya link veriyorsun. Çarpıya kapatma kodunu yazıyorsun basınca kapanıyor. Visual Studio'yu kullanıyorsan butonları nasıl koyuyoruz falan bunları biliyor olman lazım sürükle bırak mantığı ile çalışıyorsun artık. Eskiden her şeyi satır satır kodluyordun günümüzde oyunları bile sürükle bırak yaparak programlayabiliyorsun. Google Phyton ile kodlandı diye biliyorum çoğu tarayıcı C++ ile kodlandı. Visual Studio bir ortamdır IDLE Shell gibi.
 
Program design etmekten bahsetmissin ama isin icine GUI dizayn da eklemissin sanki.
Program dizayni icin program degil, diyagram kullanilir. UML, Sequence vb gibi diyagramlarla programin nasil calisacagi resmedilir. Programin tasarlanisi sirasinda bulunmayan bir muhendis, ise basladiginda bu dizayn dokumanlarina bakarak butun tasarimi anlayabilir.
Butonun nerede duracagina UI/UX muhendisleri karar veriyor. O butona basinca ne yapilacagina da onlar karar verir. Onlar da genelde mock-up cizim yaparlar, sonra son halini verirler uygulamaya.
Yazilimin kodlamaya baslamadan onceki asamasi dokumandir. Istersen notepad ile yazarsin. Beyaz tahtanin basina gecip dizayn edersin sistemi sonra da dokumente edersin ki yeni katilan muhendisler de anlasinlar olayi. Ayrica driver gibi spesifik bir noktaya entegre olacak yazilimlari dizayn etmeye baslamadan once gereksinim analizi denilen (requirement analysis ) bir sey yapilir. Yani henuz daha nasil bir yazilima ihtiyac oldugunu dahi tam kafamizda kestiremedigimiz bir asama. Bu asamada da gercek hayatta kullanilacak yazilimin tutarli ve kapsayici gereksinimleri cizilir. Yani sen "tren istasyona gelince kapilar acilsin" dersin ama bir muhensis sana tam olarak hangi noktada, tam olarak ne kadar hizda iken kapi acmasi gerektigini sorar. Bu islem de sonra dokumente edilir.
 
Program design etmekten bahsetmissin ama isin icine GUI dizayn da eklemissin sanki.
Program dizayni icin program degil, diyagram kullanilir. UML, Sequence vb gibi diyagramlarla programin nasil calisacagi resmedilir. Programin tasarlanisi sirasinda bulunmayan bir muhendis, ise basladiginda bu dizayn dokumanlarina bakarak butun tasarimi anlayabilir.
Butonun nerede duracagina UI/UX muhendisleri karar veriyor. O butona basinca ne yapilacagina da onlar karar verir. Onlar da genelde mock-up cizim yaparlar, sonra son halini verirler uygulamaya.
Yazilimin kodlamaya baslamadan onceki asamasi dokumandir. Istersen notepad ile yazarsin. Beyaz tahtanin basina gecip dizayn edersin sistemi sonra da dokumente edersin ki yeni katilan muhendisler de anlasinlar olayi. Ayrica driver gibi spesifik bir noktaya entegre olacak yazilimlari dizayn etmeye baslamadan once gereksinim analizi denilen (requirement analysis ) bir sey yapilir. Yani henuz daha nasil bir yazilima ihtiyac oldugunu dahi tam kafamizda kestiremedigimiz bir asama. Bu asamada da gercek hayatta kullanilacak yazilimin tutarli ve kapsayici gereksinimleri cizilir. Yani sen "tren istasyona gelince kapilar acilsin" dersin ama bir muhensis sana tam olarak hangi noktada, tam olarak ne kadar hizda iken kapi acmasi gerektigini sorar. Bu islem de sonra dokumente edilir.
Teşekkürler gayet açıklayıcı bir yanıttı.
Basite inersek resime komut veya link veriyorsun. Çarpıya kapatma kodunu yazıyorsun basınca kapanıyor. Visual Studio'yu kullanıyorsan butonları nasıl koyuyoruz falan bunları biliyor olman lazım sürükle bırak mantığı ile çalışıyorsun artık. Eskiden her şeyi satır satır kodluyordun günümüzde oyunları bile sürükle bırak yaparak programlayabiliyorsun. Google Phyton ile kodlandı diye biliyorum çoğu tarayıcı C++ ile kodlandı. Visual Studio bir ortamdır IDLE Shell gibi.
VisualStudio hakkında bilgim var bi kaç program denemişliğimde oldu brnim sorum aslında şöle C++ ile komutları yazıyosun ama bitek kodlarla kalmayıp programın arayüzünü hangi program ile tasarlıyosun ve mesela tasarımdaki bi tuşa nası görev atarsın mesela basınca kapanması gibi
 
Son düzenleme:
Chrome kullanıcı arayüzü, Windows'ta Win, Linux'ta X11 ve MacOS'ta Cocoa'nın ev sahipliğinde konuk olmayı sağlayan Aura diye bir arabirim ile yapılıyor. Örneğin Linux için GTK2(Linux grafik arayüz araçları) yerine artık son olarak Aurayı kullanmaya başladılar.
Kapat düğmesi Aura'ya yazılan 1 satırlık(!) kod ile oraya enjekte ediliyor. İsletim sisteminin sağladığı geliştirme arayüzleriyle konuşmayı başarabilen Aura, chrome penceresini (örneğin Linux'ta X11'e) kapattırıyor. (Dünyadaki en değerli tarayıcı kapat butonu). Sözkonusu kapat olayı Aura kullanılarak yazılıyor.
Günümüzde web site arayüzleri bile metin editörleri ile yapılıyorken, Chrome arayüzünü geliştirmek için metin editörü haricinde bir program kullanılması beklenemez. Örneğin Chrome geliştirme dokümantasyonunda MacOS XCode geliştirme ortamının kullanılmasıyla ilgili olarak bile; "konsoldan çalışın, Xcode Chrome projesinde yavaş çalışır" diyor.


Chromium Projesi
 
Uyarı! Bu konu 8 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Yeni konular

Geri
Yukarı