Bilgisayarınızın CPU Numarasını Almak

Wednesday, February 27, 2008 9:02:53 AM (GTB Standard Time, UTC+02:00)
Bilgisayarınızın CPU numarasını aşağıdaki kod bloğu ile alabilirsiniz.
ManagementObjectCollection mbsList = null;
ManagementObjectSearcher mbs = new ManagementObjectSearcher("Select * 
From Win32_processor"
); mbsList = mbs.Get(); foreach (ManagementObject mo in mbsList) {    MessageBox.Show(mo["ProcessorID"].ToString()); }

.net Micro Framework ?

Monday, February 25, 2008 12:14:53 AM (GTB Standard Time, UTC+02:00)

image

Merhaba,

Bir süredir üzerinde çalıştığım bir framework hakkında sizleri kısaca bilgilendirmek istiyorum ; .net Micro Framework. Belki Türkiye' de bu konu ile ilgili çalışan çok fazla Developer yoktur ama incelendiğinde olayın ne boyutlara geldiği çok rahat bir şekilde anlaşılabiliyor.

.net Micro Framework ile "gerçekten hafıza kısıtlı cihazlara" (Buzdolabı, saat v.s.) managed C# uygulamaları geliştirebiliyorsunuz ! Evet yanlış duymadınız, minicik bir belleğin içerisine yerleştirilmiş mükemmel hazırlanmış bir framework ile managed ortamda o çok sevdiğimiz Vs.Net ortamında C# ile tamamen hazıfa kısıtlı cihazlara uygulama geliştirebiliyoruz.

image

Üzerinde çalışıyorum, örnek uygulamalar geliştirdikçe sizlerle paylaşacağım.

http://msdn2.microsoft.com/en-us/embedded/bb267253.aspx

http://en.wikipedia.org/wiki/.NET_Micro_Framework

Çözüm Park Beta Yayınına Başladı !

Sunday, February 24, 2008 9:25:32 PM (GTB Standard Time, UTC+02:00)

Çözüm Park

Çok yakın dostum, sevgili Hakan UZUNER kardeşimin community' si, CozumPark, Microsoft Türkiye Sponsorluğunda hizmete açılmıştır. Portal üzerinden sistem / network ile ilgili yüzlerce makale, binlerce post' a ve en önemlisi onbinlerce üyenin bulunduğu bir paylaşıma dahil olabiliyorsunuz.

Hayırlı olsun !


LINQ ile MAC Adreslerini Almak

Sunday, February 24, 2008 12:00:44 PM (GTB Standard Time, UTC+02:00)

Merhaba,

Bir projede lokal makinemin MAC Adreslerini alma ihtiyacim olmuştu. LINQ ile bu çözümü aşağıdaki kod bloğu ile sağlayabilirsiniz.

using System.Net.NetworkInformation;
 
var MacAddresses = from m in NetworkInterface.GetAllNetworkInterfaces() 
    select new { Isim = m.Name , 
                 Adres = m.GetPhysicalAddress().ToString() };

Nvidia ve Ati PDA için 3D Hızlandırıcı Peşinde

Friday, February 22, 2008 12:49:02 PM (GTB Standard Time, UTC+02:00)
Ati RadeOn II ve Ati Rage Theather Ati'nin bir sonraki planı. Bir fransız sitesinin Ati'den bir kişi ile Cebit'tekiradevuları sonucu edinilen bilgiler aşağıda.

* Ati bilinen PDA ve Telefonlar için çok çok az enerji harcayan Radeon VE tarzı bir 3D hızlandırıcı üretimi peşinde. Yıl sonuna kadar hazır olması bekleniyor. Nvidia'da bu yarışa dahil.
* RadeOn II Directx 8.0'ı Donanımsal bazda destekliyecek ve Ge-Force 3'ten biraz daha hızlı olması bekleniyor.
* Ati Tüm All-In-Wonder RADEON II Ekran kartlarına Rage Theater 2 entegre edecek. Bunun sayesinde MPEG4 bazlı video görüntülerini donanımsal olarak kodlayabilecek. Bu sadece çok güçlü video editing kartlarda mevcut. Çok önemli bir gelişme. Ayrıca sisteme DTS çözümleyicide eklemeyi düşünülüyor.

kaynak : donanimhaber

Delphi 2005 for .NET Compact Framework Technology Preview

Friday, February 22, 2008 12:33:07 PM (GTB Standard Time, UTC+02:00)


Bir Delphi programcısı değilim fakat Mobil Uygulama Geliştiricisi olarak Delphi' ci arkadaşları bilgilendirmek istedim :-)

C#' a geçmem ama Delphi ile .net Compact Framework üzerinde Mobil Cihaz Uygulaması geliştirmek istiyorum diyorsanız Delphi 2005' in .net Compact Framework için derleyicisini incelemenizi tavsiye ederim.

http://downloads.codegear.com/default.aspx?productid=8201

ReadOnly - WriteOnly Automatic Properties

Friday, February 22, 2008 12:21:58 PM (GTB Standard Time, UTC+02:00)
 C# 3.5 ile gelen yeniliklerden bir taneside Automatic Property' ler. Automatic property' ler ile normal şartlarda ;

private int GizliDegisken;
public int OrnekOzellik
{
    get
    {
       return this.GizliDegisken;
    }
    set
    {
       this.GizliDegisken = value;
    }
}
ifade edilen kod bloğunu eğer herhangi istisnati bir durum yok ise (Business Rule olabilir) aşağıdaki şekilde yazabilmekteyiz ;

public int OrnekOzellik { get; set; }
Compiler bu kod satırını derlediğinde aslında ilk örnekte ifade edilen kod bloğunu MSIL oalrak çıkarmaktadır.

Bir süre öncesine kadar internet üzerindeki birçok ortamda bu şekilde ifade edilen özellik tanımlamalarında ReadOnly ya da WriteOnly tanımlamasının yapılamadığı bunun çok büyük bir eksik olduğu yazılmaktaydı.

Yani ;

public int Ozellik { get; } gibi bir ifadenin normal şartlarda ReadOnly bir özellik olması beklenirken Compiler tarafından derlenmediğini ve hata verdiğini deneyerek farkedebilirsiniz.

Bunun çözümünü aşağıdaki şekilde C# 3.5' ta çözüme kavuşturmuşlar.

Olmasını istemediğini accessor' un başına private keyword' ünü ekleyerek özelliğin ReadOnly yada WriteOnly olmasını sağlayabilirsiniz.

public int Ozellik { get; private set; }

// ReadOnly Bir Ozellik

public int Ozellik { private get; set; }

// WriteOnly Bir Ozellik

YazGeliştir - Facebook Application

Thursday, February 21, 2008 3:17:57 PM (GTB Standard Time, UTC+02:00)
En son toplantıda aldığımız kararlardan biride YazGeliştir için bir Facebook uygulamasının geliştirilmesiydi. Bilindiği üzere Facebook milyonlara ulaşabilmek adına çok isabetli bir platformdur :-)

Bu görevi ben üstlenmiştim ve 2 gün önce vakit bulup uygulamayı geliştirdim.

Uygulama uygulamayı ekleyen kişinin profilinde YazGeliştir' e en son eklenen makalelerin linklerini ve bunları diğer arkadaşlarıyla paylaşabilecekleri bir arayüz sunmaktadır.



Uygulamanın eklenebilmesi için tabiki Facebook' a üye olmanız gerekmektedir.

Uygulamanın adresi :

http://apps.facebook.com/yazgelistir

Bilginize. :-)


Projemi ?!

Thursday, February 14, 2008 9:49:16 PM (GTB Standard Time, UTC+02:00)
Bir öğrencimin bana vermiş olduğu "proje analizi sürecini" gösteren mükemmel bir illüstrasyon. :-)

Tıklayın !

Microsoft Sync Framework

Sunday, February 03, 2008 9:38:33 PM (GTB Standard Time, UTC+02:00)
Şu aralar şahsımca süper bir konu üzerinde çalışmaktayım ; Microsoft Sync Framework.

Microsoft Sync Framework adından da anlaşılabileceği üzere bilgisayarlar ve cihazlar arası veri senkronizasyonu için kullanılabilecek yeni bir MS yaklaşımı.




Daha ayrıntılı bilgi için aşağıdaki post' u okuyabilirsiniz :

What Is Microsoft Sync Framework

C# null Coalescing Operator (??)

Sunday, February 03, 2008 9:05:39 PM (GTB Standard Time, UTC+02:00)

Daha önce kullandınızmı bilmiyorum fakat ternary operatörünün bir fan’ ı olarak C# 2.0 ile birlikte gelen null Coalescing Operator açıkçası çok hoşuma gitti.

Ternary Operatörünü hepimiz zaten bolca kullanmaktayız :

string Sonuc = (KullaniciAdi == null) ? “Kullanıcı Adı Bulunamadı” : KullaniciAdi;

Bu expression ‘ ı null Coalescing Operator ile çok daha kısa şekilde ifade edebiliyorsunuz.

string Sonuc = KullaniciAdi ?? “Kullanıcı Adı Bulunamadı”;

Mantık şudur ki eğer işin içerisinde null kontrolü varsa compiler ilk operand’ ın null olup olmadığını kontrol ediyor.

Eğer ilk operand null değilse expression’ ın sonucu ilk operand oluyor. Eğer null ise sonuç ikinci operand oluyor.

Genelde kullandığımız klasik Entity katmanında çok işe yarıyor.

Musteri adında bir entity sınıfımız ve ID üzerinden Musteri getiren bir Facade metodumuz olsun.
olduğunu düşünelim.

Musteri mst = GetMusteriByID(id) ?? new Musteri();

Eğer metodun sonucu null değil ise mst’ ye metotdan dönen instance atanıyor. null ise new Musteri(); çalıştırılıyor. :-)