We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Django structure for scale and longevity

Formale Metadaten

Titel
Django structure for scale and longevity
Serientitel
Anzahl der Teile
132
Autor
Lizenz
CC-Namensnennung - keine kommerzielle Nutzung - Weitergabe unter gleichen Bedingungen 3.0 Unported:
Sie dürfen das Werk bzw. den Inhalt zu jedem legalen und nicht-kommerziellen Zweck nutzen, verändern und in unveränderter oder veränderter Form vervielfältigen, verbreiten und öffentlich zugänglich machen, sofern Sie den Namen des Autors/Rechteinhabers in der von ihm festgelegten Weise nennen und das Werk bzw. diesen Inhalt auch in veränderter Form nur unter den Bedingungen dieser Lizenz weitergeben
Identifikatoren
Herausgeber
Erscheinungsjahr
Sprache

Inhaltliche Metadaten

Fachgebiet
Genre
Abstract
Why Django is great. But as we add new features, as our dev team grows & the software needs to be stable on production, things can get quite messy. We are going to look at some common patterns, derived from experience, on how to structure your Django project for scale and longevity. What Main topics are: Django service layer or where should business logic live? Using Django Rest Framework in a clean & repeatable way & combining it with the service layer. Testing everything that matters, without repeating ourselves in different tests. We are going to talk about when to rely on existing abstraction so it's actually helpful & when to avoid existing abstraction, and code things ourselves. The examples showed in this talk are derived from working with Django in the last 5 years on projects with: Daily production usage & production deploys. Dozens of apps. Hundreds of models & APIs. Tens of integrations working simultaneously. Teams of 5 to 10 people. Who Key takeaways from the talk: Increased productivity when developing with Django. Deeper understanding of the software development process with Django. Demo project with everything mentioned in it. The talk is great for all levels of Django knowledge - from beginners to advanced users & teams. How The main way of getting the point across is going to be by showing regular code, talking how it can get messy & then following up with examples of improving that code. Hopefully this talk will start a lot of discussion afterwards. Breakdown of the talk: Django service layer Fat models or fat views? Where do I put my business logic? What is a service & what goes into a service? What is a selector & what goes into a selector? General Django structure How many apps should I have? Structuring your code so youр team can be more productive and have less conflicts. Common modules & utilities. Doing APIs with Django Rest Framework Splitting APIs in 2 groups - "giving data" and "taking data" Using a lot of generics for "give data" When do to selectors? Using no generics for "take data" (APIView + Services) Handling errors from services Inlining serializers & avoiding serializers reuse A neat inline_serializer util Introducing general error formatting for your API Testing all of that - what should be & not be tested?