İçeriğe geç →

Yusuf Karaçin Yazılar

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

JavaScript için Temiz ve Okunabilir Kod Yazmak

Temiz ve okunabilir kod… Yeşillikler arasında yürümek, en sevdiğiniz kahvenin kokusunu içinize çekmek ya da pofuduk bir tavşan gibi bir şeydir…

Yazılım geliştirme konusunda tecrübe kazanmış her kişi az çok anlamıştır ki; kodlarımızı makineler için değil gelecekteki kendimiz ve diğer geliştiriciler için yazıyoruz. Sadece çalışan ve işini yapan fakat okuması zor, kötü kod yazmak, o anı kurtarsa da, uzay-zaman içinde bilinmeyen bir yerde, yeni bir serseri tohum oluşması demektir. Bu tohumlar zamanları gelene kadar kendi aralarında eğlenip durur ve bazen birkaçı birleşip daha büyük tohum haline gelir. Görseniz onun tohum değil aslında bal kabağı ya da karpuz olduğunu söylersiniz. Vakit geldiğinde de bir kara deliğin içine girip, kurbanlarının beyninin içinde beliriverirler. Hayat enerjisini sömürürler ve karamsarlık, mutsuzluk, küfür etme isteği enzimleri salarlar.

Bilim bu tohumlar konusunda çaresizdir ve yapabileceği tek şey, bu tohumların rastgele geliştiriciler yerine o tohumun oluşmasına kim sebep olduysa onun beyninde çıkması için dua etmektir.

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