关于react提问以及解答

1、
请教个工程问题。
团队运用webpack打包前端代码,转译后的文件每次都需要push到代码库远端;从开发角度而言,是不希望这部分代码在代码库的;两个原因:1是不方便代码review,2是代码仓库不纯净;还有就是公司目前的发布系统,只支持从远端仓库某个分支拉取静态资源推送到服务器端。如何不上传打包后的文件到代码仓库又能顺利发布?
 
回答:这个需要发布系统的支持。
如果是同构应用,在本地编译好,有一些必要性。我们得在 server 端和 cdn 里都发布一下 js,如果在分别发布系统里的服务器里编译,有可能因为 npm 依赖版本的不一致而产生不同的文件 hash,造成 404。所以,本地编译好,再分别发布到 server 端和 cdn,可以保证内容是一致的。 
 
2、
目前公司比较大,大公司的通病就是可能每个人都是螺丝钉,只在自己的岗位上去做事情,但是带来的问题就是自己可能会很长时间只钻一个地方,比如我是前端,可能就一直写页面,用RN,就一直用RN,我希望强化自己的后端或者其它框架,但是却没有办法,时间久了担心自己其它方面会越来越弱,也许某一块会比较熟练,但是毕竟范围有限,请问如何解决这一现状呢?或者说从自身角度出发,如何去改变它呢?
 
答:工作不是技术成长的全部,工作之外,可以有基于兴趣的技术探索和积累。而且,工作内容,其实也有很多可挖掘和拓展的地方。靠外界环境去提供一个开发而广阔的学习,基本上不太可能。也不符合公司用人的专业性要求。内心的自我驱动力更可靠。
 
在学习技术上,我是兴趣驱动的。学习技术,对我而言,跟玩撸啊撸,守望先锋等游戏有相似的乐趣,并且更不容易腻,成就感也更强。这是一个很好的状态,我不知道怎么进入了它,我希望后面可以一直保持住这种热情。
 
我的成长 80% 发生在工作内容,个人项目只有 20% 的增益。但恰恰是个人项目,使我得到机会去付诸工作实践。所以从重要性来讲,个人项目里我的积累,也很重要。目前可以说是工作和业余的技术学习,对技术成长而言,同等重要。 
 
3、
你好,请问对于其他的框架,如Vue, Angular, Ember, Backbone等等了解多不多?为何当初选择深入钻研React?你认为对于常用React的程序员来说,学习其他前端框架的时候有什么需要特别注意的吗?
 
答:对 Backbone 和 Vue 的了解较多,Angular 和 Ember 不是很了解。当初选择 React 是恰巧当时它比较火,所以去学习和使用,然后有了更深的理解,开始在工作里使用,就这样上了这个车。
不管是学习其他框架还是其他语言,我认为,都要以腾空自己的心态去感受;不要刻意去想,这不就是 React 里的 xxx 吗?这不就是 C# 里的函数重载吗?虽然我们第一次在 React 或 C# 里发现了某个语言特性或者框架特性,但并非这个特性的内部机制和用途,就跟我们第一次接触的框架和语言绑定了。
我们应该去理解脱离框架和语言表象的背后的抽象事物,而不是用这个具体事物去理解另一个具有相似性质的具体事物。用水果去理解苹果和香蕉,而不是用苹果去理解香蕉。 
 
4、
社招招聘开发时,您更看重学习能力还是之前所做的项目的匹配度。
 
答:社招时的判断因素很多,对不同工作年限的候选人,衡量的方式也不同。对于初入社会的人,主要看对方的学习能力、学习的方法论、获取知识的媒介以及当前的技术基础等。对于资深的候选人,主要考察对流行框架和编程范式的认知和实践经验,对疑难咋整的处理办法,对团队协作的管理策略,以及对软件开发架构和设计模式的个人体悟。
 
对前端来说,系统地学习后端知识,在求职阶段不是必要的;但一点都不了解,也不合适。适当了解一些。
不必等工作几年再去考虑大厂,可以现在就去投,去面试,去考虑。即便面试被刷掉了,你也可以知道自己要满足大厂的要求,应该加强哪些方面。 
 
5、
2021 年我的学习方向主要围绕几块:
1)typeScript,vite,vue3;
2)人工智能;
3)前端开发的方法论。
 
posted @ 2021-04-15 13:52  优前程  阅读(98)  评论(0编辑  收藏  举报