19 Kasım 2011 Cumartesi

Programlamaya giriş niteliğinde pek önemli ders

Programlama belirli bir problemi çözmek için bir nevi araç oluşturma işlemidir.

Main memory, aktif olarak kullanılan programların ve verilerin depolandığı birincil depolama alanına denir. Bildiğin RAM'dır bilesin, aklın hard diske gitmesin.

CPU: gizemli duruşlu bu üçlü program emirlerini yürüten chip'dir. Bildiğin işlemci, Intel Pentium 4 gibi. Dur bakiyim benimki neymiş; Intel Core Duo.

Operating System (bildiğin işletim sistemi yahu (mesela mesela; Windows XP veya 2000, Unix, Linux, Mac OS)), makinede yaptığımız bütün aktiviteleri kontrol eder. Kullanıcı arayüzü sağlar. Main memory ve CPU'yu gibi kaynakları yönetir.

Şimdi de Software Tools'dan bahsedelim. Bunlar; spesifik proglemleri çözmek için oluşturulmuş ticari programlardır.
1-Word Processors: yazı ve grafik girmenizi, düzenlemenizi sağlayan programlardır. Microsoft Word gibi. Şu anda da bir yazı girdiğime göre, blogger'da da bir word processor kullanılmış demektir. (devbirkedinin bilgisayar bilgisi kendi işini görecek kadardır. Lütfen ahkam kesmelerine aldırış etmeyiniz.)

2-Spreadsheets: Çizim kabiliyeti ile yardımcı olur bizlere.

3-Database Management Programs: Büyük miktardaki verileri, saklamak, kolayca geri almak, incelemek ve biçimlendirmek için kullanılan programlar, Access, ORacle, MySQL gibi.

Ve son olarak, 4-Computer-aided desing(CAD) packages: Gerçek dünyada objelerin bilgisayar modellerini tanımlamanızı sağlar ve genelde mühendislik uygulamaları için kullanılır.
İtiraf ediyorum: tam anlamıyla anladığım yalnızca Word Processors oldu. Biliyorum yalnız değilim.

Bilgisayar  numaralarda, yazılara, grafiklerden videolara bütün bilgileri saklıyor. Peki ama nasıl?
Bütün bilgiler dijitalleştirilmiş(sayısallaştırılmış) şekilde, parçalara bölünür ve numaralar olarak temsil edilir. Bilgiler sayısallaştırıldıktan sonra, Binary Number System kullanılarak hafızada saklanır. Bir binary digit'e bit denir. Bir bit ya 1 ya da 0'dır. Bitlerin permütasyonu değerleri saklamak için kullanılır. Her bir bit permütasyonu, belirli  bir şeyi temsil eder. N bits, 2 üzeri N ögeyi temsil eder.
Main memory yani RAM, birçok hafıza hücresine bölünmüştür. Her hafıza hücresi, tamamen onun olan, yalnızca onu tanımlayan numerik bir adrese sahiptir. Her hafıza hücresi(memory cell), genellikle 8 bit'i (1 byte) saklar. Yüksek değerler, ard arda gelen hafıza bölümlerinde saklanır.

Verileri saklamak ve yönetmek için iki yol vardır; Analog ve Digital.
Digital saklama yönteminde, bilgi parçalara bölünür ve her parça yarı şekilde ifade edilir. Boşluklar, basamaklar ve noktalama işaretleri dahil her karakter bir sayı olarak saklanır.

Son olarak bilgisayar dilinden bahsedeceğiz. Program dilleri, programcının bilgisayardan istenilen şeyi bilgisayarın anlayacağı şekilde anlatmasını sağlar. Program dillerinin gücü, açıklığı ve farklı işlemciler tarafından kullanılabilirliği (portability) önemlidir. Her tür işlemci (CPU) kendi özel makine diline sahiptir. Bir işlemci türünde bir programın çalıştırılabilmesi için, onun makine diline çevrilmesi lazımdır. Bu işlem çeşitli şekillerde yapıalbilir. Mesela mesela compiler denilen bir program kullanırız. Bu program, kaynak kodu, hedef dile çevirir ki bu hedef dil genellikle belirli bir işlemci türünün makine dilidir.

Bir dilin syntax kuralları, bizim sembolleri, kelimeleri ve belirteçleri (identifiers) nasıl yazacağımızı belirler. Bir program ifadesinin Semantics'i ise, o ifadenin programdaki amacını veya rolünü ifade eder. Bir program syntactically doğru olabilir ama bu onun mantıksal olarak yani semantically doğru olduğunu göstermez. Yanisi, bir program bizim dediğimizi yapar, ne demek istediğimizi değil.

Her son olarak dediğinde bil ki o son olmayabilir. Programlar 3 tip error verirler.
1- Syntax hataları (veya diğer temel problemler compile-time errors gibi) Şekilsel hatalar yani. Üstündeki giydiğin eteğe yakışmamış gibi bir durum.
2- Programı çalıştırırken bir problem oluşabilir. Örneğin 0'a bölmeyi deneme programın anormal bir şekilde sonlanmasına sebep olur.  (run-time errors.)
3-Program çalışabilir ama yanlış sonuçlar üretir. Bunun sebebi yanlış formül kullanma olabilir. (logical errors)

Buraya kadar dayanabildiysen okur, seni yerime sınava sokmayı düşünüyorum, haberin ola!

Hiç yorum yok:

Yorum Gönder