Kayıt Ol

Giriş


Şifremi Kaybettim

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

soru ekleme

You must login to ask question.

Giriş


Kayıt Ol

Merhaba, kayıt formu üzerinden kayıt olabilirsiniz. Fakat sosyal medya ile kayıt olmanızı önermekteyiz.

Python 3.6’da Gelen Yenilikler Ve Geliştirmeler

Python 3.6’da Gelen Yenilikler Ve Geliştirmeler

Python, gelişmeye ve modern yazılım dili olmaya devam ediyor. Python 3.6.0 versionu 23 Aralık 2016 tarihinde kullanıma sunuldu. Fakat bu aşamada henüz Final sürüme ulaşmadı. Kısa süre içerisinde tam stabil konuma ulaşacaktır. Bu makalemizde 3.6.0 ile neler yeni geldi ve daha çok 3.5.0 ile karşılaştırma yaparak sizlere elimden ve dilim döndüğü kadar anlatmaya çalışağım.

Secrets

Python kütüphanelerine, yeni olarak “secrets” kütüphanesi eklendi. Gelmesinin amacı, kriptografik açıdan güçlü ve rastgele değerler üretmek için oluşturuldu. Random kütüphanesine göre, biraz daha yavaş çalışıyor fakat güvenlik açısından çok önemli rol alıcaktır. Secrets kütüphanesini rastgele rakam üretmek için kullanmak mantıklı olmayabilir. Bunun için random kütüphanesi kullanmak daha mantıklı olucaktır, kısaca uygun yerlerde kullanılması gerekiyor örneğin, burada secrets’in asıl rol alacağı nokta ise şifreler, hesap kimlik doğrulama ve güvenlik şifreleri gibi yerlerde rol alacaktır.

Kişisel bir eleştiri yapayım, böyle bir kütüphaneye ihtiyacım oldu. Çünkü crypto adlı kütüphanesi ile AES işlemleri yapiyordum. AES’de belirlediğiniz anahtar ile veriler şifrelenir, çözülürken de bu anahtar ile çözülür. Secrets kütüphanesi ile her veri için farklı anahtar oluşturulabilir.

Örnek Kullanımı

Çıktıya bakalım;

Merak edenler için, detaylı bilgi : Secrets

CPython Gelişimleri

  • Dict(Sözlük) yapısı geliştirilmiş ve 3.5 versiyona göre %20 – %25 arası daha az bellek kullanmakta ve daha hızlı sonuçlar vermektedir.
  • Yeni bir metod ile alt sınıf oluşturma özelliği geldi. Bu metod “__init_subclass__” isminde ve @classmethod kullanım tarzındadır. Ayrıca sonradan oluşturulan classların Ana class’a haber vermesini sağlıyor. Bu konuyu biraz açalım çünkü gerçekten hoşuma giden bir özellik. Kodların daha iyi okunması ve daha iyi yazılmasını sağlıyor.

__init_subclass__ Kullanımı

Bu class’ın amacı, temel bir sınıfı “__init_subclass__” ile çağırdıktan sonra bu class’a bağlı alt sınıflar oluşturmamazı sağlar.

Örnek Kullanımı

Çıktıya bakalım;

Merak edenler için detaylı bilgi : __init_subclass__

  • PYTHONMALLOC adlı ortam değişkeni kullanarak yorumlama ve hata bulma konusunda yardımcı olacak.

Standart Kütüphanelerde Gelişme

Python içerisinde standart olarak kabul görmüş gömülü olarak gelen yapılar bulunmaktadır. Örneğin str(), int(), random() gibi örnekler verilebilir.

  • asyncio adlı kütüphanede, yeni özellikler, anlamsal hatalar  ve performans iyleştirilmeleri yapıldı. Python 3.6 ile asyncio kütüphanesi stabilir konuma erişeceği belirtildi. asyncio adlı modül, eş zamanlı işlemler ve socket işlemleri için kullanılmaktadır.
  • Pathlib ile os.path uyumlu hale getirildi.
  • Yerel saat ayırımı için datetime modülü desteği sağlandı.
  • typing modülünde iyleştirmeler yapıldı. Artık değişkenlerin türlerinide belirtebilceğiz. Zorunlu değil isteğe göre kullanabilmektedir. Örnek kullanımı için : Typing

Güvenlik Geliştirmeleri

  • Secrets kütüphanesin eklenmesi, yukarıda bahsettik.
  •  hashlib modülleri artık OpenSSL 1.1.0 destekliyor.

Genel Yeni Özellikler

  • Fstring ile yeni cümle biçimleme özelliği geldi.

.format özelliği ile kıyasla daha net ve anlaşılır.

  • Uzun sayılarda “_” kullanabilme. Yazımı ve okunabilirliği artırmak için getirilmiş bir özelliktir.

Genel bir özet olarak, bu bilgileri size aktardım umarım faydalı olmuş.

Çok kapsamlı şekilde bilgi almak için : Python 3.6 ile neler yeni?

 

Hakkında Ali YamanProfesyonel

Herzaman bilginin gücüne inanlardan oldum , araştirmalarım ve deneyimlerimlerimi sizlere sunmayı amaçlıyorum. İstanbul Üniversitesi Kontrol ve Otomasyon Öğrencisiyim Elektronik ve Programlama ile ilgim var.

Beni Takip Et

Yorumlar ( 8 )

  1. Emeğinize sağlık güzel bir döküman olmuş.

  2. Sayılar arası “_” ile format metodunun yeni hali güzel olmuş cidden. Yazı için teşekkürler…

  3. Katılıyorum, “100.000” koymak yerine “_” ile okunurluk artmış.

  4. Ahmet TuranÇırak
    12 Temmuz 2017 at 01:29

    Eline sağlık.

  5. Yazı için teşekkürler ali 🙂

  6. Rica ederim 🙂

  7. yazı için teşekkürler.

Leave a reply