Yeni başlayanlar için Flask mi Django mu ?

1,369 views
Skip to first unread message

Orkun Tüzel

unread,
Dec 28, 2013, 5:23:01 AM12/28/13
to python-...@googlegroups.com
Herkese merhaba, 
Web geliştirme konusuna frontend ile başlayıp sonra PHP ile backend'e geçiş yaptım. Bunun sebebi tamamen ihtiyaçların beni yönlendirmesi oldu fakat yönetim paneli yapma gibi konularla uğraşmak açıkçası yorduğundan bir framework kullanarak Python'a geçiş yapmak istedim. Bu yüzden ilk önce edX üzerindeki "6.00.1x Introduction to Computer Science and Programming" kursuna katıldım ve yeni bitirdim. (Bu arada çok memnun kaldım tavsiye ederim.)
Daha önceden de Yıldız Üni. nin 9 ay süren Bilişim Teknolojileri Uzmanlığı eğitimine katılmıştım. Bir miktar programlama bilgim oluştu.
Sormak istediğim, bu safhada artık Python ile devam etmek istiyorum fakat Django dan önce Flask ile daha yumuşak bir başlangıç yapılabileceğini okudum. 
Kullananlar varsa önerilerini almak isterim. Pratik olsun diye ilk yapmak istediğim proje, hisse senedi portföyü uygulaması olacak. Senet bazında geçmiş alım/satım işlemlerini döken ve portföyün son durumunu gösteren basit bir uygulama yapmak istiyorum. 
Bir miktar Django'ya baktım. Kullanımı güzel gelse de bazı noktalar yeni başlayan biri için gizemli. Bütün sistemin nasıl çalıştığını anlamaya çalışırken bir yandan da projeye odaklanmak zorlayabilir gibi geldi. Flask bu konuda yardımcı olur mu?
Teşekkürler

Berker Peksağ

unread,
Dec 28, 2013, 5:34:35 AM12/28/13
to python-...@googlegroups.com
2013/12/28 Orkun Tüzel <orkun...@gmail.com>:
Flask ile blog uygulamasından daha karışık bir şey yapmaya başlayınca
eğer tekerleği yeniden icat etmek istemiyorsanız onlarca flask-*
eklentisi kurarak işinizi görmeye çalışıp, Django öğrenmekten
vazgeçerek kazandığınız zamanı Flask eklentileriyle boğuşarak
kaybediyorsunuz.

JsPyConf sitesini "ne de olsa tek sayfalık uygulama" deyip Flask ile
yapmıştım, çok pişmanım. Öte yandan Storm'un [1] web arayüzünün
backendini Flask ile çok kısa sürede ve sorun yaşamadan çalışır hale
getirdim.

--Berker

[1] https://github.com/emre/storm

Orkun Tüzel

unread,
Dec 28, 2013, 5:49:41 AM12/28/13
to python-...@googlegroups.com
Dedikleriniz önemli. Bahsettiğiniz sitedekinden (elinize sağlık bu arada) daha fazla işlevselliğe ihtiyaç duyacağım için Flask ile zorlanacağım gibi gözüküyor. 
Teşekkürler.

28 Aralık 2013 Cumartesi 12:34:35 UTC+2 tarihinde Berker Peksag yazdı:

Muhammet Can

unread,
Dec 28, 2013, 9:04:28 AM12/28/13
to python-...@googlegroups.com
flask, django'ya göre çok daha hafif bir framework.
Ben aslında relational database kullanmadığımız için son projemizde flask'ı tercih ettim [1],
django ile uğraşsaydık muhtemelen daha zahmetli olacaktı bizim durum için.

burda tamamen yapacağınız işe göre karar vermek gerekiyor aslında. blog / newsletter tarzı birşey yapacaksanız,
(yönetim paneliyle uğraşmak zahmetli demişsiniz mesela) django çok daha hızlı bir çözüm sunacaktır.
(admin panelini modellere göre otomatik oluşturuyor)

öte yandan web development öğrenmekse amacınız,
flask'ı veya bottle'ı içerisinde daha az magic olduğu için tavsiye ederim.
(ikiside birbirine çok benziyor ve bottle için hali hazırda efsane kaynak [2] var elinizde)

[1] - https://github.com/jeffisabelle/EN4S-service
[2] - https://www.udacity.com/course/cs253




2013/12/28 Orkun Tüzel <orkun...@gmail.com>

--
Bu e-postayı Google Grupları'ndaki "Python Istanbul" adlı gruba abone olduğunuz için aldınız.
Bu grubun aboneliğinden çıkmak ve bu gruptan artık e-posta almamak için python-istanb...@googlegroups.com adresine e-posta gönderin.
Daha fazla seçenek için, https://groups.google.com/groups/opt_out adresiniz ziyaret edin.



--
code is poetry!

Fatih Kadir Akın

unread,
Dec 28, 2013, 10:29:52 AM12/28/13
to python-...@googlegroups.com, python-...@googlegroups.com
PHP'den geçiyorsan şöyle mapleyebiliriz belki:

Symfony, ZendFW -> Django
Silex -> Flask


Uğur Özyılmazel

unread,
Dec 28, 2013, 10:43:41 AM12/28/13
to python-...@googlegroups.com
yeni başlaysn biri önce adamakıllı python öğrenmeli. daha sonra neye ihtiyacı olduğunu projeye/işe göre karar vermeli. py bildikten sonra gerisi kolay. 

--
Uğur Özyılmazel
http://ugur.ozyilmazel.com
http://vigo.github.io
@vigobronx | @ugurozyilmazel

Message has been deleted

Orkun Tüzel

unread,
Dec 28, 2013, 12:51:27 PM12/28/13
to python-...@googlegroups.com
Tekrar merhaba,
Ortak ve uzun bir mesaj yazmıştım ama nedense silinmiş görünüyor.

Sırasıyla cevaplıyım,

(Muhammet Can)
Udacity'deki kursu biliyordum, ileride katılmayı düşünüyorum. 
Aslında yapmak istediğim şey, blog'dan ziyade, hisse senedi fiyatlarını günde bir kere bir siteden çekecek ve elimizdeki senetlerin kar/zarar durumlarını verecek (gerekirse grafiklerle) ve geçmiş alım/satım işlemlerini database'de saklayacak ufak, kişisel bir web uygulaması. Tabi Django'nun ilk başta beni en çok çeken yanı otomatik olarak yönetici arayüzünü oluşturuyor oluşuydu. Diğerlerini araştıracağım


(Fatih Kadir Akın)
PHP için Symfony'e bakmıştım biraz, fakat karmaşık gelmişti. Zaten Python'la yeni bir başlangıç yapmak istiyordum o yüzden fazla vakit harcamadım.


(Uğur Özyılmazel)
Bahsettiğim uygulamanın üstesinden gelebilecek kadar fonksiyon, class yazabilirim diye düşünüyorum ama asıl eksikliğim MVC, OOP, Framework, SVN, GitHub gibi konularda henüz yeni oluşum.
Aşağıda fikir vermesi açısında PHP'de yaptığım iki site mevcut [1],[2]. Aslında Python'u da ilerletebilmek için böyle bir uygulama yapmak istiyorum. 


Kısacası yaş itibariyle konuya biraz geç giriş yaptığım için vakit kaybetmeden verimli bir iş akışı oturtmak istiyorum. Şimdilik Django daha ağır basıyor ama diğerlerini de araştıracağım.
İlginiz için teşekkürler.. 

Yiğit Güneli

unread,
Dec 28, 2013, 1:05:12 PM12/28/13
to python-...@googlegroups.com
flask icin cok kolay kurulabilen admin arayuzleri var. [0][1]

bir de sql alchemy yerine kullanilan peewee isminde bir orm var.[2] modeller icin kendi admin paneli ile geliyor. ben ufak projeleri peewee ile yapiyorum, yeni bir proje oldugu icin katki yapmasi da cok kolay oluyor.



2013/12/28 Orkun Tüzel <orkun...@gmail.com>

Orkun Tüzel

unread,
Dec 28, 2013, 1:33:12 PM12/28/13
to python-...@googlegroups.com, gro....@yiit.org
Kaynaklar için teşekkürler.
Yepyeni bir dünya :)

28 Aralık 2013 Cumartesi 20:05:12 UTC+2 tarihinde Yiğit Güneli yazdı:

Alper Kanat

unread,
Dec 28, 2013, 7:53:34 PM12/28/13
to python-...@googlegroups.com
Merhaba,

Kişisel fikrim; django ile başlamanız yönünde. django'yu bir kere öğrendikten sonra Flask'ı da kullanırsınız, webapp'i de, başkasını da.. django sizi bir çok konuda tekerleği baştan icat etmenizin ya da dışarıdan bağımlılık eklemenizin önüne geçecektir. Bu da yazdığınız koda odaklanmanızı ve öğrenmenizi kolaylaştıracaktır.

Benim tavsiyem; django'nun tutorial'ını kesinlikle copy-paste yapmadan, harfi harfine kendi kendinize yazarak sıfırdan yapmanız. Bu sayede hem bir aşinalık oluşuyor, hem de yaptığınız şeyi daha iyi anlıyorsunuz. Tutorial'ı tamamladıktan sonra önünüze çok zor olmayan bir hedef koyun. Örneğin kendi siteniz ya da basit bir not uygulaması gibi.. Bir kaç iterasyon yaptığınızda eğer yeterince özen gösteriyorsanız epey toparlarsınız. Özenden kastım; pep8 gibi kuralların farkına varmak, django'da kullanılan yolları tercih etmek, Python'ca kod yazmak; kısaca her seferinde daha iyi kod yazmaya çalışmak.

django sizi i18n, csrf, lipsum, staticfiles gibi bir çok modülüyle bilmeme ihtimaliniz de bulunan bir çok sorundan kurtarıyor. Bu nedenle full-stack bir framework ile başlamak her zaman en iyisi. Bu arada bir miktar ilerledikten sonra özellikle Class Based View'lar, middleware'ler, login/authentication vb. için django'nun kodunu da okumanız size nasıl çalıştığı konusunda epey fikir verecektir. CBV'ler için django'nun kodunu okumak kod kalitesinde önemli artış sağlıyor.

Umarım faydalı olabilmişimdir; kolay gelsin.

---
Quis custodiet ipsos custodes?

Orkun Tüzel

unread,
Dec 29, 2013, 4:12:40 AM12/29/13
to python-...@googlegroups.com
Cevabınız gayet faydalı oldu. 
Django tutorial'ına zaten başlamıştım, onu bitirmek iyi olacak. 
Şimdilik Django ile devam etmeye karar verdim.
Grubu da takip ediyor olacağım. 
Herkese teşekkür ederim.


29 Aralık 2013 Pazar 02:53:34 UTC+2 tarihinde Alper Kanat yazdı:

Güray YILDIRIM

unread,
Dec 29, 2013, 7:35:54 AM12/29/13
to python-...@googlegroups.com
webci değilim ama ufak tefek işim düştüğü zaman flask ile hallediyorum. Başlangıç için hızlı yol aldırabilir. Ben başlayacak olsam Flask ile biraz zaman geçirip el alışkanlığı oluşmaya başladığında Django'ya geçiş yapardım.

Django ile başlamaya karar verirseniz de, Mustafa Başer'in kitabını inceledim bir süre. Bir uygulama yaptırarak ilerlemesi çok kalıcı ve mantığı açıklar yönde etkilemiş kitabı. Framework, OOP gibi konularda çok fazla tecrübe yoksa özellikle tavsiye ederim.

28 Aralık 2013 Cumartesi 12:23:01 UTC+2 tarihinde Orkun Tüzel yazdı:

Orkun Tüzel

unread,
Dec 30, 2013, 7:26:59 AM12/30/13
to python-...@googlegroups.com
Django ile bir projeye başlamadan önce en azından kendi tutorial'ını bir bitirip fikir edinmek istiyorum.
Sonra gidişata karar vermek daha kolay olacak.
Kitabı da alacağım.
Teşekkürler.


29 Aralık 2013 Pazar 14:35:54 UTC+2 tarihinde Güray YILDIRIM yazdı:

Ülgen Sarıkavak

unread,
Dec 30, 2013, 7:38:42 AM12/30/13
to python-...@googlegroups.com
İlk aşamada basılı kitap satın almayı pek mantıklı bir hareket olarak görmüyorum şahsen. İnternette bol miktarda ders mevcut.

Django'nun kendi sitesindeki örnek proje belgesi bir kaç saat içinde bitiyor. Oradan sonrası için, bir web uygulamasında karar kılıp "Bunu Django ile nasıl yaparım?" sorusunun üzerinde, bolca da okuma yaparak çalışmak en iyi öğreten yol oluyor çoğu zaman.  Örnekler veya dokümanlar üzerinden gidip de bireysel hiç bir şey katmayınca pek kıymeti de olmuyor.

Django vs. Flask noktasında da, işe en kapsamlı araçla başlamak daha acısız olacaktır. Başlangıçta ayrıntılarla uğraşmak yorucu oluyor ve hem konunun özü, hem de önemli ayrıntılar güme gidiyor. Django ile bir kaç kez kullanıp hakkında bilgi sahibi olunmuş araç ve tekniklerin ayrıntılarını daha sonra Flask ile irdelemek hoş olabilir.

Tabi tüm süreç içinde farklı projeleri takip etmek, kod okumak ve katkı vermeye çalışmak da kritik önem taşıyor.

Ahmet Çakır

unread,
Dec 29, 2013, 10:59:44 PM12/29/13
to python-...@googlegroups.com
On 30-12-2013 14:38, �lgen Sar�kavak wrote:
> �lk a�amada bas�l� kitap sat�n almay� pek mant�kl� bir hareket olarak
> g�rm�yorum �ahsen. �nternette bol miktarda ders mevcut.
>
> Django'nun kendi sitesindeki �rnek proje belgesi bir ka� saat i�inde
> bitiyor. Oradan sonras� i�in, bir web uygulamas�nda karar k�l�p "Bunu
> Django ile nas�l yapar�m?" sorusunun �zerinde, bolca da okuma yaparak
> �al��mak en iyi ��reten yol oluyor �o�u zaman. �rnekler veya
> dok�manlar �zerinden gidip de bireysel hi� bir �ey katmay�nca pek
> k�ymeti de olmuyor.
>
> Django vs. Flask noktas�nda da, i�e en kapsaml� ara�la ba�lamak daha
> ac�s�z olacakt�r. Ba�lang��ta ayr�nt�larla u�ra�mak yorucu oluyor ve
> hem konunun �z�, hem de �nemli ayr�nt�lar g�me gidiyor. Django ile bir
> ka� kez kullan�p hakk�nda bilgi sahibi olunmu� ara� ve tekniklerin
> ayr�nt�lar�n� daha sonra Flask ile irdelemek ho� olabilir.
>
> Tabi t�m s�re� i�inde farkl� projeleri takip etmek, kod okumak ve
> katk� vermeye �al��mak da kritik �nem ta��yor.
> --
> Bu e-postay� Google Gruplar�'ndaki "Python Istanbul" adl� gruba abone
> oldu�unuz i�in ald�n�z.
> Bu grubun aboneli�inden ��kmak ve bu gruptan art�k e-posta almamak
> i�in python-istanb...@googlegroups.com adresine e-posta
> g�nderin.
> Daha fazla se�enek i�in, https://groups.google.com/groups/opt_out
> adresiniz ziyaret edin.
Kitab�n Yernini Hi� Bir Zaman Ekran Tutmaz. Daha G�zel Olabilir Ama
Kitap Herzaman ��e Yarar Hatta Baz� Sayfalar� bile Referans Olarak
Ak�lda Kal�r. Be�in Kendine En Yak�n Olan Bilgiye ula�mak ister.

Recep KIRMIZI

unread,
Dec 30, 2013, 10:16:53 AM12/30/13
to python-...@googlegroups.com
Kitap tabiki de iyidir hoştur. Lakin bu kadar hızlı değişen teknolojiler için bence çok doğru bir yöntem değil.
6 Ay, en geç 1 yıl sonra şu anki yapıya göre çok farklı teknolojileri konuşuyor olabiliriz. 

Programcılığın temeli gibi konular için tamam ama, yukarıda bahsi geçen konuları kitaptan öğrenmek yerine dökümanları web sitelerinden takip etmek daha doğru olabilir.
Onun yerine Dan Brown 'un Cehennem'ini almak daha güzel bir harcama olabilir :D


30 Aralık 2013 05:59 tarihinde Ahmet Çakır <bur...@gmail.com> yazdı:
--
Bu e-postayı Google Grupları'ndaki "Python Istanbul" adlı gruba abone olduğunuz için aldınız.
Bu grubun aboneliğinden çıkmak ve bu gruptan artık e-posta almamak için python-istanbul+unsubscribe@googlegroups.com adresine e-posta gönderin.
Daha fazla seçenek için, https://groups.google.com/groups/opt_out adresiniz ziyaret edin.
Kitabın Yernini Hiç Bir Zaman Ekran Tutmaz. Daha Güzel Olabilir Ama Kitap Herzaman İşe Yarar Hatta Bazı Sayfaları bile Referans Olarak Akılda Kalır. Beğin Kendine En Yakın Olan Bilgiye ulaşmak ister.


--
Bu e-postayı Google Grupları'ndaki "Python Istanbul" adlı gruba abone olduğunuz için aldınız.
Bu grubun aboneliğinden çıkmak ve bu gruptan artık e-posta almamak için python-istanbul+unsubscribe@googlegroups.com adresine e-posta gönderin.
Daha fazla seçenek için, https://groups.google.com/groups/opt_out adresiniz ziyaret edin.



--
Saygılarımla... Recep KIRMIZI

Orkun Tüzel

unread,
Dec 30, 2013, 10:21:00 AM12/30/13
to python-...@googlegroups.com
Aslında böyle konularda aldığım kitapların hiç birini okumadım ama içinde örnek proje barındırması nedeniyle ilgimi çekti. 
Bir de para verince insan daha ciddiye alıyor :) Yoksa internet sınırsız tabiki.

30 Aralık 2013 Pazartesi 17:16:53 UTC+2 tarihinde Recep KIRMIZI yazdı:
Kitap tabiki de iyidir hoştur. Lakin bu kadar hızlı değişen teknolojiler için bence çok doğru bir yöntem değil.
6 Ay, en geç 1 yıl sonra şu anki yapıya göre çok farklı teknolojileri konuşuyor olabiliriz. 

Programcılığın temeli gibi konular için tamam ama, yukarıda bahsi geçen konuları kitaptan öğrenmek yerine dökümanları web sitelerinden takip etmek daha doğru olabilir.
Onun yerine Dan Brown 'un Cehennem'ini almak daha güzel bir harcama olabilir :D
30 Aralık 2013 05:59 tarihinde Ahmet Çakır <bur...@gmail.com> yazdı:
On 30-12-2013 14:38, Ülgen Sarıkavak wrote:
İlk aşamada basılı kitap satın almayı pek mantıklı bir hareket olarak görmüyorum şahsen. İnternette bol miktarda ders mevcut.

Django'nun kendi sitesindeki örnek proje belgesi bir kaç saat içinde bitiyor. Oradan sonrası için, bir web uygulamasında karar kılıp "Bunu Django ile nasıl yaparım?" sorusunun üzerinde, bolca da okuma yaparak çalışmak en iyi öğreten yol oluyor çoğu zaman.  Örnekler veya dokümanlar üzerinden gidip de bireysel hiç bir şey katmayınca pek kıymeti de olmuyor.

Django vs. Flask noktasında da, işe en kapsamlı araçla başlamak daha acısız olacaktır. Başlangıçta ayrıntılarla uğraşmak yorucu oluyor ve hem konunun özü, hem de önemli ayrıntılar güme gidiyor. Django ile bir kaç kez kullanıp hakkında bilgi sahibi olunmuş araç ve tekniklerin ayrıntılarını daha sonra Flask ile irdelemek hoş olabilir.

Tabi tüm süreç içinde farklı projeleri takip etmek, kod okumak ve katkı vermeye çalışmak da kritik önem taşıyor.
--
Bu e-postayı Google Grupları'ndaki "Python Istanbul" adlı gruba abone olduğunuz için aldınız.
Bu grubun aboneliğinden çıkmak ve bu gruptan artık e-posta almamak için python-istanb...@googlegroups.com adresine e-posta gönderin.

Daha fazla seçenek için, https://groups.google.com/groups/opt_out adresiniz ziyaret edin.
Kitabın Yernini Hiç Bir Zaman Ekran Tutmaz. Daha Güzel Olabilir Ama Kitap Herzaman İşe Yarar Hatta Bazı Sayfaları bile Referans Olarak Akılda Kalır. Beğin Kendine En Yakın Olan Bilgiye ulaşmak ister.


--
Bu e-postayı Google Grupları'ndaki "Python Istanbul" adlı gruba abone olduğunuz için aldınız.
Bu grubun aboneliğinden çıkmak ve bu gruptan artık e-posta almamak için python-istanb...@googlegroups.com adresine e-posta gönderin.

Daha fazla seçenek için, https://groups.google.com/groups/opt_out adresiniz ziyaret edin.



--
Saygılarımla... Recep KIRMIZI

şahin mersin

unread,
Dec 30, 2013, 10:24:24 AM12/30/13
to python-...@googlegroups.com
:D Django.


30 Aralık 2013 17:16 tarihinde Recep KIRMIZI <rkir...@gmail.com> yazdı:
Bu grubun aboneliğinden çıkmak ve bu gruptan artık e-posta almamak için python-istanb...@googlegroups.com adresine e-posta gönderin.

Daha fazla seçenek için, https://groups.google.com/groups/opt_out adresiniz ziyaret edin.
Reply all
Reply to author
Forward
0 new messages