İçeriğe geç →

Kategori: Python

Bilmeniz Gereken 11 Python Mülakat Sorusu

Bu içeriğin orijinaline Toptal üzerinden erişebilirsiniz (Kesinlikle tavsiye ederim çünkü daha anlaşılır ve çeviri hatası/eksiği gibi bir sorun için endişelenmenize gerek kalmaz)

Not: Bu soruların amacı sizlere ufakta olsa rehberlik sağlamasıdır. Burada hileli teknik sorulardan ziyade mülakat soruları var. Bu soruların hepsini bilen aday, işe alınmaya değer olmayabilir ya da soruların hepsini bilmeniz size işi garantilemez.

1. Aşağıdaki kodun çıktısı ne olur?

def extendList(val, list=[]):
    list.append(val)
    return list

list1 = extendList(10)
list2 = extendList(123,[])
list3 = extendList('a')

print "list1 = %s" % list1
print "list2 = %s" % list2
print "list3 = %s" % list3

Kodun çıktısı şöyle olacaktır:

Yorum Bırak

Python (Django) ile Test Odaklı Geliştirme (TDD) – 2

Önceki bölümlerde; Python (Django) ile Test Odaklı Geliştirme (TDD) – 1

Bölüm 1:  TDD Temelleri ve Django (Part 1: The Basics of TDD and Django)

​Kısım 2: unittest Modülü Kullanarak Functional Testimizi Genişletmek (Extending Our Functional Test Using the unittest Module)

Bir önceki kısımda yazdığımız test, Django’nun “it worked” sayfasının çalışıp çalışmadığını kontrol ediyordu. Şimdi bu testi, kendi uygulamamıza göre geliştireceğiz. Ama öncesinde, şu “functional test (FT)” deyimini biraz açıklamak gerek;

  • Functional Test == Acceptance Test == End-to-End Test

Functional testler (FT), uygulamamızın fonksiyonlarını son kullanıcı gözünden görmemizi sağlar. “Functional test” denmesinin sebebi de bu zaten. FT’yi bir çeşit uygulamamızın tanımlaması olarak da düşünebiliriz. “User Story”leri takip edip, kullanıcıların uygulamamızın belirli özellikleriyle çalıştığında uygulamanın nasıl cevap verdiğini izler.

FT’ler okunabilir ve takip edebileceğimiz hikayelere sahip olmalı. Test kodları yazarken açık ve net yorumlarla bunu sağlayabiliriz. Yeni bir FT yazarken, öncelik yorumları yazmakta olmalı. Yorumlar “User Story”lerin anahtar noktalarını yakalamalı. Ayrıca, öyle okunabilir olmalı ki, programcılar dışındaki kişilerle de bu yorumları paylaşıp, uygulamanın gereksinimleri ve özellikleri hakkında tartışma yapabilmeliyiz.

Yorum Bırak

Python (Django) ile Test Odaklı Geliştirme

True story…

Özet

Test odaklı geliştirme (Test Driven Development) konusuna ilgi duyuyor ve kaynak arıyorsanız, son zamanlarda keşfettiğim ve beğendiğim Test-Driven Development with Python: Obey the Testing Goat: Using Django, Selenium, and JavaScript kitabını tavsiye ederim. Kitabı okuması tamamen ücretsiz. Kitabın haklarını kötüye kullanmamak adına, yazarının da onayını alarak, ilk üç kısmını Türkçe olarak geniş şekilde özetledim. Kitap sadece Python (Django) üzerinden TDD disiplini anlatılmıyor. Okurken bir çok faydalı bilgi edineceksiniz. Bu güzel kitabı ücretsiz olarak sunan Harry’e buradan da teşekkürler (Thanks Harry 😀 )

  1. Python (Django) ile Test Odaklı Geliştirme (TDD) – 1
  2. Python (Django) ile Test Odaklı Geliştirme (TDD) – 2
  3. Python (Django) ile Test Odaklı Geliştirme (TDD) – 3

İbretlik Bir Hikaye

Belki sizin de başınıza gelmiştir. Bir ortamda komik bir hikaye anlatılır ve siz de dahil herkes gülerken, siz içinizden ağlıyorsunuzdur. Çünkü o hikayedeki baş kahraman sizsinizdir ve aslında insanlar size gülüyordur. Çaktırmamak için gülüyormuş gibi yaparsınız siz de. İşte yazının başındaki caps benim için böyle bir şey…

Yorum Bırak

Digital Ocean’da Django Projeleri Oluşturmak (Ajenti + Nginx + Gunicorn + Postgres)

Güncelleme: Eğer Django öğrenmeye yeni başladıysanız ve, benim yazıyı yazdığım zamanki gibi, uygulamayı sunucuya yükleme, sunucuyu hazırlama gibi konularda hiç bilginiz yoksa okumaya devam edebilirsiniz. Yinede ısrarla başka kaynaklardan da araştırma yapmanızı tavsiye ederim.

Eğer sizde benim gibi bir proje üzerinde çalışırken localhost yerine gerçek bir server üzerinde projenizi test etmeyi seviyorsanız mutlaka Digital Ocean‘ı denemelisiniz. Eğer akademik bir eposta hesabınız varsa (edu.tr) Digital Ocean‘ın $100’lık hediyesini kaçırmamanızı tavsiye ederim.

Yukarıda verdiğim Digital Ocean linkleri ile ya da buraya tıklayarak üye olursanız, $10 daha hediye alarak kendinize ait serverler kurmaya başlayabilirsiniz.

Bu yazıda anlatacaklarım:

  • Nginx ve Gunicorn kurulumu
  • Django projemizi kurup, yayına almak
  • Ajenti + Ajenti V kurulumu

Bu işlemlerin çoğunu Digital Ocean‘ın sunduğu dokümantasyonlardaki adımları izleyerek ve googlelayarak öğrendim ve paylaşmak istedim. Şu anda Ubuntu 14.04 serverım üzerinde Django uygulamalarım mevcut ve sorunsuz şekilde çalışıyor.

Başlayalım

Yorum Bırak

Python İle Masaüstü Uygulama Geliştirme – 4

Bu bölüme kadar epeyce bir şey öğrendik ve basit bir indirme yöneticisi yazdık. Şimdi geliştirdiğimiz bu programı biraz daha işlevsel hale getirelim.

  • İndirme işleminin başarılı ya başarısız olduğunu kullanıcıya bildiren bir mesaj gösterebiliriz.
  • Ayrıca indirme konumunu elle yazmak yerine, kullanıcıya bir dosya yöneticisi penceresi sunarak daha kullanıcı dostu bir şekilde bu işlemin gerçekleşmesini sağlayabiliriz.

İlk olarak geri bildirim mesajlarıyla başlayalım.

Yorum Bırak