选用TypeScript开发AngularJS2[通俗易懂]

选用TypeScript开发AngularJS2

大家好,又见面了,我是全栈君。

  AngularJS开发模式可以有多种方案,本人选择以下的方案目标解决下面几个目的:

     1. 强类型语言使用惯了,养成了一些习惯,在javascript这在弱类型语言开发中常常掉坑。

     2.面向对象的那套思维模式已经根深蒂固,javascript的面向对象是模拟实现的,好多地方绕不过弯在所难免。

        基于上面这两个理由,选择TypeScript语言,水到渠成。对于从java转到前台开发的人来说,简直是意外啊。

     3.前端模块化开发一直是我这样的懒人的理想。内心真实话是这样:javascript、css让界面渲染和控制数据分开,回归当年CS应用开发模式,或许也是萦绕心头很久的一种幻想吧。

     4.MVVM模式让前端进入有搞头的新时代。

 

简单写点攻略,抛砖引玉:

首先,TypeScript相关

     TypeScript仍然是一种解释型语言,TypeScript语言的源码编译后成了符合AngularJS2框架标准的Javascript代码,本质上就是要将TypeScript源码编译成Javascript代码。另外Nodejs是基于Chrome内核的,这样可能某些地方直接跳过javascript,直接调用Chrome内核的API也是有可能存在的。题外话,国内也出现了若干浏览器,什么QQ浏览器、UC浏览器等等,根据传闻也不过是拿了人家的内核,在此基础上构造了界面和小动作,然后就堂而皇之地吹起来说是国产浏览器了,这些都是狗皮膏药。有本事拿着HTMIL5、ES6等等标准实现一个自己的浏览器内核,那才是真正的浏览器。

     TypeScript语言的开发环境,首选当然是微软定身量做的Visual Code,毕竟TypeScript也是微软开源的一种语言嘛。说到这儿,很多事情就是明白的了,语言本身没有什么特别,只有好用不好用的区别,解析后的目标代码跟语言就没什么关联了,而目标代码调用的API后面依然可以是藏着很多密码的,如此,自己实现一遍浏览器的内核还是很有必要的。TypeScript的开发工具还可以选择Atom、Sublime Text等,详见:http://www.typescriptlang.org/index.html#download-links

 

    AngularJS用TypeScript开发,需要搭建一个脚手架。脚手架这个词用在这儿,最恰当不过了。因为它基于NodeJS环境开发、编译等,同时使用NodeJS生态里的各种工具,比如npm包管理工具等。因此要将这些基本环境(主要是一些配置文件)事先生成。常用的脚手架有Angular-SeedAngular-cli

     Angular-seed采用Gulp框架编译TypeScript,据说这个Gulp也是很牛叉的框架,采用非阻塞流来处理要编译源码字符流,有空确实要深入了解一下。

     Angular-cli是AngularJS框架原生的脚手架,并且当下似乎已经完成了1.0版本,然后移动到了@angular/cli中,和AngularJS融为一体了。因此安装Angular-cli的命令已经改成:

    

npm install -g @angular/cli

 

详情请看: https://github.com/angular/angular-cli

 

     脚手架搭建好,就可以正式干活。脚手架搭建运行如下命令:

    

    

ng new PROJECT-NAME
cd PROJECT-NAME
ng serve

   

     就这三板斧,新建你的工程,新建成功之后,文件夹下就有了各种配置文件,当然若觉得不够,则继续添加。

     另外,ng命令还可以自动新建模块、组件、指令等模板文件,当然也可以自己手工新建这些文件。详情请见: https://github.com/angular/angular-cli#generating-components-directives-pipes-and-services

    在OSCHINA的码云上开了一个项目,你可以直接克隆下来作为脚手架: https://git.oschina.net/dayu/angularjs2-lib-base

    若有更多想法,不妨提交上来大家共享共利之。

 

 

 

 

 

转载于:https://my.oschina.net/dayu6/blog/1093881

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/108386.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • MySQL数据库常见面试题总结

    MySQL数据库常见面试题总结

    2021年4月10日
    134
  • android bindservice方法,android BindService[通俗易懂]

    android bindservice方法,android BindService[通俗易懂]1、绑定服务1.1绑定方式通过服务链接(ServiceConnection)或直接获取Service中状态和数据信息服务链接能够获取Service的对象,因此绑定Service的组件可以调用Service中的实现的函数使用Service的组件通过Context.bindService()建立服务链接,通过Context.unbindService()停止服务链接如果在绑定过程中Service没有启…

    2022年5月1日
    190
  • HP P2055d激光打印机PCL XL error的解决

    HP P2055d激光打印机PCL XL error的解决

    2021年11月29日
    105
  • Servlet-JSP入门

    Servlet-JSP入门JSP作用:主要作用是代替Servlet程序回传html页面的数据。因为Servlet程序回传html页面数据是一件非常繁琐的事情,开发成本和维护成本都很高。一般的Servlet回传页面如下protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { resp.setContentType(“text/html;charset=U

    2022年8月8日
    4
  • js三目运算符使用及嵌套

    js三目运算符使用及嵌套三目运算符基础格式:条件?a:b;下面根据一个实例来解释用法 vara=10;varb=5;varc=a>b?a:b;//定义一个c,如果a>b,那么取冒号前面的值(这里为a),如果a<=b,那么取冒号后面的值(这里为b)console.log(c);作用:三目运算符可…

    2022年6月17日
    54
  • python开两个守护线程_hdfs守护线程

    python开两个守护线程_hdfs守护线程**守护线程**是区别于用户线程哈,**用户线程**即我们手动创建的线程,而守护线程是程序运行的时候在后台提供一种**通用服务的线程**。垃圾回收线程就是典型的守护线程。

    2022年10月15日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号