Giderek internette daha az yazı okuyoruz. Bir içeriği hazırlarken dikkat etmemiz gereken kıstas metnin kaç kelime içerdiği değil ziyaretçiler için ne kadar okunabilir olduğu.

Arama motorlarında yukarı çıkmak için uzuuuuuun içerikler yazıyoruz.

Yazılırken okuyucunun gözünden bakılmamış bir içerik çoğu zaman okuyucuyu kaçırıyor ve uzun içerik bizim için faydadan çok zarar…

Geliştirme yaparken kodun çalışacağı tüm koşulları her zaman göz önünde bulunduramayabiliyoruz. Bu yüzden yazılım testleri var ve çok geç olmadan bu hataları fark etmek için önceden yazılım testleri hazırlayıp bu testlerin kapsama alanını uygulamanın genişlemesiyle paralel olarak artırmamız gerekiyor.

Bu yazıda en temel test pratiği olan birim testinden bahsedeceğim. Yazının…

Dekoratörleri kısaca parametre olarak fonksiyon alan, geriye fonksiyon döndüren fonksiyonlar olarak tanımlayabiliriz. İlk bakışta karmaşık gibi görünüyor, evet. Ancak Python’da fonksiyonların birinci sınıf nesne olduğunu düşünüp bu tanımlamayı tekrar okuduğumuzda bir nebze daha açık hale gelecektir.

Dekoratörleri açıklamaya başlamadan önce, birinci sınıf nesnelerin ve iç içe fonksiyonların ne olduğundan bahsetmenin…

Django Rest Framework, normal şartlarda model içindeki ilişkili alanların yalnızca pk primary key alanını serialize eder. POST, PUT, PATCH ya da DELETE istekleri atarken bir problem yaşamıyoruz. Ancak GET ile bir modeli aldığımızda ilişkili alanlara ait daha detaylı bilgiye ihtiyaç duyabiliyoruz.

Evet, tahmin ettiğiniz üzere görselle yazının hiç bir alakası yok.

Bu problemi kendim yaşadım ve sağolsun stackoverflow’dan bir arkadaş

Ansızın ilginç problemlerle karşılaşmamak için değişkenleri ya da fonksiyonları nerede tanımladığımız önemli. Bazen değişkenleri olmamaları gereken yerlerde tanımlayabiliyor ya da dikkatsizlik eseri built-in gelen fonksiyon ya da değişkenleri farkında olmadan gölgeleyebiliyoruz. Python’un değişkenlerin için uyguladığı kendine has bir faaliyet alanı hiyerarşisi var. Fiyakalı da bir ismi var: LEGB.

Faaliyet alanları arasındaki hiyerarşi. (temsili)

LEGB Nedir?

LEGB, değişkenleri…

Django ile hazırladığınız projenizde bütün view’larda kullanmak istediğiniz değişkenler olabilir. Django’da bunu sağlayan mekanizmaya context processor deniyor.

Örneğin bir blog projeniz varsa ve yazı etiketlerini (Tags), listelemek üzere tüm sayfalarda göstermek istiyorsanız, bütün view’lar içinde tek tek yazı etiketlerini çekip şablona (template) göndermek yerine context processor kullanmalısınız.

Yazı içinde görsel kullanmak okunma oranlarını artırıyormuş. Medium öyle diyor. Ancak görüldüğü üzere görsel konusunda pek seçiçi sayılmam.

Context Nedir?

Context, anahtar —…

Veritabanına yaptığımız sorgu sayısını düşürerek ciddi bir performans artışı sağlayabiliriz. Nesnenin varlığını kontrol ederken, sadece sayım yaparken ya da yalnızca belirli alanlara ihtiyacımız olduğunda ilgili durumlar için hazırlanmış spesifik methodları kullanarak hem daha okunabilir bir kod elde etmiş, hem de sorguların dönüş süresini azaltmış oluruz.

Çok yüklenmemek gerek.

Django sorgu setleri genelde yaramaz…

Umut Çağdaş Coşkun

Twitter @ucagdascoskun

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store