Angular4+ 带给我的惊喜

本贴最后更新于 2170 天前,其中的信息可能已经水流花落

单页应用技术的对比

我相信大家对于单页应用其实并不陌生,因为现在大量的 App 软件就是通过单页应用开发出来的。

从技术栈来看,单页应用可以使用许多服务器技术,使得后端(服务器端)得以解放,通过下图就可以很好的看出变化。

对比图
对于单页应用,我们可以通过 JQuery,React,Vue,以及 Angular4+(这里的 Angular4+ 表示 Angular4 以及以上版本,也不是 AngularJs,后面不在多做说明)

上面说的这么多技术,为什么我最喜欢使用的还是 Angular4+,因为:

  1. 开发用的是 TypeScript,它是 Javascript 的一个超集,它有类,有模块,有函数的概念,同时它既可以是动态的类型,可以是强类型的,这个非常好,这些特点比 java8 还要先进。
  2. 不用太多关心 Webpack 这一类打包工具的配置,很节省时间,都由它的 CLI 帮你搞定了,当然一些特殊的,还是需要调整对应的编译脚本就行,而且使用 --proc 参数编译出来的文件会压缩的非常小。
  3. 官网也非常给力,这一点 Google 确实做的很好,大家只需要认真的跟着它的官方教程做一遍就可以很轻松的入门了(最多半天时间)。
  4. 很多人都喜欢用 Vue,但在比较复杂的项目中,经常会用到响应式编程,在响应式编程方面它就不如 React 和 Angular4+ 了,还要一些其它的方面,比如安全,测试,国际化,服务,路由,服务器渲染方面,angular4+ 都是支持的最好的(这里不多做解释)。

问题来了,为什么 Angular4+ 被我说的这么好,为什么国内使用情况比较少呢,其实最关键的问题,大家都没有太多的时间去尝试新的(害怕里面的坑太多),什么简单、方便就用什么,不需要太多的学习时间,还有就是很多同学被之前的 AngularJs 坑了(已经产生心理阴影),从 Angular2+ 开始是一门新的技术,使得学习成本大增,所以很多人就选择放弃,这也是人之常情。

总结

最后,是我对使用 Angular4+ 以后的一个总结。从项目结构来看,Angular4+ 将开发文档分成了 Html(模板),CSS 以及 Typescript,核心在 Typescipt 上。它可以让你的模块、组件有自己的控制级别,最小的界别应该就是一个标签的属性了,例如,我给 p 标签增加一个 ai 属性,表示它是 p 标签的一个人工智能的属性特征,使用的人在 p 标签中写一个 ai=“true”,就可以实现非常复杂的效果,使用的人根本可以不用了解细节;最大的界别的就是模块,这个里面可以包含组件,对于团队开发来说真的很方便。最后就是,它是渐进式应用,免安装,可离线使用,可借助 Ionic、NativeScript 和 React Native 构建原生移动应用,或者生成 windows、macos、linux 的跨平台的桌面程序。

  • Angular

    AngularAngularJS 的新版本。

    26 引用 • 66 回帖 • 531 关注
  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    138 引用 • 268 回帖 • 147 关注
  • HTML

    HTML5 是 HTML 下一个的主要修订版本,现在仍处于发展阶段。广义论及 HTML5 时,实际指的是包括 HTML、CSS 和 JavaScript 在内的一套技术组合。

    103 引用 • 294 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • shuiniu

    angular 老用户了,喜欢他完备工程化支持和方法论,多交流

推荐标签 标签

  • 996
    13 引用 • 200 回帖 • 2 关注
  • 单点登录

    单点登录(Single Sign On)是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

    9 引用 • 25 回帖
  • 大疆创新

    深圳市大疆创新科技有限公司(DJI-Innovations,简称 DJI),成立于 2006 年,是全球领先的无人飞行器控制系统及无人机解决方案的研发和生产商,客户遍布全球 100 多个国家。通过持续的创新,大疆致力于为无人机工业、行业用户以及专业航拍应用提供性能最强、体验最佳的革命性智能飞控产品和解决方案。

    2 引用 • 14 回帖 • 2 关注
  • MyBatis

    MyBatis 本是 Apache 软件基金会 的一个开源项目 iBatis,2010 年这个项目由 Apache 软件基金会迁移到了 google code,并且改名为 MyBatis ,2013 年 11 月再次迁移到了 GitHub。

    170 引用 • 414 回帖 • 405 关注
  • 又拍云

    又拍云是国内领先的 CDN 服务提供商,国家工信部认证通过的“可信云”,乌云众测平台认证的“安全云”,为移动时代的创业者提供新一代的 CDN 加速服务。

    21 引用 • 37 回帖 • 519 关注
  • 尊园地产

    昆明尊园房地产经纪有限公司,即:Kunming Zunyuan Property Agency Company Limited(简称“尊园地产”)于 2007 年 6 月开始筹备,2007 年 8 月 18 日正式成立,注册资本 200 万元,公司性质为股份经纪有限公司,主营业务为:代租、代售、代办产权过户、办理银行按揭、担保、抵押、评估等。

    1 引用 • 22 回帖 • 703 关注
  • DevOps

    DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

    45 引用 • 25 回帖 • 1 关注
  • Mobi.css

    Mobi.css is a lightweight, flexible CSS framework that focus on mobile.

    1 引用 • 6 回帖 • 708 关注
  • frp

    frp 是一个可用于内网穿透的高性能的反向代理应用,支持 TCP、UDP、 HTTP 和 HTTPS 协议。

    16 引用 • 7 回帖
  • 小说

    小说是以刻画人物形象为中心,通过完整的故事情节和环境描写来反映社会生活的文学体裁。

    28 引用 • 108 回帖
  • Vue.js

    Vue.js(读音 /vju ː/,类似于 view)是一个构建数据驱动的 Web 界面库。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。

    262 引用 • 664 回帖 • 2 关注
  • 分享

    有什么新发现就分享给大家吧!

    244 引用 • 1762 回帖
  • Logseq

    Logseq 是一个隐私优先、开源的知识库工具。

    Logseq is a joyful, open-source outliner that works on top of local plain-text Markdown and Org-mode files. Use it to write, organize and share your thoughts, keep your to-do list, and build your own digital garden.

    4 引用 • 55 回帖 • 2 关注
  • 支付宝

    支付宝是全球领先的独立第三方支付平台,致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验,及转账收款/水电煤缴费/信用卡还款/AA 收款等生活服务应用。

    29 引用 • 347 回帖
  • 游戏

    沉迷游戏伤身,强撸灰飞烟灭。

    171 引用 • 813 回帖 • 1 关注
  • 链书

    链书(Chainbook)是 B3log 开源社区提供的区块链纸质书交易平台,通过 B3T 实现共享激励与价值链。可将你的闲置书籍上架到链书,我们共同构建这个全新的交易平台,让闲置书籍继续发挥它的价值。

    链书社

    链书目前已经下线,也许以后还有计划重制上线。

    14 引用 • 257 回帖 • 2 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    51 引用 • 190 回帖 • 1 关注
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    21 引用 • 58 回帖 • 1 关注
  • 酷鸟浏览器

    安全 · 稳定 · 快速
    为跨境从业人员提供专业的跨境浏览器

    3 引用 • 59 回帖 • 16 关注
  • JVM

    JVM(Java Virtual Machine)Java 虚拟机是一个微型操作系统,有自己的硬件构架体系,还有相应的指令系统。能够识别 Java 独特的 .class 文件(字节码),能够将这些文件中的信息读取出来,使得 Java 程序只需要生成 Java 虚拟机上的字节码后就能在不同操作系统平台上进行运行。

    180 引用 • 120 回帖
  • 职场

    找到自己的位置,萌新烦恼少。

    126 引用 • 1699 回帖
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 45 关注
  • SOHO

    为成为自由职业者在家办公而努力吧!

    7 引用 • 55 回帖 • 65 关注
  • Bootstrap

    Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS / HTML 框架。

    18 引用 • 33 回帖 • 683 关注
  • V2Ray
    1 引用 • 15 回帖
  • 学习

    “梦想从学习开始,事业从实践起步” —— 习近平

    163 引用 • 473 回帖 • 1 关注
  • Ngui

    Ngui 是一个 GUI 的排版显示引擎和跨平台的 GUI 应用程序开发框架,基于
    Node.js / OpenGL。目标是在此基础上开发 GUI 应用程序可拥有开发 WEB 应用般简单与速度同时兼顾 Native 应用程序的性能与体验。

    7 引用 • 9 回帖 • 354 关注