BilindiÄŸi gibi iÅŸletim sistemlerinde sistem üzerindeki tüm uygulamalar tarafından eriÅŸilebilen Ortam DeÄŸiÅŸkenleri (Environment Variables) bulunur. Bu deÄŸiÅŸkenler uygulamaların ortamla ilgili ihtiyaç duyacağı bilgileri sunar. ÖrneÄŸin iÅŸletim sisteminin hangi sürücüye kurulduÄŸu, geçici dosyaların hangi klasörde saklanacağını bu deÄŸiÅŸkenlerden öğrenir. Ortam deÄŸiÅŸkenleri local(yerel) ve system(sistem) olmak üzere iki türde tanımlanır. Yerel deÄŸiÅŸkenler kullanıcıya özgü olup kullanıcı iÅŸletim sistemine giriÅŸ yaptığından düzenlenir. Sistem deÄŸiÅŸkenleri ise iÅŸletim sistemi bazında yani tanımlı tüm kullanıcılar için geçerli deÄŸiÅŸkenlerdir. ÖrneÄŸin %USERNAME% deÄŸiÅŸkeni yerel bir deÄŸiÅŸken olup o anda oturum açmış kullanıcının kullanıcı adını döndürür. %WINDIR% ise sistem türünde bir deÄŸiÅŸken olup iÅŸletim sisteminin klasörünün yolunu belirtir. Bunlara benzer, %COMPUTERNAME%, %USERDOMAIN%, %DATE% , %TIME%, %TEMP%,%PATH%, %PATHEXT%, %OS% gibi deÄŸiÅŸkenler kullanılır. Read the rest of this entry »
.NET dilleriyle geliÅŸtirilmiÅŸ bir program sınıflardan oluÅŸur. Sınıflar içinde de sınıf, yapı, numaralandırma, yordam gibi üyeler bulunur. İyi bir programcı, bu üyelerin kodlamasını önemsediÄŸi kadar üyelerle ilgili dokümantasyonu da önemsemelidir. Hem grup çalışmalarda bir baÅŸkasının sınıflar içindeki yapıların iÅŸlevini anlaması hem de geçmiÅŸe dönüp kodlarımızı incelediÄŸimizde kod satırlarını daha rahat anlamak için kodlarımız arasına açıklamalar eklemeliyiz. Programlara hem tek satırlı hem de çok satırlı açıklamalar ekleyebiliriz. .NET dilleri dili açıklamalar için XML tabanlı belgelendirme formatı da sunar. Böylece hem standart bir biçim saÄŸlanır hem de ihtiyaç duyulduÄŸunda tüm açıklamalar XML olarak çıkarılarak msdn veya baÅŸka formatlarda etkili proje dokümantasyonu oluÅŸturulabilir. Read the rest of this entry »
ADO.NET’in önemli üyesi olan DataTable nesnesi üzerinde arama yaparken distinct (tekilleÅŸtirme) veya top n (üstten belli sayıda satır seçme) iÅŸlemlerine ihtiyaç duyabiliriz. Bu iÅŸlemleri çoÄŸu zaman VTYS üzerinde yapmak mantıklı görünse de özellikle baÄŸlantısız katman iÅŸlemlerinde veritabanına gitmeksizin bu iÅŸlemleri yapmak iÅŸlemleri hızlandırır. Bu yazıda bununla ilgili basit bir örnek vereceÄŸiz. Read the rest of this entry »
.NET’te COM ile Birlikte Çalışma (.NET & COM Interoperability)
C#, VB.NET, ASP.NET No Comments ».NET teknolojisi, COM nesnelerini yok saymayıp aksine onlarla bütünleÅŸik bir çalışma ortamı sunar. Hem COM nesnelerinin .NET içinde kullanılmasına hem de .NET nesnelerinin COM içinde kullanılmasına destek verir. Birçok ÅŸeyi .NET nesneleriyle daha kolay ve hızlı yapabiliz ancak yeni projelerde bazı eski COM nesnelerimizi kullanmak zorunda kalabiliriz. Bu durumda nasıl bir etkileÅŸim sözkonusu olacak. Bu yazıda .NET bileÅŸenlerinin var olan COM bileÅŸenlerini deÄŸiÅŸtirmeden onlarla nasıl iletiÅŸim kuracaklarını iÅŸleyeceÄŸiz. Read the rest of this entry »
C# 3.0 ile birlikte programlama dili tarafına bazı yenilikler eklendi. Bu yenilikleri incelendiÄŸinde bunların daha çok LINQ teknolojisiyle iliÅŸkili olduÄŸunu ve onun sorgularını desteklemek amacıyla sunulduÄŸu görülür. Bu yazıda .NET 3.0 ile birlikte gelmiÅŸ yenilikler incelenmektedir. Read the rest of this entry »
Program yazmada dikkat edilmesi gereken konulardan biri belleÄŸi en uygun ÅŸekilde kullanmaktır. Özellikle kurumsal uygulamalarda kullanılacak programların, kaynakları ekonomik ve ergonomik kullanması her zaman tercih nedeni olmuÅŸtur. Bir programcı baÅŸta bellek olmak üzere sistem kaynaklarını daima idareli kullanmalı ve meÅŸgul ettiÄŸi alanı iÅŸi bittikten sonra serbest bırakmalıdır! Read the rest of this entry »
DataSet içerisinde birden fazla tablo olduÄŸu zaman her tablo için ayrı ayrı DataView nesneleri oluÅŸturup tablo verilerini sorgulamak yerine tüm tablolar için ortak bir sorgulama hazırlamak daha mantıklı olacaktır. Bu iÅŸlem için DataSet nesnesinin DataViewManager türünde deÄŸer döndüren DefaultViewManager özelliÄŸi kullanılır. DataViewManager nesnesi, DataView nesnelerinin bulunduÄŸu koleksiyon için tek bir sorgulama nesnesi oluÅŸturur. Read the rest of this entry »
Single Sign-On (SSO), aynı veya farklı domain altındaki, farklı subdomain altındaki web uygulamalarında sözkonusu olup her uygulama için yeniden giriÅŸ yapmak yerine tek bir yerden giriÅŸ yapıp tüm uygulamalara otomatik olarak logon olabilme özelliÄŸidir. SSO, farklı uygulamalara aynı kullanıcı adı ve ÅŸifreyle girildiÄŸi için kullanıcılara zaman kazandırır. Microsoft’un passport (Windows Live ID) veya birçok firmanın destek verdiÄŸi OpenId veya Sun’ın Java Identity Manager projesi, farklı web uygulamalardaki servislere tek bir noktadan giriÅŸ yapılması için geliÅŸtirilmiÅŸtir. ÖrneÄŸin MSN Messenger, MSN Hotmail, MSN Müzik gibi passport network sitelerindeki servislerden yaralanmak için Windows Live ID’ye eriÅŸmek yeterli olmaktadır. Aynı ÅŸekilde özellikle intranet uygulamalarında kullanıcı Active Directory(AD) üzerinden login olduktan sonra AD yetkisi altındaki diÄŸer sistemlere yeniden güvenlik bilgilerini girmeksizin Bu yazıda .NET tabanlı web uygulamalarımızda sözü geçen servislere benzer bir özelliÄŸi nasıl kuracağımızı örneklendireceÄŸiz. Read the rest of this entry »
.NET’te SerileÅŸtirme & Ters SerileÅŸtirme (Serialization & Deserialization)
C#, VB.NET, ASP.NET 4 Comments »Serialization(serileÅŸtirme), bir nesnenin o anki durumunu(içeriÄŸini) belli bir formata dönüştürüp geçici veya kalıcı bir kaynak üzerinde depolama iÅŸlemidir. Bu kaynak bir disk olabildiÄŸi gibi hafıza veya network üzerindeki bir akım da olabilir. .NET Framewok’ün birçok sınıfında gizli olarak kullanılan bu iÅŸlem daha çok .NET Framework’ün en önemli bileÅŸenlerinden olan Remoting mimarisinde etkilidir. Bu mimaride veriler, serileÅŸtirilerek farklı uygulamalar arasında taşınır. SerileÅŸtirilmiÅŸ veriyi geri elde etme yani orijinal nesne haline çevirme iÅŸlemini de deserialization(ters-serileÅŸtirme) denilir. Read the rest of this entry »
.NET Framework’te diÄŸer baÅŸka platformlarda olduÄŸu gibi I/O sistemi, akımlar üzerine kuruULdur. Akım(stream), byte düzeyinde bir girdi bilgisi oULÅŸturan veya çıktı bilgisi elde eden mantıksal birimlerdir. Bu birimler I/O sistemi aracılığıyla dosya, network, ekran gibi fiziksel aygıta baÄŸlanır. ÖrneÄŸin disk üzerinde bilgi okuma/yazma, klavyeden bilgi alma ve ekrana bilgi yazdırma gibi iÅŸlemler için akım yöntemi kullanılır. BilindiÄŸi gibi bu ortamlar, okuma veya yazma bakımından bellek kadar hızlı ve kullanışlı deÄŸildir. Bu yüzden bu ortamlara okuma/yazma iÅŸlemleri bir kere de deÄŸil parça parça(byte byte) iÅŸlenir. ÖrneÄŸin internet’ten izlenilecek videoyu makinemiz bir kerede almaya hazır olmayabilir veya network alt yapısı bunu karşılamıyor olabilir. İşte bu tür durumlarda stream kavramı bir çözüm olarak ortaya çıkmıştır. Read the rest of this entry »




Recent Comments