Atitit 提升开发效率 设计简化

目录

1. 防止过度设计 1

2. 优先使用db和os的自带功能,防止垃圾代码膨胀 2

2.1. 定时调度,优先使用db定时和os的cron定时 2

2.2. Db的约束功能 2

2.3. View sp udf等功能 2

2.4. 优先使用db的全文索引功能 2

3. 大力使用声明编程范式 2

3.1. 2.1.1. 约束式编程[数据库约束  注解约束 4 2

3.2. 2.1.2. 领域专属语言dsl (sql等) 2

3.3. 2.1.3. 函数式编程[编辑] 5 2

4. 优先提升可扩展性可读性,默认情况下已经可以满足性能要求 2

4.1. 分库分表 2

4.2. 是否需要分库分表大部分项目是不需要的。。。 2

4.3. 使用数据库自带的分区分表机制代替三方库分表 2

4.4. Cache 与nosql 3

4.5. Nosql 不需要 3

4.6. 使用mysql json字段代替 3

4.7. 使用内存表代替redis这类cache 3

4.8. ------是否需要微服务  99%的项目是不需要的 3

4.9. 优先使用nginx实现微服务负载均衡 3

4.10. 其次dubbo,最后springcloud  使用麻烦度依次类推 3

5. 其他简化设计 3

5.1. 优先使用static 方法代替oo 3

5.2. 优先使用单层设计,其次双层,再次三层四层五层 3

5.3. 参数化 api设计 大力简化了查询类操作的api数量 3

5.4. 大力使用脚本语言php nodejs python等,可以嵌入模式运行 3

6. 使用简单类库替代复杂类库 4

6.1. Mvc方面 vue最简单了  tp 替代yii lalaravl等 4

6.2. 服务rest springboot类自带web服务器端口简单明了 4

6.3. Json  fastjson最简单 4

6.4. Orm方面 使用springjdbc 替代mybatis vs hibernate jpa 4

  1. 防止过度设计 
  1. 优先使用db和os的自带功能,防止垃圾代码膨胀

    1. 定时调度,优先使用db定时和os的cron定时
    2. Db的约束功能  
    3. View sp udf等功能
    4. 优先使用db的全文索引功能
  1. 大力使用声明编程范式

    1. 2.1.1. 约束式编程[数据库约束  注解约束 4
    2. 2.1.2. 领域专属语言dsl (sql等)
    3. 2.1.3. 函数式编程[编辑] 5
  1. 优先提升可扩展性可读性,默认情况下已经可以满足性能要求

    1. 分库分表
    2. 是否需要分库分表大部分项目是不需要的。。。
    3. 使用数据库自带的分区分表机制代替三方库分表
    4. Cache 与nosql
    5. Nosql 不需要
    6. 使用mysql json字段代替
  1. 使用内存表代替redis这类cache
  2. ------是否需要微服务  99%的项目是不需要的
  3. 优先使用nginx实现微服务负载均衡
  4. 其次dubbo,最后springcloud  使用麻烦度依次类推
  1. 其他简化设计

    1. 优先使用static 方法代替oo
    2. 优先使用单层设计,其次双层,再次三层四层五层
    3. 参数化 api设计 大力简化了查询类操作的api数量
    4. 大力使用脚本语言php nodejs python等,可以嵌入模式运行
  2. 使用简单类库替代复杂类库
    1. Mvc方面 vue最简单了  tp 替代yii lalaravl等 
    2. 服务rest springboot类自带web服务器端口简单明了
    3. Json  fastjson最简单
    4. Orm方面 使用springjdbc 替代mybatis vs hibernate jpa

Atitit 提升开发效率 设计简化 目录 1. 防止过度设计 1 2. 优先使用db和os的自带功能,防止垃圾代码膨胀 2 2.1. 定时调度,优先使用db定时和os的cron定时 2 2.2相关推荐

  1. atitit.提升开发效率---mda 软件开发方式的革命

    atitit.提升开发效率---mda 软件开发方式的革命 1. 软件开发方式的革命开发工具的抽象层次将再次提升 1 2. 应用框架和其实现相分离 2 3. 目前的问题模型和代码不同步 2 4. MD ...

  2. atitit.提升开发效率---使用server控件生命周期 asp.net 11个阶段 java jsf 的6个阶段比較...

    atitit.提升开发效率---使用server控件生命周期  asp.net 11个阶段  java jsf 的6个阶段比較 例如以下列举了server控件生命周期所要经历的11个阶段. (1)初始 ...

  3. Atitit外包优缺点 提升开发效率 外包模式 1.一般来说外包优点 1.1.更加方便快捷 时间成本降低了 1.2.会导致 经济成本高,,时间成本降低了, 2.缺点 2.1.成本高 2.2.

    Atitit外包优缺点  提升开发效率 外包模式 一般来说外包优点 更加方便快捷  时间成本降低了 会导致 经济成本高,,时间成本降低了, 缺点 成本高 缺少控制 但是少部分,比如理发,经济时间成本都 ...

  4. Python学习笔记:Day13 提升开发效率

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  5. order by 影响效率么_提升开发效率N倍的20+命令行神器

    图 by:石头@青海湖 关于作者:程序猿石头(ID: tangleithu),现任阿里巴巴技术专家,清华学渣,前大疆后端 Leader.以每篇文章都让人有收获为目的,欢迎关注,交流和指导! 背景 本文 ...

  6. 猿创征文|后端开发工程师提升开发效率神器推荐

    简介 对于现在的后端工程师来说,并不仅仅局限于编写代码和解决bug,这两个要素了.如果你目前还只是忙碌的写代码和改bug的话,那要深度思考一下,我为什么日复一日的写这些重复代码?这样有何意义?或者说, ...

  7. idea从零到精通08之IDEA常用插件、提升开发效率

    文章目录 作者简介 引言 导航 热门专栏推荐 概述 一.插件安装方式 二.在Idea中无法直接安装插件 三.常用插件 1.ECTranslation 2.Grep Console 3.CodeGlan ...

  8. 提升开发效率N倍的20+命令行神器!(附 demo)

    点击上方蓝色字体,关注我 -- 一个在阿里云打工的清华学渣! 图 by:石头@青海湖 关于作者:程序猿石头(ID: tangleithu),现任阿里巴巴技术专家,清华学渣,前大疆后端 Leader.以 ...

  9. 蓝湖导出android代码,【蓝湖指北】用好蓝湖,提升开发效率

    原标题:[蓝湖指北]用好蓝湖,提升开发效率 为了达到高效开发.准时上线的"目标",开发工程师夜以继日的敲代码,发际线日渐升高.但是,开发的工作产出不止取决于写代码的效率,不恰当的工 ...

  10. Java开发常用网址,推荐一些能帮助我们提升开发效率和学识巩固的网址,值得收藏

    文章目录 1.前言 2.网址信息 1.在线工具: 2.在线学术文档: 2-1 后端相关: 2-2 前端相关: 2-3 AI相关: 1.前言 推荐一些能帮助我们提升开发效率和学识巩固的网址,值得收藏 2 ...

最新文章

  1. 17日南土所蒋瑀霁报告:红壤团聚体尺度养分转化的生物学过程(线虫-微生物互作机制)...
  2. 你的 webpack 也需要休息,让你的 webpack 拒绝 996ICU
  3. 民主湖呀,不知道是好看还是破烂
  4. 成功解决Runtime Error Selected KDE bandwidth is 0. Cannot estiam
  5. Java中方法签名signature、方法重载以及“两同两小一大”的方法覆盖(方法重写)总结
  6. [雪峰磁针石博客]python网络基础工具书籍下载-持续更新
  7. ROS小白——软件安装(1)
  8. 旅行商问题 c++_动态多目标旅行商问题(一)
  9. jQuery.validate 中文API
  10. linux远程连接windows桌面背景,Centos远程Windows桌面_远程桌面
  11. 【Java思维导图】
  12. Mini2440开发板串口连接
  13. pmp项目变更的流程图_【PMP】变更流程图与说明
  14. 模拟登录人人网,豆瓣
  15. 《大数据时代》读后感(一)
  16. qq华夏服务器状态,最国产!QQ华夏199组服务器皆“国名”
  17. xmind可以画流程图吗_怎样用XMind方便地制作流程图
  18. 机器学习第三章笔记——决策树
  19. YUV RGB 相互转换矩阵
  20. kindeditor上传本地图片实例

热门文章

  1. 使用 vue_VUE使用ECharts教程
  2. oracle不完全恢复类型,Oracle——不完全恢復
  3. tx2开发板接口详解_Linux CAN编程详解
  4. idea 新建spring clound 项目_手把手教你spring源码搭建
  5. linux学习笔记-文件属性基本知识
  6. 身在旋涡中的百度外卖,还能否找到接盘者?
  7. 二、ReactDOM.render()
  8. passwd命令限制用户密码到期时间
  9. c++中的243、251、250错误原因
  10. NetScaler的cookieinsert和sourceip联合保持机制