Is Django Suitable?
Is Django Suitable?
Join the DZone community and get the full member experience.Join For Free
Jumpstart your Angular applications with Indigo.Design, a unified platform for visual design, UX prototyping, code generation, and app development.
- Authentication. Django supports flexible logins and Python makes it easy to adapt other security API's. Django and Python assure that this is a solid 10.
- Shared Code. This is handled through Python features that are central to the Django framework. Shared code management -- with appropriate overrides and customization -- is part of Python and a 10.
- Database Access. While Django provides the necessary access features, database scalability depends on the implementation of the database engine itself. There are numerous parallelization features that must all be used to maximize database throughput. Even though the real responsibility for performance is outside Django, the Django flexibility results in a 10.
- Applications. The various applications described in the requirements are more-or-less irrelevant to Django. They can be built easily, but are not first-class features of Django. In the sense of easy-to-develop, this is a solid 10. In the sense of already-existing-applications, this may be a 5 if the applications are part of a community like Pinax. Because the applications do not already exist, this may also be a 0.
- API. Python allows use of any API. Django's transparent use of Python makes it easy to build API's. This is a feature of Python and scores 10 out of 10.
- Usability and Developer Skills. Django's ease-of-use is a direct consequence of the Python programming language. The developers of Django make excellent use of the Python language, giving this a 10.
- Performance, Access and Scalability. For the most part, Django performance comes from consideration of the purpose of all layers of the architecture. Principle design features include keeping static content separate from dynamic content (reducing Django's workload), and optimizing the database (to hande concurrent access well). Django provides several internal design features to minimize memory. Django encourages proper separation of concerns, giving a 10.
Opinions expressed by DZone contributors are their own.