15 Nisan 2014 Salı

Yazılım Mutfağı – 01 Başlangıç ve Kararlar


Nasıl bir yol izlenmeli? Nereden başlanmalı? :

Okulu bitirmiş ve artık bir iki program yazayım para kazanayım diyorsunuz. Ama bu işe nerereden başlamalı?, nasıl bir metodoloji izlenmeli?, Hangi dili öğrenmeli? vs. bir sürü soru aklınıza takılmakta. İşte bu soruların bazılarını bu yazı dizisinde (sonra arkasını getirebilirsem) cevaplar bulmaya çalışacağım.
Bizim buralarda bir atasözü vardır; “At köpeği denize yüzme öğrensin”. İşin anahtar noktasında burada yatmakta. Bu yazılım işinde seviye atlamanın yolu öğrendiklerin ile hemen yazılım geliştirmeye başlamaktır. Tabi şunu da diyenler olabilir; önce bir iki kursa git MSCE sertifikalarını al, okulunu bitir, diplomanı al, yazılımla ilgili bir yerde staj yap vs. vs. Kısacası ölme eşeğim ölme. Eğer imkanları buna müsait olan cebi dolu olan arkaşlara bir şey diyeceğim yok. Varsa imkanın MIT' de bilgisayar eğitimi al derim :) Sonuçta bu işin orta yolu alabiliyorsan eğitimini al ama mutlaka pratiğe geçmen lazım. Öyle veya böyle belki sana ilk etapta yahu bana hesap kitap programı yaz diyen olmayabilir fakat sen bilgisayar başına geç ve kendine yazacak programlar icat et. Kalbini de biraz düzgün tutar, Allah'a tevekkül edersen merak etme iş senin ayağına bile gelir :)

Hangi dili seçmeliyim ? :

İşte herkesin merak ettiği ve kıvrım kıvrım kıvrandığı bir konu :) Delphi mi?, C#?, Phyton mu?, C/C++ mı?, Lazarus mu?, PHP mi?, Java mı?, Fortran mı(o kadar da değil) ? Gibi soruların yeni yazılımcıların kafasını kurcaladığı doğrudur. Bu soruyu cevaplamak için başka bir soru sormak gerekiyor. Sen masaüstü yazılımmı geliştireceksin yoksa internet uygulaması mı? Cevap internet ise PHP, Asp.Net/C#, Java gibi seçenekler ön plana çıkacaktır. Yok masaüstü ise Delphi/pascal, C/C++, Lazarus, C# + .Net Framework-Mono, Phyton gibi seçenekler ön plana çıkar. Tabi ben burada bu dilleri örnek olsun diye sıraladım. Yoksa yüzün üzerinde yazılım dili mevcut. Kısaca sen ne yapmak-yazmak istiyorsun arkadaş? Sorusunun doğru cevabını yine sen vereceksin.

Kısa yolsan para kazanmak istiyorum, beni yönlendir! :

Olur yönlendirelim. Günümüz piyasasında para kazanmanın en cazip yolu veritabanı yazılımı eksenli bir geliştirme yapmaktır. Yani stok-fatura yazılımları gibi yazılımlar geliştirmektir. Şunu diyebilirsin; “abi piyasa yıllardır yazılmış yüzlerde fatura stok cari programı var, biz zor ekmek yeriz”. Bu düşünce kısmen doğru olmasına rağmen aynı zamanda da yanlış bir düşüncedir. Temel kural : yazılan her yazılım yüzde yüz mükemmel bir yazılım değildir. Bu yüzden müşterilerin tam ihtiyacını karşılamadığı için yeni yazılım geliştirtme arayışına girmektedir müşteri. Kısacası iyi bir yazılımcıya her zaman ekmek vardır. Bu iş beni kasar daha kolayı yok mu bu işin derseniz, web sayfası geliştirme işi tam size göre. Kolaydır ve kısa zamanda para kazanırsınız. Zaten çoğu geliştiricinin tercih ettiği yolda bu yoldur. Açıkçası hiç web işiyle uğraşmadım. Sebebi ise bir türlü sevemedim web geliştiriciliğini. Tabi bu sizinde sevmeyeceğiniz anlamına gelmez. Bu sadece bir tercih meselesi.

Masaüstü yazılımcılığı, Veritabanı temelli geliştiricilik :

Bu konuda benim en iyi önerebileceğim seçenek Delphi olacaktır. Eğer linux platformu düşünürseniz alternatifi Kylix dir. Neden Delphi/Kylix sorusunun cevabı kısaca; kolay geliştirilebilirlik, kaynak bolluğu, desteğinin çok olması, bileşen alternatiflerinde neredeyse rakipsiz olması, IDE (geliştirme ortamı) kararlılığı sayabileceğim sebeplerden bazılarıdır. Ama lisans parası yeni(fakir) bir yazılımcı için biraz tuzludur. Gerçi yaptığın işe göre eğer batı standartlarında bir ücretle geliştiriyorsan lisans parası devede kulak kalır. Delphi de yazılım geliştirecekseniz component(bileşen) kullanımı hayati bir önem arz edecektir. Delphinin standart bileşenleriyle de yazılım geliştirebilirsiniz, bu konuda sıkıntı yok. Ancak biraz daha kompleks işlemler yapmanız gerektiğinde bileşenler işinizi kolaylaştıracaktır. Devexpres gibi bileşen markaları bunlardan sadece bir tanesidir. Ayrıca veritabani erişimlerinde bileşenlerin varlığı daha bir önem kazanmaktadır. Bu konuda önerebileceğim en iyi bileşenlerden biride Devart markasıdır.

Ücretsiz araçlarla yazılım geliştirme :

Yine aynı şekilde Delphi yerine Lazarus IDE sini öneririm. Bana bundan 10 yıl önce sorsanız bu soruyu delphi dışında hiçbir yapıyı önermezdim. Ama artık görüyorum ki Free Pascal derleyicisini kullanan Lazarus IDE si bayağı bir yol katetmiş. Bu konuda Boreasın Günlüğü sitesinde Emre Öz kardeşimin yayınladığı Otel yazılımı tamamen lazarus ile geliştirilmiş. Yazılım gayet iyi çalışmakta. Bu da bize Lazarus IDE sine güvenebileceğimizi göstermekte. Bununla birlikte delphi için geliştirilen bileşenlerin yanında artık lazarus içinde bileşen paketleri hazır gelmekte.

IDE seçimi konusunda fikir verdikten sonra gelelim ücretsiz bileşenlere. Şayet lisans derdi olmayan ve güvenilir, hızlı bir veritabanı diyorsanız Firebird kesinlikle bir numara bir tercih olacaktır. Çünkü interbase 6.0 Open source kod üzerine geliştirilmiş ve interbase'ın tüm güzelliklerini de bünyesine katmış, hız olarak rakiplerini asfalta yapıştırmış bir veritabanı sistemidir. Lazarus ile birlikte gelen bileşenlerin SqlDb sekmesinde firebird/interbase için veri erişim bileşenlerini bulabilirsiniz. Biraz daha profesyonel olsun derseniz zeoslib bileşenlerini de önerebilirim. Ancak zeoslible bir deneme yapmadım. Bu saydıklarım kesinlikle ücret ödemeden kullanabileceğiniz yapılar.

Başka bir yazıda görüşmek üzere hoşça kalın.


Durali Kiraz
Yazılım Geliştirici
duralikiraz.blogspot.com



Hiç yorum yok:

Yorum Gönder