İçeriğe geç

Django ile Geliştirme Sürecine Yardımcı Araçlar

Herkese selamlar, bu gönderide Django ile geliştirme yaparken sıklıkla kullandığım ve işe yarar bazı paketlerden bahsedeceğim.

Bu araçları genel kullanma amacımız, geliştirme süresini kısaltmak, standartize etmek ve olası bir hata olması durumunda kolayca debug edebilmek.

Başlayalım!

Black.

Black, PSF tarafından geliştirilen bir kod formatlama aracı. Dökümanında da belirtildiği üzere taviz vermeyen (😄) ama kod stilini standartize etme, okunabilirliğini arttırma işlemlerini sizin için hızlı bir şekilde halletmek için var. Bir çok editor ve IDE yerleşik olarak destek, konfigürasyon olanağı sunuyor.

https://github.com/psf/black

Pylint, Pylint-Django.

Linterlar, programlama dillerinde kodun statik analizini yaparak gözden kaçan yazım hatalarını, potansiyel iyileştirmeleri öneren ve kod kalitesini yukarı çıkartmaya çalışan araçlar. Pylint ile Python geliştirme ortamınıza biraz önce saydığım yetenekleri kazandırabilir, daha güvenli hale getirebilirsiniz. Bir çok IDE ve editor Pylint ile çalışmaya uygun. Pylint-django pluginide Django özelindeki iyileştirmeler, uyarılar için kullanılabilir.

https://github.com/PyCQA/pylint

https://github.com/PyCQA/pylint-django

Django Extensions.

Django-extensions, geliştirme ortamında sık tekrar eden işlemleri kolaylaştıran management commandler barındıran, yada varolan commandleri geliştiren güçlü bir paket. Örneğin lokal geliştirme sunucusuna HTTPS ile sunabilmek, Werkzeug implementasyonu, kayıt edilmiş tüm urllerin tek komutla dump alınabilmesi vs.

Diğer yetenekleri olmasa dahi sırf IPython ile birleşmiş shell_plus için kullanılmalı.

https://github.com/django-extensions/django-extensions

Bu paketten ve shell_plus’dan bahsettiğim bir blog yazısı.

Django Debug Toolbar.

Debug toolbar, Django uygulamanızın metrikleri hakkında size fazlasıyla geri bildirimde bulunan bir araç. İstek-cevap döngünüzün ne kadar sürede tamamlandığı, template rendering,  yada uzun süren SQL sorgularınız varsa neyin yanlış gittiğini ayıklamak için konfigüre ederek kullanılabilecek güçlü bir panel.

https://github.com/jazzband/django-debug-toolbar

Model Bakery.

Test yazmak uygulamanın çalışabilirliğini kanıtlayan en güçlü araçlardan ve bana göre en keyifli süreci. Proje büyüdükçe testinizin bağımlı olduğu kompleks nesneleri üretmek için her zaman yeterli yaratıcılık ve zamana sahip olmayabilirsiniz. Model bakery Django modellerinizden nesneler üretmek için kullanabileceğiniz sizi fixture sağlamaktan soyutlayan güçlü bir araç.

https://github.com/model-bakers/model_bakery

Bu pakete daha detaylı göz atmak isterseniz.

Faker.

Faker, bir çok farklı alanda(kişiler, şirket, banka hesapları vs) sahte fakat anlamsız olmayan veri üretme konusunda yetenekli bir araç. Testler sırasında kullanılabileceği gibi, geliştirmenizin durumunu zaman zaman sunuyorsanız anlamlı veriyle gösterim yapmak için kullanabilirsiniz.

https://github.com/joke2k/faker

Faker’in detaylı kullanımıyla alakalı bir blog yazmıştım geçmişte. Göz atmak isterseniz link burada.


Sonuç.

Genellikle benim geliştirme yaparken kullandığım araçlar yukarıdaki gibi. Tabii ki bahsettiğim araçların kullanışlılık konusu subjektif ve isterlere göre değişebilir.

Sizinde önerileriniz, unuttuklarım varsa bildirmekten çekinmeyin. Bu listeyi, hep birlikte güncel tutmaktan mutluluk duyarım. İyi akşamlar!

Tarih:Blog

İlk Yorumu Siz Yapın

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.

Göster
Gizle