- Katılım
- 1 Şub 2017
- Konular
- 87
- Mesajlar
- 868
- Reaksiyon Skoru
- 108
- Altın Konu
- 1
- TM Yaşı
- 9 Yıl 4 Ay 5 Gün
- Başarım Puanı
- 72
- MmoLira
- -17
- DevLira
- 0
ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!
--------------------------------------
-----------------------------------------
C++ bilindiği gibi programlama dünyasında en çok ilgi gören C dilinden türemiştir. C++’ı klasik C dilinden farklı yapan yanı; Nesne Yönelimli Programlamayı da ( Object Oriented Programming) C’nin sözdizimi kurallarıyla birlikte desteklemesidir. Normalde C ile sadece yapısal programlama yaparken C++ dili ile hem yapısal hem de nesne yönelimli programlar yazabilirisiniz. C++ diline başlarken önce dilin C’den gelen ve temel olan özelliklerini öğrenmek gerekir. Örneğin, değişken tanımlama, atama ve diğer basit aritmektik işlemler, kontrol yapıları ve döngüler gibi.
Teknolojinin ulaştığı son noktadaki programlama dillerinden olan C ve C++, bir çok yeni ve güçlü özellikleri içerir. Derslerimiz devam ettikçe bunların teker teker içine gireceğiz. C dilinin özelliklerinin %80 i C++’da da mevcuttur (bu karşılaştırma şahsi görüşümdür). Zaten C++, C’nin üst gurubudur. Bunu şöyle sıralayabiliriz. C, C++ ve C# dır.
C dilinin avantajları, az komut kümesinden oluşması ve bu komutların diğer yüksek seviyeli dillere nazaran daha hızlı çalışmasıdır. Ayrıca C deki kütüphaneler sayesinde fonksiyon tanımlamanıza gerek kalmadan işlemlerinizi yapmak mümkün olacaktır. Bu konuda çok detaya inmeden, programlamaya geçmek istiyorum. Çünkü, programlamaya başladığımızda her örnekten sonra o an kullandığımız programın içinde geçen fonksiyon, hata, değişken, belirleyiciler, kısıtlamalar, notasyonlar v.s gibi bilgilerden ara ara bahsedeceğim. Yalnız çok önemli olan bir konuya burada değinmek istiyorum. C nin avantajlarını programlamayla birlikte görmek güzel ama C nin dezavantajlarını programlamadan önce bilmeliyiz ki bunlardan sakınalım. Öncelikle Tanımlayıcılardan bahsetmek istiyorum. Her derleyici ve assmbley için değişkenleri, sabitleri, etiketleri ve fonksiyon adlarını tanımlama kuralları vardır. Bu notasyonlara, tanımlayıcı denir. C++ da tüm tanımlayıcılar a, . . . , z – A, . . . , Z harfleri ile ya da alt çizgi “_” ile başlar. Bundan sonra rakam, harf, ya da alt çizgi kullanılabilir. ANCI C uyumlu derleyiciler 31 karaktere kadar tanımlayıcı kabul ederler fakat tanımlayıcının ilk sekiz karakterini kullanmayı kendimize alışkanlık etmeliyiz. Dikkat etmemiz gereken özelliklerden biri de kullandığımız ifadelerdeki büyük küçük harflerdir. C ve C++ büyük ve küçük harf duyarlılığına sahiptir. Kullandığımız ifadeleri birbirinden farklı ve aynı ifade olarak kullanıyorsak programımız hata verecektir. Bunu bir örnekle anlatayım:
Program
PROGRAM
progRAM
ProgRam Bu şekilde tanımlarsak hepsi birbirinden farklı ifadeler olarak C++ da okunacaktır. Biz Şunu alışkanlık edinmeliyiz; tanımlayıcılarımızın baş harfi büyük olacak. Büyük ve küçük harf kombinasyonlarının kullanılması ile önceden yapılan tanımlamalar bazen işi zorlaştırabilir. Eğer bu değişkenlerden birini kullanmak isterseniz, bu zamana kadar nasıl tanımladığınızı bilmeniz gerekir. Örneğin printf()`in PRINTF() olarak çağrılması durumunda ” bilinmeyen tanımlayıcı ” (Unknown identifier) hata mesajı vererek sizi uyarır. Buna benzer olarak %f ve %F kullanımı hata verdirecektir. Programlamayı yaparken bunlara dikkat etmemiz gerekecek. Çünkü bir değişkeni veya tanımlayıcıyı başta nasıl kullandıysanız üç, dört sayfa kod yazdıktan sonrada aynı şekliyle kullanmak zorundasınızdır. İşte burada en büyük handikap yaşanacaktır. Çünkü C/C++ derleyicileri her zaman hatanın nerde olduğunu göstermez. Bunu programcı kendisi satır satır takip ederek bulacaktır. Bundan dolayı bu söylediklerime baştan dikkat etmemiz gerekiyor.
Tavsiyeler:İyi bir programlama yapabilmek için benim size olan tavsiyelerim; daha az kod kullanarak daha çok işlem yapabilme. Gerçi bunu yapsak zaten profesyonel oluruz
. Zaten C++ `ın paradigması da buradan geliyor. Aslında C++ da yapabileceğimiz tüm programları C de yapma olanağımız var ama bu bize hem fazla kod yazmayı gerektirecek hem de zaman kaybetmemize sebep olacak. Zaten bunlardan kaçındığımız için C++ diyoruz. Elimizde nesneye yönelik bir dil varken ve kullanacağımız fonksiyonlar içinde hazır olarak mevcutsa, tabi bize de bunun keyfini sürmek kalıyor. Tavsiyelerimden biride derslerde verdiğimiz örneklerin dışında aynı algoritmaya benzer farklı örnekler yapın. Öğrenmenin en iyi yolu yanlış yapmaktır. Bunu şöyle izah edeyim: eğer yanlış yapıyorsanız ve de o yanlışın kaynağını bulup düzeltebiliyorsanız, o an onu öğrenmişsiniz demektir. Tabi örnekler sizin için alıştırma olacaktır ve hafızanızda kalıcı bir yer tutacaktır. Bunca kodu başka türlü hafızada tutamayız. İlk başlarda sık sık not alınız, mümkün olduğunca da bol örnek yapınız. Örneklerinizi de kendiniz düşünüp kendi hayal gücünüzle oluşturursanız eminim bu işi başaracaksınızdır. Başta çok zor gelebilir ama başarı ter dökülmeden olmaz. Bu kısmı fazla uzatıp sizi daha başlamadan C/C++ dan uzaklaştırmak istemiyorum.
--------------------------------
----------------------------------
Günümüz bilişim dünyasında programlama dillerinin etkisi oldukça yüksektir. Bilgisayarlar, akıllı telefonlar ve diğer elektronik cihazlardakullanılan diller sayesinde bahsedilen cihazların kontrolü sağlanmaktadır. Bundan dolayı programlama dilleri teknolojik aygıtlar için önemlidir.
Bu yazımızda bilgisayar programlama dillerinden olan C# nedir nerelerde kullanılırsorusunun cevabını arayacağız.
C# Nedir Ne İşe Yarar?
Yeni nesil programlama dili olan C sharp programlama konusunda yenilikleri de beraberinde getirmektedir. C# sunucu ve gömülü sistemleri için tasarlanmıştır. Microsoft tarafından geliştirilen C# .NET ortamında kullanılmak üzere geliştirilmiştir. Dilin tasarlanmasında Anders Hejlberg öncülük etmiştir. Zamanla gelişen bu programlama dili artık gerek masaüstü olsun gerek web uygulamaları olsun çoğu yerde kullanılmaktadır.
C#’ın C, C++ ve Java İle Bağlantısı Var mıdır?
Her ne kadar isim benzerliği olsa da C ile pek benzer yanlarının olduğu söylenemez. Aralarındaki en büyük fark nesne yönelimli programlamadır.
C# nesne yönelimli programlamayı desteklerken, C nesne yönelimli programlamayı desteklememektedir. Ortak yanlarından belki de en önemlisi benzer sözdizimine sahip olmalarıdır. Ana yapıları itibariyle C# programlama C ile programlamaya göre daha farklıdır. Bu konuda çok fazla detaya girmeyeceğiz.
C++ dili ile ise nesne yönelim programlama özellikleri aynıdır. Ayrıca sözdizimleri de benzerlik göstermektedir.
C# daha çok Java ve C++ programlama dillerinden esinlenerek oluşturulmuştur. Birebir aynı olmasa da çoğu özellikleri benzerlik taşımaktadır.
C# İle Web Programlama
C# nedir konusunda merak duyan herkes için başlangıç seviyesinde hazırlanan bu yazımızda genel hatlarıyla C# örnekleri sizlerle buluşturulacaktır. Böylece bu konuya bir giriş niteliğinde olan yazımızla C# dünyasına giriş yapmış olacaksınız.
C# ile yazılan programların çalışması için ‘.NET Kütüphaneleri’nin bulunduğu bilgisayarlarda bu sistemle uyumlu kütüphane ve derleyicinin olması yeterlidir. Bu kütüphane ve derleyici ‘.NET Framework’ da olabilir ECMA standartlarına sahip olan farklı bir kütüphane ya da derleyici de olabilir.
C# makine diline yakın olmasından ötürü orta seviyeli dil olarak kabul edilirken, insan algısına yakınlığı popüler olmasını sağlamıştır. Burada orta seviyeli dil hakkında bir cümlelik de olsa açıklama yapmak yerinde olacaktır. Çünkü bu kavram yanlış anlaşılmalara neden olabilmektedir.
Orta seviyeli dil o dilin güç seviyesini değil, makine diline olan seviyesini göstermektedir. Yani kodlama yapısı makine diline ne kadar yakınsa seviye ona nispeten düşmektedir. Aynı şekilde yüksek seviyeli bir dil demek, o dilin insan konuşma diline yakınlığıyla alakalıdır.
C# Nedir ve Özellikleri
Masaüstü uygulamalarının dışında C# web programlama konusunda da oldukça güçlü projeler geliştirilebilir. Aşağıda C# dilinin genel özellikleri gösterilmiştir.
C# konusunda belki de uygulama geliştiricilerin bilmesi gereken önemli noktalardan biri ‘using’ komutuyla eklenecek referansların bilinmesi konusudur. Çünkü program içerisinde bazı fonksiyonların kullanılabilmesi için ilgili kütüphane dosyalarının eklenmesi gerekmektedir. İlerleyen aşamalarda bu konuda bir önek verileceğiz fakat genel ‘using’ kullanımı aşağıda gösterilmiştir.
C# nedir sorusuna vereceğimiz en iyi cevaplardan biri sanırım bir örnek uygulama olacaktır. Örnek uygulamalarımızı yaparken bilgisayarlarda Microsoft Visual Studio programının yüklü olduğunu varsayıyoruz. Programı açıp File -> New -> Projectdiyerek yeni bir konsol projesi açıyoruz.
Aşağıdaki komutları kod alanına yazıyoruz.
using System;
namespace ilk_konsol_projemiz
class ilk_konsol_projemiz
{
static void Main ( string[] , args)
{
Console .WriteLine( “ilk konsol projemiz!” );
Console .ReadKey();
}
}
}
F5 tuşu ile uygulamayı çalıştırıyoruz. Aşağıda konsoldaki ekran çıktısı görünmektedir.
Dikkat edilirse komutumuz ‘using’ parametresi ile başlıyor ve uygulama kod alanına ‘System’ kütüphanesini ekliyoruz. Çünkü Console fonksiyonlarını ‘using’ ile eklediğimiz ‘System’ kütüphanesi sayesinde kullanabiliyoruz.
Projeyi oluştururken projeye verdiğimiz isin otomatik olarak namespace’e verilmiştir. ‘Namespace’ başlı başına farklı bir konu olduğu için bu yazımızda bahsedilmeyecektir. Şimdilik proje adı oluşturulunca namespace ile aynı ada sahip olacağını bilmek yeterli olacaktır.
Burada bizim için önemli olan kısım, yani komutların bize daha yakın olan bölümü ‘Main’ içerisinde yer alan kodlardır. Her ne kadar main dışında da kod kullanımı olsa da biz örnek uygulamalarımızda komutlarımızı main içerisine yazacağız. “Console.WriteLine” komutu ile parantez içlerine yazdığımız değer ekranda yazdırılır ardından imleç bir alt satıra geçer. İçerisine çok farklı değerler alabilen bu komutta parantez içine “ ” simgeleri ile yazılan değerler birebir ekranda yazdırılmaktadır. İlk örneğimiz bu şekildedir. İsterseniz farklı bir örnekle diğer kullanım türüne göz atalım.
using System;
namespace ilk_konsol_projemiz
class ilk_konsol_projemiz
{
static void Main ( string[] args)
{
İnt sayi1 = 2, int sayi2 = 5, int sonuc = 0;
sonuc = sayi1 + sayi2;
Console .WriteLine( “Sonuc: ” + sonuc);
Console .ReadKey();
}
}
}
Yine F5 tuşu ile uygulamayı çalıştırıyoruz. Komutlarımızı yine main içerisine yazdığımıza dikkat çekmek istiyorum. İkinci uygulamamızın birincisinden farkı öncelikle değişken kullanmamızdır. Aşağıda çalışan uygulamanın ekran çıktısı sunulmuştur.
Bu örnekte ‘sayi1, sayi2, sonuc’ değişkenleri oluşturuldu ve her birine ilk değer ataması yapıldı. İkinci aşamada sayi1 ile sayi2 toplanıp sonuc değişkenine atıldı. Bundan sonrası, ilk örnekte öğrendiğimiz Console.WriteLine komutu kullanımıdır. Fakat burada durum biraz farklı, “ “ işaretlerinden sonra bir artı (+) işareti koyduk vesonuc değişkeninin adını yazdık.
C# ’ta kullanılan değişkenleri ekrana yazdırırken değişken adını direk olarak yazabiliyoruz. Bu aşamada bilinmesi gereken önemli bir noktada istersek sayıların değerlerini kullanıcılardan alıp sonucu değişken yapabiliriz. Şimdilik bu örnek giriş seviyesi için yeterli olacaktır. Bu örneğin ekran çıktısı aşağıdaki gibidir.
Visual C# Nedir?
İlk konsol uygulamamızdan sonra bir tane de görsel uygulama yaparak yazımızı sonlandıralım. File -> New -> Project diyerek yeni bir Windows Forms Application oluşturuyoruz. Karşımıza çıkan Form1 içerisine sol tarafta yer alan Toolbox kısmında bir tane Button’u sürükle bırak yapıyoruz. (Eğer Toolbox sol tarafta yoksa üst menüden View -> Toolbox diyerek açabiliriz.) Form ekranına gelen butona tıklayarak sağ tarafta yer alan Properties’te yer alan Text kısmını ‘ Değer Göster’ olarak değiştiriyoruz.
Bu aşamaya kadar herhangi bir sorun yoksa butona çift tıklıyoruz ve kod ekranına geçiş yapıyoruz. Görüldüğü üzere bu kısım biraz daha farklı parametreleri barındırıyor. Bu ekranda bizim için önemli olan button1_Click kısmıdır.
Çok fazla detaya girmeden hemen kodlarımızı yazmaya başlayalım. Bu uygulamamızda komutlarımızı button1_Click içerisine yazıyoruz. İlk başta konsoldan farklı olduğunu görüyoruz. Aşağıdaki komutları yazıp yine F5 tuşu ile uygulamayı çalıştırabilirsiniz.
MessageBox .Show( “İlk form uygulamamız…” );
Burada ekrana yazdırma komutumuz değişti. MessageBox.Show komutu sayesinde ekrana istediğimiz yazıyı yazdırabilmemiz mümkündür.
Yukarıda hem konsol hem de form uygulamaları ile C# için başlangıç seviyesinde bir giriş yapmış olduk. Bu uygulamaları kendiniz de uygulayarak daha farklı olasılıkları uygulamalarınızda kullanabilirsiniz.
C# Nedir Son Sözler
C# nedir konulu yazımızla, sizlerde C# konusunda farkındalık oluşması amaçlanmıştır. Burada sunulan örnek uygulamalar giriş seviyesinde olup daha ileri seviye uygulamalar için daha fazla araştırma yapıp bilgi sahibi olmak gerekmektedir.
Yazılım dünyasında birçok programlama dili bulunmaktadır. Her dilin kendine özgü özellikleri bulunmaktadır. C# deyince aklımıza asp-net nedir, sql nedir soruları da gelmektedir. Son zamanlarda mobil programlama nedir konusu da sık araştırılan konular arasındadır.
Uygulama geliştiriciler açısından C sharp programlama dilinin yeri farklıdır. Microsoft Visual Studio programıyla birlikte uygulama yazmak daha eğlenceli hale gelmektedir. Siz de C# bilginizi ilerilere taşıyarak yazılım konusunda aranan ve bilgisine başvurulan kimseler arasındaki yerinizi alabilirsiniz.
Python üst düzey basit sözdizimine sahip, öğrenmesi oldukça kolay, modülerliği, okunabilirliği desktekeyen, platform bağımsız nesne yönelimli yorumlanabilir bir script dilidir. Python, ayrıca yorumlanabilir, interaktif ve nesne odaklı bir programlama dilidir. Bu dil modüller, olağandışı durumlar, dinamik yazım, oldukça yüksek dinamik veri türleri ve sınıfları ile birlikte çalışmaktadır. Python, oldukça temiz ve sade satırlarla kombine edebilmektedir. Birçok sistem çağrısına ve kütüphanesine uygun olan birden fazla arayüze sahiptir ve C ya da C++ ortamında geliştirilebilir. Bu dil ayrıca programlanabilir arayüz ihtiyacı gibi uygulamalarda genişletilmiş dil olarak kullanılabilmektedir. Son olarak Python oldukça portatiftir. Bu dil bir çok Unix işletim sisteminde, Mac'de ve MS-DOS, Windows, Windows NT ve OS/2 işletim sistemleriyle çalışan bilgisayarlarda çalışabilmektedir.
Python yorumlanır: Python çalıştırıldığı zaman kaynak kodlar bir yorumlayıcı tarafından işleme alınır. Programı çalıştırmadan önce derlemenize gerek yoktur. Bu PERL ve PHP de kullanılan web yorumlayıcılarına benzer.
Python İnteraktiftir: Python interaktif yani etkileşimli bir programlama dilidir.
Python Nesneye Yöneliktir: Python, Nesneye Dayalı bir programlama dilidir ayrıca nesneye dayalı programlamayı destekler.
Python Yeni Başlayanlar İçin: Python, yeni başlayanlara yönelik programcılar için mükemmel bir dildir ve basit metin işleme, WWW tarayıcılar, oyunlar gibi geniş bir uygulama yelpazesinin geliştirilmesini destekler.
Python Özellikleri
Python'un özellikleri arasında:
Hemen python programlama diline başlamak istiyorsanız bu kısımdan devam edebilirsiniz. Python değişkenler
Daha fazla bilgi için The Python Tutorial'i okumalısınız. The Begginer's Guide to Python dökümanı diğer bir tanıtım dökümanıdır.
Python Yazılım Derneği Nedir?
Python Yazılım Derneği kar amacı gütmeyen ve Python 2.1 ve daha yeni sürümlerinin telif hakkını elinde tutan bir kuruluştur. Bu kuruluşun amacı Python programlama diliyle ilgili olan açık kaynak kodu teknolojisinde uzmanlaşmak ve Python'un kullanımını yaygınlaştırmaktır. Bu derneğin anasayfası şu adrestedir:
Bu derneğe yapılacak bağışlar, Birleşmiş Milletler sınırları içerisinde veriden muatır. Eğer Python kullanıyor ve bu dili yararlı buluyorsanız, derneğin bağış sayfasını kullanarak bu derneğe katkıda bulunabilirsiniz.
Python Kullanımında Herhangi Bir Telif Hakkı Sınırlaması Var Mıdır?
Sizler, bu dil ile istediğinizi yapabilirsiniz. Fakat istediklerinizi yaparken üretmiş olduğunuz Python'da telif hakkı belgesini ya da simgesini göstermekle yükümlüsünüz. Eğer telif haklarına saygı gösterip onları onore ederseniz, Python'u ticari alanda kullanmanızın bir sakıncası yoktur. Veri ya da diğer hallerdeki Python'u satabilir, bundan para kazanabilirsiniz. Bizler, Python'un ticari kullanımlarını öğrenmeye çalışmaktayız.
PSF lisans sayfasına giderek, lisans kullanımı ile ilgili daha fazla bilgiye ulaşabilirsiniz.
Python logosu tescil edilmiş bir markadır ve kullanım için izin alınması gerekmektedir. Daha fazla için Tescil Edilmiş Markaların Kullanım Poliçesi adlı belgeye göz atın.
Python İlk Olarak Neden Ortaya Çıkarıldı?
Dilerseniz tüm bunların nasıl ortaya çıktığını Guido van Rossum'un kaleminden dinleyelim.
Benim CWI da bulunan ABC grubundaki yorumlanan bir dilin yerleştirilmesi konusunda büyük bir tecrübeye sahiplğim vardı ve ben bu grupla çalışarak dil tasarımı hakkında çok fazla şey öğrendim. Bu, bir çok Python özelliğinin kökü olmaktadır ve buna durum gruplamasınının tanımlaması ve oldukça yüksek seviyedeki veri tiplerinin kapsanması da dahildir (Python'da detaylar farklı olmasına rağmen)
Zaman zaman ABC diliyle ilgili bazı sıkıntılarım oldu fakat bu dilin birçok özelliği çok hoşuma gitti. ABC dilini genişletmek imkansızdı ve bu genişletilememezlik en büyük problemlerin başında geliyordu. Daha önceleri Modula 2+ kullanımı ve Modula 3 tasarımcıları ile görüşmek gibi bazı tecrübelerim oldu. Ayrıca Module 3 raporlarını gözden geçirdim. Modula 3, betiğin ve semantiğin ve ayrıca bazı diğer Ptyhon özelliklerinin kökenidir.
Ben CWI'daki Amoeba dağıtımı işletim sistemleri grubunda çalışıyordum. C programları yazmak ya da Bourne kalkan betiklerini kullanarak sistem yönetim işlemlerini gerçekleştirmek yerine daha iyi bir yönteme ihtiyacımız vardı. Bunun nedeni ise Amoeba'nın, Bourne betiğiyle ulaşılabilmesi mümkün olmayan bir sistem çağırma arayüzünün bulunmasıydı. Amoeba yönetiminde yaptığım hata, programlama dilinin geleceğinin ne denli önemli olduğunu kavramamamı sağladı.
ABC gibi bir betik dilinin Amoeba sistem çağrıları ihtiyacı karşılama gerekliliği benim başıma geldi. Amobea'ya özgü bir dil yazmak oldukça aptalca bir hareketti. Bu yüzden genel olarak genişletilebilir bir dil yazmaya karar verdim.
1989 yılı Christmas tatilinde oldukça boş zamanım vardı ve çeşitli denemeler yapmaya karar verdim. Bir sonraki yıl boyunca, denemem süresinda çalışmamasına rağmen, Python dili, Amoeba projesinde oldukça başarılı şekilde kullanılmaya başlandı. İş arkadaşlarımdan gelen geri dönütler, bu dile bir çok geliştirme yapmamı sağladı.
Şubat 1991'de bu dili USENET'e göndermeye karar verdim. Geri kalan bilgiler ise Misc/HISTORY dosyasında bulunmaktadır.
Python ne için yararlı?
Python, bir çok farklı problem sınıflarına uygulanabilen yüksek seviyeli genel amaçlı bir programlama dilidir.
Bu dil, dizi işleme (düzenli ifadeler, Unicode, dosyalar arası farklı hesaplama), Internet protokolleri (HTTP, FTP, SMTP, XML-RPC, POP, IMAP, CGI programlama), yazılım mühendisliği (ünite test, kayıt, profil, Pyhton kod işlemesi) ve işletim sistemlerinin arayüzü (sistem çağrılar, dosya sistemleri, TCP/IP soketleri) gibi alanları kapsayan büyük bir kütüphane ile birlikte gelmektedir. Python Standart Kütüphane içerik tablosuna bakarak nelerin mevcut olduğunu görebilirsiniz. Oldukça geniş üçüncü parti geliştirmeleri de ayrıca mevcut durumdadır. Python Paket Sayfasına bakarak ilginizi çeken paketleri bulabilirsiniz.
Python Numaralandırma Şeması Nasıl Çalışmaktadır?
Python versiyonları A.B.C ya da A.B olarak numaralandırılmıştır. A, büyük bir versiyon numarasıdır ve dildeki büyük değişiklikler olduğu zaman değişmektedir. B, daha küçük versiyon numarasıdır. Daha küçük değişiklikler durumunda değişmektedir. C ise mikro seviyesindeki bir versiyon numarasıdır. Her bir hata gideriminde bu numara kullanılmaktadır. PEP 6'ya bakarak hata giderilmiş dağıtımlar hakkında daha fazla bilgiye ulaşabilirsiniz.
Yayınlanan her bir güncelleme hata giderimi olarak karşımıza çıkmayabilir. Yeni büyük dağıtımda, bir çok büyük geliştirmeler yapıldı ve piyasaya alfa,
Alfa, beta ve dağıtıma aday olan sürümler genellikle bir son eke sahiptir. Alfa versiyonları için kullanılan son ek “aN” dir. Beta sürümlerindeki son ek ise “bN” olarak karşımıza çıkmaktadır. Dağıtıma hazır versiyonlarda ise bu ek “cN” olmaktadır. N harfi burada küçük numarayı temsil etmektedir. Diğer bir deyişle tüm versiyonlar 2.0aN, 2.0bN ya da 2.0cN olarak etiketlenmiştir.
Ayrıca bazı zamanlarda sürüm numarası “+” ekiyle karşınıza çıkabilir, örn: 2,2+. Bu sürümler henüz dağıtılmamış sürümlerdir ve direk bir alt sürüm ile birlikte inşa edilmiştir. Pratikte son küçük dağıtım yapılmıştır ve alt sürüm bir sonraki küçük sürüm öncesi dağıtılmıştır.
Ayrıca sys.version, sys.hexversion ve sys.version_info hakkında hazırlanan belgelere göz atmanızı öneririz.
Python Kaynak Kopyasını Nasıl Edinebilirim?
En son güncellenen Python kaynak dağıtımı her zaman python.org adresinde
Python Dökümantasyonuna nasıl ulaşabilirim?
Standart stabil sürümü için hazırlanan dökümantasyon
ReStructuredText formatında yazılan dökümantasyonlar Sphinx dökümantasyon aracı ile işlenmektedir. ReStructuredText kaynağı, Python kaynak kodu dağıtımının bir parçasıdır.
Hiç Programlama Tecrübem Yok, Python Dersleri’ne Nereden Ulaşabilirim?
An itibariyle piyasada bir çok Python dersi ve kitabu bulunmaktadır. Standart dökümantasyon içerisinde Python dersleri bulunmaktadır.
Başlangıç seviyesindeki Python programcılığı için Başlayıcılar için Hazırlanan Rehber’e göz atın.
Python için kurulan bir haber grubu ya da posta listesi mevcut mudur?
An itibariyle comp.lan.python adında bir haber grubu ve python-list adında bir posta listesi vardır. Haber grubuyla posta listesi birbirine bağlıdır. Eğer haber grubundaki haberleri okuyorsanız, posta listesini takip etmenize gerek yoktur. Com.lan.python oldukça yüksek trafiğe sahiptir ve günde binlerce gönderi almaktadır. Ayrıca bu sayıyı okuma konusunda Usenet kullanıcıları daha avantajlıdır.
Yeni yazılım duyuruları ve etkinlikler comp.lang.python.announce adresinde bulunmaktadır . Bu adres, diğerine nazaran daha az trafiğe sahiptir ve günde ortalama 5 gönderi almaktadır. Ayrıca bu adres python-announce posta listesi olarak mevcuttur.
Haber grubu ve posta listesi için daha fazla bilgiye
Python’un Beta Test Versiyonunu Nasıl Edinebilirim?
Python’un alfa ve beta sürümleri
Nasıl hata raporlaması ve Python yaması gönderebilirim?
Hata raporlamak ya da yama göndermek için
Phyton’un nasıl geliştiği konusunda daha fazla bilgi için Python Geliştirici Rehberi’ne göz atın.
Referans olarak alabileceğim ve Python hakkında yazılmış herhangi bir makale mevcut mu?
Python hakkında yazılan ve sizin favoriniz olan kitaptan alıntı yapmanız oldukça iyi bir yöntem olacaktır.
Python hakkında yazılan ilk makale 1991 yılında yazılmıştır ve pek güncel değildir.
Guido van Rossum and Jelke de Boer, “Interactively Testing Remote Servers Using the Python Programming Language”, CWI Quarterly, Volume 4, Issue 4 (December 1991), Amsterdam, pp 283-303.
Python Üzerine Yazılan Herhangi Bir Kitap Mevcut Mudur?
An itibariyle bir çok kitap mevcuttur ve bir çoğu da yayınlanmaya hazırlanmaktadır. Bu kitapların listesine
Ayrıca çevrimiçi kitap mağazalarında “Python” kelimesini aratıp Monty Python filtrelemesinden geçirdikten sonra istediğiniz sonuçlara ulaşabilirsiniz.
Şüphesiz Python, tüm dünya’ya yayılmış bir dildir.
Neden Python?
Python’un mimarı Guido van Rossum bu dili icat ettiği yıllarda aynı zamanda 1970’li yılların komedi serisi olan “Monty Python’s Flyin Circus”u okuyordu. Van Rossum, yarattığı bu muazzam dilin kısa ve öz bir isime ihtiyaç duyduğunu düşündü ve bu dile Python ismini Verdi.
Ben’de “Monty Python’s Flying Circus” gibi bir eser mi okumalıyım?
Elbette hayır fakat yardım edeceği kesin
Gerçek Dünya’da Python
Python Ne Kadar Stabil Bir Dildir?
Oldukça stabildir. Her yeni stabil versiyon 6 ya da 18 ay arayla yayınlanmaktadır ve bu 1991 yılından beri böyle süregelmektedir. Devam da edecektir. An itibariyle iki büyük versiyonun yayınlanma tarihlerinin arasında tam 18 ay bulunmaktadır.
Daha önceki versiyonların “hataları giderilmiş” versiyonları yayınlandığı için, mevcut sürümlerin stabilitesinde gözle görülür bir artış bulunmaktadır. Bir üçüncü versiyon numarası (2.3.2, 2.6.2) ile ifade edilen hata giderilmiş sürümler stabilite için yayınlanmakta ve sadece gözle görülür hataları gidermektedir. Ayrıca iki farklı hataları giderilmiş sürüm güncellemesinde ara yüzün sabit kalacağı garantisi verimiştir.
En son yayınlanan stabil sürüm Python indirme sayfasında mevcuttur. Aynı zamanda, üretime hazır iki adet sürüm bulunmaktadır. Bunun sebebi ise iki farklı stabil sürümün bulunmasıdır; 2.x ve 3.x. Python 3.x, daha az sayıda üçücü parti yazılımı barındırdığı için Python 2 versiyonlarından daha az kullanışlıdır. Python 2 kodları, değiştirlmeden Python 3’de çalışmamaktadır.
Kaç Adet İnsan Python Kullanmaktadır ?
Kesin sayıyı elde etmek zor olsa da, dünya üzerinde 10 binlerce Python kullanıcısı olduğu bilinmektedir. Python ücretsiz bir dağıtım olduğu için herhangi bir satış grafiği bulunmaktadır ve bu dağıtım bir çok sited eve
Comp.lang.python haber grubu oldukça aktif gruptur. Fakat bazı Python kullanıcıları bu grubu kullanmamaktadır..
Python kullanılarak yapılmış önemli projeler mevcut mudur?
Python kullanılarak başarılı bir şekilde tamamlanmış projelerin listesine
Yüksek profilli Python projelerinin arasında Mailman posta listesi yöneticisi ve Zope uygulama sunucusu bulunmaktadır. Başta Red Hat olmak üzere bir çok Linux dağıtımı, kendi yükleyicilerinin ve sistem yöneticisi yazılımlarının bir kısmını ya da tamamını yazarken Python kullanmışlardır. Python kullanan şirketler Google, Yahoo ve Lucasfilm Ltd.’dir.
Gelecekte Python’da ne gibi gelişmeler olması bekleniyor?
Python Geliştirme Teklifleri (PEP) için
Pyton-dev posta listesinde yeni geliştirmenin tartışması yapılmaktadır.
Python ile uyumsuz değişiklikleri önermek mantıklı mıdır?
Genel olarak hayır. An itibariyle dünya üzerinde milyonlarca satır Python kodu bulunmaktadır. Bu yüzden dilde yapılacak herhangi bir değişiklik, mevcut programları gerçersiz kılacaktır. Dönüştürme program kullansanız bile yayınlanan tüm dökümanları, kitapları güncellemek oldukça zordur ve ufacık bir değişiklik için hepsini geçersiz kılmak oldukça gereksizdir.
Eğer bir özellik değişecekse, aşamalı olarak güncelleme zinciri sunmak gerekir. PEP 5, kullanıcıların verilerine zarar vermeden uyumsuz değişiklikleri geri alma prosedürünü açıklamaktadır.
Python Y2K (Year2000) Uyumlu Mudur?
2003 yılının Ağustos ayından beri herhangi bir sorun bildirilmemiştir ve Y2K’nın uyumluluk sorunu olmadığı düşünülmektedir.
Python çok ama çok az tarih hesaplaması yapar ve bunlar için C kütüphanesinin özelliklerini kullanır. Python genel olarak tarihleri 1970’den beri olarak gösterir ya da (yıl, ay, gün, ..) olmak üzere hanelere ayırır. Böylelikle Y2K hataları en aza indirgenir. Bu yüzden C kütüphanenizin durumu iyi olduğu sürece, Python’ununuz oldukça iyi çalışır. 2 haneleri yılları göstermek için Python’da özel uygulama yazılması mümkündür.
Python ücretsiz olduğu için kesin bir garanti bulunmamaktadır. Eğer öngörülmez bir problemle karşılaşırsanız sorumluluk geliştiriciye değil kullanıcıya aittir ve tazmint davası açabileceğiniz herhangi bir taraf bulunmamaktadır. Python telif hakkı bildirisinde aşağıdaki hükümler yer almaktadır.
4. PSF, Python 2.3’ün “AS IS” temelli lisans üzerinde olmasını sağlamaktadır. PSF herhangi bir garanti sunmaz ya da beyan etmez. Herhangi bir kısıtlama olmadan örnek yoluyla PSF herhangi bir beyanda bulunmaz ya da herhangi bir kullanım amacının garantisini vermez ya da Python 2.3’ünün kullanımının herhangi bir üçüncü parti hakkı çiğnemez.
5. PSF, düzenleme, dağıtım ve Python 2.3’ün herhangi bir kullanımı sırasında oluşabilecek zararlara ya da kayıplara karşı güvenilebilir bir belge olmamaktadır.
Bu noktada olumlı olan şey, eğer bir sorunla karşılaşırsanız, problem çözmek ve verileri geri kurtarmak için yararlanabileceğiniz çok sayıda kaynak mevcuttur. Bu da açık kaynak kodlu yazılımların bir avantajıdır.
Python, başlangıç seviyesindeki programcılar için iyi bir dil midir?
Evet.
Günümüzde Pascal, C ya da C++ / Java gibi adım adım ve istatistik olarak yazılan dillerle bu işe başlamanız önerilir. Öğrenciler, ilk dilleri olarak Python’u öğrendiklerinde daha iyi hizmet verebilirler. Python oldukça basit, kalıcı betiğe ve standart olarak sunulan geniş bir kütüphaneye sahiptir. Daha da önemlisi, başlangıç seviyesindeki programlama derslerinde Python kullanmak, öğrencilerin problem çözümlemesi ve veri tip tasarımı gibi önemli programlama yetenekleri üzerine yoğunlaşmalarını sağlar. Python ile birlikte öğrencilere looplar ve prosedürler gibi temel konseptler hızlıca öğretilebilir. Öğrenciler daha ilk derslerine kullanıcı tanımlı nesnelere kolaylıkla çalışabilir.
Daha önce hiç programalama yapmamış öğrenciler için istatistiksel olarak yazılan dilleri kullanmak doğal bir yöntem olmayacaktır. Bu diller oldukça karışıktır. Öğrencilerin bu dillerde uzman olması gerekmektedir ve ders oldukça yavaş ilerleyecektir. Öğrenciler bilgisayar gibi düşünmeyi, problem çözümlemesini, kalıcı arayüz tasarımlarını ve veriyi özetlemeyi öğrenmektedirler. İstatistiksel olarak yazılan dilin kullanımını öğrenirken, öğrencilerin ilk dersinde bu dillerin uzun dönemde ne kadar önemli olduğunu söylemek gereksizdir.
Python dilinin diğer bir çok özelliği, onu ilk olarak öğrenilebilecek güzel bir dil yapmaktadır. Java gibi Python’da standart olarak sunulan büyük bir kütüphaneye sahiptir ve böylelikle daha ilk zamanlarda öğrencilere yapmaları için bir çok proje ödevi verilebilir. Ödevler standart 4 işlem hesap makinesi ya da tespit programları ile sınırlı değildir. Standart kütüphaneyi kullanarak öğrenciler, programlamanın temelini öğrendikleri için gerçekçi uygulamalar üzerinde çalışmaktan memnun kalmaktadırlar. Standart kütüphaneyi kullanmak, öğrencilere kodu yeniden kullanmayı öğretmektedir. PyGame gibi üçüncü parti modülleri öğrencilerin ulaşabileceği noktaları genişletmede oldukça yararlıdır.
Python’un interaktif yorumlayıcısı, öğrencilerin programlama aşamasında dilin özelliklerini test etmelerini sağlar. Arka planla yorumlayıcı penceresini açık tutarken aynı zamanda programlarına yeni kaynak kodları girebilmektedirler. Eğer liste için yöntemleri hatırlayamazlarsa şöyle bir yol izleyebilirler.
>>> L = []
>>> dir(L)
['append', 'count', 'extend', 'index', 'insert', 'pop', 'remove',
'reverse', 'sort']
>>> help(L.append)
Help on built-in function append:
append(...)
L.append(object) -- append object to end
>>> L.append(1)
>>> L
[1]
Yorumlayıcı ile birlikte, dökümantasyon programlama işlemi sırasında öğrencilerin hizmetindedir.
Ayrıca Python iyi IDE’lere sahiptir. IDLE, Python içizn hazırlanan ve Tkinter kullanılarak Python dilinde yazılan çapraz platfomlu bir IDE’dir. PythonWin, Windows’a özgü bir IDE’dir. Emacs kullanıcıları, Python’un Emacs için iyi bir moda sahip olmasından oldukça memnunlardır. Tüm bu programlama çevreleri satır vurgulama, oto-satır başı ve interaktif yorumlayıcıya erişim gibi özellikler sunmaktadır. Python düzenleme çevreleri hakkında detaylı bilgi için Python wiki’ye göz atın.
Eğer Python’un eğitimdeki yeri hakkında görüş bildirmek istiyorsanız, edu-sig posta listesine katılabilirsiniz.
Python’u Güncellemek
Uygulamalarımın Sürekli Hata Verdiği bsddbl185 modülü nedir?
Python 2.3 ile başlamak gerekirse, bu dağıtım PyBSDDB paketi içermektedir
Eski versiyon Python’unuzu ve Python 2.3’ün bir parçası olan bir takım scripti kullanarak (Tools/scripts dizinindeki db2pickle.py and pickle2db.py), eski veri tabanınızı yeni formata dönüştürebilirsiniz. Eski Python sürümünüzü kullanarak db2pickle.py scriptin dönüştüme işlemi için kullanabilirsiniz. Örnek:
python2.2 <pathto>/db2pickley.py database.db database.pck
Veri tabanı dosyanızı yeniden adlandırın:
mv database.db olddatabase.db
Şimdi ise dosyalarınızı yeni formattaki veritabanınıza aktarın
python <pathto>/pickle2db.py database.db database.pck
Kullandığınız ilk komutlar, yüklediğiniz sürüme göre değişiklik gösterebilir. Bu iki scriptin yönetimi hakkındaki daha fazla detay için, her birinin başındaki doc satırını kontrol edin.
C++ bilindiği gibi programlama dünyasında en çok ilgi gören C dilinden türemiştir. C++’ı klasik C dilinden farklı yapan yanı; Nesne Yönelimli Programlamayı da ( Object Oriented Programming) C’nin sözdizimi kurallarıyla birlikte desteklemesidir. Normalde C ile sadece yapısal programlama yaparken C++ dili ile hem yapısal hem de nesne yönelimli programlar yazabilirisiniz. C++ diline başlarken önce dilin C’den gelen ve temel olan özelliklerini öğrenmek gerekir. Örneğin, değişken tanımlama, atama ve diğer basit aritmektik işlemler, kontrol yapıları ve döngüler gibi.
Teknolojinin ulaştığı son noktadaki programlama dillerinden olan C ve C++, bir çok yeni ve güçlü özellikleri içerir. Derslerimiz devam ettikçe bunların teker teker içine gireceğiz. C dilinin özelliklerinin %80 i C++’da da mevcuttur (bu karşılaştırma şahsi görüşümdür). Zaten C++, C’nin üst gurubudur. Bunu şöyle sıralayabiliriz. C, C++ ve C# dır.
C dilinin avantajları, az komut kümesinden oluşması ve bu komutların diğer yüksek seviyeli dillere nazaran daha hızlı çalışmasıdır. Ayrıca C deki kütüphaneler sayesinde fonksiyon tanımlamanıza gerek kalmadan işlemlerinizi yapmak mümkün olacaktır. Bu konuda çok detaya inmeden, programlamaya geçmek istiyorum. Çünkü, programlamaya başladığımızda her örnekten sonra o an kullandığımız programın içinde geçen fonksiyon, hata, değişken, belirleyiciler, kısıtlamalar, notasyonlar v.s gibi bilgilerden ara ara bahsedeceğim. Yalnız çok önemli olan bir konuya burada değinmek istiyorum. C nin avantajlarını programlamayla birlikte görmek güzel ama C nin dezavantajlarını programlamadan önce bilmeliyiz ki bunlardan sakınalım. Öncelikle Tanımlayıcılardan bahsetmek istiyorum. Her derleyici ve assmbley için değişkenleri, sabitleri, etiketleri ve fonksiyon adlarını tanımlama kuralları vardır. Bu notasyonlara, tanımlayıcı denir. C++ da tüm tanımlayıcılar a, . . . , z – A, . . . , Z harfleri ile ya da alt çizgi “_” ile başlar. Bundan sonra rakam, harf, ya da alt çizgi kullanılabilir. ANCI C uyumlu derleyiciler 31 karaktere kadar tanımlayıcı kabul ederler fakat tanımlayıcının ilk sekiz karakterini kullanmayı kendimize alışkanlık etmeliyiz. Dikkat etmemiz gereken özelliklerden biri de kullandığımız ifadelerdeki büyük küçük harflerdir. C ve C++ büyük ve küçük harf duyarlılığına sahiptir. Kullandığımız ifadeleri birbirinden farklı ve aynı ifade olarak kullanıyorsak programımız hata verecektir. Bunu bir örnekle anlatayım:
Program
PROGRAM
progRAM
ProgRam Bu şekilde tanımlarsak hepsi birbirinden farklı ifadeler olarak C++ da okunacaktır. Biz Şunu alışkanlık edinmeliyiz; tanımlayıcılarımızın baş harfi büyük olacak. Büyük ve küçük harf kombinasyonlarının kullanılması ile önceden yapılan tanımlamalar bazen işi zorlaştırabilir. Eğer bu değişkenlerden birini kullanmak isterseniz, bu zamana kadar nasıl tanımladığınızı bilmeniz gerekir. Örneğin printf()`in PRINTF() olarak çağrılması durumunda ” bilinmeyen tanımlayıcı ” (Unknown identifier) hata mesajı vererek sizi uyarır. Buna benzer olarak %f ve %F kullanımı hata verdirecektir. Programlamayı yaparken bunlara dikkat etmemiz gerekecek. Çünkü bir değişkeni veya tanımlayıcıyı başta nasıl kullandıysanız üç, dört sayfa kod yazdıktan sonrada aynı şekliyle kullanmak zorundasınızdır. İşte burada en büyük handikap yaşanacaktır. Çünkü C/C++ derleyicileri her zaman hatanın nerde olduğunu göstermez. Bunu programcı kendisi satır satır takip ederek bulacaktır. Bundan dolayı bu söylediklerime baştan dikkat etmemiz gerekiyor.
Tavsiyeler:İyi bir programlama yapabilmek için benim size olan tavsiyelerim; daha az kod kullanarak daha çok işlem yapabilme. Gerçi bunu yapsak zaten profesyonel oluruz
--------------------------------
Günümüz bilişim dünyasında programlama dillerinin etkisi oldukça yüksektir. Bilgisayarlar, akıllı telefonlar ve diğer elektronik cihazlardakullanılan diller sayesinde bahsedilen cihazların kontrolü sağlanmaktadır. Bundan dolayı programlama dilleri teknolojik aygıtlar için önemlidir.
Bu yazımızda bilgisayar programlama dillerinden olan C# nedir nerelerde kullanılırsorusunun cevabını arayacağız.
C# Nedir Ne İşe Yarar?
Yeni nesil programlama dili olan C sharp programlama konusunda yenilikleri de beraberinde getirmektedir. C# sunucu ve gömülü sistemleri için tasarlanmıştır. Microsoft tarafından geliştirilen C# .NET ortamında kullanılmak üzere geliştirilmiştir. Dilin tasarlanmasında Anders Hejlberg öncülük etmiştir. Zamanla gelişen bu programlama dili artık gerek masaüstü olsun gerek web uygulamaları olsun çoğu yerde kullanılmaktadır.
C#’ın C, C++ ve Java İle Bağlantısı Var mıdır?
Her ne kadar isim benzerliği olsa da C ile pek benzer yanlarının olduğu söylenemez. Aralarındaki en büyük fark nesne yönelimli programlamadır.
C# nesne yönelimli programlamayı desteklerken, C nesne yönelimli programlamayı desteklememektedir. Ortak yanlarından belki de en önemlisi benzer sözdizimine sahip olmalarıdır. Ana yapıları itibariyle C# programlama C ile programlamaya göre daha farklıdır. Bu konuda çok fazla detaya girmeyeceğiz.
C++ dili ile ise nesne yönelim programlama özellikleri aynıdır. Ayrıca sözdizimleri de benzerlik göstermektedir.
C# daha çok Java ve C++ programlama dillerinden esinlenerek oluşturulmuştur. Birebir aynı olmasa da çoğu özellikleri benzerlik taşımaktadır.
C# İle Web Programlama
C# nedir konusunda merak duyan herkes için başlangıç seviyesinde hazırlanan bu yazımızda genel hatlarıyla C# örnekleri sizlerle buluşturulacaktır. Böylece bu konuya bir giriş niteliğinde olan yazımızla C# dünyasına giriş yapmış olacaksınız.
C# ile yazılan programların çalışması için ‘.NET Kütüphaneleri’nin bulunduğu bilgisayarlarda bu sistemle uyumlu kütüphane ve derleyicinin olması yeterlidir. Bu kütüphane ve derleyici ‘.NET Framework’ da olabilir ECMA standartlarına sahip olan farklı bir kütüphane ya da derleyici de olabilir.
C# makine diline yakın olmasından ötürü orta seviyeli dil olarak kabul edilirken, insan algısına yakınlığı popüler olmasını sağlamıştır. Burada orta seviyeli dil hakkında bir cümlelik de olsa açıklama yapmak yerinde olacaktır. Çünkü bu kavram yanlış anlaşılmalara neden olabilmektedir.
Orta seviyeli dil o dilin güç seviyesini değil, makine diline olan seviyesini göstermektedir. Yani kodlama yapısı makine diline ne kadar yakınsa seviye ona nispeten düşmektedir. Aynı şekilde yüksek seviyeli bir dil demek, o dilin insan konuşma diline yakınlığıyla alakalıdır.
C# Nedir ve Özellikleri
Masaüstü uygulamalarının dışında C# web programlama konusunda da oldukça güçlü projeler geliştirilebilir. Aşağıda C# dilinin genel özellikleri gösterilmiştir.
- Basit ve genel amaçlı
- Kullanımı kolay modern bil dil
- %100 Nesneye yönelik programlama dili
- Güçlü tip kontrolü
- Platform bağımsızlığı
- Dizin sınır kontrolü
- Artık veri toplama
C# konusunda belki de uygulama geliştiricilerin bilmesi gereken önemli noktalardan biri ‘using’ komutuyla eklenecek referansların bilinmesi konusudur. Çünkü program içerisinde bazı fonksiyonların kullanılabilmesi için ilgili kütüphane dosyalarının eklenmesi gerekmektedir. İlerleyen aşamalarda bu konuda bir önek verileceğiz fakat genel ‘using’ kullanımı aşağıda gösterilmiştir.
- using System;
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
C# nedir sorusuna vereceğimiz en iyi cevaplardan biri sanırım bir örnek uygulama olacaktır. Örnek uygulamalarımızı yaparken bilgisayarlarda Microsoft Visual Studio programının yüklü olduğunu varsayıyoruz. Programı açıp File -> New -> Projectdiyerek yeni bir konsol projesi açıyoruz.
Aşağıdaki komutları kod alanına yazıyoruz.
using System;
namespace ilk_konsol_projemiz
class ilk_konsol_projemiz
{
static void Main ( string[] , args)
{
Console .WriteLine( “ilk konsol projemiz!” );
Console .ReadKey();
}
}
}
F5 tuşu ile uygulamayı çalıştırıyoruz. Aşağıda konsoldaki ekran çıktısı görünmektedir.
Dikkat edilirse komutumuz ‘using’ parametresi ile başlıyor ve uygulama kod alanına ‘System’ kütüphanesini ekliyoruz. Çünkü Console fonksiyonlarını ‘using’ ile eklediğimiz ‘System’ kütüphanesi sayesinde kullanabiliyoruz.
Projeyi oluştururken projeye verdiğimiz isin otomatik olarak namespace’e verilmiştir. ‘Namespace’ başlı başına farklı bir konu olduğu için bu yazımızda bahsedilmeyecektir. Şimdilik proje adı oluşturulunca namespace ile aynı ada sahip olacağını bilmek yeterli olacaktır.
Burada bizim için önemli olan kısım, yani komutların bize daha yakın olan bölümü ‘Main’ içerisinde yer alan kodlardır. Her ne kadar main dışında da kod kullanımı olsa da biz örnek uygulamalarımızda komutlarımızı main içerisine yazacağız. “Console.WriteLine” komutu ile parantez içlerine yazdığımız değer ekranda yazdırılır ardından imleç bir alt satıra geçer. İçerisine çok farklı değerler alabilen bu komutta parantez içine “ ” simgeleri ile yazılan değerler birebir ekranda yazdırılmaktadır. İlk örneğimiz bu şekildedir. İsterseniz farklı bir örnekle diğer kullanım türüne göz atalım.
using System;
namespace ilk_konsol_projemiz
class ilk_konsol_projemiz
{
static void Main ( string[] args)
{
İnt sayi1 = 2, int sayi2 = 5, int sonuc = 0;
sonuc = sayi1 + sayi2;
Console .WriteLine( “Sonuc: ” + sonuc);
Console .ReadKey();
}
}
}
Yine F5 tuşu ile uygulamayı çalıştırıyoruz. Komutlarımızı yine main içerisine yazdığımıza dikkat çekmek istiyorum. İkinci uygulamamızın birincisinden farkı öncelikle değişken kullanmamızdır. Aşağıda çalışan uygulamanın ekran çıktısı sunulmuştur.
Bu örnekte ‘sayi1, sayi2, sonuc’ değişkenleri oluşturuldu ve her birine ilk değer ataması yapıldı. İkinci aşamada sayi1 ile sayi2 toplanıp sonuc değişkenine atıldı. Bundan sonrası, ilk örnekte öğrendiğimiz Console.WriteLine komutu kullanımıdır. Fakat burada durum biraz farklı, “ “ işaretlerinden sonra bir artı (+) işareti koyduk vesonuc değişkeninin adını yazdık.
C# ’ta kullanılan değişkenleri ekrana yazdırırken değişken adını direk olarak yazabiliyoruz. Bu aşamada bilinmesi gereken önemli bir noktada istersek sayıların değerlerini kullanıcılardan alıp sonucu değişken yapabiliriz. Şimdilik bu örnek giriş seviyesi için yeterli olacaktır. Bu örneğin ekran çıktısı aşağıdaki gibidir.
Visual C# Nedir?
İlk konsol uygulamamızdan sonra bir tane de görsel uygulama yaparak yazımızı sonlandıralım. File -> New -> Project diyerek yeni bir Windows Forms Application oluşturuyoruz. Karşımıza çıkan Form1 içerisine sol tarafta yer alan Toolbox kısmında bir tane Button’u sürükle bırak yapıyoruz. (Eğer Toolbox sol tarafta yoksa üst menüden View -> Toolbox diyerek açabiliriz.) Form ekranına gelen butona tıklayarak sağ tarafta yer alan Properties’te yer alan Text kısmını ‘ Değer Göster’ olarak değiştiriyoruz.
Bu aşamaya kadar herhangi bir sorun yoksa butona çift tıklıyoruz ve kod ekranına geçiş yapıyoruz. Görüldüğü üzere bu kısım biraz daha farklı parametreleri barındırıyor. Bu ekranda bizim için önemli olan button1_Click kısmıdır.
Çok fazla detaya girmeden hemen kodlarımızı yazmaya başlayalım. Bu uygulamamızda komutlarımızı button1_Click içerisine yazıyoruz. İlk başta konsoldan farklı olduğunu görüyoruz. Aşağıdaki komutları yazıp yine F5 tuşu ile uygulamayı çalıştırabilirsiniz.
MessageBox .Show( “İlk form uygulamamız…” );
Burada ekrana yazdırma komutumuz değişti. MessageBox.Show komutu sayesinde ekrana istediğimiz yazıyı yazdırabilmemiz mümkündür.
Yukarıda hem konsol hem de form uygulamaları ile C# için başlangıç seviyesinde bir giriş yapmış olduk. Bu uygulamaları kendiniz de uygulayarak daha farklı olasılıkları uygulamalarınızda kullanabilirsiniz.
C# Nedir Son Sözler
C# nedir konulu yazımızla, sizlerde C# konusunda farkındalık oluşması amaçlanmıştır. Burada sunulan örnek uygulamalar giriş seviyesinde olup daha ileri seviye uygulamalar için daha fazla araştırma yapıp bilgi sahibi olmak gerekmektedir.
Yazılım dünyasında birçok programlama dili bulunmaktadır. Her dilin kendine özgü özellikleri bulunmaktadır. C# deyince aklımıza asp-net nedir, sql nedir soruları da gelmektedir. Son zamanlarda mobil programlama nedir konusu da sık araştırılan konular arasındadır.
Uygulama geliştiriciler açısından C sharp programlama dilinin yeri farklıdır. Microsoft Visual Studio programıyla birlikte uygulama yazmak daha eğlenceli hale gelmektedir. Siz de C# bilginizi ilerilere taşıyarak yazılım konusunda aranan ve bilgisine başvurulan kimseler arasındaki yerinizi alabilirsiniz.
----------Python Dili Nedir?---------
Python üst düzey basit sözdizimine sahip, öğrenmesi oldukça kolay, modülerliği, okunabilirliği desktekeyen, platform bağımsız nesne yönelimli yorumlanabilir bir script dilidir. Python, ayrıca yorumlanabilir, interaktif ve nesne odaklı bir programlama dilidir. Bu dil modüller, olağandışı durumlar, dinamik yazım, oldukça yüksek dinamik veri türleri ve sınıfları ile birlikte çalışmaktadır. Python, oldukça temiz ve sade satırlarla kombine edebilmektedir. Birçok sistem çağrısına ve kütüphanesine uygun olan birden fazla arayüze sahiptir ve C ya da C++ ortamında geliştirilebilir. Bu dil ayrıca programlanabilir arayüz ihtiyacı gibi uygulamalarda genişletilmiş dil olarak kullanılabilmektedir. Son olarak Python oldukça portatiftir. Bu dil bir çok Unix işletim sisteminde, Mac'de ve MS-DOS, Windows, Windows NT ve OS/2 işletim sistemleriyle çalışan bilgisayarlarda çalışabilmektedir.
Python yorumlanır: Python çalıştırıldığı zaman kaynak kodlar bir yorumlayıcı tarafından işleme alınır. Programı çalıştırmadan önce derlemenize gerek yoktur. Bu PERL ve PHP de kullanılan web yorumlayıcılarına benzer.
Python İnteraktiftir: Python interaktif yani etkileşimli bir programlama dilidir.
Python Nesneye Yöneliktir: Python, Nesneye Dayalı bir programlama dilidir ayrıca nesneye dayalı programlamayı destekler.
Python Yeni Başlayanlar İçin: Python, yeni başlayanlara yönelik programcılar için mükemmel bir dildir ve basit metin işleme, WWW tarayıcılar, oyunlar gibi geniş bir uygulama yelpazesinin geliştirilmesini destekler.
Python Özellikleri
Python'un özellikleri arasında:
- Öğrenmesi kolay: Python'da basit bir yapı ve açıkça tanımlanmış bir sözdizimi vardır. Bu, python programlam dilinin hızla öğrenilmesini sağlar.
- Okunması kolay: Python girintili kod yazımına zorlaması sayesinde okunabilirliği ön planda tutmuştur.
- Bakımı kolay: Python'un kaynak kodunun bakımı oldukça kolaydır.
- Geniş bir standart kütüphane: Python'un kütüphanesinin büyük kısmı UNIX, Windows ve Macintosh sistemlere oldukça kolay taşınabilir ve çapraz platform uyumludur.
- İnteraktif Mod: Python interaktif test ve kod snippet'lerinin hata ayıklamasına izin veren etkileşimli bir mod için destek sağlar.
- Taşınabilir: Python çok çeşitli donanım platformlarında çalışabilir ve tüm platformlarda aynı arabirime sahiptir.
- Genişletilebilir: Alt düzey modülleri Python yorumlayıcıya ekleyebilirsiniz. Bu modüller, programcıların araçlarını daha verimli olması için eklemelerine veya özelleştirmelerine olanak tanır.
- Veritabanları: Python, tüm önemli ticari veritabanlarına bağlantı kurabilir.
- GUI Programlama: Python, Windows MFC, Macintosh ve Unix'in X Window sistemi gibi birçok sistem çağrısı, kütüphane ve pencere sistemine yaratılabilir ve taşınabilir GUI uygulamalarını destekler.
- Ölçeklenebilir: Python, kabuk script yerine büyük programlar için daha iyi bir yapı ve destek sağlar.
- Fonksiyonel ve yapılandırılmış programlama yöntemlerini ve OOP yani Nesneye dayalı programlamayi destekler.
- Bir script dili olarak kullanılabilir veya büyük uygulamalar oluşturmak için bayt kod olarak derlenebilir.
- Çok üst düzey dinamik veri türleri sağlar ve dinamik tür denetimini destekler.
- Otomatik çöp toplama özelliğini destekler.
- C, C ++, COM, ActiveX, CORBA ve Java ile kolayca entegre edilebilir.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
adlı yazımızı okumalısınız.Hemen python programlama diline başlamak istiyorsanız bu kısımdan devam edebilirsiniz. Python değişkenler
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Daha fazla bilgi için The Python Tutorial'i okumalısınız. The Begginer's Guide to Python dökümanı diğer bir tanıtım dökümanıdır.
Python Yazılım Derneği Nedir?
Python Yazılım Derneği kar amacı gütmeyen ve Python 2.1 ve daha yeni sürümlerinin telif hakkını elinde tutan bir kuruluştur. Bu kuruluşun amacı Python programlama diliyle ilgili olan açık kaynak kodu teknolojisinde uzmanlaşmak ve Python'un kullanımını yaygınlaştırmaktır. Bu derneğin anasayfası şu adrestedir:
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[python.org]Bu derneğe yapılacak bağışlar, Birleşmiş Milletler sınırları içerisinde veriden muatır. Eğer Python kullanıyor ve bu dili yararlı buluyorsanız, derneğin bağış sayfasını kullanarak bu derneğe katkıda bulunabilirsiniz.
Python Kullanımında Herhangi Bir Telif Hakkı Sınırlaması Var Mıdır?
Sizler, bu dil ile istediğinizi yapabilirsiniz. Fakat istediklerinizi yaparken üretmiş olduğunuz Python'da telif hakkı belgesini ya da simgesini göstermekle yükümlüsünüz. Eğer telif haklarına saygı gösterip onları onore ederseniz, Python'u ticari alanda kullanmanızın bir sakıncası yoktur. Veri ya da diğer hallerdeki Python'u satabilir, bundan para kazanabilirsiniz. Bizler, Python'un ticari kullanımlarını öğrenmeye çalışmaktayız.
PSF lisans sayfasına giderek, lisans kullanımı ile ilgili daha fazla bilgiye ulaşabilirsiniz.
Python logosu tescil edilmiş bir markadır ve kullanım için izin alınması gerekmektedir. Daha fazla için Tescil Edilmiş Markaların Kullanım Poliçesi adlı belgeye göz atın.
Python İlk Olarak Neden Ortaya Çıkarıldı?
Dilerseniz tüm bunların nasıl ortaya çıktığını Guido van Rossum'un kaleminden dinleyelim.
Benim CWI da bulunan ABC grubundaki yorumlanan bir dilin yerleştirilmesi konusunda büyük bir tecrübeye sahiplğim vardı ve ben bu grupla çalışarak dil tasarımı hakkında çok fazla şey öğrendim. Bu, bir çok Python özelliğinin kökü olmaktadır ve buna durum gruplamasınının tanımlaması ve oldukça yüksek seviyedeki veri tiplerinin kapsanması da dahildir (Python'da detaylar farklı olmasına rağmen)
Zaman zaman ABC diliyle ilgili bazı sıkıntılarım oldu fakat bu dilin birçok özelliği çok hoşuma gitti. ABC dilini genişletmek imkansızdı ve bu genişletilememezlik en büyük problemlerin başında geliyordu. Daha önceleri Modula 2+ kullanımı ve Modula 3 tasarımcıları ile görüşmek gibi bazı tecrübelerim oldu. Ayrıca Module 3 raporlarını gözden geçirdim. Modula 3, betiğin ve semantiğin ve ayrıca bazı diğer Ptyhon özelliklerinin kökenidir.
Ben CWI'daki Amoeba dağıtımı işletim sistemleri grubunda çalışıyordum. C programları yazmak ya da Bourne kalkan betiklerini kullanarak sistem yönetim işlemlerini gerçekleştirmek yerine daha iyi bir yönteme ihtiyacımız vardı. Bunun nedeni ise Amoeba'nın, Bourne betiğiyle ulaşılabilmesi mümkün olmayan bir sistem çağırma arayüzünün bulunmasıydı. Amoeba yönetiminde yaptığım hata, programlama dilinin geleceğinin ne denli önemli olduğunu kavramamamı sağladı.
ABC gibi bir betik dilinin Amoeba sistem çağrıları ihtiyacı karşılama gerekliliği benim başıma geldi. Amobea'ya özgü bir dil yazmak oldukça aptalca bir hareketti. Bu yüzden genel olarak genişletilebilir bir dil yazmaya karar verdim.
1989 yılı Christmas tatilinde oldukça boş zamanım vardı ve çeşitli denemeler yapmaya karar verdim. Bir sonraki yıl boyunca, denemem süresinda çalışmamasına rağmen, Python dili, Amoeba projesinde oldukça başarılı şekilde kullanılmaya başlandı. İş arkadaşlarımdan gelen geri dönütler, bu dile bir çok geliştirme yapmamı sağladı.
Şubat 1991'de bu dili USENET'e göndermeye karar verdim. Geri kalan bilgiler ise Misc/HISTORY dosyasında bulunmaktadır.
Python ne için yararlı?
Python, bir çok farklı problem sınıflarına uygulanabilen yüksek seviyeli genel amaçlı bir programlama dilidir.
Bu dil, dizi işleme (düzenli ifadeler, Unicode, dosyalar arası farklı hesaplama), Internet protokolleri (HTTP, FTP, SMTP, XML-RPC, POP, IMAP, CGI programlama), yazılım mühendisliği (ünite test, kayıt, profil, Pyhton kod işlemesi) ve işletim sistemlerinin arayüzü (sistem çağrılar, dosya sistemleri, TCP/IP soketleri) gibi alanları kapsayan büyük bir kütüphane ile birlikte gelmektedir. Python Standart Kütüphane içerik tablosuna bakarak nelerin mevcut olduğunu görebilirsiniz. Oldukça geniş üçüncü parti geliştirmeleri de ayrıca mevcut durumdadır. Python Paket Sayfasına bakarak ilginizi çeken paketleri bulabilirsiniz.
Python Numaralandırma Şeması Nasıl Çalışmaktadır?
Python versiyonları A.B.C ya da A.B olarak numaralandırılmıştır. A, büyük bir versiyon numarasıdır ve dildeki büyük değişiklikler olduğu zaman değişmektedir. B, daha küçük versiyon numarasıdır. Daha küçük değişiklikler durumunda değişmektedir. C ise mikro seviyesindeki bir versiyon numarasıdır. Her bir hata gideriminde bu numara kullanılmaktadır. PEP 6'ya bakarak hata giderilmiş dağıtımlar hakkında daha fazla bilgiye ulaşabilirsiniz.
Yayınlanan her bir güncelleme hata giderimi olarak karşımıza çıkmayabilir. Yeni büyük dağıtımda, bir çok büyük geliştirmeler yapıldı ve piyasaya alfa,
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
ve aday olarak çıkmaktadır. Alfalar genellikle erken yapılan ve henüz bir arayüze sahip olmayan geliştirmeleri temsil etmektedir ve iki alfa dağıtımı arasında arayüz değişimi görmek mümkün değildir. Beta'lar genellikle daha stabildir ve genellikle yeni modül eklemeleri ve aday dağıtımları donuk durumdadır. Kritik hataların onarımı dışında pek bir değişiklik yapılamamaktadır. Alfa, beta ve dağıtıma aday olan sürümler genellikle bir son eke sahiptir. Alfa versiyonları için kullanılan son ek “aN” dir. Beta sürümlerindeki son ek ise “bN” olarak karşımıza çıkmaktadır. Dağıtıma hazır versiyonlarda ise bu ek “cN” olmaktadır. N harfi burada küçük numarayı temsil etmektedir. Diğer bir deyişle tüm versiyonlar 2.0aN, 2.0bN ya da 2.0cN olarak etiketlenmiştir.
Ayrıca bazı zamanlarda sürüm numarası “+” ekiyle karşınıza çıkabilir, örn: 2,2+. Bu sürümler henüz dağıtılmamış sürümlerdir ve direk bir alt sürüm ile birlikte inşa edilmiştir. Pratikte son küçük dağıtım yapılmıştır ve alt sürüm bir sonraki küçük sürüm öncesi dağıtılmıştır.
Ayrıca sys.version, sys.hexversion ve sys.version_info hakkında hazırlanan belgelere göz atmanızı öneririz.
Python Kaynak Kopyasını Nasıl Edinebilirim?
En son güncellenen Python kaynak dağıtımı her zaman python.org adresinde
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[python.org] adresinde bulunmaktadır. En son yayınlanan geliştirme kaynakları bilinmeyen Mercurial erişimle
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[hg.python.org] adresinden ulaşılabilir. Kaynaktaki dağıtım tüm C kaynağını, Sphinx-formatlı dökümantasyonu, Python kütüphane modüllerini, örnek programları ve bir çok ücretsiz yardımcı programları içeren gzipped tar dosyası olarak sunulmaktadır. Kaynak dosyası bir çok UNIX platformunda çalışmaktadır. Python Dökümantasyonuna nasıl ulaşabilirim?
Standart stabil sürümü için hazırlanan dökümantasyon
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[docs.python.org] adresinde mevcuttur. PDF, düz metin ve indirilebilir HTML versiyonları ayrıca
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[docs.python.org] adresinde mevcuttur. ReStructuredText formatında yazılan dökümantasyonlar Sphinx dökümantasyon aracı ile işlenmektedir. ReStructuredText kaynağı, Python kaynak kodu dağıtımının bir parçasıdır.
Hiç Programlama Tecrübem Yok, Python Dersleri’ne Nereden Ulaşabilirim?
An itibariyle piyasada bir çok Python dersi ve kitabu bulunmaktadır. Standart dökümantasyon içerisinde Python dersleri bulunmaktadır.
Başlangıç seviyesindeki Python programcılığı için Başlayıcılar için Hazırlanan Rehber’e göz atın.
Python için kurulan bir haber grubu ya da posta listesi mevcut mudur?
An itibariyle comp.lan.python adında bir haber grubu ve python-list adında bir posta listesi vardır. Haber grubuyla posta listesi birbirine bağlıdır. Eğer haber grubundaki haberleri okuyorsanız, posta listesini takip etmenize gerek yoktur. Com.lan.python oldukça yüksek trafiğe sahiptir ve günde binlerce gönderi almaktadır. Ayrıca bu sayıyı okuma konusunda Usenet kullanıcıları daha avantajlıdır.
Yeni yazılım duyuruları ve etkinlikler comp.lang.python.announce adresinde bulunmaktadır . Bu adres, diğerine nazaran daha az trafiğe sahiptir ve günde ortalama 5 gönderi almaktadır. Ayrıca bu adres python-announce posta listesi olarak mevcuttur.
Haber grubu ve posta listesi için daha fazla bilgiye
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[python.org] adresinden ulaşabilirsiniz.Python’un Beta Test Versiyonunu Nasıl Edinebilirim?
Python’un alfa ve beta sürümleri
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[python.org] Tüm sürüm duyuruları comp.lang.python ve comp.lang.python.announce üzerinden ve Python’un ana sayfası olan
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[python.org] üzerinden ve RSS beslemesi üzerinden yapılmaktadır. Sizelr ayrıca alt sürüm üzerinden Python’un sürüm geliştirmelerine ulaşabilirsiniz. Daha fazla bilgi için
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[docs.python.org] adresini kontrol edin.Nasıl hata raporlaması ve Python yaması gönderebilirim?
Hata raporlamak ya da yama göndermek için
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[bugs.python.org] adresindeki Roundup yüklemesini kullanın. Hata raporlamak için Roundup hesabına sahip olmanız gerekmektedir. Böylelikle herhangi bir geri dönüt aşamasında sizlere daha kolay ulaşabilmekteyiz. Ayrıca bu hesabınızla, sisteminizdeki hatayı giderecek güncellemeleri rahatlıkla alabilirsiniz. Eğer daha önceden hata raporlamasıiçin SourceForge’yi kullandıysanız, Roundup’un şifre yenileme prosedürünü takip ederek yeni bir Roundup şifresi edinebilirsiniz.Phyton’un nasıl geliştiği konusunda daha fazla bilgi için Python Geliştirici Rehberi’ne göz atın.
Referans olarak alabileceğim ve Python hakkında yazılmış herhangi bir makale mevcut mu?
Python hakkında yazılan ve sizin favoriniz olan kitaptan alıntı yapmanız oldukça iyi bir yöntem olacaktır.
Python hakkında yazılan ilk makale 1991 yılında yazılmıştır ve pek güncel değildir.
Guido van Rossum and Jelke de Boer, “Interactively Testing Remote Servers Using the Python Programming Language”, CWI Quarterly, Volume 4, Issue 4 (December 1991), Amsterdam, pp 283-303.
Python Üzerine Yazılan Herhangi Bir Kitap Mevcut Mudur?
An itibariyle bir çok kitap mevcuttur ve bir çoğu da yayınlanmaya hazırlanmaktadır. Bu kitapların listesine
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[wiki.python.org] adresinden ulaşabilirsiniz. Ayrıca çevrimiçi kitap mağazalarında “Python” kelimesini aratıp Monty Python filtrelemesinden geçirdikten sonra istediğiniz sonuçlara ulaşabilirsiniz.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
Lokasyonu Neresidir?Şüphesiz Python, tüm dünya’ya yayılmış bir dildir.
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
şu an için Amsterdam lokasyonludur ve XS4ALL tarafından barındırılmaktadır. Upfront Systems, bugs.python.org’u barındırmaktadır. PyPI ve hg.python.org gibi diğer bir çok Python hizmeti, Oregon Eyalet Üniversitesi Açık Kaynak Labaratuvar’u tarafından barındırılmaktadır. Neden Python?
Python’un mimarı Guido van Rossum bu dili icat ettiği yıllarda aynı zamanda 1970’li yılların komedi serisi olan “Monty Python’s Flyin Circus”u okuyordu. Van Rossum, yarattığı bu muazzam dilin kısa ve öz bir isime ihtiyaç duyduğunu düşündü ve bu dile Python ismini Verdi.
Ben’de “Monty Python’s Flying Circus” gibi bir eser mi okumalıyım?
Elbette hayır fakat yardım edeceği kesin
Gerçek Dünya’da Python
Python Ne Kadar Stabil Bir Dildir?
Oldukça stabildir. Her yeni stabil versiyon 6 ya da 18 ay arayla yayınlanmaktadır ve bu 1991 yılından beri böyle süregelmektedir. Devam da edecektir. An itibariyle iki büyük versiyonun yayınlanma tarihlerinin arasında tam 18 ay bulunmaktadır.
Daha önceki versiyonların “hataları giderilmiş” versiyonları yayınlandığı için, mevcut sürümlerin stabilitesinde gözle görülür bir artış bulunmaktadır. Bir üçüncü versiyon numarası (2.3.2, 2.6.2) ile ifade edilen hata giderilmiş sürümler stabilite için yayınlanmakta ve sadece gözle görülür hataları gidermektedir. Ayrıca iki farklı hataları giderilmiş sürüm güncellemesinde ara yüzün sabit kalacağı garantisi verimiştir.
En son yayınlanan stabil sürüm Python indirme sayfasında mevcuttur. Aynı zamanda, üretime hazır iki adet sürüm bulunmaktadır. Bunun sebebi ise iki farklı stabil sürümün bulunmasıdır; 2.x ve 3.x. Python 3.x, daha az sayıda üçücü parti yazılımı barındırdığı için Python 2 versiyonlarından daha az kullanışlıdır. Python 2 kodları, değiştirlmeden Python 3’de çalışmamaktadır.
Kaç Adet İnsan Python Kullanmaktadır ?
Kesin sayıyı elde etmek zor olsa da, dünya üzerinde 10 binlerce Python kullanıcısı olduğu bilinmektedir. Python ücretsiz bir dağıtım olduğu için herhangi bir satış grafiği bulunmaktadır ve bu dağıtım bir çok sited eve
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
dağıtımında mevcut olabilir. Bu yüzden indirme istatistikleri hiç bir zaman gerçek bilançoyu ortaya koymayacaktır. Comp.lang.python haber grubu oldukça aktif gruptur. Fakat bazı Python kullanıcıları bu grubu kullanmamaktadır..
Python kullanılarak yapılmış önemli projeler mevcut mudur?
Python kullanılarak başarılı bir şekilde tamamlanmış projelerin listesine
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[python.org] adresinden ulaşabilirsiniz. Geçmiş dönemlerdeki Python konferanslarını inceleyerek, farklı kurum ve kuruluşların katkılarıyla yapılan projeler hakkında bilgi sahibi olabilirsiniz.Yüksek profilli Python projelerinin arasında Mailman posta listesi yöneticisi ve Zope uygulama sunucusu bulunmaktadır. Başta Red Hat olmak üzere bir çok Linux dağıtımı, kendi yükleyicilerinin ve sistem yöneticisi yazılımlarının bir kısmını ya da tamamını yazarken Python kullanmışlardır. Python kullanan şirketler Google, Yahoo ve Lucasfilm Ltd.’dir.
Gelecekte Python’da ne gibi gelişmeler olması bekleniyor?
Python Geliştirme Teklifleri (PEP) için
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[python.org] adresine göz atın. PEP’ler, Python’un yeni özelliklerini tanıtan ve bu özellikleri teknik bilgilerle açıklayan belgelerdir. Henüz yayınlanmamış bir Python sürümünün özelliklerine ulaşmak için “Python X.Y Yayınlanma Takvimi” adlı belgeye göz atın. Pyton-dev posta listesinde yeni geliştirmenin tartışması yapılmaktadır.
Python ile uyumsuz değişiklikleri önermek mantıklı mıdır?
Genel olarak hayır. An itibariyle dünya üzerinde milyonlarca satır Python kodu bulunmaktadır. Bu yüzden dilde yapılacak herhangi bir değişiklik, mevcut programları gerçersiz kılacaktır. Dönüştürme program kullansanız bile yayınlanan tüm dökümanları, kitapları güncellemek oldukça zordur ve ufacık bir değişiklik için hepsini geçersiz kılmak oldukça gereksizdir.
Eğer bir özellik değişecekse, aşamalı olarak güncelleme zinciri sunmak gerekir. PEP 5, kullanıcıların verilerine zarar vermeden uyumsuz değişiklikleri geri alma prosedürünü açıklamaktadır.
Python Y2K (Year2000) Uyumlu Mudur?
2003 yılının Ağustos ayından beri herhangi bir sorun bildirilmemiştir ve Y2K’nın uyumluluk sorunu olmadığı düşünülmektedir.
Python çok ama çok az tarih hesaplaması yapar ve bunlar için C kütüphanesinin özelliklerini kullanır. Python genel olarak tarihleri 1970’den beri olarak gösterir ya da (yıl, ay, gün, ..) olmak üzere hanelere ayırır. Böylelikle Y2K hataları en aza indirgenir. Bu yüzden C kütüphanenizin durumu iyi olduğu sürece, Python’ununuz oldukça iyi çalışır. 2 haneleri yılları göstermek için Python’da özel uygulama yazılması mümkündür.
Python ücretsiz olduğu için kesin bir garanti bulunmamaktadır. Eğer öngörülmez bir problemle karşılaşırsanız sorumluluk geliştiriciye değil kullanıcıya aittir ve tazmint davası açabileceğiniz herhangi bir taraf bulunmamaktadır. Python telif hakkı bildirisinde aşağıdaki hükümler yer almaktadır.
4. PSF, Python 2.3’ün “AS IS” temelli lisans üzerinde olmasını sağlamaktadır. PSF herhangi bir garanti sunmaz ya da beyan etmez. Herhangi bir kısıtlama olmadan örnek yoluyla PSF herhangi bir beyanda bulunmaz ya da herhangi bir kullanım amacının garantisini vermez ya da Python 2.3’ünün kullanımının herhangi bir üçüncü parti hakkı çiğnemez.
5. PSF, düzenleme, dağıtım ve Python 2.3’ün herhangi bir kullanımı sırasında oluşabilecek zararlara ya da kayıplara karşı güvenilebilir bir belge olmamaktadır.
Bu noktada olumlı olan şey, eğer bir sorunla karşılaşırsanız, problem çözmek ve verileri geri kurtarmak için yararlanabileceğiniz çok sayıda kaynak mevcuttur. Bu da açık kaynak kodlu yazılımların bir avantajıdır.
Python, başlangıç seviyesindeki programcılar için iyi bir dil midir?
Evet.
Günümüzde Pascal, C ya da C++ / Java gibi adım adım ve istatistik olarak yazılan dillerle bu işe başlamanız önerilir. Öğrenciler, ilk dilleri olarak Python’u öğrendiklerinde daha iyi hizmet verebilirler. Python oldukça basit, kalıcı betiğe ve standart olarak sunulan geniş bir kütüphaneye sahiptir. Daha da önemlisi, başlangıç seviyesindeki programlama derslerinde Python kullanmak, öğrencilerin problem çözümlemesi ve veri tip tasarımı gibi önemli programlama yetenekleri üzerine yoğunlaşmalarını sağlar. Python ile birlikte öğrencilere looplar ve prosedürler gibi temel konseptler hızlıca öğretilebilir. Öğrenciler daha ilk derslerine kullanıcı tanımlı nesnelere kolaylıkla çalışabilir.
Daha önce hiç programalama yapmamış öğrenciler için istatistiksel olarak yazılan dilleri kullanmak doğal bir yöntem olmayacaktır. Bu diller oldukça karışıktır. Öğrencilerin bu dillerde uzman olması gerekmektedir ve ders oldukça yavaş ilerleyecektir. Öğrenciler bilgisayar gibi düşünmeyi, problem çözümlemesini, kalıcı arayüz tasarımlarını ve veriyi özetlemeyi öğrenmektedirler. İstatistiksel olarak yazılan dilin kullanımını öğrenirken, öğrencilerin ilk dersinde bu dillerin uzun dönemde ne kadar önemli olduğunu söylemek gereksizdir.
Python dilinin diğer bir çok özelliği, onu ilk olarak öğrenilebilecek güzel bir dil yapmaktadır. Java gibi Python’da standart olarak sunulan büyük bir kütüphaneye sahiptir ve böylelikle daha ilk zamanlarda öğrencilere yapmaları için bir çok proje ödevi verilebilir. Ödevler standart 4 işlem hesap makinesi ya da tespit programları ile sınırlı değildir. Standart kütüphaneyi kullanarak öğrenciler, programlamanın temelini öğrendikleri için gerçekçi uygulamalar üzerinde çalışmaktan memnun kalmaktadırlar. Standart kütüphaneyi kullanmak, öğrencilere kodu yeniden kullanmayı öğretmektedir. PyGame gibi üçüncü parti modülleri öğrencilerin ulaşabileceği noktaları genişletmede oldukça yararlıdır.
Python’un interaktif yorumlayıcısı, öğrencilerin programlama aşamasında dilin özelliklerini test etmelerini sağlar. Arka planla yorumlayıcı penceresini açık tutarken aynı zamanda programlarına yeni kaynak kodları girebilmektedirler. Eğer liste için yöntemleri hatırlayamazlarsa şöyle bir yol izleyebilirler.
>>> L = []
>>> dir(L)
['append', 'count', 'extend', 'index', 'insert', 'pop', 'remove',
'reverse', 'sort']
>>> help(L.append)
Help on built-in function append:
append(...)
L.append(object) -- append object to end
>>> L.append(1)
>>> L
[1]
Yorumlayıcı ile birlikte, dökümantasyon programlama işlemi sırasında öğrencilerin hizmetindedir.
Ayrıca Python iyi IDE’lere sahiptir. IDLE, Python içizn hazırlanan ve Tkinter kullanılarak Python dilinde yazılan çapraz platfomlu bir IDE’dir. PythonWin, Windows’a özgü bir IDE’dir. Emacs kullanıcıları, Python’un Emacs için iyi bir moda sahip olmasından oldukça memnunlardır. Tüm bu programlama çevreleri satır vurgulama, oto-satır başı ve interaktif yorumlayıcıya erişim gibi özellikler sunmaktadır. Python düzenleme çevreleri hakkında detaylı bilgi için Python wiki’ye göz atın.
Eğer Python’un eğitimdeki yeri hakkında görüş bildirmek istiyorsanız, edu-sig posta listesine katılabilirsiniz.
Python’u Güncellemek
Uygulamalarımın Sürekli Hata Verdiği bsddbl185 modülü nedir?
Python 2.3 ile başlamak gerekirse, bu dağıtım PyBSDDB paketi içermektedir
Linkleri görebilmek için Turkmmo Forumuna ÜYE olmanız gerekmektedir.
[pybsddb.sf.net.] Bu paket eski bsddb modülünün yerine kullanılmaktadır. Bu paket API seviyesinde bir uyumluluk sunar fakat çalışmak için yeni versiyon Berkeley DB kütüphanesine ihtiyaç duyar. Daha önceki bsddb modül kullanarak oluşturulan dosyalar direk yeni modülle açılamamaktadır.Eski versiyon Python’unuzu ve Python 2.3’ün bir parçası olan bir takım scripti kullanarak (Tools/scripts dizinindeki db2pickle.py and pickle2db.py), eski veri tabanınızı yeni formata dönüştürebilirsiniz. Eski Python sürümünüzü kullanarak db2pickle.py scriptin dönüştüme işlemi için kullanabilirsiniz. Örnek:
python2.2 <pathto>/db2pickley.py database.db database.pck
Veri tabanı dosyanızı yeniden adlandırın:
mv database.db olddatabase.db
Şimdi ise dosyalarınızı yeni formattaki veritabanınıza aktarın
python <pathto>/pickle2db.py database.db database.pck
Kullandığınız ilk komutlar, yüklediğiniz sürüme göre değişiklik gösterebilir. Bu iki scriptin yönetimi hakkındaki daha fazla detay için, her birinin başındaki doc satırını kontrol edin.
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 2
- Görüntüleme
- 387
Altın Konu
Python ile YAML Ayrıştırma
- Cevaplar
- 1
- Görüntüleme
- 34
- Cevaplar
- 2
- Görüntüleme
- 74
- Cevaplar
- 0
- Görüntüleme
- 25



