Delphi Dünyası Facebook'ta

Kodbank İndir

! CODEBANK 2012 !

İNDİRMEK&DETAYLI BİLGİ ALMAK İÇİN BURAYI TIKLAYINIZ.

Gönderen Konu: C# Dökümanlarını Delphi.Nete Çevirme  (Okunma sayısı 4374 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı Fatih

  • Emekli Yönetici
  • *****
  • İleti: 2.217
  • Rep: +43/-10
  • Cinsiyet: Bay
    • Delphi Dünyası
C# Dökümanlarını Delphi.Nete Çevirme
« : 24 Ekim 2005 10:20:42 »
Merhaba Arkadaşlar,
Bu makale ile birlikte makale yazmaya uzun bir ara vereceğim ve sanal aleme uzun bir süre uğramayacağım. Tek tük görünsem de pek aktif olan bir internet kullanıcısı olmayacağım.
Bu makalede tahmininizin aksine C# anlatacağım.
Peki neden C#?
Biliyorsunuz internette Delphi.Net konusu pek işlenmemiş durumda. Buda bir çok Delphi kullanıcısını zorlamaktadır. Her ne kadar yazdığım makalelerle sizleri aydınlatmaya çalıştıysam da yeterli olamadığımı biliyorum. Kitap yazmama makaleleri tamamen sekteye uğrattı. :(
Bu makale ile ASP:Net komutlarıyla kullanılan genel C# kullanımını anlatmaya çalışacağım. “Koca C# bir makalede anlatılır mı?” diye düşünebilirsiniz. Elbetteki anlatılmaz; ancak bu makaleyi okuyup anladıktan sonra C# kullanılarak hazırlanmış ASP.Net makalelerini ve MSDE de bulunan yardım dökümanlarını anlamanıza yetecek kadar C# bilen biri olacağınıza garanti edebilirim.  Anlamadığınız kodlar karşınıza çıksa dahi ufak bir araştırmayla sonuca ulaşabilirsiniz. Ayrıca bu başlık altına da sorabilirsiniz.
Siteye uzun bir süre katkıda bulunamayacağım için bu makaleden faydalanan herkesin sitemize bir makale borcu olmaktadır. :) Tabii ki zoraki sizlere makale eklettiremeyeceğim için makale eklemeyenlere gönül koyacağımı belirterek makalemize başlayalım.


Değer atamak için := yerine = (sadece eşittir) kullanılıyor
Bir değerin eşit olup olmadığını çift eşittir kullanarak belrtiyoruz
Kod: [Seç]
If a==a5
Gibi.

C# ta istediğiniz yerde değişken tanımlayabilirsiniz. Delphideki gibi Begin den önce tanımlamalısınız diye bir zorunluluk yoktur.
Değişken tanımlarken önce değişken tipi, sonra değişken adı yazılmalıdır. Aralarında iki nokta üst üste(:) kullanılmaz. Tıpkı delphideki gibi noktalı virgülle komutlar son bulur.
Örnek
Kod: [Seç]
Int a;  //integer
Bool b;  //b adında boolean değişken
Char ch;
String str;

Değişken tanımlarken ilk değeri aşağıdaki şekilde atayabilirsiniz.
Kod: [Seç]
İnt a=5;
String atamalarda tek tırnak değil çift tırnak kullanılır
Kod: [Seç]
String str=”www.delphidunyasi.com”;  
Değişkenlerde tip dönüşümü delphideki gibi Convert.ToString, i.ToString gibi yapılacağı gibi aşağıdaki örnekteki gibi de yapılabilir
Kod: [Seç]
String str=”5”; //string değişkene 5 değeeri ata
Int a=(int)str; //parantez içine dönüştürülecek tip yazılır.

a adında integer değişken tanımlayıp str değişkenindeki değeri integere çevirip a’ya ata.
Sonuç a=5
Değişkende şu şekilde atama da yapılabiliyor.
Kod: [Seç]
A+=5; Delphi karşılığı
Kod: [Seç]
A:=A+;
Aynı şekilde diğer işlemler ve string ifadeler içinde geçerli
Değişkenleri gözünden tanıyacağınızı bildiğim için buraya  yazmıyorum :)

Delphideki “Begin End” yerine “{}” üç köşeli parantezler kullanılır.
Birde ne hikmetse neredeyse her komutun sonuna parantez eklenir “():)
If  gibi şart eklerinde komut satırı tek olsa da “Begin End” anlamına gelen “{}” karakterleri kullanın.
Öperatörler
Kod: [Seç]
“&& veya /& “ = “and” //bazen + yerinede kullanılır
“|| veya |” =”or”
“! Veya ~” =”not”
“%” = “mod”
“degisken++;” = ”inc(degisken);”  //degiskeni bir arttır
“degisken--;” = ”dec(degisken);”  //degiskeni bir azalt

   Akış Kontrol Komutları
IF.. ELSE
Kod: [Seç]
IF (şart)
Komut;
Else
Komut;
Şeklinde  kullanılır. Then diye bir ifade kullanmak gerekmiyor. Komut birden fazla ise {} karakterleri arasına yazılır. Else’den önce Noktalı virgül kullanılır. Şartlar parantez içine alınır. If’te birden fazla şart varsa tüm şartla bir parantez içinde toplanır.
Örnek:
Kod: [Seç]
if ((i>1) && (i<5))
komut;

Switch Namı diğer Bizim Case ..of :)
Örnek kullanım
Kod: [Seç]
Switch (i) // i yerine herhangi bir değer
{
Case 1:
İşlem;
Break; //Switchten çıkış için şart
Case 2:
işlem;
Break;
Default : // else yerine kullanıyoruz
İşlem;
Break;
}

For…do’muz
Kod: [Seç]
For (i=1; i<=5; i++)
{
kodlar ; // tek satırs1a  {}’a gerek yok
}
ilk önce i değişkenine 1 değeri atanıyor. Sonra i 5’ten büyük değilse döngüdeki kodlar işliyor. Son olarak  değeri bir arttırılıyor. Döngü tekrar başlıyor.
Delphi karşılığı
Kod: [Seç]
For i:=1 to 5 do
Komutlar; // sadeliğe bak bea
:)

İ’nin değerini istediğiniz zaman arttırabilirsiniz. For’da hiçbir parametre kullanılmazsa dahi noktalı virgüller yazılacak.
Örnek
Kod: [Seç]
For (; i<=5;)
{
i++;
diğer komutlar; // enteresan  bir kullanım :)
}

While Namı diğer While…Do
Örnek kullanım
Kod: [Seç]
While (şart)
{
işlemler;
}

Do..While
Whileden farkı döngünün mutlaka bir kere çalışması
Örnek
Kod: [Seç]
Do
{
işlemler
}
While (şart);

ForEachDizi vb. elemanların ilkindenm başlayarak tarar
Örnek
Kod: [Seç]
ForEach(i in dizi)
{
işlemler;
}


Prosedür tanımlama
Kod: [Seç]
Void prsedurAdi(parameteer);
{
işlemler;
}


Fonksiyon Taımlama
Kod: [Seç]
DonusDeğerTipi fornksiyonAdi (parametreler);
{
işlemer
}

örnek fonksiyon
Kod: [Seç]
int ilkfonk(int a, int b);
{
Return = a+b; // Return fonksiyon adına değeri atar
}


fonksiyon  ve prosedürlerin başında Private, Public gibi ibareler bulunur. Bunlar fonksiyon ve prosedürlerin  erişim alanını belirler.

son olarak Hemen hemen her yerde gördüğünüz New komutu Delphideki Create komutuna karşılık gelmektedir.

Not:  yukarıdaki kodlarda  çift tırnak (") işareti code tagları arasında php de özel bir anlam ifade ettiği için fraklı görünüyor.
Malulen emekli programcı / yazar. Bildiklerini unutmakta olduğundan size cevap veremez.

Çevrimdışı Fatih

  • Emekli Yönetici
  • *****
  • İleti: 2.217
  • Rep: +43/-10
  • Cinsiyet: Bay
    • Delphi Dünyası
Malulen emekli programcı / yazar. Bildiklerini unutmakta olduğundan size cevap veremez.

Çevrimdışı dameon

  • Delphi 5 Level 4
  • ****
  • İleti: 236
  • Rep: +5/-1
  • Cinsiyet: Bay
Ynt: C# Dökümanlarını Delphi.Nete Çevirme
« Yanıtla #2 : 24 Kasım 2005 05:15:05 »
http://dotnet.borland.com/babelclient/BabelClient.aspx

Ben bazen bu link'i kullanıyorum C# kodlarını Delphi.Net'e çevirmek için.Ama Function ismini filan silmek gerekiyor şu void bilmem ne diye başlayan kısım.Sadece function içinde kalan kısımları yapıştırıyorum.

Çevrimdışı Kocaturk

  • Administrator
  • *****
  • İleti: 2.474
  • Rep: +56/-5
  • Cinsiyet: Bay
    • Delphi Dünyası
Ynt: C# Dökümanlarını Delphi.Nete Çevirme
« Yanıtla #3 : 29 Aralık 2006 20:11:20 »
http://dotnet.borland.com/babelclient/BabelClient.aspx

Ben bazen bu link'i kullanıyorum C# kodlarını Delphi.Net'e çevirmek için.Ama Function ismini filan silmek gerekiyor şu void bilmem ne diye başlayan kısım.Sadece function içinde kalan kısımları yapıştırıyorum.
BabelClient ın sağlıklı çalışması çin C# kaynak kodun tamamını örneğin bir unit i girerseniz birebir unit delphi ile yazılmış gibi geri dönüyor(not : bilmeyenler için) :):)