HTML的Web框架 AngularJS

2011-01-20  来源:本站原创  分类:开源  人气:747 

AngularJS 网站 : https://angularjs.org/

Angular JS (Angular.JS) 是一组用来开发Web页面的框架、模板以及数据绑定和丰富UI组件。它支持整个开发进程,提供web应用的架构,无需进行手工DOM操作。 AngularJS很小,只有60K,兼容主流浏览器,与 jQuery 配合良好。

HTML的Web框架 AngularJS

数据绑定可能是AngularJS最酷最实用的特性。它能够帮助你避免书写大量的初始代码从而节约开发时间。一个典型的web应用可能包含了80%的代码用来处理,查询和监听DOM。数据绑定使得代码更少,你可以专注于你的应用。

传统来说,当model变化了。 开发人员需要手动处理DOM元素并且将属性反映到这些变化中。这个一个双向的过程。一方面,model变化驱动了DOM中元素变化,另一方面,DOM元素的变化也会影响到Model。这个在用户互动中更加复杂,因为开发人员需要处理和解析这些互动,然后融合到一个model中,并且更新View。这是一个手动的复杂过程,当一个应用非常庞大的时候,将会是一件非常费劲的事情。

特性二:模板

在AngularJS中,一个模板就是一个HTML文件。但是HTML的内容扩展了,包含了很多帮助你映射model到view的内容。

HTML模板将会被浏览器解析到DOM中。DOM然后成为AngularJS编译器的输入。AngularJS将会遍历DOM模板来生成一些指导,即,directive(指令)。所有的指令都负责针对view来设置数据绑定。

我们要理解AuguarJS并不把模板当做String来操作。输入AngularJS的是DOM而非string。数据绑定是DOM变化,不是字符串的连接或者innerHTML变化。使用DOM作为输入,而不是字符串,是AngularJS区别于其它的框架的最大原因。使用DOM允许你扩展指令词汇并且可以创建你自己的指令,甚至开发可重用的组件。

特性三:MVC

针对客户端应用开发AngularJS吸收了传统的MVC基本原则。MVC或者Model-View-Controll设计模式针对不同的人可能意味不同的东西。AngularJS并不执行传统意义上的MVC,更接近于MVVM(Model-View-ViewModel)。

特性四:依赖注入(Dependency Injection,即DI)

AngularJS拥有内建的依赖注入子系统,可以帮助开发人员更容易的开发,理解和测试应用。

DI允许你请求你的依赖,而不是自己找寻它们。比如,我们需要一个东西,DI负责找创建并且提供给我们。

特性五:Directives(指令)

指令是我个人最喜欢的特性。你是不是也希望浏览器可以做点儿有意思的事情?那么AngularJS可以做到。
指令可以用来创建自定义的标签。它们可以用来装饰元素或者操作DOM属性。

相关文章
  • HTML的Web框架 AngularJS 2011-01-20

    AngularJS 网站 : https://angularjs.org/ Angular JS (Angular.JS) 是一组用来开发Web页面的框架.模板以及数据绑定和丰富UI组件.它支持整个开发进程,提供web应用的架构,无需进行手工DOM操作. AngularJS很小,只有60K,兼容主流浏览器,与 jQuery 配合良好. 数据绑定可能是AngularJS最酷最实用的特性.它能够帮助你避免书写大量的初始代码从而节约开发时间.一个典型的web应用可能包含了80%的代码用来处理,查询和监

  • Web框架 Jdon Framework 2008-09-07

    Jdon Framework 网站 : http://www.jdon.com/jdonframework/ Jdon Framework(简称JF)是一套适合开发中小型J2EE/JavaEE应用系统的轻量Web框架(Lightweight Java Web Framework).是国人独立开发的中国人自己的框架产品,2005年入选全球SUN公司网站java.net正式企业应用目录.经过多年发展和众多用户的使用及其完善,JF已经发展成为一套成熟的.面向对象的.基于构件(基于组件)的轻量快速开发框

  • 微型Web框架(Ruby) Rack 2008-11-21

    Rack 网站 : http://rack.rubyforge.org/ Rack为使用Ruby开发web应用提供了一个最小的模块化和可修改的接口.用可能最简单的方式来包装HTTP请求和响应,它为web 服务器,web框架和中间件的API进行了统一并提纯到了单一的方法调用. Rack 可以用gem 方式安装: gem install rack 授权协议: 未知 开发语言: Ruby 操作系统: 跨平台

  • 通用WEB框架 Webx 2011-02-19

    Webx 网站 : http://openwebx.org/ Webx是建立在Java Servlet API基础上的的通用WEB框架.用Webx搭建的应用可以运行在任何一个标准的WEB应用服务器上面:Tomcat.Jetty.Jboss.Weblogic--. Webx是一个在阿里巴巴集团内部广泛使用的,层次化.模块化的一个Web框架. Webx是基于经典MVC设计模式的WEB框架,推崇页面驱动和约定胜于配置的理念. Webx是一个基于Spring的组件框架.组件是一个软件包,它可以被其它组件

  • lisp web框架 restas 2012-06-09

    restas 网站 : https://github.com/archimag/restas 基于hunchentoot的web框架(Common Lisp) 直接可以用quicklisp安装 (ql:quickload :cl-who) (ql:quickload :restas) 授权协议: LGPL 开发语言: Lisp 查看源码» 操作系统: 跨平台

  • Smalltalk 的 Web 框架 Iliad 2012-11-26

    Iliad 网站 : http://www.iliadproject.org/ Iliad 不是一个传统的 Web 框架,Iliad 重度基于可重用的有状态的 Widgets 部件,可让你轻松构建强大的动态应用.可让你在用户点击某链接或者提交表单时触发 Smalltalk 代码. 授权协议: MIT 开发语言: Smalltalk 操作系统: Linux

  • 响应式 Web 框架 Helium 2013-01-24

    Helium 网站 : https://github.com/cbrauckmuller/helium Helium 是一个前端响应式 Web 框架,用于使用 HTML5 + CSS3 快速制作原型以及开发产品.Helium 很像 Twitter Bootstrap 和 ZURB Foundation,事实上 Helium 使用了二者不少的代码.但与这两个框架不同的是,Helium 设计更加轻量级,而且更容易修改.Helium 只有30k 左右,而 Bootstrap 有 100k 之多,ZUR

  • 轻量级Python Web框架 Mole 2013-03-08

    Mole 网站 : https://github.com/JoneXiong/Mole Mole 是纯python实现的一个极其轻量级的wsgi web框架.适合于喜欢DIY的人士,自己组装或者搭配web各个模块 (如:前端模板引擎,后端数据ORM,后端基础架子等等),代码参考了开源项目Bottle,Mole虽小但"五脏俱全", 本身不依赖于任何第三方模块.可以极其快捷和轻便地搭建一个demo Web系统.如果自己扩充功能模块再搭配其他 服务器后端(Nginx.Apache或uv-we

  • 58同城的web框架 Argo 2013-03-18

    Argo 网站 : https://github.com/58code/Argo Argo是开源的web框架,目前Argo支撑着58同城几乎所有的web站点,包括wap和手机端的访问等,现在wf每天处理10亿级的请求.经过长时间的运作与运行,证明Argo是一个可靠的.高效的web框架. Argo在wf做了大量优化和重构,以适应各组织软件开发的个性化需求,提升了系统性能,具有更好的可扩展性.Argo的开源反过来也促进wf2.0的开发. 哲学观 (philosophy) 约定优于配置,减少软件开发人

  • 简单介绍Python的轻便web框架Bottle 2013-11-04

    这篇文章主要介绍了Python的轻便web框架Bottle,因其注重轻便的设计,与Flask一样,Bottle框架的人气同样也非常高,需要的朋友可以参考下 基本映射 映射使用在根据不同URLs请求来产生相对应的返回内容.Bottle使用route() 修饰器来实现映射. from bottle import route, [email protected]('/hello')def hello(): return "Hello World!"run() # This starts the HTTP s

  • Go 语言的 Web 框架 Martini 2013-11-21

    Martini 网站 : https://github.com/go-martini/martini Martini 是一个非常新的 Go 语言的 Web 框架,使用 Go 的 net/http 接口开发,类似 Sinatra 或者 Flask 之类的框架,你可使用自己的 DB 层.会话管理和模板. 特性: 使用非常简单 无侵入设计 可与其他 Go 的包配合工作 超棒的路径匹配和路由 模块化设计,可轻松添加工具 大量很好的处理器和中间件 很棒的开箱即用特性 完全兼容 http.HandlerFu

  • Node.js 的 Web 框架 KrakenJS 2013-11-24

    KrakenJS 网站 : http://krakenjs.com/ Kraken 是 Paypal 公司的一个开源的 Node.js 的 Web 框架. 目录结构: /config - Application and middleware configuration /controllers - Controllers /lib - Custom developer libraries and other code /locales - Local-based content /models

  • Python Web框架Pylons中使用MongoDB的例子 2013-12-18

    这篇文章主要介绍了Python Web框架Pylons中使用MongoDB 的例子,大家参考使用 Pylons 经过漫长的开发,终于放出了 1.0 版本.对于正规的产品开发来说,1.0 版本的意义很大,这表明 Pylons 的 API 终于稳定下来了. Pylons 虽是山寨 Rails 而生,但作为一个纯 Python 的 Web 框架,它有一个鲜明的特点:可定制性强.框架每一层都没重新发明轮子,而是尽量整合现有的 Python 库.在 MVC 的 Model 层,Pylons 默认支持 SQ

  • Node.js 的 Web 框架 Koa 2013-12-20

    Koa 网站 : http://koajs.com/ Koa 是下一代的 Node.js 的 Web 框架.由 Express 团队设计.旨在提供一个更小型.更富有表现力.更可靠的 Web 应用和 API 的开发基础. Koa可以通过生成器摆脱回调,极大地改进错误处理.Koa核心不绑定任何中间件,但提供了优雅的一组可以快速和愉悦地编写服务器应用的方法. 示例代码: var koa = require('koa'); var app = koa(); // logger app.use(funct

  • Python Web框架Flask中使用七牛云存储实例 2014-01-04

    这篇文章主要介绍了Python Web框架Flask中使用七牛云存储实例,本文也对七牛云存储Python SDK的一个使用示例,需要的朋友可以参考下 对于小型站点,使用七牛云存储的免费配额已足够为站点提供稳定.快速的存储服务 七牛云存储已有Python SDK,对它进行简单封装后,就可以直接在Flask中使用了,项目代码见GitHub上Flask-QiniuStorage. 使用示例代码: from flask import Flask from flask_qiniustorage impor

  • 轻量级高性能移动web框架 Javascript Mobile Framework 2014-09-01

    Javascript Mobile Framework 网站 : http://alloyteam.github.io/Spirit/modules/JM/index.html JM(Javascript Mobile Framework) 是新一代轻量级高性能移动web框架,由腾讯前端团队AlloyTeam经项目实践积累沉淀而成.为拥抱移动互联网全新设计,专注为移动web项目,整个框架压缩后只有36K. 新的移动平台,给web带来更多的机会,同时也带来更多的挑战.原PC端的各种浏览器兼容,已经

  • Python Web框架Flask中使用百度云存储BCS实例 2014-10-12

    这篇文章主要介绍了Python Web框架Flask中使用百度云存储BCS实例,本文调用了百度云存储Python SDK中的相关类,需要的朋友可以参考下 对于部署在百度应用引擎BAE上的项目,使用百度云存储BCS(Baidu Cloud Storage)是不错的存储方案. 百度云存储已有Python SDK,对它进行简单封装后,就可以直接在Flask中使用了,项目代码见GitHub上Flask-BCS. 使用示例代码: from flask import Flask from flask_bcs

  • 14款NodeJS Web框架推荐 2014-11-03

    这篇文章主要介绍了14款NodeJS Web框架推荐,其中大多数框架都是基于node.js的Express实现,需要的朋友可以参考下 在几年的时间里,Node.js逐渐发展成一个成熟的开发平台,吸引了许多开发者.有许多大型高流量网站都采用Node.js进行开发,像PayPal,此外,开发人员还可以使用它来开发一些快速移动Web框架. 下面就介绍14款基于Node.js的Web应用框架,大家不妨过来看看有没有适合你的那一款. 1.Primus Primus,是Transformer的创造者,并且也

  • Python Web框架Flask中使用新浪SAE云存储实例 2014-12-21

    这篇文章主要介绍了Python Web框架Flask中使用新浪SAE云存储实例,本文是对SAE云存储的简单封装,需要的朋友可以参考下 对于部署在新浪应用引擎SAE上的项目,使用新浪SAE云存储是不错的存储方案. 新浪SAE云存储仅能在SAE环境中正常使用,对它进行简单封装后,可以直接在Flask中使用,项目代码见GitHub上Flask-SaeStorage. 使用示例代码: from flask import Flask from flask_saestorage import SaeStor

  • Scala 的 Web 框架 Finatra 2014-12-24

    Finatra 网站 : http://twitter.github.io/finatra/ Finatra是一个scala web框架.灵感来自scalatra,由Twitter-Server驱动. class HelloWorld extends Controller { get("/hello/:name") { request => val name = request.routeParams.get("name").getOrElse("d