HAZİRAN24
ASP ile fonksiyon hazırlama ve kullanma
Kısaca tanımlayacak olursak, Fonksiyonlar; birçok yerde kurtarıcı rolü oynayan ve bizleri fazladan kod yazmaktan kurtaran yardımcılardır.
Birçok projede, birçok kez, bazı kod bloklarını tekrar tekrar kullanmak gerekir. Bu bazen çok sıkıcı durumlara neden olur. Bunun için genelde kopyala - yapıştır metodu ile kod bloklarını sayfadan sayfaya taşır yada sayfa içinde satırdan satıra taşırız. Fakat bu kopyala - yapıştır ile yapılan taşıma işlemlerinde, kimi zaman değişken isimleri, kimi zaman da nesneler hatalı taşınır ve sayfamız çalışmaz sinir oluruz (En azından ben sinir olurum).
Bu tür durumlarla karşılaşmamak için olabildiğince kontrollü bir fonksiyon yazar ve parametrelerini düzgün oluşturursak uzun kod blokları yerine sadece fonksiyon ismi ve parametresini kullanarak uzuuuun kod blokları ile uğraşmaktan kurtuluruz.
Ben pek fonksiyon kullanmayı sevmezdim (Hatta beceremem diye kullanmazdım :) ) ama elime geçen bir asp.net kitabında, döviz kuru hesaplama ile ilgili bir fonksiyon anlatılıyordu. O fonksiyonu değiştirerek birkaç yerde kullanınca , bir daha vazgeçemedim. Hemen çok işlevsel fonksiyonlar yazamadım tabiki ama Can Hanhan'la tanıştıktan sonra, onunda yönlendirmeleri ile çok hoş , hızlandırıcı ve birçok uzun kontrolü çok rahat kullanabildiğim fonksiyonlar yazmaya başladım.
Basit bir fonksiyon yapısı aşağıdaki gibidir.
<% Function FunctionAdi(Parametre)
' …. Parametrenin işleneceği kod bloğu burada olacak
End Function
%>
Fonksiyonlarda bazen hiç parametre kullanmaya gerek kalmaz (Tarihle ilgili işlemler, session'la ilgili işlemler örnek olabilir), bazı fonksiyonlar tek parametre ile iş gördüğü gibi bazen abartıp 4 - 5 parametre hatta daha fazlasının kullanılması gerekebilir.
Bir fonksyiona nasıl parametre gönderir ve sonuç döndürürüm derseniz.
<%
Function Doviz(iDolarKur,iDolar)
Doviz = iDolarKur*iDolar
End Function
%>
1.Satırda ; Doviz adındaki fonksiyonumuza iDolarKur ve iDolar isimli parametreler ile çalışacağını söyledik
2.Satırda ; Döndürülecek sonuç olarak 1. parametre ile 2. parametreyi çarpma işlemine soktuk
3.Satırda ; Fonksiyonumuzu kapattık.
If isNumeric(Parametre) Then …. Yada, If IsDate(parametre) Then ..
Gibi kontroller ile fonksiyonunuzu geliştirebilir hataların önüne geçebilirsiniz.
Yukarıdaki fonksiyonu aşağıdaki gibi kullanırız.
<%
iDolarKur = 1.5 ' 1 dolar o gün 1.5 TL olduğunu varsayıyoruz
Response.Write Doviz(iDolarKur,10) %>
Yukarıdaki şekilde kullandığımız zaman, 1 ve 2. parametreleri çarpma işleminden geçirerek sonuç olarak bize 15 rakamını verecektir.
- Fonksiyonun çalışır halini test etmek isterseniz buradan buyrun
- Fonksiyonun çalışır halini kod olarak isterseniz de buradan
Daha karmaşık bir fonksiyon incelemek isterseniz. Kayıt edileli ne kadar süre geçmiş adlı yazımdaki fonksiyonu inceleyebilirsiniz.
İlerleyen zamanlarda projelerimde sık sık kullandığım fonksiyonları paylaşmaya çalışacağım.
Umarım fonksiyonlar hakkında az da olsa bir fikir sahibi olmuşsunuzdur.



