Software Development using a Framework

GO WITH DJANGO!!! I'll tell you why...
Image result for django vs nodejs
1)DAMN EASY SYNTAX: You know Python. You know how easy the syntax is. It's a lot easy than JavaScript. The code readability is also way too easy. It looks clean, making it easier to debug and find mistakes. Look, if you know Python, you know Django. Once you get used to the Python's Object Oriented Programming and using functions, Django becomes way more easy to learn and understand.
2)Django is POWERFUL: The power of Django cannot be expressed in words, seriously. It can do things, which you can't even think of. Once you start using Django, I bet you'll recall my statement. "IT IS POWERFUL".
3)It's SECURED!: By default, it prevents most common security threats.
  • XSS (cross-site scripting) protection — Django template system by default escapes variables, unless they are explicitly marked as safe.
  • CSRF (cross site request forgery) protection — easy to turn on globally, guarantees that forms (POST requests) are sent from your own site.
  • SQL injection protection — Django uses built-in ORM, thus there is no risk of SQL injection (raw queries are possible, but by no means something that a beginner would need to use).
     Additional security features:
  • Clickjacking protection — Django can detect when the content is requested from unauthorized iframe
  • Safe password hash — Django by default uses PBKDF2, another option is bcrypt. Both are resilient to usage of rainbow tables (thanks to salt), both have significant compute time to prevent easy bruteforce.
4)IT's FAAAAAAAST: I can tell you've heard this statement many a times, but 'It is fast, but not bloated'. The speed. It's an important factor. And, Django totally nails it. Also, it helps you in developing your application rapidly. Believe me, you can develop a medium-sized application in a week or two.
5)It's Completely Scalable: I found this in a StackOverflow answer.
     What else can I say about it's scalability?
6)The Documentation: A documentation describes in-depth about a particular framework. Though, there are tutorials available on various websites on the web, the documentation is important. I found this on a website named HeavyBit:
Let's talk about Django's docs for a minute, because that's what I'm the most familiar with. So Django's about 80,000 lines of Python. It's 120,000 lines of English. There's more human writing there than there is computer writing. To put that in a bit more of perspective, here are some well-known great works of literature.
Django's about four times the length of the New Testament, it's longer than Infinite Jest, one of the famous long works oub, the first thing they would tell us is to cut 90 percent of it. Length doesn't tell the whole story,quality is obviously important, too. Time and time again you hear from people, "I chose Django because the documentation was great." "I saw there was a great community." "I saw great documentation." "The strengthof the documentation was originally attractive to me."
It's very rare to hear people say things like, "I was really impressed by Django's ORM, so I..." That's not common, but documentation definitely drives that.
7)The Django Community: The Django Community is very mature. So many experts are available to guide you through problems. You'd probably find every single problem already solved on StackOverflow.
I guess that's enough. I had to stop somewhere.
According to me, you should go with Django. You can learn it in maximum two weeks. And then spend the next few months on mastering it. I'd also suggest you to not just learn Django(if you're going with Django), but try to make something of you're own. When you make something, you solve more problems and master it thrice as fast as you will by just learning. I hope I answered your question properly. Keep telling us, what you chose and your experiences.

Comments

Popular posts from this blog

Documentation is Very vital before you develop any system or app

Everything you need to know when developing an on demand service app

Steps followed when creating a new software