假如让Java程序员选择一种前端开发框架,未必所有人都会选择Angular,毕竟一千个人眼中会有一千个哈姆雷特。但我相信绝大多数的人在比较了React,Vue和Angular这三种当下流行的框架后,一定会倾向于Angular。原因有以下三点:
程序员的思维惯性
相信有条友们已经熟悉了Java技术栈,也应该在实际项目中使用过流行的Java开发框架,比如Spring MVC等等。同样的,随着用户需求的不断升级,前端框架也不断的演化。在我看来,框架设计理念和Spring MVC最相似的非Angular莫属。我曾经将一个自己开发的Angular项目源码给Java同学看,他评价道:“这个Angular项目一看就是Java程序员写的,非常规范缜密”。网上也有很多针对不同前端框架的比较,例如,Angular比其他前端框架难学,Angular有些臃肿和复杂等等。Angular自身的“臃肿”和“复杂”恰恰是MVC架构的副产物。Java程序员更喜欢Angular的原因是在工作中形成的思维惯性导致的,Angular让Java程序员觉得似曾相识。
站在Angular背后的巨人
Angular 2.0以后将名称“Angular JS”中的“JS”去掉了,Angular的开发语言换成了Typescript,Typescript这门作为Javascript超集的语言实际上是强类型而且面向对象的,其设计目的无疑是让开发者更加注重业务逻辑的实现。这一点是不是和Java很像呢?“巧合”的是,Angular的背后有Google加持,而Typescript是微软推出的编程语言。有业界两大巨头支撑Angular的发展,Angular的设计也就自然会吸收很多经验并加以改良了。与此同时,Angular框架也更加的规范,这也是Angular更适合大项目的原因。
编程语言发展趋势
回顾编程语言的发展历史,再对比当下流行的编程语言,我们会发现一个有趣的现象。这个现象就是每门语言都带着自己独特的使命降生,长大了之后各取所长,越长越像。这种发展趋势会让程序员的学习成本降低。Typescript就作为纽带让Java程序员可以容易的进入Angular领域,目前其他的前端框架也在融合Typescript。相信在不久的将来,Java程序员的前端开发之路会更加顺畅。