You are on page 1of 16

PYTHON İLE KODLAMA

TEMELLERİ

AHMET KEMAL CIKIT VE ONUR HATİPOĞLU


YAZILIM VE GELİŞTİRME SÜRECİ

• Bilgisayar programları, elektrik sinyallerini kullanarak bilgisayar sistemlerini


kontrol ederler.
• Programlar, alt düzeyde somut bir biçimde elektrik sinyallerini yönetirken, üst
düzeyde soyut bir biçimde kullanıcıların farklı işlemleri gerçekleştirmelerini
sağlarlar.
• Günümüzde, kullanıcı arayüzlerine aktarılan üst düzey işlemler ile alt düzey
işlemleri kontrol etmek daha kolay hale getirildiği için birçok programcı, daha
soyut bir biçimde kod yazmak için bu dilleri tercih etmektedir.
YAZILIM GELİŞTİRME SÜRECİ

1. Programcı, programlama dili kullanarak kodları oluşturur.


2. Hata ayıklayıcı ile kodlar hatalara karşı denetim yapar.
3. Derleyici kullanılarak kodlar elektriksel sinyallere dönüştürülür.
4. Bu işlem sonucunda program alt düzey elektrik sinyallerini
yönetirken bilgisayar da bu verileri yorumlayarak komutların
gereğini yapar. Yanaylaç ise programın daha hızlı çalışmasını
sağlayacak şekilde kodların yeniden ele alınmasını sağlar.
YAZILIM
• Yazılım, bilgisayar donanımını anlamlı hale getiren kod, komut ve programlardır. Bilgisayar
yazılımları, kullanıcıların bilgisayarları amacına yönelik olarak kullanmasını sağlar.
• Bilgisayar programları da bu yazılımın somut örnekleridir. Yazılımın bilgisayarın fiziksel
bileşenleriyle etkileşime geçmesi, işlenmesi ve sonuç üretmesi için bilgisayar belleğinde bulunması
gerekir.
• Programlar, elektronik olarak depolanan ikili kodlar olarak temsil edilirler. Bu ikili kodlar, sıfır ve
bir değerlerinden oluşan bir dizi olarak ifade edilirler ve bilgisayarın işlemcisi tarafından
anlaşılabilir.
Örnek: 001101100001110100001
• Bilgisayarın işlemcisi ise bu ikili kodları çözümleyerek belirli bir işlemi gerçekleştirir. Örneğin,
ekranın bir bölümünün mavi görünmesini sağlamak gibi bir görevi yerine getirebilir.
YAZILIM GELİŞTİRME
ORTAMLARI

• Yazılımlar, genellikle ikilik dizileri gibi anlaşılması zor olan veri yapıları
yerine, daha anlaşılabilir kelimeler ve semboller kullanarak yazılır. Bu
sayede, bilgisayarların dilini öğrenmek ve karmaşık problemleri çözmek için
programlar yazmak daha kolay hale gelir. Üst düzey programlama dilleri, bu
amaçla geliştirilmiştir ve programcılara İngilizce gibi doğal dilleri anımsatan
bir şekilde kod yazma imkanı tanır. Bu dillerin popüler örnekleri arasında
FORTRAN, COBOL, Lisp, Haskell, C, Perl, C++, Java ve C# bulunmaktadır.
• Bu üst düzey programlama dilleri, programcıların donanım veya makine dilinin
ayrıntılarıyla ilgilenmeden etkili yazılımlar geliştirmesine olanak sağlar. Ancak,
doğal dilin (günlük konuşma dilinin) programlama dillerine dönüştürülmesi oldukça
karmaşık bir süreçtir. Derleyiciler gibi araçlar, bir programlama dilini diğerine
çevirebilirken, doğal dilin programlama diline dönüştürülmesi hala gelişmekte olan
bir araştırma alanıdır.

• Günlük konuşma dilini belirli standartlar çerçevesinde anlaşılır kılmak,


günümüzdeki yazılımların kapasitesinin ötesinde bir beklentidir. Programlama
dilleri, genellikle basit bir yapıya ve belirli kurallara dayanır ve bilgisayarlar
tarafından çözülebilecek problemler için çözümler üretirler. Ancak, doğal dilin
karmaşıklığı ve anlamlandırılması, yazılım geliştirme süreçlerinin zorluklarından
biri olarak devam etmektedir.
PROGRAMLAMA DİLLERİ VE DETAYLAR
• Yeni bir dilde yazılan ilk program genellikle "Merhaba, Dünya!" adını taşır.
Python'da bu program yandaki gibi yazılabilir:
Bu örnek print komutunun bir örneği olup ekranda tırnak içindeki yazının yazılmasını sağlar.
Ayrıca, Python'da değişkenlerin kullanımı da oldukça yaygındır. Örneğin:

Bu kod, Toplam değişkenine 0, DersSaati değişkenine 3, ve Hafta değişkenine 14 değerini atar. Daha
sonra print fonksiyonu kullanılarak bu değişkenler ekrana yazdırılır. Burada * işareti çarpma işlemi için
kullanılmıştır.
Python gibi yorumlanan dillerde, kaynak kod doğrudan makine diline çevrilmeden önce yorumlanır. Bu
nedenle, Python kodları kaynak kod olarak adlandırılır ve yorumlayıcı tarafından işlenir yorumlayıcı
tarafından yapılandırılan yeni koda ise hedef kod denir.
EDİTÖRLER
• Editörler, genellikle birçok farklı programlama diline ve dosya biçimine uygun olarak
yapılandırılabilir ve kullanıcıların tercihlerine göre özelleştirilebilir. Ayrıca, bazı editörler belirli
türdeki işler için optimize edilmiştir, örneğin metin düzenleme, kod yazma, web geliştirme, veri bilimi
gibi.
• Editörler, programcının kod yazmasını ve kaydetmesini sağlar.
• Renklendirme desteği sayesinde dilin özellikleri ortaya çıkar ve programcının üretkenliğini artırır.
• Söz dizimi (syntax) kurallarına uygun biçimde düzenlenmiş kodlar, geliştirme araçları tarafından daha
iyi anlaşılır.
• Yazım Denetimi: Bazı editörler, yazım yanlışları veya dilin kurallarına uygun olmayan ifadeler
konusunda programcıyı uyarır. Bu genellikle renk değişiklikleri veya farklı vurgulamalar kullanılarak
gerçekleştirilir.
DERLEYİCİLER

• Derleyiciler, kaynak kodları hedef koda dönüştürür.


• Hedef kod, belirli bir platform ya da gömülü bir araç için makine dili olabilir.
Hedef kod diğer bir üst düzey kaynak dil de olabilir.
• Derleyiciler, kaynak kod içeriğini dönüştürerek hedef kod içeren bir dosya
oluşturur. Derlenerek oluşturulan popüler dillere örnek olarak C, C++, Java ve
C# verilebilir.
YORUMLAYICILAR
• Yorumlayıcılar da derleyiciler gibi kaynak kodu hedef koda çevirir.
• Yorumlayıcılar, üst düzey kaynak kodunu her çalıştırdığında satır satır çevirir.
• Derleyiciler ise defalarca çalışılabilir bir program kodu üretir ve değişiklik yapılmadıkça
tekrar derleme işlemine gerek yoktur.
• Yorumlayıcılarla çalışan diller genellikle senaryo dilleri olarak adlandırılır.
• Yorumlanan diller, herhangi bir platformda tekrar derlenmeye gerek kalmadan çalışabilir.
• Yorumlayıcılar, her çalıştırıldığında kaynak kodu çevirir, bu nedenle genellikle daha yavaştır.
• Derleyiciler, bir kez derleme işlemi yaparak hızlı çalışan bir program kodu üretir.
• Örnek olarak Python, Ruby, Perl ve web ortamı için Javascript popüler senaryo
dillerindendir.
DERLEYİCİLE YORUMLAYICILAR
R
HATA AYIKLAYICILAR

Hata ayıklayıcılar, programcının bir programdaki olası hataları bulmasına ve


düzeltmesine olanak sağlayarak programın doğru çalışması için yardımcı
olur. Hata ayıklayıcı programlar ile programın hangi satırlarında hata olduğu
belirlenir. Programcı, değişkenlerin değerlerine bakarak neyin yanlış gittiğini
anlayabilir.
YANAYLAÇLAR
• Yanaylaçlar, bir programın çalışmasına ilişkin istatistiki veri toplar. Böylece
programcılar, genel olarak performansını arttırmaya yönelik önlemler alabilir ve
programın belirli bölümlerini yeniden yapılandırabilir. Yanaylaç, program her
çalıştırıldığında program parçalarının kaç kere çalıştırıldığını ve bu işlemin ne
kadar sürdüğünü ortaya çıkarır. Bu işlem, programın gerçekten tüm parçalarının
kullanılıp kullanılmadığını belirlemek için de kullanılabilir. Buna kaplam denilir.
Genel olarak programın belirlenen parçaları iyileştirilerek programın daha hızlı
çalışması sağlanır.
BÜTÜNLEŞTİRİLMİŞ GELİŞTİRME ORTAMLARI

• Çoğu yazılım, geliştirici bütünleştirilmiş geliştirme ortamlarını (integrated development


environ- ment-IDE) kullanır. Bu ortamlar, editörleri, hata ayıklayıcıları ve diğer programlama
yardımcılarını kapsar.
• IDLE:python.org web sitesinde yer alan ücretsiz program geliştirme ortamıdır bu site içerisinde
download Python’un son sürümlerini bulmak mümkündür. Ayrıca birçok işletim sistemi için
gerekli olan dosyalara erişim bağlantıları da bu sasyfada yer almaktadır.
• Wing IDE:Wingware Python’da program geliştiriciler için üç farklı türde IDE ortamı
sunmaktadır.Bunlardan biri olan Wing IDE 101 ücretsiz olup başlangıç seviyesindeki python
kullanıcıları için basit bir IDE ortamı sunmaktadır.
• Conopy:Enthought çatısı altında yer alan Conopy içerisinde birçok farklı programlama dilinde
kod yazmayı ve derlemeyi kolaylaştırmaktadır.Herkes tarafından indirilebilir olup ücretsizdir.
NEDEN PYTHON

• Python öğrenmesi ve okuması kolay ,İngilizce düz yazıya en benzer ücretsiz


bir dildir.
• Python kullanıcıya daha az satır kodla daha büyük işlemleri yapabilme
özgürlüğünü sağlar
• Python bütün işletim sistemleriyle uyumlu çalışabilmektedir
• İçerisinde birçok kütüphaneyi barındırmaktadır.
PYTHON SÜRÜMLERİ

• Python programlama dilinin 2016 yılı için en güncel sürümü Python 3.5.2'dir.
Bu kitapta yer alan örnekler 3.X sürümlerinde çalışan uygulamalardan
oluşmaktadır. Ancak başka kaynaklarda yer alan birçok örneğin daha önceki
sürümlerde yazıldığını görmeniz mümkün olabilir. Sürümler arasındaki
farklılıklar, özellikle ileride görülecek olan fonksiyonların, print komutu gibi
bazı komutların fark lı olarak ifade edilmesini kapsamaktadır. Farkı
kaynaklardan bulduğunuz örnekler yeni sürümlerde çalışmayabilir. Bu
nedenle bu kitapta yer alan söz dizimi kurallarına göre komutların
değiştirilmesi gerekmektedir.

You might also like