我不觉得Typescript有所说的那么大的实质价值,更糟的是我们注意到,我们的编码速度降低了。JavaScript像定义一个简单对象这样很容易做到事情如果在Typescript上的话做起来会更复杂。我强烈建议你在开始使用Typescript时阅读下面的相关的文章。对绝大多数人来说,Typescript并不是好的解决方案。
我仍然记得使用Angular 1是多么容易使用,当然它也有它自己的问题,但与其他框架相比,它工作得很好,在某种程度上,Angular 2迷失了方向。我对Angular 2的结论很简单,Angular 1和Angular 2唯一的共同点就是它们的名称,本质上它们是完全不同的框架。
所以考虑到我们需要进行17个版本的升级而且是在非完全测试的系统上,很多来自商业上的需求需要编写新的代码来实现,很多bug和写得不太好的代码,而原来的开发商都已经不在开发小组里面了,只有一个开发人员那就是我,还有许多其他的责任。使用Typescript的过程中,直到我看了一个正确的文件才发现是因为使用了测试版本的问题,当Angular 2 升级到 Angular 4 的时候,负面问题清单便迅速变大起来。
我们做出了一个决定,如果我们非要花那么多的时间升级,那我们应该先看看我们是否还有其他选择。我们马上就着手去做,并且找到了解决方案。
React
第一个显而易见的选择是React,因为每个人都在这么做,而那些不用它的人也正在谈论它。所以这是一个选择,当然知道facebook在它背后,这是有帮助的。然而,React本身并不是一个框架,你需要添加额外的东西才能使它在你的项目发光发热。
vue.js
Vue.js是一个新的成员,我从来没有听说过它之前,虽然刚刚发布了版本2,我们开始看这是不是也是个可以使用的不一样的选项。起初它引起了我们的注意,但看起来很有风险。
决策过程
我们首先开始确定我们的做这个决策的依据是什么。我们知道我们想要的框架需要满足以下几点:
-
首先它应该是稳定的。
-
有一个强大的社区或一些大玩家
-
有很好的文档或很多问题在StackOverflow上可以找到解决方法
-
学起来比较容易
-
与Bootstrap整合的很好
-
比较小
-
在理想的情况下,还允许我们重用代码。
-
编码速度比较高效
-
响应性
-
是基于组件设计的
当我们的决策依据有了以后,我不得不动手试试,所以我用几天的时间来针对React和vue.js来审查每一个决策依据,这个过程中有任何不明白的就去谷歌寻求帮助。由于我对他们中的任何一个都基本上是一无所知的,在进行了两天的审查结束的时候,我会重新评估要迁移的实际项目中需要我重写的是那些部分。
下面是我选择重写的部分:
-
一些基本API调用
-
两个不同页面的布局。
-
有关用户资料响应性的部分
-
登录表单和一些内容表单
-
一个bootstrap的模态框
我很惊讶,在这几天里我真的向我的团队成员和公司的CTO证明了,使用Vue.js作为一个我们选择的框架可以走的很远。我很好的理解了vue.js的基本概念,定义友好、可扩展的架构,但最重要的是,我真的很喜欢用它写来代码,它这方面做得很友好,我觉得我做得比使用React好。
React比我想象的要难很多,如Redux和MobX之间选择,还有更多的疑问不止这一个问题需要进行选择,而Vue.js和Vuex的框架是整合在一起的。这样会很简单,因为当对这个框架没有使用经验时,一个框架有一个官方的库会给开发者提供更多的信心。顺便说一下,我觉得Vuex比Redux学习起来感觉更轻松,就像所有的学习曲线中表示的那样。
JSX也是一个问题,因为我们不能重复使用HTML代码,而且Vue.js在一定程度上不允许我们这样做。Vue文件实际上是工作的非常好,因为我也不喜欢内联模板。React混合JSX/HTML用JS代码,我不太喜欢这样做,因为我坚信关注点隔离,恕我直言这看起来也不爽。
编码速度
编码速度是vue.js成为我们的选择的一个决策依据,不用学习JSX对我来说是巨大的帮助。后来,另一名开发人员加入该项目,并在进行了大约1小时的培训会议后几个小时内就为该项目做出了贡献,这一速度也得到了证实。
这对我们是非常重要的,你可以马上打开Vue文件看到它。它包含一个带有HTML和标签的模板部分,看起来与Angular 1相似,所以如果你用过Angular 1的话,那你会有一种似曾相识的感觉。一个vue文件也有样式和纯JavaScript的部分,实际上你使用JavaScript,你只需要学习一些关于vue.js的基础知识就可以充分理解他们。了解vue.js的基本内容如方法,计算属性、数据和创建等等,你明白你所需要的大约90%的时候就可以开始编码了,真的很简单。
文档
有了适当的编码速度,我们需要良好的文档。vue.js的文档是一流的。编程指南、示例、问题和API都记录得很好,覆盖了我们在开发过程中发现的所有疑惑。我们担心许多问题需要找中文文档,但事实并非如此,一切都是用英语提供的。
问身边的人
vue.js经过超过一周的考虑,让我惊讶的是,看上去真的很好,问身边的人是没用的,因为没有人用过vue.js,我得到的唯一评论是,“看起来很酷,但我没有用它”。反应最多的是React,Angular 2只在一个遥远的第二位出现。
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
你打开新的学习之门!**
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!