Web tabanlı bir iş fikriniz var, ya da, mevcut işlerinizi web teknolojilerinden faydalandırarak verimliliğini artırmak ve işinize web teknolojilerinden pozitif değer döndürmek niyetindesiniz. Amacınız her ne olursa olsun, bugün için bir web projesine başlanırken, mutlaka sorulması gereken önemli soruların bir kısmı aşağıdaki gibidir:
- Kurulacak sistem Google ve diğer arama motorları ile aynı dilden konuşacak mı?
- Kurulacak sisteme mobil cihazlardan erişim mümkün olabilecek mi?
- Gelecekte yeni teknolojiler ve yeni modüller sisteme kolaylıkla entegre edilebilecek mi?
Şimdi bu soruları detaylı inceleyelim:
1) Kurulacak sistem Google ve diğer arama motorları ile aynı dilden konuşacak mı?
Bir sistemin, basit anlamda Google ve diğer arama motorları ile aynı dilden konuşması demek, içeriğindeki bilgiyi arama motorları tarafından indeksletebilmesi ve yapılacak olan Google ve diğer arama motoru aramalarında üst sıralarda yer edinebilmesiyle ilgilidir. Bu amaca yönelik çalışmaların bütünü, web terminolojisinde, Search Engine Optimization (SEO) - Arama Motoru Optimizasyonu olarak adlandırılır.
Search Engine Optimization, Arama Motoru Optimizasyonu, iki evreli bir çalışmadır. Birinci evresi, sistem alt yapısının bu doğrultuda tasarlanmasını ve inşa edilmesini gerektirir. Sonrasında süreç yönetimi ile istenilen kelimelerde yüksek performans hedeflenebilir. Lakin, eğer sistem altyapısı en baştan bu doğrultuda tasarlanmadı ise, siteye konacak içeriği kendisine arama motorlarında üst sıralarda yer bulması mümkün değildir.
UYARI: Sistem SEO teknikleri göz önünde olmadan tasarlanır ve kodları yazılırsa, ve sistem aynı zamanda yeni modüller eklenme noktasında hantal bir kod yapısına sahipse, ilerleyen dönemlerde bahsi geçen web sistemini arama motorları ile aynı dilden konuşur hale getirmek reverse-engineering (tersten mühendislik) metodları gerektiren bir halalır ki, bu da, hem oldukça risklidir, hem de uzun zaman alacağından ekonomik bir yöntem değildir.
2) Kurulacak sisteme mobil cihazlardan erişim mümkün olabilecek mi?
MOBİL CİHAZLARA UYGUNLUK
Bir web sistemi, eğer mobil cihazlara uygunluk prensibine göre tasarlanmışsa en baştan, sistem şu şekilde çalışacaktır:
Sistem bağlanan cihazın özelliklerinden bir mobil cihaz mı normal bir PC mi olduğunu anlayacaktır. Ve eğer bağlanan cihaz mobil bir cihaz ise, mobil cihazlara özel sayfalar, normal bir PC ise, alışık olunan normal web sayfaları görüntülenecektir.
Mobil cihazalara özel sayfaların avantajlarını şu şekilde sıralamak mümkündür:
- uygun gösterim (proper display)
Mobil cihazların ekranları için özel tasarlanmış sayfalar olacağı için, gösterimde sorunlar yaşanmayacaktır.
- Hızlı erişim
Mobil cihazlar için tasarlanan sayfalar, normal PC sayfalarına göre daha az dosya büyüklüklerine sahiptirler. Bu da, gezintiyi kolaylaşıtan ve hızlandıran bir sonuç olarak dönmektedir.
- Ekonomi
Mobil internet erişimi, mevcut GPRS ve EDGE teknolojilerinde indirilen “kb” başına ücretlendirilmektedir. Ve 3. nesil telekom alt yapısı hayata geçene kadar da, çok hesaplı değildir bu erişim ücretleri. Bu anlamda, mobil cihazlar için tasarlanan sayfalar, mümkün olan en az veri büyüklükleri ile inşa edilme prensibinde tasarlandıkları için, mobil sayfaların gezintisi, mümkün olan en ekonmik çözümdür.
3) Gelecekte yeni teknolojiler ve yeni modüller sisteme kolaylıkla entegre edilebilecek mi?
Bu soru, belkide sorulması gereken en önemli sorudur. Çünkü, kolay modül eklenebilir bir yapı ile beraber, sistem zaman içinde kolaylıkla modifiye edilebilir.
Aynı fonksiyonları yerine getiren iki sistem düşünün.
Birinci sistemin teknik özelliklerinden bir kısmı şöyle olsun:
- veritabanında 10 tablo
- toplam 5 klasörde 20 php veya asp dosyası
- toplam 1.500 satır kod
aynı fonksiyonları yerine getiren ikinci sistem ise:
- veritabanında 90 tablo
- toplam onlarca klasörde 100 lerce php veya asp dosyası
- toplam 38.000 satır kod
Şimdi, bu iki sistem karşılaştırıldığında, birinicisi modifikasyona çok daha açık bir yapıdadır. İkinci sistemde ise kod boyutunda değişiklik, hem oldukça riskli, hemde oldukça uzun zaman alan bir işlem olacaktır.
Şimdi aklınıza şu soru gelebilir. Neden bir programcı ikinci türden bir sistem kurararak projeyi hayata geçirsin. Bunun cevabı ise, sistemin bir uzman tarafından mı yazıldığı yoksa, aracı bir programın çıktısı mı olduğunda gizlidir. Eğer konuya hakim bir uzman sistemi hayata geçirecekse, tabiki birincisi gibi bir yapı olucaktır sonuç. Yok eğer, kodlar satır satır yazılmaktansa, aracı programlar kullanılarak hayata geçiriliyor ise sistem, aracı programlar gereksinimleri karşılama noktasında yüksek verimlilikte kodları üretemedikleri için, ortaya “dallı budaklı” bir yapıda binlerce satır fazladan kod çıkmaktadır.Butür sistemlerin, ilerleyen zamanlarda elden geçirilmesi ve kod boyutunda değişiklik yapılması ise, neredeyse mümkün değil, hatta sistemin baştan kurulması çoğu zaman daha kolaydır.
İsmail Çifci