İşe başladığımda önceki
yazılımcı ile oturduk ve o
bana uygulamayı göstererek
yüzeysel olarak nerede
ne yaptığından, neyi nasıl
yapmak gerektiğinden falan
bahsetti. Projede ödeme
sistemi, üyelik, blog, gelişmiş
içerik yönetim sistemi vb.
bir çok modül bulunuyordu.
Bunlar ne lafla devredilecek
ne de 2 günde anlaşılacak
şeylerdi. (Bknz: Söz uçar, yazı
kalır.) Sonuç olarak 2 gün
sonra ben projeyle başbaşa
kaldım. Kodların içinde
nerede ne kullanıldığını,
neyin nasıl çalıştığını
anlamak için bol bol
kodları incelemek, orasını
burasını
pırkalamaktan
başka çarem yoktu. “Şuraya
şunu ekleyelim” , “Buradan
bunu çıkartalım” gibi basit
istekler geldiğinde bile
5 dakikalık iş 1 saatte
zor bitiyordu. Tabi burada
“Önceki yazılımcı çok kötü
kodlamış yaa!” diyerek onun
kodlarına çamur atmıyorum.
Sadece dokümantasyonu
olmayan bir projenin
geliştirilmesinde ki zorluğu
vurgulamaya çalışıyorum.
Eğer benden önceki yazılımcı
bir framework kullansaydı;
74
• Genel itibariyle klasör
yapısında nerede nelerin
olduğu
• Hangi kütüphanenin
hangi parametreleri aldığı
• Hangi
fonksiyonu
çalıştırdığımda geriye ne
döneceği
gibi bir çok şeyi
kodların,
dosyaların
içerisinde aramak yerine,
dokümantasyondan hızlıca
bakarak
ilerleyebilirdim.
Yani çekirdek düzeyde en
azından
framework’ün
sunduğu şablona/ölçülere
göre uygulama geliştirilmiş
olurdu. Ben de bu şablona
göre çok daha rahat ve hızlı
bir şekilde ilerleyebilirdim.
Şirket iş ilanı çıkarken de
“X Framework bilen” birini
arar ve projeye adaptasyon
sürecini
minumuma
indirerek
verimliliği
arttırabilirdi.
Şunu da belirteyim;
“Düzenli ve geliştirilmesi
kolay bir sistem için mutlaka
bir framework kullanmak
gerekir” gibi bir genelleme
asla yapmadım/yapmıyorum.
Eğer standartlara uygun kod
yazılıyorsa ve bunu başka
bir yazılımcının kolayca
anlayabileceği,
projeye
dahil olabileceği şekilde
dokümante
ediyorsanız
zaten
Framework’lerin
sağlamak istediği şeyi
başarmışsınız.
Şimdi
“Benim
kendi
Framework’üm var!” diyen
meslektaşım;
Senin
Framework’ün
bir dokümantasyonu var
mı? Kaynak kodlarını bana
göndersen ben hızlıca
proje geliştirebilir miyim?
Yaptığın bir projeyi üçüncü
bir şahıs kolayca düzenleyip
geliştirebilir mi?
Ne dersin Class, Function
yığınlarından oluşan herşeye
Framework demeye devam
edecek miyiz?