Programlama bu işin sadece bir parçasıdır.Bir projeden mümkün olduğunca özetleyerek bahsedeyim.

1. aşama : projenin planlanması ( ne yapacağımızı tam olarak belirleriz.)
2. aşama : projenin tasarımı ( nasıl yapacağımızı tam olarak belirleriz )
3. aşama : projenin gerçekleştirimi ( veritabanı tasarımı , programlama,veri girişi vb)
4. aşama : projenin sınanması (alfa ve beta testleri)

Görüldüğü gibi bir projenin hayata geçmesinde programlama kısmından ziyade onun kadar önemli kısımlarda var.Hiçbiri diğerinden daha önemli değildir.1 tanesine bile gerekli önem verilmezse proje ya bitemez,ya çok geç biter yada bitse de geri çekilmek zorunda kalır.

Tüm bunların işleyişinden proje yöneticisi sorumludur.Proje bir takım işidir.Veritabanı uzmanları, yazılım uzmanları,sunucu yöneticileri vb elemanlardan oluşur.Yazılım kısmında bir de takım lideri vardır.Proje yöneticileri genelde yazılım bilgisine sahip olmadığı için yazılımcılarla-proje yöneticisi arasında köprü görevi görür ve yazılımcıların en etkin şekilde çalışmasını sağlar.

Yazılım geliştirirken geliştirme ortamlarına ihtiyaç duyulur.Örneğin php için Zend studio ve .Net ortamı için Visual studio gibi.Bu tür geliştirme ortamlarının işi satır numarasını göstermek değildir.Bunu notepad ile de yapabilirsiniz.Bu ortamlar sayesinde hazır kütüphaneler kullanırsınız ve içinde barındırdığı bir çok araç ile en az 2 kat daha hızlanırsınız.Takım halinde kod yazabilirsiniz.Ayrıca sizi NYP(OOP) ye zorlar bu ortamlar.Küçük yazılımlarda NYP zaman kaybettirirken büyük yazılımlarda tam tersine büyük zaman kazandırır.Aksi durumda projenin bitmesi bile hayal olabilir.

Büyük projelerde en önemli husus modülerliktir.Bir modül , diğer modüllerden ne kadar bağımsız bir şekilde sisteme eklenip çıkarılabilinirse , o kadar iyi bir soyutlama yapmışsınız demektir.Bu sayede ahmet video modülünü programlarken mehmet resim modülünü programlar.süleyman da modülleri birleştirir projeyi sınamaya sunar.Bazı projelerde,modülleri programlayan yazılımcılar , ne için modül yazdıklarını ve ne işe yarayacağını bile bilmezler

Velhasıl, yazılım mühendisliği denilen bir meslek alanı ortaya çıkmıştır.Ama ne yazıkki bir dilde program yazabilenler yazılım mühendisi olarakta hisseder kendisi.Canım ülkemde programcı programını düzgün yazsa, mühendis mühendisliğini düzgün yapsa bu sektörde dünyaya sesimizi duyururuz.(Her yıl 20 bin bilg.programcısı mezun oluyor canım ülkemde ).Ama malesef! Tanıştığım son bilgisayar programcısı kırtasiyede kasiyerlik yaparken,mühendis de , mühendisliğin ne olduğunu bilmediği için progamcı olarak çalışıyor.

Son cümlelerde konudan uzaklaştım.Okurken sıkılmazsınız umarım.

Ve kesinlikle bir IDE kullanmanı öneririm."Ben notepad++ da kod yazıyorum" cümlesini artislik olsun diye yazanlarda var(herkes üzerine alınmasın ).Yazılımın altına da "notepad++ da kodlanmıştır " yazacaklar diye korkuyorum.Ama kimilerimizde de saplantıdır bu.Alışkanlarımızdan vazgeçmemiz lazım gerektiğinde.

Php IDE'ler için Seven great PHP IDEs compared sayfasına göz atabilirsin.

Başarılar