【问题标题】:What combination of Javascript/Css/HTML frameworks and libraries do you recommend?您推荐哪种 Javascript/Css/HTML 框架和库的组合?
【发布时间】:2012-03-21 11:34:24
【问题描述】:

我希望通过一些很酷的库来使我的 Web 开发现代化,但是有太多的工具可以做不同的事情,而且经常有重叠,所以很难做出决定。

我对一个框架不感兴趣,而对能够很好地协同工作的各种工具的组合更感兴趣。我看过重置和规范化器、样板、HTML 框架和网格框架、CSS 创作框架、CSS 框架、Javascript 框架、DOM 操作、AJAX、资源加载、特征检测和 UI 库、Javascript 工具包、服务器端 pre -处理器和客户端预处理器,以及框架生成器;这是美丽的混乱。

我也期待使用 SASS 和 Coffeescript 或类似的东西,所以包含这些的组合会很好。

更新: 我已经决定使用 JQuery 来进行 DOM 操作,并且我也会感谢某种 kickstarter/bootstrapper。

【问题讨论】:

    标签: javascript html css frameworks


    【解决方案1】:
    1. Angular JS - 很棒。 MVC 框架,非常适合快速 SPA

    2. jQuery - DOM 操作 - 适用于效果(淡入淡出、切换等)

      不过不要太依赖它。

    3. Angular JS、jQuery - 有些人认为它们可以很好地协同工作。

    4. Backbone.js

    5. Ember.js

    6. React.js - 使用 JSX,而不是 JS,但几乎相同

    <script type='text/jsx'>
        //JSX
    </script>
    

    【讨论】:

      【解决方案2】:

      取决于什么。 使用你最了解的!

      不过,这里有一些建议...

      羽毛重量

      为了快速、简洁且不过度思考的开发,我建议:

      • Underscore 用于一般 JavaScript 开发
      • BackBone 用于客户端/服务器通信(使用 jQueryZepto.js 进行 AJAX 调用)并设计您的模型和事件总线
      • Jasmine 用于 JS 测试
      • SASS 用于更酷的 CSS
      • HTML 框架,那是什么? :)

      CoffeeScript 确实很棒,如果你想走那条路。如果您对 CoffeeScript 感兴趣,您可能还想看看 Google 的 Dart,但它是最近才发布的。

      重量级(包括电池)

      如果您正在构建一个相当复杂的 Web 应用程序(这里有数千行代码),您需要提高一个档次,在这种情况下,我建议您查看:

      DojoClosure 可以集成到复杂的构建系统中,它们的编译器可以很好地模块化您的代码库,同时保持轻松生成高度优化的可交付成果。它们还都包含自己的模块加载系统,因此您不需要像 Require.JS 这样的额外库,并且如果您使用自定义构建,它们只会加载您明确告诉他们的部分。但请注意,他们肯定更亲力亲为,学习曲线更陡峭。

      Google Closure Tools 绝对是非常全面的,并且包含尽可能多的电池,但它们并不一定会让您的开发变得容易:它们为您提供动力,但您需要知道自己在做什么。

      引导程序/Kickstarters

      一些解决方案可以“启动”您的项目,并为您预先打包上述一些工具的集合,有时还可以为您提供一些自定义功能,因此您可以轻松上手,而无需维护自己的 kickstarter新版本的日期:

      警告:我自己并没有真正广泛地尝试过这些 kickstarter。

      【讨论】:

        【解决方案3】:

        显然,这里的答案很大程度上取决于您正在构建的内容。如果你真的要进入前端工程和制作单页网络应用程序,我建议阅读Addy Osmani's blog。最近,他在博客上发表了很多关于 javascript MVC/MVP/MVVM 系统以及扩展 javascript 应用程序的演讲。

        如果您想要一份洗衣清单,请阅读this article,他给出了他的理想堆栈:

        • Backbone.js 用于轻量级 MV*
        • Require.js + AMD + RequireJS 文本插件(协助外部模板管理)
        • Backbone.js LayoutManager(如果您需要更智能的布局管理)
        • 用于 DOM 操作的 jQuery。
        • Handlebars.js 用于模板,除非您做一些简单的事情,在这种情况下,请选择 Underscore 的微模板
        • r.js 用于处理脚本优化
        • Jasmine + Jenkins 用于测试和 CI
        • Node.js + Express(说到 Node,Miller Medeiros 有一篇关于如何将其用作构建脚本的出色文章)
        • MongoDB 作为 noSQL 数据存储

        这与我自己使用的惊人地接近,我可以证明这些库的质量以及这是一个整体解决方案。

        【讨论】:

        • 不错的名单。它也假设在服务器端有一个 JS 代码(好吧,我猜你不会以任何方式强制使用整个列表)。
        【解决方案4】:

        用于 JavaScript 的 jQuery。除了隐藏 DOM 中浏览器差异的代码 jQuery API 之外,还有许多用于 UI 控件的出色 UI 插件。

        【讨论】:

        • 虽然不是 OP 真正要求的。这只是 Eli 所追求的堆栈的一部分。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-22
        • 1970-01-01
        • 2010-09-06
        • 2011-08-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多