How do I choose the appropriate Web development framework for your project?

Source: Internet
Author: User

How to choose the right fit for your project Web Development Framework? First, for a software -development startup, this is more of a business choice than a technology choice, and the cost of time and resources must be considered. Once the size of the company comes up with no problem, the choice of space is even larger and can be migrated or re-architected. The original author Ramigbtech summarizes the following 10 points for reference. The translation is as follows:

1. Syntax

A language with elegant grammar can undoubtedly make programming work comfortable, but sometimes we are apt to be blinded by appearances, and if intuitively you decide, "This is Text". Split ("). Reverse.join (") than "". Join ("This Istext". Split (") [::-1]) is a good or bad one, so this is just the appearance of the association, in fact, we should focus on whether it has limitations or syntax is cumbersome, with less code to complete the equivalent of the work we or the team will be grateful for the original choice.

2. function and body size

Do we need to write complex regular queries for routing? Does the route contain the built-in DSL? Do we need to use ORM? Maybe we want to have more features. It is recommended to choose a lighter frame to start with and we can contribute to it in the future.

3. Documentation Resources

A framework with rich documentation resources is really handy. For example, when I was studying codeigniter, I didn't have to look around like a headless fly, and the tutorials and matching examples were very carefully done. Comparatively speaking, I was more laborious when I was learning Expressjs.

4. Automatic code generation

The automatic generation of code in the framework usually saves us a lot of time, we just need to do the Controller/class processing and other repetitive coding work to the framework, although it is sometimes not free to customize, but for the rapid development of a prototype can be run to have a positive meaning.

5. Modular

Django The process of module/apps is amazing, not only makes code reuse easy, but also helps us develop good modular thinking. When we no longer need the X module, we just need to remove it and do the code refactoring work.

6. Infrastructure

Whether it is using lamp or mean stack, or rails/unicorn, the most important thing is that we have not enough knowledge of this architecture, and there is no maintenance capability of related components. If the front-end and back-end of the app are all JavaScript-related, using the mean stack architecture is a good choice.

7. community and update Speed

Are the framework-related communities active? Is there a technical big coffee? Will the officials often stackoverflow to help solve technical problems? Finding the perfect answer to these questions is difficult, but most of the time the numbers are the most realistic. Date or engagement/post heat is a good metric. In addition, the update speed of patches is also critical, the importance of security and vulnerability is reaching.

8. Major Changes

It was only recently that many programmers were shocked and angular by the big changes in the 2.0, and even though they would not be complete until later in 2015, how could they stride the thought that the hard-done code would turn into the past? Another example is the YII framework, where the introduction of the new version 2.0 implies a complete rewrite of the previous version.

9. Deployment and Dependency

Is it easy to deploy? Is it convenient to expand? How much time does it take to learn to master deployment tools? While there are tools like Docker that can help us answer these questions, it is still necessary to take the time to think about this issue.

Human Resources

Can we quickly find the right talent for development? Is the framework that will be used popular in our area? Even though training is part of management, time and money are carefully spent on startups.

Written at the end:

If it's a medium-sized website, I'll choose Django. If I'm not sure about the size of the site and how much development effort I will devote to it, I'll choose rails. If I don't want the back and forth work to be too open, I'll choose the mean stack.

Free to receive the lamp brother even original PHP video tutorial CD/"Detailed PHP" Essentials Edition, details of the website customer service:

Http://www.lampbrother.net


How do I choose the appropriate Web development framework for your project?

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.