开源web框架_带有酷名称的开源JavaScript和Web框架的词汇表

开源web框架

开源web框架

It's getting to the point where there are so many cool open source projects that I can't keep up. When you add in the currently battle royale of JavaScript projects that are basically just hip sounding words with ".js" added to the end, it's a little overwhelming. Seriously, just pick a word out of the dictionary at random and that's the name of an up and coming JavaScript library.

到了这么多酷炫的开源项目,我无法跟上的地步。 当您添加当前JavaScript项目的战斗风格时,这些内容基本上只是时髦的发音,并在末尾添加了“ .js”,这有点让人不知所措。 认真地说,只是从字典中随机选择一个单词,这就是一个即将推出JavaScript库的名称。

JavaScript MVC框架和库 (JavaScript MVC Frameworks and Libraries )

This is an area that is very interesting but also very not-yet-baked. In the DOM manipulation and CSS selector space, jQuery won. That fight is over. The next big question is client side MVC frameworks. It seems everyone wants to make the next "Rails" framework on JavaScript and while there are some contenders, there's still lots of room for someone to "win."

这是一个非常有趣但尚未成熟的领域。 在DOM操作和CSS选择器领域,jQuery获得了胜利。 战斗结束了。 下一个大问题是客户端MVC框架。 似乎每个人都想在JavaScript上构建下一个“ Rails”框架,尽管有一些竞争者,但仍有很多人可以“取胜”。

DOM manipulation libraries like jQuery are important, but it's clear that making large and rich web applications requires more than just jQuery. More and more applications want smart asynchrony and dynamic loading.

像jQuery这样的DOM操作库很重要,但是很显然,制作大型而丰富的Web应用程序不仅需要jQuery,还需要更多。 越来越多的应用程序需要智能异步和动态加载。

(Reminder: All this IS overwhelming. That doesn't mean you need to know all these frameworks or feel bad that you don't know them all. Just accept that you DON'T know them all. Be OK with that.)

(提醒:这一切都是令人不知所措的。这并不意味着您需要了解所有这些框架,也不必为您不了解所有框架而感到难过。只需接受您不了解它们的全部。对此您可以接受。)

Here's the major players and ones you might want to be familiar with. Remember, these are client side libraries and while they often mention server-side frameworks like node or rails, these are things written in JavaScript that anyone can use.

以下是主要参与者以及您可能想要熟悉的参与者。 请记住,它们是客户端库,尽管它们经常提到服务器端框架,例如节点或导轨,但是这些都是用JavaScript编写的,任何人都可以使用。

  • Ember.js - Attempts to remove tedious boilerplate code. Includes a templating engine (no one will agree on just one), encourages an architecture where the browser does most of the work, supports state-management out of the box. Focus on computed properties, and templates that update themselves.

    Ember.js-尝试删除繁琐的样板代码。 包括一个模板引擎(没有人会同意一个),鼓励一种架构,其中浏览器可以完成大部分工作,支持开箱即用的状态管理。 专注于计算的属性和可自我更新的模板。

  • Underscore .js - A library of more than 60 functions to make JavaScript more fun and easier to use. Provides a layer that will use a modern browser's native implementation of a method while still supporting older browsers. Has iterators like each, map, reduce, etc. In a way, it's like LINQ for JavaScript.

    Underscore .js-一个包含60多个函数的库,使JavaScript更加有趣且易于使用。 提供一个层,该层将使用现代浏览器的方法的本机实现,同时仍支持较旧的浏览器。 具有类似每个的迭代器,映射,缩小等。在某种程度上,它类似于LINQ for JavaScript。

  • JavaScriptMVC - A jQuery-friendly framework that adds functional testing, MVC plugins, documentation generation, dependancy management and build tools.

    JavaScriptMVC-一个对jQuery友好的框架,其中添加了功能测试,MVC插件,文档生成,依赖管理和构建工具。

  • Spine.js - Seems like less than a Backbone (these libraries all play with each other's names). Introduces models and controllers, but for views, requires you use your own template engine. Intends to be super lightweight.

    Spine.js-似乎不如Backbone(这些库都使用彼此的名称)。 介绍了模型和控制器,但对于视图,要求您使用自己的模板引擎。 打算超轻量级。

  • Backbone.js - Everyone loves Backbone. It's the one you'll hear about the most. There's a large community supporting it. Folks have said that large applications can get a little hairy and difficult to manage, though. Lots of great docs and examples.

    Backbone.js-每个人都喜欢Backbone。 这是您最常听到的消息。 有一个庞大的社区支持它。 人们曾说过,大型应用程序可能会有些毛茸茸并且难以管理。 很多很棒的文档和示例。

  • Knockout.js - MVVM on the client rather than MVC. Lots of interesting client-side data-bind expressions. Rich documentation.

    Knockout.js-客户端上的MVVM,而不是MVC。 许多有趣的客户端数据绑定表达式。 丰富的文档。

    • And, wait for it, Knockback.js, a library that bridges the gaps between Knockout and Backbone and encourages you to use both effectively.

      并且,等待它, Knockback.js ,一个弥补Knockout与Backbone之间差距的库,鼓励您有效地使用两者。

    Knockout.js - MVVM on the client rather than MVC. Lots of interesting client-side data-bind expressions. Rich documentation.

    Knockout.js-客户端上的MVVM,而不是MVC。 许多有趣的客户端数据绑定表达式。 丰富的文档。

  • Sammy.js - A very small core library that brings in other adapters and plugins to give you just the parts you need. Focused on developer happiness. Works well with apps that are sitting on top of RESTful JSON server sides.

    Sammy.js-一个非常小的核心库,其中引入了其他适配器和插件,仅提供您所需的部件。 专注于开发人员的幸福感。 与位于RESTful JSON服务器端的应用程序很好地配合使用。

  • Angular.js - Includes templates, two-way data-binding and MVC, again, all on the client. Very small and starting to make a splash.

    Angular.js-再次在客户端上包括模板,双向数据绑定和MVC。 非常小,开始引起轰动。

  • SproutCore - SproutCore seems to be very complete and more prescriptive than other frameworks. It also has a focus on making apps on tablets and other devices. The NPR for Chrome app used them.

    SproutCore -SproutCore似乎非常完善,并且比其他框架更具规范性。 它还着重于在平板电脑和其他设备上制作应用程序。 NPR for Chrome应用使用了它们。

  • Cappuccino - If you like and think in Objective-C, you'll like Cappuccino and Objective-J. Cappuccino is kinda of Cocoa (Mac APIs) for the web.

    卡布奇诺咖啡-如果您喜欢并在Objective-C中思考,您会喜欢卡布奇诺咖啡和Objective-J。 卡布奇诺咖啡有点像可可(Mac API)。

  • Google Closure - Almost doesn't belong in the list as it's a very complete toolkit with a whole worldview, rich library, templates, and lots of extras. You can choose how much you want to embrace, though.

    Google Closure-几乎不属于该列表,因为它是一个非常完整的工具包,具有完整的世界观,丰富的库,模板以及许多其他功能。 不过,您可以选择要包含的数量。

  • ExtJS4 - This is a Sencha product and now on its fourth major release. It includes not only a framework and architecture but also widgets and charts.

    ExtJS4-这是一个Sencha产品,现在是其第四个主要版本。 它不仅包括框架和体系结构,还包括小部件和图表。

  • PureMVC - Another MVC on the client side implementation, but this one was ported from ActionScript. It was originally used on Adobe Air and the like.

    PureMVC-客户端实现上的另一个MVC,但这是从ActionScript移植的。 它最初用于Adobe Air等。

  • Batman.js - Bonus points for the best name. Explicitly embraces CoffeeScript as well as JavaScript. Only 2000 lines and very few extras. Very Rails friendly, prescriptive without being oppressive.

    Batman.js-奖励最佳名字。 明确包含CoffeeScript和JavaScript。 只有2000行,很少有其他功能。 非常Rails友好,说明性而又不压迫。

  • Require.js - A JavaScript file and module loader.

    Require.js-一个JavaScript文件和模块加载器。

  • PrefixFree.js - A nice library that expands all your CSS to use the explosion of vendor prefixes correctly.

    PrefixFree.js-一个不错的库,可扩展您的所有CSS以正确使用大量的供应商前缀。

  • Lawnchair.js - Client-side storage and persistence. Less than a couch, but smaller and outside.

    Lawnchair.js-客户端存储和持久性。 不到沙发,但更小而外面。

  • Mustache - Templates for views, explicitly without logic.

    小胡子-明确无逻辑的视图模板。

var view = {
title: "Joe",
calc: function () {
return 2 + 4;
}
};

var output = Mustache.render("{{title}} spends {{calc}}", view);
  • Handlebars.js - An superset of the Mustache template concept with extra features. A fancier mustache. Ahem, "Handlebar Mustache."

    Handlebars.js-具有额外功能的Mustache模板概念的超集。 小胡子。 Ahem,“车把胡子”。

Also checkout Gordon Hempton's excellent "consumer reports" table on his blog that covers which JavaScript frameworks support which features.

还要在Gordon Hempton的博客上查阅Gordon Hempton出色的“消费者报告”表,其中涵盖了哪些JavaScript框架支持哪些功能。

ASP.NET库,框架和开源项目 (ASP.NET Libraries, Frameworks and Open Source Projects)

You may have heard that ASP.NET MVC 4, ASP.NET Web API and ASP.NET Web Pages v2 (Razor) are all now open source with contributions. They are up on CodePlex using Git. I thought I'd mention some interesting ASP.NET/CLR server side libraries here also as that's the area I work in.  There are thousands of Open Source projects in the .NET space, but I wanted to take a moment and feature these as they are all related and all emerging.

您可能已经听说ASP.NET MVC 4,ASP.NET Web API和ASP.NET Web Pages 2(Razor)现在都是开源的,并且有贡献。 他们使用Git在CodePlex上运行。 我以为我在这里提到了一些有趣的ASP.NET/CLR服务器端库,因为这是我从事的领域。.NET空间中有成千上万个开源项目,但是我想花点时间,并把它们作为特色。它们都是相关的,并且都在涌现。

Just like the JavaScript projects above, these .NET projects are all trying to innovate...trying to make something new and modern and compelling without sacrificing the good things about the past.

就像上面JavaScript项目一样,这些.NET项目都在尝试创新...在不牺牲过去美好事物的情况下,尝试制造出新颖而现代且引人注目的产品。

  • OWIN - This is the "open web interface for .net." It represents the "spec" of the web app function signature. It serves the same purpose as Rack spec on Ruby or WSGI on Python. "The goal of the OWIN interface is to decouple server and application, encourage the development of simple modules for .NET web development, and, by being an open standard, stimulate the open source ecosystem of .NET web development tools."

    OWIN-这是“ .net的开放式Web界面”。 它代表Web应用程序功能签名的“规范”。 它的作用与Ruby上的Rack规范或Python上的WSGI相同。 “ OWIN接口的目标是使服务器与应用程序脱钩,鼓励开发用于.NET Web开发的简单模块,并通过成为开放标准来刺激.NET Web开发工具的开源生态系统。”

  • Gate - An OWIN Reference implementation of utilities, host handlers, and web framework adapters for OWIN. This is essentially glue code, with things like Gate.Hosts.Kayak.dll on one hand, and Gate.Adapters.Nancy.dll on the other, to fit together your stack, e.g. "Kayak->Owin->Nancy"

    Gate -OWIN的实用程序,主机处理程序和Web框架适配器的OWIN参考实现。 这本质上是胶水代码,一方面像Gate.Hosts.Kayak.dll,另一方面像Gate.Adapters.Nancy.dll,以使您的堆栈适合在一起,例如“ Kayak-> Owin-> Nancy”

  • Nancy - A "Sinatra" inspired framework. "Nancy is a lightweight, low-ceremony, framework for building HTTP based services on .Net and Mono. The goal of the framework is to stay out of the way as much as possible and provide a super-duper-happy-path to all interactions."

    南希- A“末日”的启发框架。 “ Nancy是一个轻量级,低礼仪的框架,用于在.Net和Mono上构建基于HTTP的服务。该框架的目标是尽可能避免出现障碍,并为所有人提供一条超级欢乐的道路。互动。”

      • Kayak - A 100% C# HTTP Server assembly that can be embedded in your project. "Kayak is an asynchronous HTTP server written in C#. It has been designed to be easy to embed into a variety of applications. Kayak natively supports the OWIN 1.0 Draft specification."

        Kayak-一种100%C#HTTP Server程序集,可以嵌入到您的项目中。 “ Kayak是用C#编写的异步HTTP服务器。它的设计易于嵌入到各种应用程序中。Kayak本身支持OWIN 1.0 Draft规范。”

      • Firefly - Another 100% C# HTTP server assembly.

        Firefly-另一个100%C#HTTP服务器程序集。

      • Manos - A 100% C# HTTP server in an assembly that is a part of a larger Manos web server + web framework bundle.

        Manos-程序集中的100%C#HTTP服务器,它是较大的Manos Web服务器+ Web框架包的一部分。

        (web frameworks with owin adapters:)

        (带有OWIN适配器的Web框架:)

      • AspNetWebApi - A framework optimized for HTTP APIs and services. Part of the open source ASP.NET Web Stack.

        AspNetWebApi-为HTTP API和服务优化的框架。 开源ASP.NET Web Stack的一部分

      • SignalR -  A socket.io-like message bus that supports realtime communication over Web Sockets, long polling, forever frame, or server sent events. JavaScript and Server-side components.

        SignalR-一种类似于socket.io的消息总线,支持通过Web套接字,长轮询,永久帧或服务器发送的事件进行实时通信。 JavaScript和服务器端组件。

      • Fubu - A MVC-inspired framework with the beginnings of some OWIN support.

        福布-一个MVC风格与一些OWIN支持开端框架。

      • OpenRasta - A development framework for building web-based applications and services. Focused on being RESTful.

        OpenRasta-用于构建基于Web的应用程序和服务的开发框架。 专注于RESTful。

      There is no question that I've missed some. Leave them in the comments and I'll keep this post updated. Projects for this list should be of some renown and be pushing the envelope in some notable way.

      毫无疑问,我已经错过了一些。 将其保留在评论中,我将使该帖子保持最新。 此列表的项目应享有一定声誉,并以某种显着方式推动发展。

      Big thanks to Louis DeJardin for his help and bootstrapping the list.

      非常感谢Louis DeJardin的帮助和帮助。

      翻译自: https://www.hanselman.com/blog/the-big-glossary-of-open-source-javascript-and-web-frameworks-with-cool-names

      开源web框架

      • 0
        点赞
      • 0
        收藏
        觉得还不错? 一键收藏
      • 0
        评论
      评论
      添加红包

      请填写红包祝福语或标题

      红包个数最小为10个

      红包金额最低5元

      当前余额3.43前往充值 >
      需支付:10.00
      成就一亿技术人!
      领取后你会自动成为博主和红包主的粉丝 规则
      hope_wisdom
      发出的红包
      实付
      使用余额支付
      点击重新获取
      扫码支付
      钱包余额 0

      抵扣说明:

      1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
      2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

      余额充值