Techniki Zaawansowane
3 godz. 43 min · Python · Full-stack i Programowanie
Grzegorz SzymborskiProgramistaJeżeli na samym początku nie przygotujemy dobrze projektu, to gdy wrócimy do niego po dłuższym czasie - czekają nas kłopoty. Jeżeli uda się nam go uruchomić, to rozeznanie się w nim będzie udręką. Prowadzący pokaże Ci jak wyglądają jego produkcyjne aplikacje, na co zwraca uwagę i co pomaga mu trzymać porządek.
Biblioteka pytest posiada wiele ciekawych funkcjonalności. Parametryzowanie testów, fixture i uproszczona składnia pozwalają nam skupić na testowaniu tego, co kluczowe, wydzielając mniej istotne fragmenty kodu. To wszystko sprawia, że w pewnym momencie łatwiej będzie Ci pisać testy, niż ręcznie sprawdzać poprawność działania apki.
Jeżeli aplikacja, którą stworzysz, osiągnie dużą popularność, może się okazać, że przytłoczona dużym ruchem zacznie spowalniać... lub całkowicie przestanie odpowiadać. Opiszemy różne techniki służące temu, by temu zaradzić - od metod select i prefetch related, aż po cache. Na deser przeprowadzimy na stronie test obciążeniowy za pomocą narzędzia locust.
Django i Postgres to świetne połączenie. Framework ten posiada wbudowaną obsługę wyszukiwania pełnotekstowego oferowanego przez tę bazę. Warto wiedzieć, kiedy jej użyć, a kiedy wystarczy zwykłe icontains.
ORM w Django ułatwia mnóstwo operacji. A czasem nie dość to, że ułatwia... to jeszcze przyspiesza! Chcemy zainspirować Cię czterema metodami: annotate, aggregate, bulkupdate i bulkcreate. Gdy pojawią się one w naszym kodzie, zaczniemy doceniać uroki frameworka Django.
Kurs jest stworzony dla osób, które znają już podstawy Django i wiedzą, jak pisać proste strony. Znają modele, widoki, oraz niestraszny im jest Python. Zalecana jest również podstawowa znajomość dowolnej relacyjnej bazy danych. W kursie przedstawiamy niekiedy narzędzia i praktyczne przykłady, jak można ich użyć, ale w celu zaimplementowania konkretnego rozwiązania w projekcie wymagana będzie umiejętność czytania dokumentacji.
Cześć.
Podejrzewam że skoro tu jesteś to Wiesz już coś o gangu.
Pewnie wiesz że jest to framework klubowy napisany w Python nie służy do pisania
aplikacji internetowych i ma piękną zieloną stronę z dokumentacją.
Możesz jednak nie wiedzieć że na Django został napisany Instagram.
Strona NASA The Washington Post Dropbox interes.
Co to znaczy.
To znaczy że w Django możemy tworzyć
praktycznie wszystko i ograniczać nas może jedynie jego znajomość.
I po to właśnie tu jestem.
Nazywam się Grzegorz Szymborskiej i od pięciu lat zawodowo zajmuje się Django a w
wolnych chwilach lubię programowanie w Panteonie.
Pracuję w firmie Panowie programiści w studiu programistycznych które
specjalizuje się w realizacji dużych portali aplikacji webOS owych
jak i mniejszych stron o niestandardowych wizualnie.
Współpracujemy m.in. z organizatorami
największych festiwali muzycznych w Polsce magazynami modowym start mapami.
W tym kursie postaramy się przekazać ci to
czego nauczyłem się z pracy książek wykładów i artykułów.
Opowiem ci o praktycznie trzech rzeczach takich które wykorzystuję regularnie
podczas pisania kodu żeby swobodnie poruszać się po tym kursie.
Wymagana jest wiedza jak tworzyć proste strony w Django.
Czym jest widok model i jak wykonywać zapytania do bazy danych za pomocą RM.
Dobrym pomysłem jest robienie wcześniej
materiałów z zakresu podstawowego Pythona i Django.
W pierwszym rozdziale
mówimy jaka struktura projektu jest według mnie najlepsza.
Opowiem ci o swoich doświadczeniach ze
złymi praktykami i dlaczego ostatecznie doprowadziło mnie to do takiego zdania.
Poruszamy również temat narzędzi takich jak komiks i blaszek dzięki którym
zaoszczędzimy sobie i osobom które z nami pracują.
Mnóstwo czasu Zdradzę ci trochę informacji od ang.
framework którego używam do wystawiania API.
Z jakich metod najczęściej korzystam i jak rozwiązuje nietypowe problemy.
Dużo czasu poświęciłem na testy ponieważ moim zdaniem jeżeli chce stworzyć
dobry kod to od testów nie uwolni się nigdy jaką bibliotekę do testów wybrałem.
Jeżeli jest to narzędzie ci obce to
postaram się przekonać cię do korzystania z niego.
Całe dwa rozdziały kursu są o optymalizacji.
Jest to temat który mnie osobiście fascynuje i spędziłem setki godzin aby
strona uruchamia się mili sekundy szybciej.
Mówię zarówno o optymalizacji na poziomie bazy danych jak i kasowania stron.
Po obejrzeniu kursu
będziesz również wiedział jak stworzyć wyszukiwarkę opartą na dobrodziejstwa
wyszukiwania pełno testowego które oferuje nam baza POS oraz.
Jeżeli kurs jest o Django
to nie możemy pominąć rozdziału o RM i rozszerzaniu modeli.
Wisienką na torcie jest ostatnia lekcja.
Pokazuje w niej jak nieświadomie możemy
zostawiać poważną lukę w naszych aplikacjach.
Luka ta pozwala na wielokrotne składanie
zamówień na jednorazowym kodzie rabatowe wypłacanie środków większych niż pozwala
saldo i rezerwować większej ilości miejsc biletowych niż jest dostępnych.
Co ciekawe niewielu programistów o niej
wie a nawet ci co oni wiedzą często przymykają oko.
Myślę że po obejrzeniu tego materiału będziesz w stanie wprowadzić nowe nawyki
do swojej pracy i stać się lepszym programistą.
Do zobaczenia na pierwszej lekcji.