Karalama Defteri - Giriş SZP.net 4.1 Beta  
Bu Aralar Azeri Sitelerindeyim
http://www.aliev.info adresindeki bir Azeri sitesinde aşağıdaki yazıyı okudum, gerçekten güzel latife.

Proqramçı ile sade işçinin ferqi ondadır ki, sade işçi ele bilir ki 1 MB 1000 KB-dır, proqramçı ise ele bilir ki 1 Km 1024 Metr-dir.

Yani demek istiyorki:
Programcı ile sade işçinin farkı şudur ki, sade işçi şöyle bilir ki 1MB, 1000 KB'dır, programcı ise şöyle bilir ki 1 Km., 1024 Metredir.

ufukyayla 27.09.2005 09:54:25 Yorumlar [1]



FreeBSD - Özgürüm Ben De
Bir özgür yazılım furyası almış başını gidiyor, katılmamak olmaz, ama herkesin gittiği yolu tercih etmem genelde. Bu sebeple herhangi bir Linux dağıtımını değilde FreeBSD'yi seçtim. Yeni kuruyorum ama iyi birşeye benziyor. En azından kırk çeşidi yok ve bu anlamda Linux'tan daha ciddi duruyor. Eğer siz de kurmaya karar verirseniz şunu unutmayın, çünkü bu benim yarım saatimi aldı. FreeBSD'nin son sürümü 5.4 için 3 cd imajı indirdiğinizde bunlardan birinin "boot" diye isimlendirildiğini göreceksiniz, aldanıpta kuruluma bu cd ile başlamayın olmuyor, aşağıdaki hatayı veriyor. 1. CD ile başlayın.

unable to transfer the base distribution from acd0

Bir de acemi iseniz (ben gibi) mutlaka standart kurulum yapın. Kurulum konusunda eski sürümü (4.2) anlatsa da Türkçe kaynak var. http://www.enderunix.org/docs/freebsd_kurulum/index.html

ufukyayla 20.09.2005 22:42:14 Yorumlar [3]



JavaScript Onload Meselesi
AJAX kullanarak web sayfası üzerinde çalışan bir sohbet uygulaması yapıyordum. Sayfa yüklenince bir fonksiyonun çalışıp daha önce kullanıcıların yazdığı mesajları getirip bir div içinde göstermesi gerekiyordu. Bunun için;

<body onload="ajax_getir()">

yazdım ama tarayıcıda sayfanın parse edilmesi henüz bitmeyip ilgili div oluşturulmadan fonksiyon çalıştığından Nesne Gerekli hatası alıyordum.

<script>
    window.onload=ajax_getir;
</script>


şeklinde yazmakta çözüm olmadı.

Sonunda fonksiyonun çağrılmasını sayfanızın en altına koyduğum bir resmin yüklenmesi esnasında oluşan onload olayına bağlayarak sorunu çözdüm.

<img src='resim.gif' onload="ajax_getir()">

ufukyayla 20.09.2005 14:55:42 Yorumlar [0]



VB.NET Bu İsim Çok Uzun
Bundan böyle VB.NET'in kısa adını B# olarak değiştirdim. Böyle bilinsin.

admin 14.09.2005 22:21:59 Yorumlar [0]



Aduzayı Kavramı, Nesnelerin Yapılandırıcıları ve Nesnelerin Özellikleri
ASP.net aduzayı, nesne, yapılandırıcı, özellik, namespace, class, constructor, property

Bu makale Nesneye Yönelik Programlamanın temel taşları olan nesne (Class) lerin yapılandırıcılarını ve özelliklerini (properties) anlatır. Ayrıca aduzayı kavramına kısaca değinilmiştir.

Aduzayı (Namespace)

.NET çatısı altında hazır olarak gelen binlerce sınıf vardır. Ayrıca biz de kendi sınıflarımızı yazabilmekteyiz. Bütün bu sınıfların karışmaması için iyi tasnif edilmeleri gereklidir. Aynı adı taşımakla beraber farklı işlere yarayan sınıflar vardır. Örneğin TextBox sınıfı System.Web.UI.WebControls aduzayında hem de System.Windows.Forms aduzayında vardır. Bunlardan System.Web.UI.WebControls.TextBox ASP.NET'de web sayfalarında kullandığımız metin kutuları diğeri olan System.Windows.Forms.TextBox ise standart (.exe) uygulamalarda kullandığımız metin kutularıdır. Farklı aduzayı içinde oldukları için birbirlerinden ayırt edilebilirler. Bu durumda bu sınıfların karışmaması için aduzaylarının kullanılması bir zorunluluktur.

Bir nesneyi türetirken nesneyi türeteceğimiz sınıfın bir anlamda tam adresini vermek gerekir.

Dim Baslik As New System.Web.UI.WebControls.TextBox()

Bu kodda görüldüğü gibi Baslik nesne System.Web.UI.WebControls aduzayı içindeki TextBox sınıfından türetilecektir. Sınıfı, bulunduğu aduzayı ile beraber yazmak pratik değildir. Bu durumda kullanacağımız aduzaylarını ASP.NET sayfamızın başında belirtiriz.

Imports System.Web.HTTPContext
veya;
<%@ Import Namespace="System.Web.HTTPContext" %>

Bu belirtme yapıldıktan sonra nesneyi türetmek için;
Dim Baslik As New TextBox
yazmak yeterli olacaktır.

Yapılandırıcı (Constructor)

Bir sınıftan yeni bir nesne türettiğimizde nesnenin bazı varsayılan değerleri yüklemesi, hazırlık işlemlerini yapması gerekebilir. Ya da biz bir nesnenin bazı özelliklerini daha türetme aşamasında iken belirlemek isteyebiliriz. İşte bu iş için nesne türetildiğinde hemen çalışan özel bir yordam yazılır. Bu yordam VB'de New() adını taşır; C#'da ise sınıfla aynı addadır, yani sınıfın adı Temel ise yapılandırıcısının adı da Temel olur.

Sınıf, Nesne, Nesneye Yönelik Programlama adlı makalemde kodunu verdiğim örnek sınıfın bir yapılandırıcısı vardı. Bu sınıftan bir nesne türetildiğinde ilk olarak bu (kodu aşağıda olan) yordam çalışmakta ve bazı ayarlamalar yapmaktaydı. Yapılacak matematik işlemini toplama, ilk sayıyı 4 ve ikinci sayıyı 2 olarak belirleyip sonucu hesaplıyordu.

Public Sub New()
    csIslem = "+"
    ciSayi1 = 4
    ciSayi2 = 2
    Hesapla()
End Sub


Bir nesne türetildiğinde veya nesne tanımlandıktan sonra kendisine New anahtar kelimesi ile yeni bir nesne referansı atandığında ilgili sınıfın yapılandırıcısı çalışır.

Dim Hesap As New Matematik.Temel()
veya;
Dim Hesap As Matematik.Temel
Hesap = New Matematik.Temel()


Her iki durumda da sınıfın kodu içinde bulunan New() yordamı çalışacaktır. Bu yordam Temel adlı sınıfın yapılandırıcısıdır. Bütün yapılandırıcılar VB'de New() adını taşır, C#'da ise sınıfla aynı addadır. Yapılandırıcı yordamı da adı üstünde bir yordamdır ve diğer yordamlar gibi farklı overload halleri olabilir.

Overload Yordamlar ve Overloading Kavramı adlı makalemde overloading konusundan bahsetmiş ve örnek olarak OleDBCommand sınıfının yapınlandırıcısını (constructor) vermiştim. Ardından temel matematik işlemlerini yapan bir sınıfı örnek vererek overloding kavramını anlatmıştım. Overloding kavramını için bu makaleyi tekrar okuyunuz.
Örneğin OleDBCommand nesnesinin yapılandırıcısının (yapılandırıcı, constructor) dört farklı overload hali vardır.

OleDBCommand()
OleDBCommand(cmdText)
OleDBCommand(cmdText, Connection)
OleDBCommand(cmdText, Connection, Transaction)


Bu yordamların hepsi aynı adı taşımakla beraber çağrılırken kullanılan parametre sayısına ve türüne göre birbirlerinden ayırt edilirler.

Özellikler (Propeties)

Nesnelerin özellikleri vardır. Tabiatta gördüğümüz her cismin, her nesnenin renk, boy, en, ağırlık gibi özellikleri olduğu gibi .NET çatısı altında programlamada kullandığımız nesnelerin de özellikleri vardır. Özellikler nesnelerin kendilerine verilen işleri nasıl yapacaklarını ele aldıkları veriye göre nasıl davranacaklarını belirler.
Yine Sınıf, Nesne, Nesneye Yönelik Programlama adlı makalemde kodunu verdiğim Temel adlı sınıfın 4 adet özelliği vardı. Aşağıda bunlardan biri olan Islem adlı özelliğin kodunu görmektesiniz.

Public Property Islem() As String
    Get
        Return csIslem
    End Get
    Set(Value As String)
        csIslem = Value
    End Set
End Property


Bu özelliğe "+", "-", "*" veya "/" atanarak yapılacak işlem türü belirleniyordu. Burada Islem özelliği Get ve Set adlı iki kısımdan oluştuğundan hep yazılabilir hemde okunabilir durumdadır. Yani Temel.Islem="+" yazarak yapılacak işlemi toplama olarak belirleyebilir ya da If Temel.Islem="+" Then ... yazarak işlemin ne olduğunu okuyabiliriz. Ancak bazı durumlarda bir özelliğin sadece okunur (ReadOnly) olmasını, değiştirilememesini isteyebiliriz. Temel adlı sınıfın Sonuc özelliği böyle bir özelliktir. Sonucun dışarıdan atama yapılarak değiştirilmesi doğru olmaz. Sonuc sadece okunabilir olmalıdır.

Public ReadOnly Property Sonuc() As Integer
    Get
        Return ciSonuc
    End Get
End Property


Görüldüğü gibi sadece Get kısmı vardır. Ayrıca özellik tanımlanırken ReadOnly anahtar kelimesi kullanılmıştır.

Birde sadece atanabilen ve sonradan okunamayan (WriteOnly) özellikler vardır. Örneğin yukarıda kodu görülen Islem özelliğini sadece yazılabilir biçimde yazalım.

Public WriteOnly Property Islem() As String
    Set(Value As String)
        csIslem = Value
    End Set
End Property


Bu özellik sadece yazılabilir olduğundan Get kısmı yoktur.

Özellikleri tanımlarken sınıfın içindeki komutlar yanında dışarıdanda erişilebilmesi için Public anahtar kelimesi ile tanımlamak gereklidir. Ayrıca özelliğe bağlı olarak uygun veri türü tanımlanmalıdır. Value As String gibi.

Bu yazı kaynak göstermek kaydıyla kısmen, tamamen veya değiştirilerek yayınlanabilir.
En yeni makaleler FındıkKurdu'nda yayınlanır. http://www.findikkurdu.com

Bir sonraki makalede görüşmek üzere.

ufukyayla 02.09.2005 11:15:21 Yorumlar [0]



Sayfalar : 1 2 [3] 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

Blog - ASP.NET!VB
  Karalama Defteri
 Giriş
 Bölümler
 Son Yorumlar
 
  Bölümler
 Deli Gömleği
 Eşeryakoli
 Makaleler
 Projeler
 UfukSZP Dağıtımı
 ASP.NET Maceraları
 
  Son Karalamalar
 Foruma üye girince oluşan ...
 Taşındık
 SoulTips Gibi Birşey
 Ya Nasip
 Ulan Ubuntu
 El Yapımı Projeksiyon
 Ne İstiyor Bu Üyeler
 Sınıflarda Kalıtım (Inheri...
 Sadeleştirme Şart
 South Park
 
  Son Yorumlananlar
 Ya Nasip
 Ben Ziraat Mühendisiyim
 UfukSZP Dağıtımını Kullananl...
 Grup Hepsi
 Ne İstiyor Bu Üyeler
 Ziyaretçi Defteri
 Powered By Access
 Ulan Ubuntu
 Network A.K.T. (Arada Kafamı...
 Sınıf, Nesne, Nesneye Yöneli...
 
  Güzel İnsanlar
 Fındık Kabuğu
 Evren AYAN
 Halil TUNÇ
 Can HANHAN
 Mehmet TURAC
 Bloglar Alemi
 
  Şu Anda Bağlılar
 Misafir, Misafir, Misafir, Misafir, Misafir, Misafir, Misafir 
 
  Ordan Burdan
 Dağlarda meşelerde,
Gül yağım şişelerde.
Herkes yarini aldı,
Ben kaldım köşelerde.
 
 
 
 
 
 
 
 
 
 

Bu sayfa 0,031 saniyede derlendi.





Bu sitede çalışan bütün ASP.net ve JavaScript kodları orjinaldir ve sıfırdan yazılmıştır.
Site yaygın bütün tarayıcılarla (IE, Firefox vs.) uyumludur.
Bu sitede kullanılan SZP.net 4.1 Beta altyapısı MS Access, MySQL Server ve MS-SQL Server ile çalışabilmektedir.

Tasarım & Kodlama
Ufuk YAYLA