您好,欢迎来到12图资源库!分享精神,快乐你我!我们只是素材的搬运工!!
  • 首 页
  • 当前位置:首页 > 开发 > WEB开发 >
    你应该知道的9款流行Web框架及其优缺点
    时间:2017-03-11 08:29 来源:网络整理 作者:网络 浏览:收藏 挑错 推荐 打印

    对于 Web 开发人员来说,找到一些合适的工具,能让工作轻松许多。这其中,Web 框架更是提升工作效率的“利器”。但因为可选的 Web 框架非常多,如何选择也是一件令人头疼的事情。

    本文列出了9款目前比较流行的 Web 框架,并对优缺点进行分析,希望能对大家有所帮助。(内容主要编译自Ken Mazaika的The 9 Most In-Demand Web Frameworks And What You Need To Know About Them)

    首先,

    什么是 Web 框架?

    当 Web 浏览器使用 HTTP 和在其他地方运行的服务器(计算机)通讯时,这些服务器会收到一些通知:

    所选的 URL

    如何输入网址(通过表单提交或只是在浏览器栏中输入网址)

    服务器要干很多事情,比如:

    读取数据库里的数据和添加数据

    找到正确的结果(用户是否被允许查看试图访问的页面?是否要发送到不同的URL?等等)

    构建用户将看到的网页

    如果要提供更复杂的功能,就需要执行更多的步骤。作为开发人员,则需要对想要的功能列出一系列解决方案。Web 框架就是其中可选的解决方案之一。

    进入正题:

    1、Ruby on Rails

    你应该知道的9款流行Web框架及其优缺点

    编程语言:Ruby

    简介:

    Ruby on Rails 是一个已经被许多公司采用的 Web 框架,是 Ruby 编程语言中 Web 框架的鼻祖,获得了大量开发者的采用。DHH(Rails 的创始人)曾用它15分钟左右创建一个博客。

    Rails 的一大特点是约定优于配置(convention over configuration)。这意味着,它比较模式化、标准化和“约定化”,开发者通常做的是相同的事情,可以让代码写到最少。

    Rails 还使用了 MVC(Model-View-Controller),让架构更有组织性,更周密。

    优点:

    Rails 具有强大的命令行界面,通过几个简单的命令就能在新的应用上启动和运行。

    Rails 已经存在很长时间了,并且广泛被使用,网络上有很多关于它的教程。

    Rails 简单易用,即便是复杂的问题,也能相对快速解决。

    缺点:

    Rails 自动挂钩了很多东西。启动器里就包含很多文件,并且有相当多的配置代码是自动编写的,有些人可能会对此担心。

    整体来看,鉴于其灵活性及便捷性,Rails 是一个非常理想的 Web 框架,值得初学者优先学习。

    2、Sinatra

    你应该知道的9款流行Web框架及其优缺点

    编程语言:Ruby

    简介:

    上面的5行代码就是做一个最低限度配置的空 Web 应用所需要的全部代码, 如果拿它和 Ruby on Rails 进行比较,会发现它需要的代码更少(而且只有一个文件,而不是几十个)。

    然而,Sinatra 的简单性是一把双刃剑。 它用的是和 Ruby on Rails 相反的方法,需要开发者手动配置所有的东西。

    你应该知道的9款流行Web框架及其优缺点

    优点:

    Sinatra 是轻量级框架的领头羊。

    Sinatra 高度可配置,注重开发的自由度。

    缺点:

    由于不侧重“惯例”,没有相同的文件夹结构,所以会比较难去理解现有的 Sinatra 应用。

    Sinatra 不常用于实际生产项目当中。

    手动配置很多东西往往需要更多的时间,效率会受影响。

    3、ExpressJS

    你应该知道的9款流行Web框架及其优缺点

    编程语言:JavaScript

    简介

    ExpressJS 是一个 JavaScript Web 框架,基于 Node.js。看起来有没有熟悉,它的代码非常类似 Sinatra 的代码,也有和 Sinatra 相似的简单性。 在一个准 Express 应用中只有两个代码文件:

    package.json,这是 NPM 自动生成的文件。

    app.js,这里包含着应用程序的完整代码。

    优点

    高灵活性。

    可以只使用一种编程语言。

    轻量。

    缺点

    更多选项=更多选择。 选择意味着需要研究不同的选项,找出将它们应用到自己的项目当中的方法,这往往需要更多时间。

    4、SailsJS

    你应该知道的9款流行Web框架及其优缺点

    编程语言:Javascript

    简介

    SailsJS 可以看成是 JavaScript 版的 Rails,有一个命令行工具去生成一个完整的默认应用程序,自带许多合理的默认配置和数值。

    同样,Sails 也有 MVC 架构,启动一个完整的应用也会有数十个默认的文件。

    优点

    有许多默认已配置好的方法完成构建 Web 应用所涉及的大部分工作。

    命令行程序使得构建新应用和功能更为轻松。

    缺点

    尽管是一个看起来很强大的框架,人气也不低,但是并没有多少公司采用。

    5、MEAN 堆栈

    你应该知道的9款流行Web框架及其优缺点

    编程语言:JavaScript

    简介

    MEAN 是 ExpressJS 的扩展,堆栈了如 MongoDB、AngularJS 和 WebPack 等技术。MEAN 用JavaScript 一种语言来驱动整个应用。

    MongoDB 是一个在概念上与其他大多数据库有较大区别的数据库,它允许 JSON 数据在其中自由随意,这意味着数据库条目是灵活的,但同时也导致无效的记录成了一个非常容易遇到的问题。它不是通过 SQL 与数据库交互,而是使用其独有的 JavaScript。

    优点

    与 SailsJS 一样,MEAN 堆栈包含构建复杂 Web 应用所需的所有组件。

    缺点

    页面加载要两个阶段,而且第一阶段看起来有点搞笑。发生这种情况是因为视图不是在服务器端呈现,而只在浏览器中呈现。这意味着用户最初看到的是不完整的页面,页面的完整内容要过一会才能加载。

    MEAN 堆栈包含许多技术,如 MongoDB,在其他框架中构建 Web 应用时通常不使用这些技术。

    补充几句个人观点

    (责任编辑:admin)