Nauka Django przez przykład [zamknięte]

10

Kiedy zacząłem uczyć się Androida, znalazłem fantastyczną serię filmów na YouTube autorstwa Marakany, które przeszły przez proces tworzenia klona Twittera. Przeprowadził mnie przez wszystkie etapy, a tym samym wyjaśnił mi podstawy, wspólne biblioteki, najlepsze praktyki, zasoby itp. Spojrzenie przez ramię eksperta podczas budowania praktycznej aplikacji było dla mnie absolutnie najlepszą metodą uczenia się. Przede wszystkim dostarczył mi szkielet, na którym mogłem zbudować. Stamtąd mógłbym kontynuować badania i dowiedzieć się, jakie pytania zadać.

Teraz szukam czegoś podobnego z Django. Oczywiście sprawdziłem oficjalny samouczek i książkę Django . Ten pierwszy napina niektóre mięśnie Django, ale nie przechodzi przez pełną aplikację. To drugie jest z pewnością lepsze, ale aplikacja, którą tworzy, jest bardzo prosta i zanim dotrze do bardziej zaawansowanych tematów, samouczek się psuje i wraca do krótkich fragmentów kodu i wyjaśnień podobnych do dokumentacji.

Sprawdzanie Amazon nie jest zbyt zachęcające. Najnowsza ogólna książka Django została wydana prawie dwa i pół roku temu i obejmuje tylko v1.0. Szczerze mówiąc, rozumiem, że dzieje się tak prawdopodobnie dlatego, że dokumentacja online jest doskonała, ale znowu szukam rozwiązania. Doświadczyłem iskry podniecenia, kiedy natknąłem się na praktyczne projekty Django , które brzmią dokładnie tak, jak szukałem. Jednak w niektórych recenzjach pojawiają się roszczenia o rażących problemach - brak kodu źródłowego, wiele błędów i brak erraty, całkowicie apatyczny autor i niereagujący wydawca itp.

I tak zostaję na pierwszym miejscu i potrzebuję twojej rady. Czy jest miejsce, w którym mogę usiąść na ramieniu giganta i przejść od realistycznego projektu Django od początku do końca? Najlepiej przy użyciu nowszej wersji frameworka.

Yony
źródło
1
Duplikat programistów.stackexchange.com
questions
2
@Cyclops Odpowiedzi tam nie zawierają odpowiedzi na pytanie dotyczące samouczka, który poprowadzi cię przez cały projekt.
Adam Lear
@Yony Szukasz czegoś takiego jak railstutorial.org, ale Django?
Adam Lear
@ Anna, tak. Samouczek Ruby on Rails to wspaniały kawałek pracy. Bardzo dokładny z przyjaznym, responsywnym autorem. Właśnie tego szukam w Django.
Yony,

Odpowiedzi:

11

Dobrym pomysłem jest przejrzenie oficjalnych samouczków Django na stronie djangoproject.com. Są one napisane przez niektórych głównych programistów i poruszają ważne kwestie dotyczące wersji Python / Django / DB i ewolucji składni. Ale tak, aplikacja Ankiety utworzona w tym procesie jest szczątkowa, więc oto moje zalecenia dotyczące przydatnych samouczków Django, które obejmują tworzenie aplikacji:

13 serii screencastów tworzących aplikację internetową Django: http://showmedo.com/videotutorials/series?name=PPN7NA155

Django przez przykład: instrukcje dotyczące kodu dla kilku przydatnych aplikacji http://www.lightbird.net/dbe/

na koniec chciałbym zasugerować, aby dać Praktyczne Projekty Django drugą szansę. Drugie wydanie książki zostało opublikowane, a książka jest dostępna na stronie autora, repozytorium bitbucket Jamesa Bennetta. (Jestem nowym użytkownikiem, więc nie mogę publikować więcej niż 2 hiperłączy - uprzejmie google)

Venzen
źródło
Zgodnie z twoją radą postanowiłem wypróbować praktyczne projekty Django. Pracuję teraz przez to. Prześle odpowiedź zwrotną w nieco.
Yony,
1
Yony, jak wygląda książka? Dzięki.
Uros K,
Niestety kilka wydarzeń spowodowało, że porzuciłem Django na jakiś czas. Istnieje jednak obiecujący projekt na Kickstarterze, który ma na celu zdobycie gruntownych lekcji Django przy użyciu najnowszej wersji frameworku przygotowanej przez stycznia w przyszłym roku. Mam nadzieję, że zanim to wyjdzie, będę w stanie zająć się tym ponownie. kickstarter.com/projects/657368266/getting-started-with-django
Yony
4

Myślę, że książka, która lepiej zagłębia się w Django, zaczyna się od Django E-commerce .

Sugeruję jednak przyjrzeć się drugiemu dodatkowi praktycznych projektów Django. Radziłbym również do ściągnięcia google django. Daje schemat blokowy metod, do których będziesz najczęściej uzyskiwać dostęp podczas tworzenia aplikacji. Dokumentacja Django jest naprawdę fantastyczna, ale jak już wspomniałeś, brakuje kilku obszarów.

Wierzę tylko, że Django było dla mnie tak trudne, ponieważ nie miałem doświadczenia w OOP, a jedynie wcześniejsze programowanie było niewielką ilością VB. HTML / css tak naprawdę się nie liczą. Potem zdałem sobie sprawę, że w zależności od projektu django naprawdę sprawia, że ​​programista nie musi dużo programować, jeśli chodzi o podstawowe projekty.

Teraz naprawdę daje mi to kreatywną iskrę, kiedy mogę przeglądać dokumentację django i ją zrozumieć. HTML5 i jego element canvas. Na horyzoncie jest wiele. Django jest absolutnie wspaniały do ​​budowania stron informacyjnych, prezentacji informacji, czytania materiałów, blogów, fotologów itp. . Pozostając przy Pythonie tak bardzo, jak tylko mogę, muszę powiedzieć, że za czymś podobnym do prawdziwej aplikacji musiałbym głosować na flask lub web.py. Django ma mnóstwo puchu.

Liczba żądań na sekundę może zostać znacznie zoptymalizowana za pomocą JS, buforowania i innych technik optymalizacji. Jednak to, co naprawdę przeszkadza, to uruchamianie każdego żądania przez wiele procesorów kontekstowych, iteracje długich list i złożone filtrowanie zestawów zapytań.

Jestem pewien, że dobrze mówisz, na czym polega problem? W ogóle nic. Funkcjonalność, którą Django jest w stanie zaoferować programistom od razu po wyjęciu z pudełka, nie ma sobie równych. ORM jest fantastyczny w tworzeniu interfejsów API i administracyjnych. Aby zdobyć cały ten puch, trzeba zrezygnować z kontroli. Ogólne widoki oparte na dacie są ratujące życie, podobnie jak aplikacje innych firm wielokrotnego użytku. Popularność Django bardzo pomaga i ma wspaniałą społeczność. Ale, jak powiedziałem, w zależności od twojego celu i poziomu umiejętności programowania, możesz chcieć sprawdzić inne bardziej wytrzymałe frameworki (web.py, flask).

Przepraszam za wędrowanie, Django oferuje komponenty do tworzenia systemów zarządzania treścią dla witryn opartych na treści, ale nie najlepiej nadaje się (niekoniecznie brakuje), jeśli chcesz stworzyć aplikację internetową w bardziej tradycyjnym znaczeniu. Nie mówię, że Django nie może tego zrobić. To tylko kwestia użycia młotka do przybicia deski lub użycia boku klucza. Jestem pro-django fyi i pro flask / web.py.

eusid
źródło