Bölüm 1: TDD Temelleri ve Django (Part 1: The Basics of TDD and Django) Bu bölümde, Test-Driven Development (TDD) temellerine giriş yapıp, sıfırdan bir web uygulaması…
Yorum BırakYusuf Karaçin Yazılar
Ö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 😀 )
- Python (Django) ile Test Odaklı Geliştirme (TDD) – 1
- Python (Django) ile Test Odaklı Geliştirme (TDD) – 2
- 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ırakkaynak = “şçöğüıŞÇÖĞÜİ” hedef = “scoguiSCOGUI” çeviri_tablosu = str.maketrans(kaynak, hedef) metin = “Bildiğiniz gibi, internet üzerinde bazen Türkçe karakterleri kullanamıyoruz.” print(metin.translate(çeviri_tablosu)) #Bildiginiz gibi, internet uzerinde…
Yorum BırakBu yazıyı okuduğunuza göre siz de benim gibi GraphQL’i merak edip, öğrenmeye çalışıyorsunuz demektir. Bu yazıda Github’ın sunduğu GraphQL API’ı üzerinden hızlı bir tanışma yapmayı planlıyorum. Yapacağım işlemler Github API’ına istekler göndermekten ibaret olacak ama genel olarak GraphQL’i tanımak açısından faydalı olacağını düşünüyorum. Başka bir zamanda da Django ile kendi GraphQL API servisimi oluşturmayı deneyeceğim.
Kısaca bahsetmek gerekirse GraphQL, Facebook tarafından 2012 yılında mobil uygulamalarında veri alışverişini kolaylaştırmak için oluşturulmuş bir “query language”. Yani dil bağımsız olarak kendi graph servislerimizi yazabiliriz. 2015 yılında ise proje açık kaynak olarak paylaşıldı. Şu anda kullananlar arasında Github, Shopify, Coursera, Pinterest var.
Fazla uzatmadan GitHub GraphQL API’yı kullanamaya başlayalım. Giriş yaptıktan sonra ilk örnek sorgumuz bizim için hazırlanmış durumda zaten;
Yorum BırakGü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ırakBu 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ırakBir önceki bölümde basit bir arayüz hazırlamıştık. Bu bölümde programımıza biraz işlevsellik katacağız.
İndirmek istediğimiz dosyanın URL adresini ve indirmek istediğimiz konumu yazıp, butona tıklayacağız ve indirme işlemi başlayacak. Progress bar ilerleme durumunu bize bildirecek.
Yorum BırakBu bölümde ufak bir uygulamaya yapmaya başlıyoruz. İlk önce arayüzü tasarlayarak işe koyulacağız. Yapmak istediğimiz program, bir indirme yöneticisi.
Line edit’e girilen URL’den bir dosya indirmeye çalışacağız. Dosyanın indirme durumu progress bar ile kullanıcıya bildirilecek. Ayrıca kullanıcı dosyayı indireceği konumu seçebilecek ve indirme tamamlandığı zaman kullanıcıya bir mesaj gösterilecek. Hata durumlarında da aynı şekilde kullanıcıya dönüt verilecek.
Yorum BırakPython ile masaüstü uygulaması nasıl geliştirilirmiş öğrenmek için hazırım ve hemen başlıyorum. Benimle beraber bu eğitim serisini takip edecek olan varsa en azından bir programlama dilinde altyapınız ve az çok Python’un dil kurallarını bilmeniz gerek. Çünkü bunlara değinmeyeceğim.
Bu eğitim setinde ana kaynağım Python Desktop Application Development
Gerekli Araçlar
- Python 3.4
- PyQt4
- IDE olarak Pycharm
Ayrıca Linux Mint üzerinde çalışıyorum.
4 YorumJS’ye hızlıca başlangıç yapmak isteyenler için, temel seviyede JavaScript bilgisi kazanmak amacıyla oluşturduğum notları bir araya getirip toparladım. Kısa ve öz şekilde, JS’ye ait bilgiler…
Yorum Bırak