ingilizce klavyede @ işareti nasıl yapılır?

Merhaba,

İşletim sistemi kurulumlarında veya Server  kurulumlarında klavye olarak İngilizce klavye seçilmiş olabilir.
Bu tip durumlarda bazen bir aktivasyon için e-mail adreine ihtiyaç vardır. Tabi doğal olarak da “@” işaretine bunun için Türkçe klavyede olduğu gibi AltGr+Q işimize yaramaz.

İngilizce klavyede “@” işareti aşağıdaki kombinasyon ile yapılır.
Shift + 2

StreamReader/StreamWriter Örnek Uygulama

Merhaba,
Bugünkü konumuzda anlatmak istediğim StreamReader/StreamWriter sınıfları ile örnek bir uygulama yapmaktır.
Kısaca açıklamak gerkirse;
*Content.txt girilen içeriğin Path.txt ye girilen yola Save butonu ile kaydedilmesi

*Dowland butonuna tıklanınca Pat

h.txt kaydedilen veriyi String metotlardan split ile kullanarak listbox da okutulması.
Kısa bu uygulamada hem Streamwriter hemde StreamReader sınıfları kullanılacaktır.

StreamReader/StreamWriter

Merhaba,

StreamReader ve StreamWriter System.IO kütüphanesi kullanılır. StreamWriter sınıfı ile metin dosyalarına karakter türünde değer girişi yapılır. Örnek olarak, bilgisayar üzerindeki bir sürücüde bulunan bir .txt dosyasına program içinden erişip metinsel bir ifade eklemek için, StreamWriter sınıfı kullanılabilir. Ben bu örnekte bir windows forms application açarak textboxa girdiğim değeri kaydet butonuna basarak .txt dosyasını oluşturuğ içerisine veri gittiğini göreceğim.

Yapılması gereken ilk işlem, StreamWriter sınıfının bir örneğini almaktır:

using (StreamWriter writer=new StreamWriter (“kayıt.txt”))

StreamWriter nesnesinin birden fazla constructor’ı bulunur. Biz, örneğimizde string türünde değer alanPath parametresini kullandık. Bu parametre ile, yazılacak olan dosyanın yol bilgisinin verilmesi yeterlidir.

Nesne tanımlandıktan sonra, Write ve WriteLine metotları ile yazma işlemi gerçekleştirilir. Bu iki metot arasında basit bir fark vardır. Write ile aynı satıra yazılır. WriteLine‘da ise, yazının sonunda Enter işlemi gerçekleştirilir ve imleç bir alt satıra geçer. Buraya kadar olan işlemler ile dosyaya yazma işlemi gerçekleştirilir. Dosyaya yazmak için, ilgili dosya ile bir bağlantı kurulur. Yazma işleminden sonra bu bağlantının kapatılması gerekir. Kapatma işlemi için Closemetodu kullanılır.

StreamReader ise .txt dosyasında yer alan verileri okumaya yarar.
.txt içerisindeki veriler bir string değere atanır ve ortadan textboxa gönderilir.

C#’da Xml’den Veri Okuma (Güncel döviz kurları)

Merhaba,

Bu örneğimizde Türkiye Cumhuriyet Merkez Bankası’nın resmi internet sitesinde insanlara  sunduğu  döviz bilgilerini C# yazıılım dilinde WFA uygulamasına xml den alarak okuyacağız.

Kod yapısı;

C# Static Sınıflar ve Üyeler

Merhaba Arkadaşlar,
Bugünkü konumuzda ise static anahtarı sözcüğü ile bir kaç örnekle “Static sınıf nedir? Static üye nedi? nasıl çağrılır? Avantaj ve dezavantajları nedir?” bilgilerine yönelik paylaşım yapmayı planlıyorum.

Öncelikle “static” sözcüğünden bahsetmek istiyorum;
.Net Framework mimarisi üzerine kurulu sınıflar,metotlar,yapılar ve daha birçok konu barındırmaktadır.Henüz birçoğunun ismini saymadığım halde gelen bu kod yapılarının bazıları sürekli RAMbellekte bazıları ise yeri geldiğinde RAM belleğe yazılır ve işleri bittiğinde bellekten silinirler.

Bellekte sürekli kalan kod yapılarına static diyoruz.
Static olarak tanımlanan nesneler bilgisayarımızın belleğinde program kapatılıncaya kadar sabit bir şekilde kalırlar ve bunlar bir sınıfın propertyleri gibi değer
alabiliyorlarsa üzerlerine yeni değer yazılana kadar hep öyle kalırlar.

Static olarak tanımlanan nesneler bilgisayar belleğinde sürekli kaldığı için belli bir RAM tüketirler ancak en büyük avantajları ise new instance almadan anlık bir biçimde erişilebilme ve kullanılabilme şansı tanırlar.

Static anahtar sözcüğüyle tanımlanan nesnelerden en başta olanlar ise classlardır.
*/Static tanımlanan bir sınıfın içerisindeki metotlar,propertyler,fieldler vs. her şey yine static sözcüğüyle belirtilmek zorundadır.

*/Static olmayan bir sınıfta  nesnelerin hepsi static olmak zorunda değildir.

Visual Studio’yu açıyor ve C# dilinde yeni bir Windows Form projesi oluşturduktan sonra projemize “Insan” adında yeni bir sınıf ekliyoruz:

Insan sınıfımız şimdilik static yapıda olmasın ancak sınıfımızın içine “Gul” isimli static bir metot yazalım:

Dikkat ederseniz sınıfın kendisi static tanımlı değil ancak içerisindeki metot static yapıdadır.Bu bize ne kazandıracak derseniz şimdi projemizin formuna gidiyor ve Form_Load metodu içerisine sınıfımızın adını yazıyor ardından nokta tuşuna basarak metodumuza ulaşıyoruz:

Gördüğünüz gibi sınıfımız için new anahtar sözcüğü olmadan yaniinstance oluşturmadan doğrudan sınıfın içersindeki elemana ulaştık.

Sınıfımıza tekrar geri dönelim ve bu kezde “Isim” adında static bir property oluşturalım:

Tekrar formun load eventine gidiyor ve insan class’ının isim property’sine değer veriyoruz:

Artık bu değer program kapatılıncaya ya da tekrar değer verilinceye kadar hep bilgisayar belleğinde sabit bir şekilde kalacak ama sınıftan instance almaya gerek kalmadan çok kolay bir şekilde bu property’nin değerine ulaşabileceğiz.

Static kavramı ile bilmemiz gereken önemli bir nokta ise,eğer static olmayan (bu örnekteki gibi) bir sınıfın içerisindeki nesne (property,metod vs) static olarak tanımlanmazsa o nesneye sadece instance alınarak ulaşılabilir.
Bu savı doğrulamak için yine Insan sınıfının içerisine bu defa static olmayan “Kos” isimli bir metot yazalım:

Tekrar formun load eventine dönelim ve sınıf adını yazarak “Kos” metoduna erişmeye çalışalım ve hata aldığımız görelim.

Gördüğünüz gibi static olmayan sınıfımızın içerisindeki metodumuz static olmadığı için ulaşamıyoruz,eğer ulaşmak istersek instance alarak ulaşmamız gerekmektedir.
Çünkü bu sınıf static değil ve bu metot da static değildir. Yani RAm de yer kaplamıyor ve yeri hazır değildir.

Ayrıca static olmayan bir sınıfta static olan nesneleri  instance alarak çağırmak istesek bu nesnleler static olmayan bir sınıfta olduğu halde instance alarak çağıramayacağızdır.

Yararlı olması dileğiyle.

C# IsNullOrEmpty Metodu Kullanımı

Merhaba,
Bu metot sayesinde parametre olarak verien string tipindeki değilkenin boş olup olmadığını kontrol etmektedir.

Eğer değişkenin içeriği boşsa geriye bool türünde false değeri
döndürür. Eğer değişkene herhangi bir değer ataması yapılmışsa geriye true değerini
döndürür.
Kullanımı aşağıdaki gibidir;

veya;

bool kontrol=String.IsNullOrEmpty(deger);

C# Erişim Belirleyiciler – Access Modifiers

Merhaba,

Öncelikle erişim belirleyicilerin (access modifiers) nerelere uygulandığını bilmemiz lazım; C# projesinde tanımlanmış tüm varlıklara uygulanabilir, buna class, struct, function, method, property ve class seviyesindeki tüm değişkenler dahildir.

Uygulamamızda kullandığımız varlıkların bulundukları kod bloğunun dışından erişilip/erişilemeyeceğini belirlemek isteriz bunun içinde ”Erişim Belirleyicileri” ni kullanırız.
PUBLİC:
Örneğin oturduğumuz apartmanda farklı farklı daireler bulunmaktadır. Her daireyi bir class olduğunu  düşünelim;
Evimizin kapısından içeri herkesin girmesini ve içerdeki herşeye müdahale edebilmesini istiyorsak anahtarımızı bir yedeğini herkese vermeliyiz yani anahtarımızı PUBLİC olarak tanımlamalıyız.

Aşağıdaki ekran görüntülerinde görüleceği gibi bir “erisimbelirleyiciler.cs” diye sınıf oluşturdum.
Bu sınıf  içerisindeki bir metot ve property tanımladım. Bunların hepsi ”Public” olarak tanımlandı.
Public anahtarı ile form load ından bu sınıf ve içerisindeki nesnelere erişim yapıldığı görülmektedir.

PROTECTED:

protected olarak tanımlanan öğe, sadece tanımlandığı class’ın içinde ve o class’tan türetilmiş diğer class’ların içinde erişilebilirdir.
Yani bu class sadece evimize girmeyi ve evimizin içindeki odaların kapısını açmaya yarar aynı zamanda diğer daireler ile evimizin bir bağlantısı varsa ise o dairelerin kapısınıda açar.

Şimdi “erisimbelirleyiciler” class ımızda PROTECTED olara bir int sayi tanımlayalım ve bunu fprm loadıda göremediğimiz görelim.


İNTERNAL:

internal olarak tanımlanan öğe, bulunduğu assembly’nin (Dll veya Exe dosyası) içinde erişilebilirdir. Dll veya Exe dosyasının içerisinde erişim için kısıtlama yoktur, ama dışarıdan erişilemez.

PROTECTED INTERNAL:

protected internal erişim belirleyicisi, protected ve internal erişim belirleyicilerinin VEYA (OR) işlemiyle birleştirilmiş halidir. protected internal olarak tanımlanmış öğe, tanımlandığı class’ın içinde ve o class’tan türetilmiş diğer class’ların içinde erişilebilir. Ayrıca, aynı assembly içinde olmasalar dahi, tanımlandığı class’tan türetilmiş diğer class’ların içinde de erişilebilirdir.

PRİVATE:

private olarak tanımlanan öğe, sadece tanımlandığı class’ın içerisinde erişilebilirdir. En katı erişim belirleyicidir. Yani eivimize bizden başka kimse giremez diyebiliriz, bize özel alandır, dışardan müdahale edilemez.

C# CLASS LIBRARY PROJESİ OLUŞTURMA VE KULLANMA (DLL)

Merhaba Arkadalşar;

Class Library, adından da anlaşılacağı gibi ”Sınıf kütüphanesi” dir.
Sık olarak kullandığımı sınıfları, sınıflar içerisinde yer alan metotları vb. işimize her zaman yarabilecek olan kodları bir çok projede ortak kullanılabilecek genel bir kütüphane oluşturabiliriz. İstediğimiz projede kullanabilmemizi sağlar.

Hemen ekran görüntüleri ile anlatamımızı geçelim.

Öncelikle visual Studio açıyor ve açar açmaz yeni bir ClassLibrary projesi oluşturuyoruz.

Daha sonra projemize kullanmak istediğimiz sınıfları ekliyoruz. Varsayılan olarak Class1 adında örnek bir sınıf gelecektir. Ben bu sınıfı kullanmayacağım için sileceğim ve kendi sınıflarımı oluşturarak içlerini dolduracağım. Aşağıdaki örnekte ilk sınıfı oluşturmayı gösteriyorum diğerlerini ekran görüntülerini vermeden hızlı geçeceğim.

Sınıflarımızı ekledikten sonra solution explorer ın görünümü aşağıdaki gibi olacak;

Öncelikle projemize sağ tıklayıp Build seçeneğine tıklıyoruz. Projeyi build ettikten sonra projemizin ana dizininde bulunan bin dosyasının içerisinde debug dosyası var. Bu dosyanın içerisine ClassLibrary projemizin dll dosyası ekleniyor. Bin dosyası gizli olduğundan solution explorer içerisinde göremiyoruz. Ama projemizin olduğu klasör içerisinde bu dll mevcut.

Visual Studio menusunde Project > Show All Files dersek solution explorerda bu dll i görebiliriz.

Şimdi yeni bir proje oluşturup, oluşturduğumuz bu .dll o preje nasıl kullanacağımıza bakalım.
Örnek bir Windows Forms Uygulaması açalım.(uyguluma tipi önemli değil.)

Oluşturudğumuz  Class library i yeni projemize Referans olarak göstermemiz gerekiyor.
Yeni oluştrduğumuz projenin ”Reference” seçeneğine sağ tıklayıp ”Add Reference” diyoruz.
Reference  Manager dan  Solution ve Project diyerek oluşturduğumuz  kütüphaneyi buluyoruz.

Şimdi artık sınıf kütüphanemizde ne tanımlamışsak bunların hepsini bu projenin içerisinde kullanabiliriz. Son olarak yeni projemizin içerisinde using olarak bu kütüphaneyi eklememiz gerek.

Ve görüldüğü gibi bütün sınıflarımızı çağırabiliyor ve dolayısıyla kullanabiliyor olacağız.

Burada önemli nokta dll dosyamızı kullamak için using Benim_kutuphanem;; tanımlamasını yapmak. Özellikle tüm projelerinizde kullanacağınız sınıfları mutlaka bu şekilde ClassLibrary projesi içerisinde tanımlamamız bizim her zaman yararımıza olacaktır.
Beni dinlediğiniz için teşekkür ederim.