İçeriğe geç
ShiftDelete.Net
Haber ara/ SDN'ye SorGiriş
Haber Akışı SDNTV İnceleme Forum Yapay Zeka Akıllı Telefon Elektrikli Otomobil Oyun ShiftDelete.Net Global Teknoloji Haberleri Mobil Otomobil Donanım Savunma Bilim Sosyal Medya İnternet Giyilebilir Teknoloji Rehber Ürünler Son dakika Yazarlar
  1. Ana sayfa
  2. Topluluk
  3. Programlama
  4. SDN Programlama Kafe
SDN Programlama Kafe

Programlamlar Neden Runtime'a İhtiyaç Duyarlar

Ben Kenobi29.01.20123 cevap1.557 görüntüleme
2011'den beri7.329 mesaj
#1
Arkadaşlar merak ettiğim bir mesele var.
Programlama dili ile yazılan bir program neden runtime'a ihtiyaç duyar.
O program derlenirken zaten makine diline çevrilmiyor mu?
Hadi Java istisnai bir durum, onun makine diline çevrilmediğini biliyoruz ve runtime'a neden ihtiyaç duyduğunu anlayabiliyoruz.
Ama mesela .net neden runtime paketlerine ihtiyaç duyuyor.
Ya da visual c++ ile derlenen programlar bunun runtime paketleriyle geliyor.
İşin ilginci visual c++ runtime'ları silsem de programlar çalışmaya devam ediyor.(.net için öyle değil tabi)
Gerçek bir programlama dili runtime'a ihtiyaç duyar mı?
Yoksa bunlar tam olarak programlama dili sayılmaz mı?
Bu konu kafama takıldı bilenler aydınlatırsa sevinirim.
Cevaplar
2007'den beri17 bin mesaj
#2
Programlama dillerini runtime ihtiyaclarına göre ayırma bence :) .NET'in javadan bir farkı yok aslında calışma olarak. Java kodu derlediğinde java byte code'a dönüşür, .NET kodu da MSIL koduna dönüşür. İkisi da virtual machine layer'i üzerinde çalışır ama .NET javaya göre kat kat performanslı. Ama javanin da güzel yani her yerde çalışabiliyor.

Bir programlama dili derlediğinde makine koduna dönüşse bile bazen programlama sırasında ekstra kütüphanelere ihtiyac duyulabiliyor. Bunları exe'den ayırmak tekrar kullanilabilirlik ve yönetim acısından daha iyidir. Fakat istersen bunları direk exe'ye de gomebilirsin ama derleme süresi uzar...
Ben Kenobi Konuyu açan
2011'den beri7.329 mesaj
#3
cgrszone dedi: ↑
Programlama dillerini runtime ihtiyaclarına göre ayırma bence :) .NET'in javadan bir farkı yok aslında calışma olarak. Java kodu derlediğinde java byte code'a dönüşür, .NET kodu da MSIL koduna dönüşür. İkisi da virtual machine layer'i üzerinde çalışır ama .NET javaya göre kat kat performanslı. Ama javanin da güzel yani her yerde çalışabiliyor.

Bir programlama dili derlediğinde makine koduna dönüşse bile bazen programlama sırasında ekstra kütüphanelere ihtiyac duyulabiliyor. Bunları exe'den ayırmak tekrar kullanilabilirlik ve yönetim acısından daha iyidir. Fakat istersen bunları direk exe'ye de gomebilirsin ama derleme süresi uzar...
ben de benzer düşünmüştüm.
.net'in java gibi virtual machine layer üzerinde çalıştığını bilmiyordum.
Bunları exe'den ayırmak tekrar kullanılabilir ve yönetim açısından daha iyidir.
Ama teoride.
Çünkü daha iyi olması için geriye dönük uyumluluğun olması gerekir.
Java örneğindeki gibi.
.net platformunda ise bu söz konusu olmadığı için sürekli farklı versiyon runtime yüklememiz gerekiyor.
Yani bundan birkaç yıl sonra onlarca farklı versiyon runtime yüklememiz gerekebilir.
Belki tek çözüm directx örneğinde olduğu gibi farklı versiyon runtime'ların tek bir paket altında verilmesi.
O zaman da belki de hiç kullanmayacağımız programların runtime'larının gereksiz yere sisteme yüklenmesi demek.
visual c++ için de benzer.
Bunlar benim görüşüm tabi. :D
Ama siz söylemeydiniz emin olamazdım.
Hürmetlerimi sunarım sayın üstad :)
2007'den beri17 bin mesaj
#4
.NET'de de geri dönük uyumluluk var. Eğer versiyonlar arası köklü değisiklikler olmadıysa ve assmbly paketleri aynıysa sorun olmuyor. Ama sağlam bir degisiklik varsa ve bunu kullandıysan yazdığın uygulama yeni runtime'a ihtiyac duyabiliyor. Fakat yazdığın uygulama client profile frameworku ile yazıldıysa cogu zaman yuklemeye ihtiyacın olmuyor...

Cevabını yaz

Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.