by Tim @TNC
在我们对新 App 的技术选型中,React Native 基于它庞大的社区生态系统和快速迭代速度给了我们很大的期望。在近一年的开发后,我想分享一下我们在 React Native 开发上的经验和挑战,以及我们的解决方案。
由于这是一个全新的项目,我们在技术栈上可以做出一些激进的选择,并在初期进行了一些实验性的研究。根据项目的需求我们选择了 TypeScript,React Native,Redux,React Navigation,Realm 这些技术。
代码共享和丰富的开源社区的资源是对我们最大的优势,我们可以达到最多100%的 TS 代码的共享率。React 框架本身和 RN 集成原生组件的能力也是我们在乎的。我们使用了 TypeScript 去解决一些 JavaScript 本身无类型的问题,但是需要额外的步骤去和 React Native 本身的打包系统整合。同时我们也积极的 fork 我们使用的开源项目,并且在合适的情况下向社区提交我们的改动。
对原生开发人员的体验依然是 React Native 需要改善的问题,我们也在开发流程上尽量避免了遇到这些问题。
总体来说,React Native 依然是一个非常优秀的框架,我们也很享受整个开发流程。我们希望随着项目的开发我们能在未来能发现这个架构更多的可能性。