İçeriğe geç

algoritma ve programcılıga giriş1

Algoritma nedir?

Algoritma, matematikte ve bilgisayar biliminde bir işi yapmak için tanımlanan, bir başlangıç durumundan başladığında, açıkça belirlenmiş bir son durumunda sonlanan, sonlu işlemler (adımlar) kümesidir.

Size hiçbir programlama dilinin kodu olmayan sadece işlem adımları nasıl yerleştiriliyor görmeniz için Türkçe kelimelerle bir örnek üzerinde anlatacağım.

Örneğin birden beşe kadar olan sayıların toplamını hesaplayan algoritma yazacağız.

1.Sayı = 1
2.Toplam = toplam + sayı
3. Eğer sayı = 5 se
4.Git 9.
5.  değilse
6.Sayı = sayı +1
7.Git 2.
8. Eğer sonu
9.Ekrana yaz toplam

Örneğimizde 1. 2. 3. gibi numaralandırılmış satırlarımız mevcuttur. Şimdi örneğimizi satır satır anlatarak tam olarak kavramanızı sağlayalım.

1.Satırımızda sayı değişkenimizi, başlangıç sayımıza eşitledik.
2.Satırımızda toplam değişkenimizi, sayı değişkenine eşitledik.
3.Bu satırda kıyaslama yapıyoruz sayımız bitiş sayımıza esitmi diye kontrol ediyoruz.
4.(3. satırdaki) şart gerçekleşmişse bu satır gerçekleşir. Bu satırdaki işlem direk 9. satıra gidip oradaki kodu çalıştırmak içindir.
5.(3. satırdaki) şart gerçekleşmemişse bu satırdan 9. kadar olan komutlar çalışır.
6. Bu satırda sayı değişkenimizi bir artırıp kendisine eşitledik yani kısacası bir artırdık.
7. Bu satırda henüz bitiş sayımıza kadar ulaşamadığımız için 2. satıra geri döndük ve çalıştırdık bu satırı.
8. Bu satır kıyaslama mekanizmamızın bittiği satırdır.
9. Bu satırda toplam değişkenimizi ekrana yazdırdık.

not: program soldan saga, yukarıdan aşagıya dogru çalışır ve işlemleri gerçekleştirir. yukarıdaki örnekte tekrar eden işlemleri tekrar tekrar yazmamak için 7 satırdan 2 satıra dönmeyi saglayan bir şartlı döngü oluşturduk. bu döngü şart gerçekleşinceye kadar döngüyü sürdürecektir.

facebook’a rakip site

merhabalar,
okunacagını sanmamakla birlikte iş olsun diye kısa bir yazı yazacagım.

facebooktan bıkmak ve yeni arayışlara yönelmek sık raslanır bir şey degildir nedenini bilmemekle birlikte insanlar facebooktan sıkılsada halen ordalar ve sonucunda facebooka rakip site adı altında haberlere konu olan siteler çıkıyor. üye olmak için degilde acaba ne yapmışlar ne yenilik getirmişler diye incelerken sunu gördügümde kendimi gülmekten alamıyorum facebook ile baglan 🙂 görünce de hemen o sayfadan çıkış yapıyorum. rakip olmayı düşündügün bir sistemin parçası olmak ciddiyetsizlik gibi geliyor bana. gene mi muhalaefetlik yapıyorum acaba …

SerialPort Sınıfı ders 1

merhaba programcı arkadaşlar
msdn library(kütüphanesinden) aldıgım bilgileri araştırıp kullanımlarıyla birlikte burada yayınlamaya çalışacagım. bu konuyla ilgili bilgili olan arkadaşlardan da destek beklemekteyim yararlı olması dilegiyle…

Bir seri bağlantı noktası kaynağını temsil eder.

Miras sıradüzeni (Inheritance Hierarchy)
System.Object
System.MarshalByRefObject
System.ComponentModel.Component
System.IO.Ports.SerialPort

Namespace:  System.IO.Ports
Assembly:  
System (in System.dll)

C# Sözdizimi
public class SerialPort : Component

Oluşturucular(Constructors)

  • SerialPort() : farklı kullanım şekilleri vardır.
    • SerialPort(IContainer)
    • SerialPort(String)
    • SerialPort(String, Int32)
    • SerialPort(String, Int32, Parity)
    • SerialPort(String, Int32, Parity, Int32)
    • SerialPort(String, Int32, Parity, Int32, StopBits)

Özellikler (Properties)

  • BaseStream
    Alt akım(Stream) nesnesini Serialport için döndürür.
  • BaudRate:
    Veri iletişimi hızını ayarlayan özelliktir.
  • BreakState
    Durdurma sinyalinin durumunu almaya veya ayarlamaya yarar.
  • BytesToRead
    Alınan buffer bölgesindeki verinin boyutu geri döner.(Sadece okunabilir)
  • BytesToWrite
    Yazılan buffer bölgesindeki verinin boyutunu döner.(Sadece okunabilir)
  • CanRaiseEvents
  • CDHolding
    Taşıyıcı data sezme bitinin durumunu döner.(Sadece okunabilir)
  • Container
  • CtsHolding
    Silme için istek bitinin durumunu döner.(Sadece okunabilir)
  • DataBits
    Bir byte’taki standart boyutunu ayarlamaya veya büyüklüğünü almaya yarar.
  • DesignMode
  • DiscardNull
  • DsrHolding
    Veri set etme bitinin durumu döner.
  • DtrEnable
    Veri Terminal hazırlamanın durumunu belirtiriz.
  • Encoding
    Veri transferi başlamadan önceki encoding şeklinin seçilmesini sağlar veya ayarlamamızı sağlar.
  • Events
  • Handshake
    Seri porttaki handshaking protokolünü ayarlamamızı sağlar.
  • IsOpen
    Seri portun açık olup olmadığını bool türünden söyleyen bir durum kontrol özelligidir.
  • NewLine
  • Parity
    Parity kontrol protoklunun ayarlamak için kullanılır.
  • ParityReplace
  • PortName
    SerialPort sınıfının PortName isimli özelliği seri portunuzun ismini isteyecektir. Eğer bir çevirici kullanmadan direk seri porta bağladıysanız ‘COM1′, bir çevirici aracılığıyla ismini değişti ise ‘COM5′, ‘COM6′ vb. string türünden port isminizi girebilirsiniz.
  • ReadBufferSize
    Seri porttan okunan verilerin bufferdaki ne kadar yer kaplayacağını belirleriz.
  • ReadTimeout
    seri portun cihazdan kaç saniye boyunca cevap beklemesini istiyorsanız onu int türünden mili saniye cinsinden girmeniz gerekiyor.
  • ReceivedBytesThreshold
  • RtsEnable
  • Site
  • StopBits
  • WriteBufferSize
    Seri porta yazılan verilerin bufferdaki ne kadar yer kaplayacağını belirleriz.
  • WriteTimeout
    seri portunuzun yazma işlemini kaç saniye boyunca sürdürmesini istiyorsanız yine int türünden mili saniye cinsinden girmeniz gerekiyor.

Methotlar(Methods)

  • Close
  • CreateObjRef
  • DiscardInBuffer
    seri portunuzun bufferını temizlemek için kullanılan geri dönüş değeri ve parametresi olmayan methotudur.Çok sık veri alış-verişi yaptığınız sistemlerde kullanmanız gereken bir fonksiyondur. Bazen haberleşme esnasında kullanmadığınız ama portda kalan verileriniz olabilir böyle bir durumda ikinci kez veri okumaya kalktığınız da hem o önceki okumada kalan verileri hem de cihazdan gelen doğru cevabı alırsınız. Bundan dolayıda doğru veri ile işlem yapmamış olursunuz.
  • DiscardOutBuffer
    seri portunuzun veri gönderme aşamasındaki verileri temizlemek için kullanmanız gereken geri dönüş değeri ve parametresi olmayan methotudur.
  • Dispose()
  • Dispose(Boolean)
  • Equals(Object)
  • Finalize
  • GetHashCode
  • GetLifetimeService
  • GetPortNames
    static GetPortNames isimli fonksiyonu bilgisayarınızdaki kullanılabilir portların isimlerini size string dizisi şeklinde söyleyen fonksiyondur. Eğer kullanıcınıza açık olan portları söylemek istiyorsanız bu fonksiyonu kullanabilirsiniz.
  • GetService
  • GetType
  • InitializeLifetimeService
  • MemberwiseClone()
  • MemberwiseClone(Boolean)
  • Open
    Seri portunuzu açmanıza yarar. Hemen şunu söylemekte fayda var bu işlemi yapmadan önce bir hata almak istemiyorsanız port adını, baudRate’inizi belirtmeyi unutmayın. Eğer port adını belirtmez iseniz veya yanlış yazarsanız hata alacaksınız.
  • Read(Byte[], Int32, Int32)
    seri portunuzdan veri okumanızı sağlayan bir fonksiyondur. İlk parametresi byte türünden bir dizi, ikinci parametre dizinin kaçıncı indisinden itibaren veri yerleştireceğini, son parametresine ise kaç byte veri okuyacağınızı söylemeniz gerekiyor. Fonksiyonun geri dönüş değeri ise kaç byte okunduysa onu size int türünden söyler.
  • Read(Char[], Int32, Int32)
    seri portunuzdan veri okumanızı sağlayan bir fonksiyondur. İlk parametresi byte türünden bir dizi, ikinci parametre dizinin kaçıncı indisinden itibaren veri yerleştireceğini, son parametresine ise kaç byte veri okuyacağınızı söylemeniz gerekiyor.İlk parametre char türünden bir dizide olabilir. Fonksiyonun geri dönüş değeri ise kaç byte okunduysa onu size int türünden söyler.
  • ReadByte
    seri portdan sadece bir byte okumanızı sağlayan fonksiyon. İsmi ReadByte olmasına rağmen geri dönüş değeri int türüdür ve size okunan değeri söyler.
  • ReadChar
  • ReadExisting
    çağrıldığı zaman seri portdan okunabilen tüm veriyi size string türünden geri döndürür.
  • ReadLine
    seri portdan NewLine karakteri gelene kadar tanımladığınız ReadTimeout süresince bekler. Gelen veriyi size string türünden geri döndürür.
  • ReadTo
  • ToString
  • Write(String)
    cihaza göndermek istediğiniz veriyi string türünden göndermenizi sağlıyor.
  • Write(Byte[], Int32, Int32)
    veriyi byte dizisi türünden göndermenizi sağlıyor.Tahmin edeceğiniz gibi ilk parametre byte türünden bir dizi, ikinci parametre ise bu dizinin kaçıncı indisinden itibaren üçüncü parametredeki değer kadar seri portdan veri göndermenizi istiyor.
  • Write(Char[], Int32, Int32)
    Birde byte dizisinin yerine char dizisi ile gönderebileceğiniz üçüncü bir tipi bulunuyor.
  • WriteLine
    Write fonksiyonundan tek farkı göndermek istediğiniz verinin sonuna ‘\n’ karakterini ekliyor olması.veri yazıldıktan sonra bir alt satıra geçer.
Olaylar(Events)
  • DataReceived
  • Disposed
  • ErrorReceived
  • PinChanged

kaynaklar

http://www.burakozkan.net/c-serial-port-bileseni/
http://msdn.microsoft.com/en-us/library/system.io.ports.serialport.aspx
http://www.csharpnedir.com/articles/read/?id=431&title=.NET%20Framework%202.0%20ile%20Seri%20Port%20Haberle%C5%9Fmesi

öneri filmler 2012

önerecegim filmleri burada listeleyecegim. tavsiyelerimi begenen olursa tabii ki 🙂

  1. Koruyucu – Safe 2012 Türkçe Dublaj (5 üzerinden 4.5)
  2. Diktatör – The Dictator 2012 Türkçe Dublaj (5 üzerinden 3.25)
  3. Siyah Giyen Adamlar 3 – Men In Black III 2012 Türkçe Dublaj (seriye göre berbat)
  4. Açlık Oyunları – The Hunger Games 2012 Türkçe Dublaj(5 üzerinden 4.25)
  5. Liseli Polisler – 21 Jump Street 2012 Türkçe Dublaj
  6. Aşk ve Para – One for the Money 2012 Türkçe Dublaj
  7. Gizemli Adaya Yolculuk – Journey 2 The Mysterious Island 2012 Türkçe Dublaj
  8. Sen Kimsin Filmi Full izle 2012
  9. Diş Perisi 2 – Tooth Fairy 2 2012 Türkçe Dublaj
  10. İyi Olan Kazansın – This Means War 2012 Türkçe Dublaj
  11. Hayalet Sürücü 2 Intikam Ateşi – Ghost Rider Spirit of Vengeance 2012
  12. Şanslı Biri – The Lucky One 2012 Türkçe Dublaj izle
  13. Koruyucu – Machine Gun Preacher 2011 Türkçe Dublaj izle
  14. bir çılgının içinde – Meet Dave 2008 Türkçe Dublaj izle
    kategoriler: Bilim Kurgu, Aile, Dram, Komedi, Macera
    2008 ABD
    Oyuncular: Eddie Murphy, Elizabeth Banks, Gabrielle Union, Allisyn Ashley Arm, Scott Caan
    Konusu: Bir takım küçük uzaylılar yaptıkları garip uzay aracı ile dünyaya inerler…Uzay aracı neden mi gariptir? İnsan şeklindeki bu uzay aracı komutanlarının (Eddie Murphy) tıpatıp aynısının kendi vücutlarına göre binlerce kez büyütülmüş halidir.
  15. Oyuncu – Gamer
    kategoriler: Bilim Kurgu, Aksiyon, Gerilim
    2009 Amerika
    Yönetmen: Brian Taylor, Mark Neveldine,
    Oyuncular: Gerard Butler, Logan Lerman, Michael C. Hall, Milo Ventimiglia
    Film Özeti: Usta oyuncu gerard butlerin imzasını attığı yabancı sinema filmi 2009 yılında oscar almıştı.
  16. The Lost Future – Kıyametten Sonra
    kategoriler:Bilim Kurgu, Macera
    2010 ABD, Afrika, Almanya
    Oyuncular: Corey Sevier, Sam Claflin, Sean Bean
    Konusu: Yıl 2510, kıyamet kopmuş, dünya ormanlarla kaplı bir tabiata bürünmüş, yeni vahşi, ürkütücü hayvani yaratıklar tarafından istila edilmiştir. Hayatta kalmaya çalışan insanların bu yok edici yaratıklarla olan ölüm kalım savaşı anlatılmaktadır.
  17. Ölüm Yarışı 2 2011
  18. Ölüm Yarışı 1 2008
  19. Kutsal Savaşçı 2011
  20. Zamana Karşı 2011
  21. Çelik Yumruklar 2011
  22. Tanrının Kitabı

asp.net kitap seçimi

merhaba arkadaşlar yeni yazımla sizler ile birlikteyim. asp.net mvc ögrenmek için arayışlarım sürüyor en son olarak bir kitap almaya karar verdim ama nasıl bir kitap almalıydım? araştırmalarım devam ediyor fakat karşılaştıgım bazı durumlarda ilginç ve komik geldi!

sizlere sormak istedim görüş ve önerilerinizi bekliyorum.

karşılaştıgım durum:
kitap adı:ASP.NET 4.0
açıklama: ASP.NET ve Web Programcılığı konusunda temel bilgileri sunmak amacıyla bu kitap hazırlanırken Visual Studio’nun 2010 ve .NET Framework 4.0 kullanıldı. Visual Studio 2008 ve .NET Framework 3.5 kullanarak ASP.NET siteleri geliştirmek isteyenler bu kitaptan yararlanabilirler.
ilginç gelen yanı: visual studio 2010 ile anlatım yapıldıysa neden kitap okurları visual 2008 ile programlama yapsın ki 🙂

 

(C # ile) ASP.NET MVC 3 ‘e başlarken

http://www.asp.net/ ‘den Türkçe’ye çevirdiğim ders 1:

(C # ile) ASP.NET MVC 3 ‘e başlarken

Bu eğitim, Microsoft Visual Studio ücretsiz bir sürümü olan Microsoft Visual Web Developer 2010 Express Service Pack 1, kullanarak bir ASP.NET MVC Web uygulaması oluşturma temellerini öğretecektir. Başlamadan önce, aşağıda listelenen gerekenleri yüklediğinizden emin olun. Aşağıdaki bağlantıyı tıklayarak he
psini yükleyebilirsiniz. Web Platform Installer:
http://www.microsoft.com/web/gallery/install.aspx?appid=VWD2010SP1Pack

Alternatif olarak, tek tek aşağıdaki bağlantıları kullanarak önkoşulları yükleyebilirsiniz:

http://www.microsoft.com/web/gallery/install.aspx?appid=VWD2010SP1Pack

http://www.microsoft.com/web/gallery/install.aspx?appsxml&appid=MVC3

http://www.microsoft.com/web/gallery/install.aspx?appid=SQLCE%3BSQLCEVSTools_4_0

Visual Web Developer 2010 yerine Visual Studio 2010 kullanıyorsanız, aşağıdaki bağlantıya tıklayarak önkoşulları yükleyin.
Visual Studio 2010 Önkoşullar:
http://www.microsoft.com/web/gallery/install.aspx?appsxml&appid=VS2010SP1Pack

C # kaynak kodu ile bir Visual Web Developer projesi bu konuda birlikte kullanılabilir.C # sürümü indirin.

http://code.msdn.microsoft.com/Introduction-to-MVC-3-10d1b098/file/41435/10/Introduction%20to%20MVC%203.zip

VISUAL STUDIO 2010 KLAVYE KISAYOLLARI

Ctrl+K, Ctrl+D Dökümanı düzenle
Ctrl+K, Ctrl+C Seçili kodu yorum satırı (Comment) yap
Ctrl+K, Ctrl+U Yorum satırı yapma işlemini geri al (Uncomment)
Ctrl+K, Ctrl+X Hazır kod ekleme (Insert Snippet) seçeneklerini görüntüle
Ctrl+M Kod blogunu (nodunu) aç (kapalıysa), kapat(açıksa)
Ctrl+M, Ctrl+O Bütün kod bloglarını (nodları) kapat
Shift+F7 Designer görünümüne geç

F7 Kod görünümüne geç
F5 Hata ayıklama (Debug) işlemini başlat
Ctrl+F5 Hata ayıklama yapmadan başlat
F11 Hata ayıklamada sonraki satıra geç
F10 Hata ayıklamada sonraki satıra (metotları takip etmeden) geç
Ctrl+Shift+F5 Yeniden başlat
Ctrl+F Bul ve Değiştir (Find and Replace) ekranını aç
Ctrl+H Değiştir (Replace) ekranını aç
F1 Seçili öğe için arama yap
F4 Properties (Özellikler) ekranını aç
Ctrl+Alt+S Server Explorer’ı aç
Ctrl+Alt+L Solution Explorer’ı aç
Ctrl+Alt+X Toolbox’ı (Araçlar) aç
Ctrl+Shift+A Add New Item (Projeye yeni bir dosya ekle ) penceresini aç
Shift+Alt+A Add Existing Item (Projeye Visual Studio dosyası ekle) penceresini aç
Ctrl+Shift+B Projeyi derle (Build)
Ctrl+N Yeni bir dosya oluşturma penceresini aç
Ctrl+Shift+N Yeni bir proje oluşturma penceresini aç
Ctrl+F4 Açık olan dosyayı kapat
Shift+Esc Toolbox’ı (Araçlar) kapat
Ctrl+F6 Açık olan dosyalar arasında gez
Ctrl+Tab Açık olan dosyalar arasında gezinme penceresini aç
Alt+Shift+F10 Kütüphaneyi referans olarak ekle
Alt+Shift+Enter Tam ekran moduna geç