·
Across the Great Wall, we can reach every corner in the world.

选择类型安全的写法,比如前端 redux,用 toolkit + typescript 避免大量模板和字符串,后端 sql 使用 queryDSL 或 jooq 等带类型推断的 sql,避免大量 xml 文件或 sql 字符串(如果有复杂 read 需求,可以上 mybatis,write 还是 jpa 模型)。

很多细分领域仅一种语言 A 难以覆盖需求,就需要在 A 语言上再搞一种 dsl,比如 vue 的模板、mybatis 的 xml 语法、jpa 的 nativeSQL 参数注入语法,这些模板都很难实现类型安全,在改字段、加字段的时候容易静默故障,项目复杂的时候很难定位。