Skip to content
On this page

技术选型公约

目的

多职能 * 多项目的组织架构下,使团队技术栈相对统一,以便于:

  1. 降低职能团队转换项目时的学习成本,更加灵活应对跨项目开发和技术攻坚。
  2. 整个团队专注与某一技术体系,便于统一管理和技术交流,持续加强技术深度

技术选型

从前端工程师(Web前端、iOS、Android、Node.js)、Java工程师(后端、大数据)等技术线的角度,按照语言、框架、编辑器等模块分别定义选用的技术和框架。

模块前端iOSAndroidNodeJava
语言HTML/CSS/JavaScriptObject-C/Swift/FlutterJava/Kotlin/FlutterJavaScriptJava
预处理HTML: Pug CSS: Stylus JS:TypeScriptObject-C:AutoLayout Swift: UI:SnapKit flutter: --TypeScript
图标处理iconfont + SVG(设计师无法导入到iconfont的特殊彩色icon)
基础框架Vue3🔥Alamofire / KingfisherRetrofit / GlideExpressSpring Boot
产品化框架web: Vue3-template 小程序:uniapp--Nest.jsspringboot-template
组件库PC: @shinhotech/sh-ui H5: mint-ui 小程序:iviewUIKitandroidx google-material-common包
微前端/微服务qiankun.js注册中心:nacos🔥 配置管理:Apollo 分布式协调:ZooKeeper🔥 链路追踪:SkyWalking
数据存储ChromeSQLLiteSQLLiteMysql v8.0🔥 Redis Elasticsearch ClickHouse🔥 S3
接口查看、模拟与测试Swagger + YApi + Mock.js
项目编译Node + Webpack ViteLVVM(Xcode 自带)GradleES6: Babel TS: TSCMaven
代码校验ESLintAlignment For XcodeAndroid LintESLintSonarQube
单元测试Karma + Mocha + ChaiUnit Test / UI TestJUnit / EspressoMochaJUnit
编辑器Visual Studio CodeXcodeAndroidStudioVisual Studio CodeIDEA
代码管理Gitlab
持续集成Jenkins + Pipeline / Gitlab-ci
部署web: Docker + Nginx + CDN 小程序:微信平台APPStore 企业CDN + S3应用市场 企业CDN + S3Docker + NginxDocker + Tomcat
服务端脚本Shell、Node.js
错误收集外部项目:Fundebug,内部项目:Sentry私有部署ELK