ocal.net Forum Yenilendi
Bilişim Dünyasının en aktif forumu ocal.net forum yenilendi.
ocal.net Tasarımcı ve programcısı Armağan ERGON'un yeni forum hakkında söyledikleri şöyle:
Bu konuda kullanmış olduğumuz forum yazılımı TASP hakkında bazı bilgileri bulabilirsiniz.
TASP, ASP kodu ve veritabanı Armağan Ergon tarafından hazırlanmıştır.
Bazı açıklamalar biraz teknik detaya kaçabilir, konudan anlayanlar ve merak edenler için yazılmıştır.
Veritabanı
- Veritabanı olarak SQL Server 2000 kullanılıyor. Bu veritabanını tercih etme nedenimiz SQL Server'ın gerek performans gerekse güvenlik açısından Access 2000'den kat kat daha iyi olmasıdır.
- Veritabanına yapılan her türlü erişim stored procedure'ler ile yapılıyor. Bu sayede hem performansdan kazanıyoruz hem de olası bir ASP açığına karşın SQL kodumuzu "meraklı" gözlerden saklamış oluyoruz.
ASP Kodu
- Context switch'leri en azda tutmaya çalıştım.
- Her türlü veritabanından bilgi alma işleminde GetRows kullanıldı. GetRows ile uğraşması çok zor ama normal veri işleme yöntemlerinden çok daha hızlı. Bu işlem her ne kadar kodun ve forumun genişleme özelliğini kısıtlasa ve çok daha fazla çaba gerektirse de hız için yapılabilecek bir fedakarlık bu..
- Forum ve konu gösterme sayfalarında database paging işlemini ne ASP'deki PageSize+CacheSize ile ne de SQL Server temporary table ile yaptım. Kullandığım yöntem gene stored procedure.
Snitz gibi birçok forum paging işlemini CacheSize+PageSize ile yapıyorlar. Bu tam anlamıyla paging değil, aslında gene bütün kayıtları sunucudan alıp sadece istenilenler görüntüleniyor, dolayısıyla performans ve bandwith kullanımı gene sanki bütün verileri çekiyormuşuz gibi yüksek seviyede kalıyor. TASP'da bu işlem yapılırken SQL Server=>ASP=>kullanıcı arasındaki bilgi aktarımı çok daha az düzeyde. Her seferinde standart paging'de olduğu gibi bütün kayıtlar değil sadece 25 kayıt dönüyor ve bu sayede hem daha az bandwith ve sunucu kaynağı harcanıyor hem de daha hızlı çalışıyor.
Genel Tasarım
- Tasarım, görülebileceği üzere, orjinal değil. Tasarımı yaparken birçok forum gezdim ve her birinden beğendiğim taraflarını aldım. Birinin bir yeri diğerinin başka tarafı derken bu şekilde karma bir tasarım çıktı.
- Tasarımda kod olarak XHTML kullanılıyor.
- Kullanılan iconların çoğu Windows XP iconlarıdır.
- Kullanılan smiley'ler Greg Fleming tarafından hazırlanmıştır. Forumda kullanmak için kendisinden izin alınmıştır.
- TASP ile gelen en büyük yeniliklerden birisi: Richedit. Sadece Internet Explorer kullanıcılarının kullanabileceği bu özellik mesaj yazma bölümünü Wordpad cinsi bir editöre çeviriyor. Mesela bir metni seçip Bold tuşuna bastığınızda seçili alanın koyu hale geldiğini görebilirsiniz.
- Artık foruma bağlanmadan mesaj yazabilmek mümkün. Mesaj yazma yerinde kullanıcı adınızı ve parolanızı girerek foruma bağlanmadan mesajı yazabilirsiniz.
- Tasarımın kodları Netscape 6, Internet Explorer 6 ve Opera 6 ile kontrol edilmiştir ve bu tarayıcılarda düzgün çalışmaktadır.
Bilinen Hatalar
Richedit bölümünde aşağıdaki hatalar bilinmektedir. Ancak ne zaman ve nasıl düzeltilecek henüz belli değil:
- Kalan karakter göstergesi tam olarak çalışmamaktadır. Gösterge sadece klavye ile düz yazı yazılınca çalışıyor. Kopyalama, Yapıştırma, Kesme gibi işlemler ve silme işleminde gösterge düzgü güncellenmiyor. Bu hataların nedeni yetersiz kontroller. Bunların hepsini kontrol edebilmek için tarayıcıdaki OnKeypress, OnPaste, OnCut gibi birçok event'i kontrol etmek gerekiyor ve malesef ki benim DHTML bilgim bunlar için yetersiz. Tabii ki göstergenin tam anlamıyla güncellenmemesi mesaj uzunluklarında sorun çıkacak anlamına gelmiyor. Mesaj uzunlukları her zaman ASP tarafında da kontrol edilmektedir..
Teşekkür
Aşağıda adı geçen kişilere forumdaki yardımlarından dolayı çok teşekkür ederim:
- Beta test'ine katıldıkları için: Ansugo, ASA, Burak, composer, Hakkı Öcal, Karanfil, Umut Aydın
- Çerez şifreleme tekniği için: ASA
- SQL Server acemilik zamanlarımdaki yardımı için: renaTgaD (o şimdi asker)
- CSS yardımı için: composer
- UBB üyelik bilgilerini ve mesajları bu forum aktarmak için sağladığı UBB bilgileri, çerez fikri ve URL RegExp yardımı için: Burak
- URL RegExp yardımı için: Ansugo
- Richedit için: Erik Arvidsson ( http://webfx.eae.net/ )
- Smiley'ler için: Greg Fleming (aka Hell Dragon) ( helldragon@darkproject.com ) ( http://www.darkproject.com/ )
Bu sayfa 864 kere okundu.