C#'a GENEL BAKIŞ

bybybylahana

Katılımcı Üye
9 Eyl 2006
454
9
119
konya
I. MICROSOFT. NET
.NET* bildiğiniz gibi Microsoft tarafından 2002 yılında tanıtılmış yeni bir teknoloji. .NET Platformu belli bileşenlerden oluşur:

-İstemciler ve Aygıtlar (clients and devices)

-XML Web servisleri

-.NET sunucuları (servers)

-Geliştirme Araçları (Developer tools)


İstemciler ve Aygıtlar (clients and devices)

Smart istemci uygulamaları PC'lerin ve diğer akıllı aygıtlar XML Web servisleri üzerinde istediği yerden ve zamanda çalışırlar. Bu konu önemlidir. Çünkü bakarsanız aygıtlar küçülmekte* yaygınlaşmakta ve bilgi işlem hızı da artmaktadır. PC temelli veri işleme hızı çok hızlı artmaktadır.



XML Web servisleri

Microsoft Visual Studio® .NET ve Microsoft .NET Framework* uygulama geliştiriciler için XML Web servislerini geliştirmek ve kullanıma hazır hale getirmek için kullanılan araçlardır. XML Web servisleri küçük* yeniden kullanılabilir bileşen uygulamalardır. Internet üzerinde sitelerin ve uygulamaların bütünleşmesini sağlarlar.

XML Web servisleri* yapı taşları gibi birbirine bağlıdır ve kullanıcıların yerinde görevleri yerine getirirler. Microsoft ve diğerleri yapı taşları servislerinin çekirdeğini geliştirmektedirler. Ayrıca Microsoft* Passport ile kullanıcı kimlik denetimi üzerine kurulu .NET My Services'ı geliştirmektedir.

.NET platformuyla XML tabanlı Web servisleri olanaklı hale gelmiştir. Bildiğimiz gibi eski nesil Web siteleri diğer sitelerle konuşmazlar. Diğer sitelerle işbirliği yapmaları için ciddi yazılımların yazılması gerekir. İşte* .NET Platformu Web sitelerinin ve servislerinin birbiriyle kolayca ve benzersiz biçimde ilişki kurması için kolaylıklara sahiptir.

Web servislerinin en kolay tanımı* Web Servisi standart Web protokolleriyle erişilebilen programlanabilir bir uygulamadır. Internet üzerinde kullanılabilecek dört tür ya da kategori olarak tanımlanabilecek Web Servisi vardır:


.NET Building Block Servisleri

Çekirdek (core) Microsoft .NET yapı taşı servisleri şunları kapsar:

Identity: Microsoft Passport ve Windows authentication technology üzerine kurulmuştur. Birçok aygıt için kimlik denetimi sağlar.

Notification and Messaging: Anlık mesaj sistemini (instant messaging)* e-mail* fax* voice mail ve diğer mesajlaşma türlerini içerir. Hotmail® Web-based e-mail servisi* Exchange ve Instant Messenger üzerine kurulmuştur.

Personalization: Mesaj ve uyarı (notification) sisteminin nasıl tanımlanacağını belirtir. Birçok aygıt nasıl bir araya getirilecek ve veri alışverişi.

XML Store: Evrensel XML dilini ve SOAP protokolünü kullanır. Böylece Web sitelerinin etkileşimi kolaylaşır. Microsoft .NET verileri Web üzerinde saklamak için güvenli bir yola sahip olmuştur.

Calendar: Kullanıcının zamanı kontrol etmesinin önemli bir boyutu. Microsoft .NET değişik işlerle bütünleşmeyi amaçlar. Outlook® messaging and collaboration client Hotmail® Calendar üzerine kurulmuştur.

Directory and Search: Microsoft .NET servislerin ve insanların bulunmasını sağlar. Microsoft .NET dizinleri arama motoru değildir. Özel bir şema kullanarak program temelinde arama yapılır.

Dynamic Delivery: Microsoft ve yazılımcıların dinamik olarak hareket etmesini sağlar. Microsoft .NET proactif olarak yapmak istediğinize adapte olur.


.NET Sunucuları (servers)

.NET Enterprise Server ailesi içinde Exchange Server güvenilir bir mesajlaşma ve işbirliği (collaboration) ortamıyla kullanıcılara bilgileri ulaştırır.

Microsoft .NET Server'larının alt yapısı XML Web servislerinin kullanıma hazır hale getirilmesi ve yönetilmesiyle ilgili ana bileşenleri temsil eder.


Geliştirme Araçları (Developer tools)

Visual Studio® .NET gibi araçlar ise XML Web servisleri ve zengin Web uygulamaları geliştirmeyi sağlar.

Microsoft Visual Studio® .NET ve Microsoft .NET Framework* uygulama geliştiriciler için XML Web servislerini geliştirmek ve kullanıma hazır hale getirmek için kullanılan araçlardır.

Visual Studio® .NET gibi araçlar ise XML Web servisleri ve zengin Web uygulamaları geliştirmeyi sağlar.



Microsoft Visual Basic.NET

Visual Basic .NET* önceki Visual Basic ürününün yerine gelen tam bir üründür. Yeni bileşenlerle programlamayı kolaylaştırmanın yanı sıra .NET programlaması oldukça kolay hale gelmiştir.



Microsoft C#

Microsoft tarafından geliştirilmiş yeni bir dildir. Özellikle C ve C++ programcıları için geliştirilmiştir.

ŞEKİL: :NET MİMARİSİ

c1.jpg


II. C# DİLİ
C# programlama dili Microsoft tarafından .NET platformu için geliştirilmiş* nesne tabanlı bir programlama dilidir. C++ ve Java dillerinden etkilenerek geliştirilmiş bir dildir. Bir anlamda Visual Basic'in görselliği ve C++'ın gücünü içermektedir.

C#* Microsoft tarafından geliştirilmiş yeni bir programlama dilidir. C#* C++'ın gücüne sahip bir programlama dilidir ve bu arada Visual Basic kadar da kolaydır. Ayrıca* C#* Java gibi* bir Web programlama dilidir.


Programlama sürecine bakacak olursak:

Kaynak program--> Intermediate Language kod (IL) ---> (JIT Compiler) Native kod.

C# dili ile şu tür uygulamalar geliştirilebilir:


· Konsol Uygulaması



· Windows Uygulaması



· Web Uygulaması


C# dili C++'da olan bellek yönetimi* pointer gibi sorunları çözmek ve daha kolay bir C programcılığı yapmak için geliştirilmiştir. Çöğ temizleme (garbage collection)* otomatik bellek yönetimi gibi birçok özelliğe sahiptir.


A. C#'IN ANA ÖZELLİKLERİ:


Kodlama:

C#'da pointer kullanılmaz.

Doğrudan bellek işlemleri desteklenmez.

.NET üzerindeki temel özellikleri kalıtım yoluyla alır.


Bololean değer olarak True ve False kullanılabilir. "==" operatörü karşılaştırma* "=" ise atama işlemleri için kullanılır.


Nesne Tabanlı:

C#* Data Encapsulation* inheritance*polymorphism* interfaces gibi temel nesne tabanlı kurallarını destekler.


2. (int* float* double) are not objects in java but C# has introduces structures(structs) which enable the primitive types to become objects



int i=1;



String a=i Tostring(); //conversion (or) Boxing


Type Safe

C# 'da değişkenlerin birbirine dönüşümü yapılamaz.

Değer türleri otomatik olarak sıfırlanır ve değişkenlerin değerleri yüzünden hata oluşmaması sağlanır.


B. C# DİLİ İÇİN GEREKENLER


1 .NET Framework Software Development Kit

2. Kaynak kodları yazmak için* bir Editor (Notepad ya da diğer bir Editor)

3. Visual C#. NET


İlk programınız:


using System;



class Hello



{



public static int Main() {



Console.WriteLine("Hello World!");



}



}





İlk Programımızı Derleyelim:

csc myclass.cs


C# derleyicisi bir EXE dosya yaratır.

III. PROGRAMIN TEMEL KISIMLARI
C#'da programlar bir yerden başlarlar. Burası Main metodudur.

İPUCU: C# dilinde küçük ve büyük harflerin ayrı ayrı şeyler olduğuna dikkat edin.



Using System

.NET Framework çok sayıda namespaces (ad alanından) oluşur. System ad alanı uygulamanın işletim sistemiyle iletişim kurmasını sağlar. Örneğin I/O işlemleri gibi.


Ad alanlarını kullanırken noktalı ve tam nitelikli kullanabilirsiniz:

System.Console.WriteLine ("Hello* World");

İle aşağıdaki satır aynı anlamdadır:

Console.WriteLine ("Hello* World");



A. SYSTEM NAMESPACE
.NET* bütün diller için ortak bir kütüphaneye sahiptir. Bu olanak .NET Framework ile sağlanır.

C# dili MS .NET Framework'ün bir parçası olarak birçok sınıftan yararlanarak bir dizi yararlı işlemin yapılmasını sağlar. Bu sınıflar (classes) namespace (ad boşluğu) olarak düzenlenir.

.NET Framework* çok sayıda ad boşluğundan oluşur. Bunlardan en çok kullanılanı ve belki de en önemlisi SYSTEM ad boşluğudur. SYSTEM ad boşluğu uygulamaların işletim sistemiyle konuşmak için gereksinim duyduğu birçok sınıfı içerir. Bunların en yaygın örneği I/O (input/output) örneğidir. Diğer diller gibi C# dili de kendisinin I/O işlemleri yapacak komutu yoktur. Bunu SYSTEM ad boşluğunun Console sınıfından yararlanarak karşılar. Bu sınıf ta WriteLine metoduna sahiptir.


System.Console.WriteLine ("Hello* World");


Ad alanlarını kullanırken noktalı ve tam nitelikli kullanabilirsiniz:

System.Console.WriteLine ("Hello* World");

İle aşağıdaki satır aynı anlamdadır:

Console.WriteLine ("Hello* World");


ŞEKİL: AD BOŞLUĞU ve SINIFLAR

c1_1.jpg


IV. PROGRAMI DERLEMEK VE YÜRÜTMEK
C# programları Visual Studio .NET içinde kolayca yazılabilir* derlenir (compile) ve yürütülür (run). Bu işlem F5 tuşu ile ya da Build komutu ile yapılabilir.

Ancak istenirse komut satırı derleyicisi de kullanılabilir.

Csc /debug+ /out hello.exe hello.cs

.NET Framework SDK araçlarından bazıları:


Araç Komutu Açıklama

MSIL Assembler ilasm.exe MSIL dosyayı alır ve işletilebilir dosyayı oluşturur.

MSIL Disassembler ildasm.exe MSIL ve ****data inceler.
 

alicemal19

Yeni üye
5 Tem 2007
2
0
bisey daniscaktim.ben c# in kitabini buldum ve yeni basliycam kendi cabalarimla ogrenebilirmiyim baya bi merak sardi cunku aslinda uzun suredi vardi ama kaynak edinemiyodum neyse onerilerinize acigim simdiden tesekkurler
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.