Tuesday, June 29, 2010

Yazdığımız kodların analizini yapması için bir tool a ihtiyacımız var diyenlere FxCop iyi bir alternatif olabilir. Tesadüfen karşıma çıktı ansızın, denedim sevdim, özellikle .net dünyasına yeni girişmiş arkadaşlarımızın çok işine yarayabilir...

Daha fazlası için tıklayalım

Tuesday, June 29, 2010 10:27:58 PM (GTB Standard Time, UTC+02:00)  #    Comments [0]  | 
Saturday, April 24, 2010

Birçoğumuz stored procedure yaratırken, stored procedure isimlerinin önüne  sp_ ön ekini koyarız. Tabi farklı isimlendirmeler tercih edenlerimiz de olabilir, ancak sp_ ön ekini kullandığımız zaman SQL server bu stored procedure ü, her ne kadar siz sp nin yerini ve ismini tam olarak belirtmiş olsanız da sistem stored procedure ü olarak algılar ve çağrıldığı zaman da master database de arar. Bu da açıkçası ciddi performans kayıplarına neden olur. Bu sebeple sp_ yerine usp_ kullanırsak SQL server bunun kullanıcı tarafından oluşturulmuş bir sp olduğunu anlar...

Saturday, April 24, 2010 5:58:21 PM (GTB Standard Time, UTC+02:00)  #    Comments [0]  | 
Saturday, April 17, 2010

Compile zamanında hata vermeyen ama eğer yanlış ya da mantıksız kullanılırsa run-time da hata veren yepyeni bir tipimiz var artık.
Örneğin;

dynamic x= 7;
x.SayHello(); // gibi bir durumda run-time hatası alırız...

ama mesela şöyle aritmetik ortalama yapan bir program parçası için düşündüğümüzde ise gayet kullanışlı olabilir;

static dynamic ortalama(dynamic x, dynamic y)
{
return (x + y) / 2;
}
static void Main()
{
int x = 3, y = 4;
Console.WriteLine (ortalama(x, y));
}

burada kazancımız nedir ? açıkça görebiliriz ki er sayı tipi için ayrı bir metot yazmamıza gerek kalmıyor...

dynamic ve object tipleri aslında birbirlerine çok çok benzerler, öyle ki run-time da
typeof(dynamic)== typeof(object) size true değerini verir, hata almazsınız. Aynı şekilde

typeof (List<dynamic>) == typeof (List<object>)
typeof (dynamic[]) == typeof (object[])

ifadeleri için de geçerlidir...

Object referansında olduğu gibi, dynamic tipini de herhangi bir object tipine refere edebiliriz;

dynamic x = "selam";
Console.WriteLine (x.GetType().Name); // String
x = 123; // hata vermez !
Console.WriteLine (x.GetType().Name); // Int32

Gördüğünüz gibi yapısal olarak object referanslamadan hiçbir farkı yok... Bu şekilde dinamik operasyonlara müsade eden yapılar kurabiliriz ;

object o = new System.Text.StringBuilder();
dynamic d = o;
d.Append ("selam");
Console.WriteLine (o); // selam !

Bir diğer konu da,

public class Test
{
public dynamic Foo;
}

metodunun aşağıdaki metotla aynı olması,

public class Test
{
[System.Runtime.CompilerServices.DynamicAttribute]
public object Foo;
}

Buradaki avantajımız, dynamic tipini desteklemeyen dillerde, kullanıcılar/developerlar object nesnesi kullanarak yollarına devam edebilirler...

Peki bizim var diye bir tipimiz de var, onunla arası nasıl bu dynamic in diye bakacak olursak;

• var şöyle der, “tipin değerlendirmesini derleyiciye(compiler) bırakalım”
• dynamic de şöyle der, “yokabi gerek yok,tipin değerlendirmesini biz çalışma zamanına bırakalım(run-time)”

dynamic x = "selam"; // Static tip dynamic, runtime tipi ise string
var y = "aleykum selam"; // Static tip  string, runtime tipi de string
int i = x; // run-time hatası
int j = y; // compile-time hatası alırız...

Saturday, April 17, 2010 4:51:40 PM (GTB Standard Time, UTC+02:00)  #    Comments [0]  | 
Thursday, December 24, 2009

Geçenlerde bir arkadaşımdan duydum, yurt dışında iken almış hediye olarak. Bizim eski Furby' nin biraz daha gelişmişi. Dinozor yavrumuz oldukça gelişmiş yazılımı ile yapay zekanın sınırlarında geziyor. İlgimi çekti, belki de gerçekten iyi bir hediye olabilir ama belirtmeden de geçmeyeyim gerçek bir evcil hayvan gibi ilgi gösterip sevebileceğiniz bu yavrucak aynen gerçek bir evcil hayvan gibi günün birinde ölüyor. Merak edenler için ...

 | 
Thursday, December 24, 2009 9:15:29 PM (GTB Standard Time, UTC+02:00)  #    Comments [0]  | 
Friday, November 13, 2009


Microsoft yakın zaman önce bir oyun çıkardı. Server Quest 2

Tatilden dönen zavallı bir IT profesyonelinin durumunu, madalyonun diğer tarafından görmek için buradan  buyurun ...

 | 
Friday, November 13, 2009 10:29:52 AM (GTB Standard Time, UTC+02:00)  #    Comments [0]  | 
Friday, October 30, 2009
Friday, October 30, 2009 3:04:25 PM (GTB Standard Time, UTC+02:00)  #    Comments [0]  | 
Tuesday, June 30, 2009

geçenlerde bişeyler ararken aniden karşıma SIP Server diye birşey çıktı.
ilk başta çok da umursamadım ama madem karşımıza çıktı bunu da bilelim dedim
ve az biraz araştırdım (ulu bilge kişilik olarak ben :))
aslında türkiyede nereler kimler kullanır bilmiyorum ama duyduğuma göre
askeriyede bazı yerlerde mevcutmuş.

(Session Initiation Protocol - Oturum Başlatma Protokolü) Server
özetle şöyle ;

İnternet merkezli çoğul ortam iletişim mimarisinin temelini oluşturmaktadır. SIP, haberleşmek isteyen kişiler için IP ağları üzerinden oturumlar açar. Bu kapsamda, bir oturum, IP ağı üzerinden iki veya daha fazla kişi arasındaki etkileşimli bir iletişimdir. Bu basit bir iki yönlü telefon çağrısı, anında mesaj alışverişi veya işbirliği yapılan çoğul ortam konferans oturumu olabilir. SIP IETF (Internet Engineering Task Force - İnternet Mühendislik Görev Gücü) tarafından standartlaştırılan bir Web değerler dizisi protokolüdür. İki büyük İnternet protokolü olan HTTP (World Wide Web) ve SMTP (e-posta) ile benzerlikler taşımaktadır, zira haberleşmek isteyen kişileri temsil etmek için simgesel adresler kullanmaktadır.

SIP; ses ile zenginleştirilmiş e-ticaret, Web sayfası tıkla-çevir, arkadaş listeleri ile anında mesajlaşma ve çok daha fazla özellik ile tümleşik ses ve çoğul ortam servislerini desteklemektedir. SIP oturum yönetimi cihazlar arasında değil, kişiler arasında IP temelli doğal iletişimin desteklenmesinin anahtarıdır. SIP kullanarak, ayrı bilgisayarlar, telefonlar, televizyonlar ve el cihazları vasıtası ile medya içeriği ve katılımcı sayısından bağımsız olarak kullanıcılar birbirlerini bulabilir ve temasa geçebilirler.

SIP çok değişken tipte oturumları açmak üzere bir mekanizma olarak geliştirildi. Bu yüzden SIP, oturum içerisindeki ayrıntıları dikte etmez, ama katılımcıların kapasitelerine dayalı olarak etkileşimi yürütür. Bu basit özellik SIP'ın ölçeklendirilebilir, genişleyebilir ve değişik mimari ve kurulum senaryosuna rahatça uyabilir olması anlamına gelmektedir.

kaynak: www.telepati.com


 

Tuesday, June 30, 2009 11:17:46 AM (GTB Standard Time, UTC+02:00)  #    Comments [0]  | 

© Copyright 2009, Süleyman PETEK