网上关于AngularJs(https://angularjs.org/)的介绍与好处已经相当多了,大家可以自己去搜索看看,很多很多。

1.疯狂的原生的App开发

在这里我主要谈一下我自己为什么要使用AngularJs。2011年我开始接触IOS编程,发现苹果的App体验真的非常棒,自己也跟着教程做了几个应用得到了身边的朋友的一致好评论,随后接触了一些企业老板,由于我只会IOS开发,所以答应他们先从苹果端先开始,若运行不错,再开发Android版本,项目没有花太久就完成了,Boss们也很满意,但随之而来就是要开发Android版本,Winphone版本,苹果还好当初也只有一个Ihone4,Iphone4s,屏幕都是3.5的屏,Android就不一样了,2.0-6.0的屏若干,但解决办法是有的,不同的分辨率让美工做不同尺寸的图片,话说问题也解决了,我为什么还要选择AngularJs呢?

最关键的问题就是成本与时间!

  • 一个苹果IOS开发要学会ObjectC,一个Android开发要学会Java,我一个.NET程序员要学习这么多的语言,成本不小啊;
  • 企业的应用通常不复杂,说白了移动应用就是一个小型的企业展示网站(当然根据功能来),一个简单的应用你一下子收人家几万,甚至几十万,人家傻啊;
  • 企业通常会频繁的更新与改版,这对Android与IOS开发与维护来说,简直就是一场灾难,本来收的钱就少,这一改就是动全身啊;

2.基于Html5的hybird mobile apps开发

能不能有这样一个解决方案,我开发一套系统就能在三个主流移动平台上运行呢,以后改版的事情说白了就是网页那套原理,服务器的站点内容换了,用户手机上的版面也换了,这样对于商家与我们开发人员来说那是多么的美好,节约了开发时间不说,还赚了不少$,省下的时间可以帮妈妈洗洗碗,陪朋友逛逛街,看看电影,打打游戏…

具体是哪一天也记不清楚了,有一次在网上无意发现了一个网站http://ionicframework.com/(目前还是beta版,已很强大)可以高仿原生App开发,至少样子做到了,案例我们以后会专门介绍。先上官方的一些效果:http://codepen.io/ionic/tag/ionic/,不得了这么好的效果,是用什么实现的呢,把官方网站好好阅读了一下,原来是基于AngularJs自己包装了若干的Directive,关于AngularJs的介绍我们会在接下来慢慢和大家分享。一个页面就可以展示出CRUD,一个页面就能把一个企业展示应用体现出来,又是MVVM的,又是模型双向绑定,太多太多的好处,以后慢慢说!

有人说我不用AngularJs+Ionicframework不也照样开发出一套html5移动界面,而且效果很好啊,这个我不否认,BAT公司都有自己的JS框架与Css框架,对于我等这些草根程序员用一个高富帅的JS框架与CSS框架,省了多少时间,最关键的是用户体验好啊,21世纪说的最多的词就是用户体验了(闲话,路自己选 的,不强求一定用AngularJs和Ionicframework)!

3.小结

这就是我为什么选择用AngularJs的原因,一次开发多个版本享用,省去了学习java,oc,.net的成本,美工制作一次界面自适应各种屏幕浏览器,您为什么不去选择呢?

001.为什么选择用AngularJs开发?的更多相关文章

  1. 实践分享:开始用Cordova+Ionic+AngularJS开发App

    http://www.cocoachina.com/webapp/20150707/12395.html 本文是一篇关于我本人在使用Cordova+Ionic以及AngularJS开发移动App的过程 ...

  2. AngularJS 开发中常犯的10个错误

    简介 AngularJS是目前最为活跃的Javascript框架之一,AngularJS的目标之一是简化开发过程,这使得AngularJS非常善于构建小型app原型,但AngularJS对于全功能的客 ...

  3. 20个angularjs开发工具

    AngularJS是那些渴望以动态方式来设计web app的web开发人员最偏爱的框架之一.如果你是一个希望启动AngularJS项目的开发人员,那么你可能需要帮助来挑选出趁手的工具…… 在Value ...

  4. AngularJS开发人员最常犯的10个错误

    简介AngularJS是目前最为活跃的Javascript框架之一,AngularJS的目标之一是简化开发过程,这使得AngularJS非常善于构建小型app原型,但AngularJS对于全功能的客户 ...

  5. AngularJs开发——控制器间的通信

    AngularJs开发——控制器间的通信 指令与控制器之间通信,无非是以下几种方法: 基于scope继承的方式 基于event传播的方式 service的方式 基于scope继承的方式 最简单的让控制 ...

  6. AngularJS开发最常犯的10个错误

    简介 AngularJS是目前最为活跃的Javascript框架之一,AngularJS的目标之一是简化开发过程,这使得AngularJS非常善于构建小型app原型,但AngularJS对于全功能的客 ...

  7. 为什么选择H5游戏开发定制?

    为什么选择H5游戏开发定制? 随着微信H5游戏推广带来的显著效果,越来越多的商家已经加入到游戏营销的队伍中来, 对H5小游戏有了解的商家都知道,[模板游戏]的价格往往低于[定制游戏]的价格,可是为什么 ...

  8. 使用 AngularJS 开发一个大规模的单页应用(SPA)

      本文的目标是基于单页面应用程序开发出拥有数百页的内容,包括认证,授权,会话状态等功能,可以支持上千个用户的企业级应用. 下载源代码 介绍 (SPA)这样一个名字里面蕴含着什么呢? 如果你是经典的S ...

  9. AngularJS开发指南16:AngularJS构建大型Web应用详解

    AngularJS是由Google创建的一种JS框架,使用它可以扩展应用程序中的HTML功能,从而在web应用程序中使用HTML声明动态内容.在该团队工作的软件工程师Brian Ford近日撰写了一篇 ...

随机推荐

  1. 【动态规划】HDU 5492 Find a path (2015 ACM/ICPC Asia Regional Hefei Online)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5492 题目大意: 一个N*M的矩阵,一个人从(1,1)走到(N,M),每次只能向下或向右走.求(N+ ...

  2. CodeForces 689C  Mike and Chocolate Thieves

    题目链接:http://acm.hust.edu.cn/vjudge/problem/visitOriginUrl.action?id=412145 题目大意:给定一个数字n,问能不能求得一个最小的整 ...

  3. vue.js学习笔记(一):什么是mvvm框架,vue.js的核心思想

    一:MVVM框架 MVVM框架的应用场景:  1.针对具有复杂交互逻辑的前端应用 2.提供基础的架构抽象 3.提供ajax数据持久化,保证前端用户体验 二:vue.js的核心思想 (一):数据驱动 ( ...

  4. 分布式锁 基于Redis

    分布式锁的实现(基于Redis) 参考:http://www.jb51.net/article/75439.htm http://www.linuxidc.com/Linux/2015-01/1118 ...

  5. smail 语法参考

    Dalvik opcodes Author: Gabor Paller Vx values in the table denote a Dalvik register. Depending on th ...

  6. SQL Server不区分大小写的问题

    SQL Server不区分大小写的问题   默认情况下,SQL Server不区分大小写,如果数据表TEST的TNAME列中有数据“abcd”和“Abcd”, 如果使用查询语句:select * fr ...

  7. iOS 类似美团外卖 app 两个 tableView 联动效果实现

    写在前面 首先声明哈,不是广告,我就是用的时候觉得这个功能比较好玩,就想着实现了一下.效果如图: 接下来简单的说一下思路吧~ 大体思路 可能我们看到这种功能的实现的时候,首先想着的是我在这个控制器中左 ...

  8. 自定义控件(视图)2期笔记09:自定义视图之继承自ViewGroup(仿ViewPager效果案例)

    1. 这里我们继承已有ViewGroup实现自定义控件,模拟出来ViewPager的效果,如下: (1)实现的效果图如下: (2)实现步骤: • 自定义view继承viewGroup • 重写onLa ...

  9. 对require.js 的使用进行总结

    一.为什么要使用require.js 首先一个页面如果在加载多个js文件的时候,浏览器会停止网页渲染,加载文件越多,网页失去响应的时间就会越长:其次,由于js文件之间存在依赖关系,因此必须严格保证加载 ...

  10. jq之简单表单验证

    <body> <form method="post" action=""> <div class="int"& ...