4 Şubat 2014 Salı

Python' a geliş serüvenim...

Merhaba arkadaşlar uzun zamandır okul nedeniyle yayın yapamıyordum ve bir köşeye çekilip gerçekten neler yapabileceğimi kavradım. Kodlama üzerinde çalıştım. C' yi ("si" diye okunuyor.) denedim aslında C güzel bir dil fakat sıradan bir bilgisayar kullanıcı için bayağı zor çünkü kütüphaneleri iyi kavramak ve kütüphane elemanlarını iyi öğrenmek gerekiyor. Gerçekten iyi bir sistemci olmak isteyenler C' yi öğrenip JAVA' ya geçiş yapmaları akıllıca bir davranış olur. Ben en büyük amaçlarımdan biri olan "Kendi İşletim Sistemini Kodlama" konusunda gelişmem için bazı konularda araştırmalar yaptım ve Assembly ile bunun yapılması kanaatine vardım. Ama Assembly çok zordu hatta baktığımda hiçbir şeyi anlamayıp Assembly' den korktum ve gerçekten de tavsiye etmem. C ile sistem kodlarken bir sistem kernel'i (yani çekirdeğini) kodlamak 1.000.000 satır oluyor ise Assembly' de bu sayı 1.000.000.000 u bulabilir (Rakamlar sadece örnek için verilmiştir. Bu sistem özelliklerine, işlemci yapısına göre değişebilir... Rakamları dikkate almayınız, sadece kıyaslama için örnek olarak verilmiştir ve sayılar bu kadar büyük rakamları bulabiliyor). Yani bir işletim sisteminde C ile kodlamak büyük bir avantaj çünkü Assembly' de her işlemci yapısı için ayrı olarak kodlanması gerekiyor yani her işlemci mimarisi için ayrı ayrı Assembly türleri var. Ama AT&T Labaratuvarlarında B dilinden türetilen bir dil olan C ise her çekirdek yapısı için ayrı ayrı işlemci mimarisine çevirmek yerine direkt olarak her mimaride çalışabilen uygulama çıkabiliyor. Assembly' de şu fayda var mesela Assembly de 10 KB olan bir dosya C' de 750 KB olabiliyor (Bu rakamlar tahmini olarak yazılmıştır.). Ama Assembly' de daha çok kod yazmak gerekirken C' de daha az kod yazmak bir avantaj olduğu için programcılar boyutlara önem vermek yerine kolaylığa önem verir. Şimdi örneklerle açıklayalım.
Merhaba Dünya Yazmak
  • Assembly Dili – x86 DOS
.model tiny
.code
org 100h
 
main  proc
 
      mov    ah,9
      mov    dx,offset hello_message
      int    21h
 
      retn

 
hello_message db 'Merhaba Dünya!$'
 
main  endp
end   main

  • Assembly Dili – x86 Windows 32-bit 

.486p
         .model  flat,STDCALL
include  win32.inc
 
extrn            MessageBoxA:PROC
extrn            ExitProcess:PROC
 
.data
 
HelloWorld db "Merhaba Dünya!",0
msgTitle db "Merhaba Dünya Programı",0
 
.code
Start:
         push    MB_ICONQUESTION + MB_APPLMODAL + MB_OK
         push    offset msgTitle
         push    offset HelloWorld
         push    0
         call    MessageBoxA
 
         push 0
         call ExitProcess
ends
end Start  

  • C Dili

  1. #include <stdio.h>
    
  2. int main()
    
  3. {
    
  4. printf("Merhaba Dünya");
    
  5. return 0;
    
  6. } 

  • Python Dili

print("Merhaba Dünya")

Ama ilgimi çeken kolay bir dil olan Python' da (paytın, faytın veya piton diye okunuşları vardır.) ise tek satırda "Merhaba Dünya" yazdırabiliyoruz. Sadece python ile program değil oyun bile kodlayabilmek mümkün. Sistem programlama, kullanıcı arabirimi programlama, ağ programlama, uygulama ve veritabanı yazılımı programlama gibi birçok alanda yazılım geliştirebilirsiniz.Hemen hemen her platformda çalışır. Örnek olarak Unix , Linux, Mac, Windows, Amiga, Symbian ve bunlar dışında daha sayılabilecek çok sayıda işletim sisteminde Python kodlanabilinir. Google' da Python' a çok önem verir. Bunu Python' ı ortaya çıkaran Guido Van Rossum' ı işe alması ile kanıtlayabiliriz. Python çok hızlı bir kodlama dilidir.

Guido Van Rossum şuan da Dropbox' ta çalışmakta, Python programlama dilinin geliştirilmesine katkı sağlamakta ve geliştirici grubun liderliğini sürdürmektedir. Gerekli linkler ve daha bulabileceğiniz birçok belgeler ile Python' ı öğrenebileceğiniz kaynaklar bağlantılar bölümünde. Görmek için alttaki bağlantıya tıklayınız.
Mesenger Windows Live Facebook Twitter MySpace E-Posta

2 yorum:

  1. Güzel derleme olmuş, Teşekkürler. Blogun baskın konu ağırlığının aksine bu yazı gibi farklı konularda da yazılar yazılması iyi olacak gibi görünüyor. Yazını beğendim.

    YanıtlaSil
  2. @Dragon Blogger
    Teşekkürler... Zaten sizin gibi, Hiren gibi ve BlueLife gibi abilerimizin sayesinde bu sektöre giriş yaptım ve şuan da programlamaya kadar girdim blogger ı tam kullanamadığım için bazı yerlerde hata yapmıştım elimden geldiği kadar düzeltmeye çalıştım. Bundan sonra da böyle konularda ALLAH' ın izniyle devamlarını getirmeye çalışacağım. Tekrar teşekkürler...

    YanıtlaSil

Yorum yazarken düzgün bir Türkçe kullanmaya özen gösteriniz.
Sorularınızı ilgili konuda ya da İletişim kısmından sorunuz.