InfoQ@唱唱反调:风口上的技术不要盲目追( 二 )


彭星认为 , 大厂在技术探索上投入很大的人力物力是有理由的 , 他们的业务模块多且复杂 , 既需要保留解决方案的灵活性 , 也需要可维护性 , 但这些不应该是中小企业优先关注的问题 。
彭星表示 , 互联网大厂、传统企业和中小型企业 , 在前端技术选型上应该有不同的侧重点:
互联网大厂 , 核心技术自研非常有必要 , 因为只有自己掌握核心技术才能不受人制约 , 所以大厂在技术探索上投入很大的人力物力 。 大厂的二级业务才会选择使用内部自研的或者社区影响力大的技术方案 。
传统企业 , 需要结合自身企业类型来选择前端技术方案 。 传统企业往往需要承接各个平台过来的流量 , 载体一般是网站和小程序 , 小程序不用多说 , 网站还是主要看是否需要 SEO , 是否便于在主流平台进行分享传播 , 一般选择后端直出的框架配合 jQuery 即可 。
中小型企业 , 这类型的企业有一定的研发能力 , 业务类型多样 , 以 Native App 和小程序居多 , 网站只是 App 引流工具或者活动页面 。 Native 的解决方案取决于业务类型 , 只要不是非常复杂且对可靠性要求很高的应用 ,Flutter、RN 等跨平台方案是很好的选择 。
综上所述 , 技术选型首先还是要参考业务需求 , “同时也呼吁同行 , 不要为了达到一些目的而大肆鼓吹 , 这对相信你的开发者很不负责” , 彭星进一步补充 。
前端技术选型经验小结
彭星毕业后在百度工作了 9 年 , 期间负责百度搜索团队的前端技术 , 曾主导百度搜索前端的优化和重构工作;2020 年加入阅文集团负责创新中台团队 , 团队成员共有 50 多人 , 包含了前端、客户端、服务端等不同角色 , 是名副其实的大前端 + 的团队 , 集团的新产品都从这里孵化 。 虽然新老东家的前端团队规模、主要业务均有不同 , 关注的技术点也有差异 , 但在技术选型上却有一点是相同的 , 那就是以实用为主 。
彭星表示 , 阅文对于前端技术的关注点主要是实用 , 要能解决业务中的问题 , 同时要有技术架构上的灵活性 , 由于业务的复杂度不高 , 因此技术一般都是拿来直接用 , 比较方便;百度的体量更大 , 每个大的团队关注点也会有一些区别 , 彭星之前所在的百度搜索团队 , 对于前端的关注点同样是实用为主 , 因为搜索系统庞大而复杂 , 也会关注前端技术能否解决大型系统中的组织结构灵活性和可维护性问题 , 同时还要求性能最好 , 一般很少直接使用业界的技术 , 而是吸收加以改善 , 再用到项目中 。
彭星在做技术选型时一般会参照以下几个步骤:
首先看自身的主要问题是什么 ,业务需要什么;
再看业界有什么解决方案 , 一定要结合自身业务的主要诉求;
方案决定后 , 选择框架 , 选择社区大而活跃的 。
对于大前端领域现在很火的前沿技术 , 如 Vue、React、Flutter 这三大框架 , 以及 Serverless 等 , 前端团队如何判断这些技术是否适合自己?
【InfoQ@唱唱反调:风口上的技术不要盲目追】彭星参照上述技术选型的几个步骤给出了一些建议:
首先看业务的形态是什么 , 后台管理系统、移动端网站、移动端 App 还是其他形态 。
Vue/React 解决的问题类似 , 主要是富交互场景 , 比如管理系统 , 或者移动端 Web App 。 当然他们都可以作为 Hybrid 的前端框架继承在 App 里 , 如果是在 Vue 和 React 中挑一个的话 , 大型系统选择 Angular , 有洁癖选择 React 。 Flutter 的选择就很简单了 , 移动端想跨端、节省人力、愿意学 Dart 就可以 , 只是 iOS 上的动态更新要费点事 。 Flutter 现在最主要的竞品其实是 React Native , RN 由于苹果的那条传言已久的禁令 , 受到的影响不小 , 如果担心这个 , 可以不选 RN 。
彭星坦言 , 过去一年 Serverless 概念的火爆有点超出自己的预期 。


推荐阅读