ForumPusu.Net Moderatör Olmak İsteyenler Tıklayınız  

Geri git   ForumPusu.Net > YAZILIM - PROGRAMLAMA > ASP ve PHP DiLLeri
Kayıt ol Üye Listesi Forumları Okundu Kabul Et

ASP ve PHP DiLLeri ASP ve PHP dilleri hakkında her şey.

Cevapla
 
Seçenekler Stil
Alt 23-08-06, 16:36   #11
Pusu
Bilgiler
Mesajlar: n/a
Karizma
İletisim
ASP'nin Nesneleri
Masa, nesnedir. Notebook bilgisayarınız da nesnedir! Arkadaşınız da bir nesnedir. Tabiî bunu onun yüzüne karşı söylemeseniz, iyi olur. Her nesnenin özellikleri vardır. Masa serttir. Su, içine konulduğu nesnenin biçimi alır.

ASP tekniğinde de amacımız nesnelerin özelliklerini kullanarak, ya bu özellikleri belirlemek, ya da değiştirmektir. Nesne Yönelimli Programlama (Object Oriented Programming, OOP) kavramını daha önce çok duymuş olmalısınız. Bir önceki bölümde fonksiyonlarla, Sub'larla, değişkenlerle tanıştık. Diyelim ki öğretmensiniz (ah, nerede o günler!) ve ASP programınızda her öğrencinin notunu veritabanına işleyen, veritabanından notları alarak geçeni-kalanı belirleyen veya öğrencilerle ilgili daha yapılması gereken bir çok işi yapan fonksiyonlarınız ve Sub'larınız var; bunların kullandığı bir çok değişkeniniz var: demek ki sizin ASP programınızda "öğrenci" diye bir nesneniz var. Ve siz bu nesneye yönelimli program yapmışsınız!

Her "program nesnesi" iki unsura sahiptir:

Özellik (Property, Attribute): Bir nesnenin özellikleri, onun değişkenleridir. "Öğrenci" nesnesinin "Öğrencinin Adı," "Notları," "Adresi" gibi değişkenleri, yani özellikleri vardır.

Metod (Method): Bir nesnenin işlemesi, çalışması için, kısaca kendisinden bekleneni yerine getirebilmesi için çalışma yöntemlerine ihtiyacı vardır. Dolayısıyla bir ASP nesnesinin fonksiyonları, onun metodlarıdır.

Fakat ASP'de nesneler sadece sizin öbekler halinde toplayacağınız fonksiyonlar ve değişkenlerden ibaret değildir. Bir kere, ASP programında kullandığınız Script dilinin getirdiği nesneler vardır. ASP sayfasını Javascript ile yazarsanız başka, VBScript ile yazarsanız başka dil nesnelerine sahip olursunuz; ancak her ikisinde de ortak olan "Scripting" nesneleri vardır. Bunlara birazdan ayrıntılı ele alacağız. Sonra Web Server'ın size hazır sunduğu nesneler vardır. Bunları daha sonraki bölümde göreceğiz. Ve tabiî, Browser'ın bir HTML sayfasının bölümlerini nesne sayarak oluşturduğu nesneler vardır. Bunlara da diğer nesneleri ele alırken sırası geldikçe değineceğiz. (Tabiî bir de ASP programınızı Javascript ile yazarsanız, VBScript'ten farklı olarak kendisi nesne-yönelimli bir dil olan Javascript'in oluşturmanıza imkan vereceği nesneler vardır. Fakat bu nesneler, bu kitapçığın kapsamı dışında kalıyor.)

Nesneler nasıl oluşmuş olursa olsunlar, daima size bir değer verirler:

Nesne.Özellik = Değer

Bir nesnenin bir özelliğinin değeri, bizim için bir değişken değeri gibi önem taşır:

If Nesne.Özellik > Değer Then ...

Nesnelerin özelliklerinin değerlerini değişkenlere atayabiliriz; ancak bunu yaparken Nesne'nin bir metoduna (fonksiyonu) göndermede bulunmamız ve gerekiyorsa bu fonksiyona kullanması için veri göndermeliyiz (bir fonksiyona kullanması için gönderilen değere argüman/argument denir):


Degisken = Nesne.Metod(argüman1, argüman2...)

Daha sonra bu değişkeni istediğimiz yerde kullanırız. Bu kadar teoriden sonra bir örnek nesne oluşturursak, belki işin içinden daha kolay çıkabiliriz.

Nesneler, diğer yararlarının yanı sıra, birbiri ile ilgili Sub'larımızı, fonksiyonlarımızı ve değişkenlerimizi birarada tutmamızı sağlar. Şimdi VBScript ile bir nesne oluşturabiliriz:


<%
Class Ogrenci
Public Adi, Soyadi, No
Function AdiSoyadi
AdiSoyadi = Adi & " " & Soyadi
End Function
End Class
%>

Bir dakika! Nesne (object) adını verdik fakat Class (sınıf) oluşturduk! Bu grubun Object..End Object olması gerekmiyor mu? Belki haklısınız; ama bir "sınıf" ancak VBScript tarafından kullanılmaya başlanırsa Nesne olur. Dolayısıyla biz "sınıf" yazarız; VBScript onu Nesne haline getirir. Peki, nesneyi oluşturduk; şimdi bunu nasıl kullanacağız. Çok kolay; önce bu nesneden yeni bir olgu (instance) oluşturacağız; sonra.. Ama önce bunu nasıl yapacağımızı yazalım:



<%
Dim Ogr1
Set Ogr1 = New Ogrenci
Ogr1.Adi = "Necip"
Ogr1.Soyadi = "Fazıl"
Ogr1.No = "181"

Response.Write Ogr1.AdiSoyadi
%>

Her nesne, New (yeni) komutu ile yeni bir değişkene bütün özelliklerini verir. Burada Ogr1 değişkeni, yukarıda oluşturduğumuz Ogrenci nesnesinin bütün özelliklerini kazanmış oluyor. Ogrenci nesnesinin ".Adi", ".Soyadi" ve ".No" özellikleri olması gerekir; nitekim Ogr1'e bu özelliklerini burada veriyoruz. Ogrenci nesnesinin bir de metodu (fonksiyonu) var; Ogr1 bunu da kazanabilir mi? Tabiî; hem kazanır, hem de bunu ziyaretçinin Browser penceresine yazdırabilir.

Nesne kavramını kavramak zordur. Fakat yukarıdaki örnekte görüldüğü gibi, ASP sayfalarınızda nesne oluşturarak çalışmaya alıştığınız zaman bunun sağladığı kolaylıktan kolayca vazgeçmeyeceksiniz.

Hata (Err) Nesnesi

Hangi dille olursa olsun program yazarken hata yapmak kaçınılmaz bir kuraldır. Dolayısıyla kullandığınız programlama dili hatalarınızı kolayca yakalamanıza imkan vermelidir. ASP programlarınızda yazım yanlışlığı, olmayan değişkene gönderme gibi Script hatası olmaması gerekir. Bu tür hatalar, program Web'e gönderilmeden mutlaka ayıklanmalıdır. Fakat programcı olarak öngöremeyeceğiniz, ve çoğu Web ziyaretçisinden veya ziyaretçinin bilgisayarından kaynaklanan hata durumları olabilir. VBScript, şu standart komutla beklenmedik hata durumlarında programın yoluna devam etmesini sağlayabilir:



<% On Error Resume Next %>

Bu komutla VBScript'e, hata halinde bir sonraki satırdan yoluna devam edecektir. Fakat oluşan hata, programın daha sonra vermesi beklenen sonucu vermesini önleyebilir. VBScript, Err (Hata) Nesnesi'nin bir çok özelliğinden özellikle hata sayısı (Number), tanımı (Description) ve kaynak (Source) özellikleri ile size hatanın ne olduğunu ve nereden kaynaklandığını söyleyebilir. Bu özellikleri kullanarak, programlarınızda, en azından geliştirme aşamasında, örneğin,


If Err:Number = xx Then

şeklinde bir ifade ile hatanın türüne göre programın kazasız yürümesini sağlayabilirsiniz. Burada xx yerine 108 ayrı hata numarası yapabilirsiniz. Hata numaraları, Microsoft'un VBScript sitesinden edinilebilir.


Nesneler hakkında aşağı yukarı bir fikir edindiğimize göre, şimdi kullanılmaya hazır Nesne'lerden başlayarak, VBScript kullanırken, ASP sayfalarımızda yararlanabileceğimiz Nesne'leri ele alabiliriz.


Dosya Sistemi Nesnesi

Dosya Sistemi Nesnesi (FileSystemObject), ASP programının, Web Sunucusunun sabit disk sisteminde, sürücüleri, klasörleri ve dosyaları yönetmekte kullanacağımız temel araçtır. Burada, ne denli güçlü bir araçtan söz ettiğimizi hemen görebilmek için şu kodu yazalım ve dosya_yaz.asp adıyla kaydedelim:

<% Option Explicit %>
<HTML>
<HEAD>
<TITLE>ASP ILE DOSYA YAZMA</TITLE>
<META http-equiv="Content-Type" content="text/html; charset=windows-1254">
</HEAD>
<BODY>

<%
Dim YaziFSO, yaz
Set YaziFSO = CreateObject("Scripting.FileSystemObject")
Set yaz = YaziFSO.CreateTextFile("c:\yazi_deneme.txt",True)
yaz.WriteLine("Bu bir denemedir.")
yaz.Close
%>

<H2><CENTER>Bu Web sayfası sabit diske yazı yazdırır!!
<BR>Şimdi C: sürücüsünde yazi_deneme.txt adlı bir dosya olması gerekir!
<BR>Lütfen bakar mısınız?</H2></CENTER>
</BODY>
</HTML>
Kodumuzun Dim satırında iki değişken belirlediğimizi görüyorsunuz. Fakat bu iki değişkeni sistem nesnesi olan Scripting'in yeni bir olgusu olarak kullanacağımız için daha önce standart değişkenlere değer atadığımız gibi değil, fakat Set komutundan yararlanıyoruz, ve YaziFSO değişkeninde bir "Scripting.FileSystemObject" nesnesi oluşturulmasını sağlıyoruz. (ASP uzmanları arasında gelenek, nesne değeri tutan değişkenlere, ilgili nesnenin baş harflerini eklemektir. Böylece bir değişkenin adına bakarak, işlevini anlamak mümkün olur.)

"yaz" değişkeni YaziFSO'da yeni bir olgusunu oluşturduğumuz FileSystemObject'in CreateTextFile (Düzyazı dosyası oluştur) metodunu kullanıyoruz; bu metod oluşturulacak dosyanın adını ve eğer bu dosya varsa üzerine yazılmasına izin veren True (doğru) veya buna izin vermeyen False (yanlış) kelimesini argüman olarak alır. "yaz" değişkeni şimdi kendisi bir metod kullanabilecek şekilde, FileSystemObject'in bir örneğidir; nitekim WriteLine metodu ile biraz önce oluşturulan dosyaya, argüman olarak verdiğimiz metni yazdırmaktadır. Bu kodu çalıştırdıktan sonra, sabit diskinize bakarsanız, düzyazı dosyasını göreceksiniz.


İyi Forumlar.
  Alıntı ile Cevapla
Alt 24-08-06, 00:16   #12
vanixjy
Yeni Üye
 
vanixjy - ait Kullanıcı Resmi (Avatar)
Bilgiler
Üyelik tarihi: 08-08-2006
Yer: İzmir
Yaş: 18
Mesajlar: 100
Karizma
Rep Gücü : 4
Rep Puanı : 10
vanixjy is on a distinguished road
İletisim
vanixjy - MSN üzeri Mesaj gönder
Mükemmel bir döküman ellerine sağlık.. Spy farkı gerçekten.. Yazının birazını okudum ve gördüm ki VBScript anlatılırken çaktırmadan Visual Basic öğretmişsiniz =) Ama tabii VBScript, Visual Basic in kaçta biridir bilemem =) Ben bu yazıyı okuyayım, ASP biliyorum derim.. Tekrar teşekkürler =)
vanixjy isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Alt 24-08-06, 00:18   #13
manasiyok
Bronz Üye
 
manasiyok - ait Kullanıcı Resmi (Avatar)
Bilgiler
Üyelik tarihi: 21-08-2006
Yer: 10.85.96.17
Mesajlar: 1.515
Karizma
Rep Gücü : 18
Rep Puanı : 10
manasiyok is on a distinguished road
İletisim
manasiyok - MSN üzeri Mesaj gönder
aşağı inene kadar canım çıktı bide okusam

paylaşımın için saol
manasiyok isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Alt 20-09-06, 22:19   #14
BLUE_AZ
Çaylak Üye
 
BLUE_AZ - ait Kullanıcı Resmi (Avatar)
Bilgiler
Üyelik tarihi: 08-08-2006
Mesajlar: 28
Karizma
Rep Gücü : 3
Rep Puanı : 10
BLUE_AZ is on a distinguished road
İletisim
takılıcams bu bölüme döngü + db bağlamakaldı
BLUE_AZ isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Alt 15-10-06, 10:26   #15
pyscophat
Çaylak Üye
 
pyscophat - ait Kullanıcı Resmi (Avatar)
Bilgiler
Üyelik tarihi: 22-08-2006
Mesajlar: 4
Karizma
Rep Gücü : 0
Rep Puanı : 10
pyscophat is on a distinguished road
İletisim
Eline Koluna SaqLık

Eline SaqLık Pasham Kusura Bakma Ama BunLarın HepSıini Teker Teker Yazdınmı Sen ??
pyscophat isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Alt 05-12-06, 14:36   #16
hector
Çaylak Üye
Bilgiler
Üyelik tarihi: 04-12-2006
Mesajlar: 5
Karizma
Rep Gücü : 0
Rep Puanı : 10
hector is on a distinguished road
İletisim
Ellerine sağlık, arkadaşım Kruis. Tam aradığım dökümanlardı.

Teşekkür ediyorum.
hector isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Alt 06-12-06, 17:48   #17
adamsite
Çaylak Üye
Bilgiler
Üyelik tarihi: 19-11-2006
Yer: Antalya
Mesajlar: 11
Karizma
Rep Gücü : 0
Rep Puanı : 10
adamsite is on a distinguished road
İletisim
adamsite - MSN üzeri Mesaj gönder adamsite - YAHOO üzeri Mesaj gönder
kardeşş çok sağoll ayrıntılı ve anlaşılır olmuşş sen gerçekten süpersinn
adamsite isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Alt 06-02-07, 22:53   #18
SpyOmuR
Yeni Üye
 
SpyOmuR - ait Kullanıcı Resmi (Avatar)
Bilgiler
Üyelik tarihi: 04-08-2006
Mesajlar: 63
Karizma
Rep Gücü : 3
Rep Puanı : 10
SpyOmuR is on a distinguished road
İletisim
s.a ellerin sağlık
SpyOmuR isimli Üye şimdilik offline konumundadır   Alıntı ile Cevapla
Cevapla


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
Yeni Mesaj yazma yetkiniz aktif değil dir.
Mesajlara Cevap verme yetkiniz aktif değil dir.
Eklenti ekleme yetkiniz aktif değil dir.
Kendi Mesajınızı değiştirme yetkiniz aktif değil dir.

Smileler Açık
[IMG] Kodları Açık
HTML-KodlarıKapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı
Gitmek istediğiniz klasörü seçiniz


Bütün Zaman Ayarları WEZ +2 olarak düzenlenmiştir. Şu Anki Saat: 12:35 .


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.

şarkı indir Türkçe - Ingilizce Sözlük Free Program indir divx film indir Gerçeklerin Paylaşıldığı Forum Photoshop Dersleri Flash Dersleri Türkçe Makale Tez Ücretsiz Türkçe Program Indirme Ücretsiz Program Indirme Drug Rehabilitation Psishaman Parapsychology Holiday Guide Travel Guide Big Fishing Blog Health News Forumların Kralı Qatar Business Directory Qatar Classified Qatar Classified Quality Classifieds Quality Classifieds Middle East Talk Host Safari VPSmonster dedicatedmonster Juniper Destek Juniper Destek Juniper Destek Juniper Turkiye Juniper Turkiye Juniper Turkey Juniper Turkey Kanser Tedavisi

eXTReMe Tracker