Yazarlar Sözlük Makaleler Yardım Masası Gözlük Forum İstatistik

Tüm Başlıklar XML

1.  C#'da (ve muhtemelen bir benzeriyle Java'da) string birleştirme için kullanılan sınıf. Yanılmıyorsam System.Text altında.

+ operatörü varken neden StringBuilder kullanma zahmetine gireyim ki diyorsanız yanılıyorsunuz. Çünkü + operatörü ile yapılan string birleştirmede, her bir birleştirme yeni bir String sınıfı instance'ının oluşturulmasına neden olduğundan performans çok kötüdür. StringBuilder kullanmak çok daha performanslıdır.

Örnek şekil:
StringBuilder sb = new StringBuilder();
sb.Append("falan");
sb.Append("filan");
sb.AppendFormat("Ad: {0} Soyad: {1}", ad, soyad);

Console.WriteLine( sb.ToString() );

fizikci
29 Nisan 2006 17:38 ~ 02 Mayıs 2006 02:35
2.  Java'daki denk fonksiyonu ise StringBuffer'dır. Fakat .NET Framework'ün aksine Java derleyicisi String birleştirme işlemini StringBuffer sınıfına çevirerek yapar. Yani string birleştirme için kullandığımız + operatörü aslında derleyici tarafından StringBuffer sınıfını kullanacak şekilde derlenir. Böylece yazılım geliştiricinin özellikle StringBuffer kullanmasına gerek kalmaz.

// BU işlem
String x = "Bilisim " + "Kulubu";

//Aşağıdaki gibi işleme alınır.
String x = new StringBuffer().append("Bilisim ").append("Kulubu");

bateristt
29 Nisan 2006 23:36
3.  String birleştirme işlemleri için .NET'te kullanılmasını şiddetle önerdiğim sınıf. + operatörü ile yapılan string birleştirme yerine kullandıldığında çok fazla performans artışı sağlar.

fizikci'nin geliştirdiği Performans Testi (CodeDOM ile) uygulaması ile yaptığım test sonuçları farkı ortaya koyuyor. Test'te 10.000.000 defa 5 karakterli string birleştirme işlemi yaptım. + operatörü ile bu işlem 13.469 ms'de tamamlandı. StringBuilder ise bu işlemi 1.125 ms'de tamamladı. Fark oldukça fazla fakat bu fark çok sayıda string birleştirme işlemleri sırasında kendini gösteriyor.
bateristt
01 Aralık 2006 21:30 ~ 02 Aralık 2006 11:17
Bu konuda bildiklerinizi bizlerle paylaşabilirsiniz
Tabi bunun için yazarsanız giriş yapmalı, yazar değilseniz yazar olmalısınız.


Bu başlığa bkz veren girişlerin başlıkları nedir?

Bu başlığa bkz veren girişler başka hangi başlıklara bkz verdiler?
© 2005, Bilişim Kulübü. (1093 ms)
Ne yapabilirsin: SubtitleClick ile İngilizceni Geliştir, Çınar Framework ile kod yaz, Eglencelik.org'ta biraz eğlen