Merhaba arkadaşlar, bu yazımda .net platformunu ve c# dili ile olan ilişkisini anlatacağım. Bir programlama dilinde geliştirilen bir uygulamayı bilgisayarımızın anlamasını sağlamamız için uygulamanın 1 ve 0 lara yani binary koda çevrilmesi gekmektedir. Örneğin bir C kodunu çalıştırabilmemiz için onu makinemize tanıtmamız gerekir. Bu tanıtma işlemini ise derleyiciler üstlenmektedir. Yazdığımız kodları hatalardan ayıklayarak çalışan bir uygulama elde etmemizi sağlar. Ancak bu oluşturmuş olduğumuz dosyalar platfordan bağımsız değildir. yani farklı bir yapı altında çalışmayacaktır. Bir örnek vermek gerekirse Windows işletim sisteminde geliştirilen bir uygulamayı Linux işletim sisteminde çalıştıramayacağımız gibi.
Burada devreye platformdan bağımsız yapılar girmektedir. Bunlardan en çok bilineni ise Java’dır. Java Runtime Environment (JRE) sayesinde platformdan bağımsız bir şekilde bir kez yaz her yerde çalıştır mantığına kavuşmuştur.
Peki bu Java nasıl çalışır ?
Yukarda da görüldüğü gibi Java kodu derlendikten sonra “.class” uzantılı bytecode’a çevrilir. Bu bytecode çalıştırıldığında ise JRE tarafından assambly e çevrilir.
.Net Framework ise Platformdan bağımsızlığa ek, dilden bağımsız bir yapıyı sunmuştur bizlere. Kısaca değinecek olursak .net platformuna bağlı dillerde geliştirilen dll veya exe’ler birbirleriyle ortak bir aradil sayesinde iletişimde bulunabilirler.