网上关于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. python编译环境发掘——从IDLE到sublime到pycharm到Anaconda

    一个好的编译器对于我们处理日常的科研很关键,好的编译器无论是从界面,字体风格,提示,调试等各方面都能从用户角度出发,提供最好的使用体验.Python本身自带的IDLE或者在CMD里进行操作和调试,对于 ...

  2. cf703B Mishka and trip

    B. Mishka and trip time limit per test 1 second memory limit per test 256 megabytes input  standard ...

  3. SRM 406(1-250pt, 1-500pt)

    DIV1 250pt 题意:有几家宠物店,vecort<int>A表示每家宠物店含有小狗占小狗总数的百分比.现在要做扇形统计图统计每家店的小狗百分比,如下图,问作出来的扇形统计图中最多含有 ...

  4. Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python

    Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python 前面举例了Selenium+Eclipse+Junit+TestNG自动化测试环境的搭建,在前一篇的基础上, ...

  5. powershel连接数据库监控数据库状态并发报警邮件

    function Get-DatabaseData {    [CmdletBinding()]    param (        [string]$connectionString,        ...

  6. Swap[HDU2819]

    SwapTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission ...

  7. linux下ssh免密登陆

    如果 有A.B两台主机: 要实现的效果: A主机ssh登录B主机无需输入password: 加密方式选 rsa|dsa均能够.默认rsa 做法: 1.登录A主机 2.ssh-keygen -t [rs ...

  8. 【Cocos2d-X开发学习笔记】第29期:游戏中数据的存储(上)

    本系列学习教程使用的是cocos2d-x-2.1.4(最新版为3.0alpha0-pre) ,PC开发环境Windows7,C++开发环境VS2010 一般游戏中都需要记录玩家数据,便于玩家下次登录时 ...

  9. [Javascript] Intro to the Web Audio API

    An introduction to the Web Audio API. In this lesson, we cover creating an audio context and an osci ...

  10. 从零開始开发Android版2048 (五) 撤销的实现

    本篇的内容是,在前一篇的基础上添�了撤销的功能.撤销事实上就是将当前的用户界面恢复到这次滑动值前的样子.我实现撤销的主要原理是,将每次滑动后界面上的格子和相应的数字记录下来,当然还有分数,把这些数据写 ...