Bu sayfadaki yazılar
Sayfanın metni
Sayfa 17
Dİzİ
Users Group) gibi birçok seçeneğiniz var. Eğer C ile yazacaksanız Aztec C, Sas/lattice C gibi derleyiciler, makine dili kullanacaksanız Argasm, Devpac Assembler, GFA Assembler, Maxon Assembler, OMA Assembler gibi assembler'lar kullanabilirsiniz. Ayrıca piyasada Pascal (benim favorim Kick Pascal 2.0), Modula ll, Fortran, Lisp gibi derleyiciler ve bütün bu dillerde public domain derleyiciler de bulabilirsiniz. Public domain derleyiciler de çok kaliteli ve mali bir külfet de getirmiyor. Diller hakkında daha sonra ayrıntılı bir yazı yazacağım fakat şimdi çok önemli bir konuya başlamak istiyorum. Düzen, bir programcının dikkat etmesi gereken en önemli konulardan biridir. Belki size düzenli program yazma fikri saçma gelebilir, ama zamanla programlarınız büyüyecek ve programlarınızın içinde kaybolmaya başlayacaksınız. Bu kesinlikle abartma değil Eğer programlarınız düzensiz olursa ve değişkenlerinize saçma sapan İsimler verirseniz, daha sonra büyük zaman kayıplarına uğrayabilirsiniz, hatta uğrarsınız. Bu kadar iddialı davranmamın sebebi, bu duruma şahsen düşmüş olmam ve birçok kişinin düşüşünü görmüş olmamdır. İlk etapta düzenli program yazmak size zaman kaybı gibi gelebilir, ama bu size daha büyük zaman kayıplarından koruyacaktır. Özellikle klasik BASIC'teki spagetti coding gibi oradan oraya dallanan programlar yapmaktan vazgeçin. Düzenli program yazmanın bir avantajı da debugging (hata ayıklama) yaparken ortaya çıkıyor. Debugging olayı inanılmaz derecede kolaylaşıyor Şimdi söylediklerimi destekleyecek iki kanıt; iki kısa BASIC programı vereceğim...
METALLICA:
If Ayşe—0 Then gosub WASP If Ayşe—1 Then goto METALLICA
WASP: Ayşez1:Cls:Print“Rules to Fools” Kazmaz 3:Return
Tamam iyi, güzel belki Metallica'yı ve Wasp'ı çok seviyorsunuz, belki Ayşe çok güzel bir kız ama bir süre sonra başanıza büyük belalar açacaklar. Programı yazmaya devam ettiniz ve bir süre sonra yukarıdaki bölüme geri dönmeniz gerekti. Ondan sonra da değişkeninde ne vardı?', 'Ben burada niçin böyle yapmışım?” gibi sorular, sorular... Diyelim hafızanıza güveniyorsunuz peki ya 6 ay sonra programın yeni versiyonunu çıkarmak istediğinizde ne olacak?..
ANA-PROGRAM: If Hata-0 Then goösub HATA- YOK If Hataz1 Then goto ANA- PROGRAM
Rem yoksa geline- cek... HATAYOK: Hataz 1 Cis Print “Rules to Fools” EkranNumarası — 3 Return
Bu programa ise aylar sonra baksanız bile her şeyi hatırlayacaksınız, hatta yeni versiyonunu yazmasını başka bir programcıdan bile isteyebileceksiniz. Programınızda çıkan hataları bir bakışta görüp düzeltebileceksiniz. Programın kodunu kabaca bitirdikten sonra sıra yona ve ilk geliyor. optimizasyonda reken İlk şey, programın kullandığı rutinleri mümkün olduğu kadar ortaklaştırmak. Örneğin Input rutininizi birden çok yordam (procedure veya subroutine) kullanıyorsa ortak bir İnput rutini yapmalı bunu gerektiğinde dallanarak kullanmalısınız. İkinci nokta, kullanmadığınız ağırlıkları atmalısınız. Programınıza başlarken her ihtimale karşı 5 bitplane'lik ekran açmış olabilirsiniz ama eğer 8 renk kullandıysanız, bitplane sayısını 3'e indirmelisiniz. İşte bunun gibi bir başka önemsiz gibi görünen birçok noktayı düzeltmelisiniz. Daha sonra başınıza büyük belalar açacağı tecrübeyle sabittir. Programı yazarken aklınıza takılan noktaları da (yeni fikirler, vazgeçilen şeyler..) ilk rötuşlama olarak SİNİZ. Sıra geldi çok önemli ama hep ihmal edilmiş bir noktaya: Test!.. Program, programcısı ve özellikle programı tanımayan kişiler tarafından test edilmelidir. Tabii test edecek kişi konunun İçinde olmalıdır. Örneğimizden gidecek olursak, sunuyla uğraşmış bir kişi olmalıdır. Bu kişi sadece hatalarla uğraşmamalı, aynı zamanda programda eksik gördüğü noktaları da programcıya dirmelidir. Hiçbir hataya canım sende, o da hata mı?” veya 'O kadar da olsun artık!” şeklinde yaklaşmamalısınız. Programda tek bir hata kalmayıncaya kadar Test-Debugging döngüsü devam etmelidir. İkinci rötuşlardan sonra ise (test eden kişinin eksik gördüğü noktaların eklenmesi), programın son testleri yapılır. Eğer programınız bu testlerden de sağlam çıktıysa artık sunuşa hazırdır.
Volkan Uçmak, 19 yaşında 5 yıllık AMIGA kullanıcısı, 1 yıllık profesyonel programcı. Hançer adlı bitmiş bir projesi var. Bağlanti Commodore AMIGĞA Dergisi kürülâbilir.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 16
yeni yoz dizisinde siz-
Volkan Uçmak lerle profesyonel amaçlı program yazılımı ve geliştirilmesi üstünde çalışacağız. İlk yazımda ise bir programın sahip olma-
“ sı gereken genel niteliklerden ve genellikle önemsenmeyen bazı önemli püf noktalarından bahsetmek istiyorum. Program yazmaya başlamadan önce programdan ne, ya da neler istediğinizi belirlemelisiniz. Bu, işin en can alıcı bölümlerinden biridir. Bu aşamada programı ne için yazdığınıza bakalım. Diyelim ki programı biraz para kazanmak için yazıyorsunuz ve programcılık yeteneğinizi de göz önünde aldığınızda bir sunu (presentation) programı yazmaya karar veriyorsunuz. Programın neler yapacağına, neler isteyip neler vereceğine karar verdikten sonra sıra görsel ekran tasarımlarına geliyor. Ekranları tasarlarken sadece güzel görünmelerine değil, aynı zamanda kullanışlı olmalarına da dikkat etmelisiniz. Kullanışlılık faktörü zaten herkesin kabul edip önemini bildiği bir nokta, fakat çoğu programcı 'göze hoş görünme' olayını gözardı ediyor. Oysa bu çok tutum. Siz de aynı zamanda bir kullanıcı olduğunuza göre soruyorum: Sunu programı içinde script (senaryo) yazıyorsunuz ve bir kazaya kurban gitmemek için seript'i save etmek İstiyorsunuz. Şimdi resimlerde görülen ilk programa bakın. Mavi ekranlı olanda (Slipper) yapmanız gereken şey, script yazma işlemini durdurup, 'Save Program-Adı' yazmak, daha sonra tekrar düzenleme (edit! moduna geçip script yazmaya devam etmek, birkaç dakika sonra tekrar sa... Okumak bile insanı yoruyor değil mi? Oysa diğer progyapmanız gereken tek şey Save ikonuna basmak. Evet, editörden bile çıkmadan sadece Üç boyutlu havası verilmiş sık bir kutucuğa basmak. Eğer bir tercih yapmanız gerekseydi hangisini seçerdiniz? Unutmayın: İkisi de birkaç yüz dolarlık büyük programlar ve birini kullanmanız gerekiyor. Sanırım bu örnek ekran tasarımının önemini her iki noktadan da destekliyor. Bu arada, bir programın korsan kopyasını kullanmayı aklınızdan bile geçirmeyin. Hele hele siz de programcıysanız ve programınızın satılmasını İstiyorsanız öncelikle kendiniz korsan program kullanmaktan vazgeçmelisiniz. “Ülkemizde yasa yok, peşinde koşan yok, kullansam ne olur?” düşüncesinden artık vazgeçmelisiniz. Bu her şeyden önce otokonirol sistemi ile yürür. Siz yabancı ülkelerdeki kullanıcıların FAST'dan (Yazılım Hırsızlığına Karşı Federasyon) korkup da mı orijinal kullandıklarını sanıyorsunuz? Ayrıca ülkemizde doğru oynarsanız kesinlikle za- Tar etmezsiniz. Ben, “Korsan programlardan uzak durun sakın yaklaşmayın” demiyorum, Eğer riske atacak paranız yoksa korsan programı alıp deneyin; kullanmaya karar verirseniz kesinlikle ve kesinlikle orijinalini alıp, ondan sonra kullanmaya başlayın. Hatta çoğu crack grubunun İntrosunda yazar, hakeden program, alınmayı da hakeder', Konudan fazla uzaklaşmadan geri dönelim. Ekran tasarımını yaptınız, çizimine geçtiniz veya çizilmesi için grafiker arkadaşınıza projeyi verdiniz. Grafik olayı başlıbaşına önemli bir konu.. Programın gözleri yormaması için renklerin seçiminden tutun da, renklimono uyumuna kadar dikkat edilmesi gereken birçok nokta var. Fakat bu konuya şimdilik girmeyeceğim. (Bu yazıda daha çok programcılık yönüyle ilgileneceğiz.) Programın çalışan hali nızda oluşmuştur herhalde. Artık programına geçebilirsiniz Programı hangi dille yapacağınız tamamen size kalmış bir şey. Her dilin birbirlerine göre avantaj ve dezavantajları var.. BASİC türü bir dil kullanacaksanız Amos BASIC (Mandarin Software), GFA Basic (GFA Software Technologies), Blitz BASIC (M.A.S.T). Hisoft BASIC Professional (Hisoft/Gold Leaf Publishing), F-BASIC (Delphi Noetic Systems), True BASİC (True BA-SIC, İnc.) ve Comal (Comal