Atitit v3项目快速推进的推荐技术标准化 规范 流程

为了加快进度,大力简化技术复杂度。。如在已有项目二次开发,则原模块技术架构尽可能不变,新增模块则可以应用新办法

1. 快速开发 简化开发的原则 2

1.1. 上手难度小 复杂度低  业界趋势观测 2

1.2. 免配置,免编译 2

1.3. 统一化技术栈 2

1.4. Dsl 4gl 优先于 3gl , 3.5gl  优先于3gl 2

1.5. 可读性优先原则 2

1.6. Hybrid原则 2

2. Gui界面方面 主要是h5体系 2

2.1. 技术体系:全面的前后台分离 2

2.2. 全面使用客户端界面技术mvc 优先于服务端界面技术 全面使用h5  html扩展名文件模式 2

2.3. Ajax fetch +es6+vue.js绑定数据 3

2.4. 主要框架 jquery vue.js 3

2.5. 主要工具html ide 是 dw cs ,js ide 是webstorm等 3

2.6. 注意模块化路径,模块自包含 3

2.7. 界面路径放在主项目下,不要放在web-inf 3

3. 中间层di ioc 接口 4

3.1. 使用静态工厂 servicelocator 优先于使用spring 大力降低技术难度复杂度 4

3.2. 为了保持对spring的了解,以便二次开发某些客户项目,可以在少部分模块,使用spring 4

4. 架构  与rest接口 4

4.1. 优先俩层架构实现,,少部分复杂模块三层 4

4.2. 减少interface,尽可能一个后端service实现一个实体功能。如此模块确实有必要扩展,才使用interface模式。 4

4.3. 业务逻辑适当分散在dsl js 存储过程 触发器 4

4.4. 后端弱化为web版jdbc驱动 前端js可直接传递sql到后端,获取数据,绑定到界面控件 5

4.5. 接口通用化 内部传输dsl作为数据 5

5. 数据存储 5

5.1. 技术体系,dsl化 4gl化 sql化 5

5.2. 框架方面使用apache dbutil ,mybatis优先于hibernate 5

5.3. 数据返回与绑定 使用map通用模式 优先于 实体domain模式 5

5.4. 适当使用存储过程 触发器 视图 简化开发 6

5.5. 要使用数据库gui管理工具比如navicate,简化开发,不要全程代码模式 6

5.6. 为了保持对hibernate的了解,可以在某些简单独立模块适当的使用hibernate 6

1. 快速开发 简化开发的原则

1.1. 上手难度小 复杂度低  业界趋势观测

1.2. 免配置,免编译

1.3. 统一化技术栈

1.4. Dsl 4gl 优先于 3gl , 3.5gl  优先于3gl

Dsl 领域特定语言,包含 H5 sql  等,4gl 第四代语言

Js等script语言被称为3.5gl

Java c#这一类就是3gl了。 语言代际越高越简单易读,反之越繁琐。。

1.5. 可读性优先原则

1.6. Hybrid原则

二次开发中途加入也是常见的。。保持对原有模块框架体系的不变,但新模块使用新的更加简单快捷的技术来实现即可。。其次,所有的框架都可以混合使用的,以便根据项目或者产品情况,取长补短,综合起来是王道

2. Gui界面方面 主要是h5体系

2.1. 技术体系:全面的前后台分离

界面文件扩展名即是html。。。前段界面全静态,方便前后端人员同时介入以及工作压力分担。甚至基于我们开发的通用接口,前段人员可以独立完成一个项目(需要懂点sql)。。

2.2. 全面使用客户端界面技术mvc 优先于服务端界面技术 全面使用h5  html扩展名文件模式

界面文件扩展名即是html。前端设计出界面后可以直接附加ajax即可连接后端,中间随时也方便前端人员调整界面

数据通信通过通过服务端js数据获取模式(主要应用在查询场合,大部分时候比ajax更加简单),以及ajax (编辑场合,当然查询场合也可,根据情况判断)

不要使用服务端界面技术jfinal,jstl el jsp freemark struts等等就不推荐了。

2.3. Ajax fetch +es6+vue.js绑定数据

Fetch是取代jq与原生ajax的w3c标准化api。。

Es6在ie兼容上可能有一些问题,但对于快速开发很有用,项目可以统一使用浏览器chrome56+来实现。。特别是es6的lambda,大力简化代码复杂度

Json数据绑定界面控件vue。js

2.4. 主要框架 jquery vue.js  

如需要美观度,适当使用css框架 bootstrap 美化下,如项目没要求,可以先不管美观度

vue.js 用来绑定数据到界面table控件,form表单等。

也可以使用jq单独绑定每个form表单内的控件,比较繁琐些,推荐使用vue绑定

不推荐anrular.js这类较为复杂的框架了。

2.5. 主要工具html ide 是 dw cs ,js ide 是webstorm等

2.6. 注意模块化路径,模块自包含

模块所用的特有的html js css img都放在同一模块文件夹下,可以建立子文件夹按照类型,如果文件多的话。

不推荐不管什么模块,凡是图片统统扔到image目录,凡是js统统js目录。

2.7. 界面路径放在主项目下,不要放在web-inf

界面路径放在主项目webroot下,不要放在web-inf,这样增加一些额外代码才能直接访问,而且需要服务端mvc增加复杂性

3. 中间层di ioc 接口

3.1. 使用静态工厂 servicelocator 优先于使用spring 大力降低技术难度复杂度

只有在必要的某些模块的某些功能,确实需要这样的扩展性时候,才使用spring完成此功能。

相对来说。Spring较为复杂繁琐。

3.2. 为了保持对spring的了解,以便二次开发某些客户项目,可以在少部分模块,使用spring

这部分模块最好比较简单,独立。这样不太影响项目进度。。各得其所

4. 架构  与rest接口

4.1. 优先俩层架构实现,,少部分复杂模块三层

Servcie 与dao合并,去除interface。。直接一个xxService.java文件实现一个模块功能。

二八原则,大部分模块都是简单的。

4.2. 减少interface,尽可能一个后端service实现一个实体功能。如此模块确实有必要扩展,才使用interface模式。

4.3. 业务逻辑适当分散在dsl js 存储过程 触发器 

有些业务逻辑使用js实现更加简单,有些存储过程更简单。

不要把业务逻辑一股脑全部塞到java后端代码里面,这样开发起来较为繁琐和麻烦。

Js sql的优点就是dsl 化方便开发。

4.4. 后端弱化为web版jdbc驱动 前端js可直接传递sql到后端,获取数据,绑定到界面控件

前端js可直接传递sql到后端,获取数据,绑定到界面控件。

注意::这个可大力简化开发。。

适合与后台界面管理xxx系统的模块,不会有安全隐患,因为需要登陆才能使用,而且都是内部人员登陆。。

但不适合与面向公众开放的模块,在公众模块会有一定安全隐患。。。

4.5. 接口通用化 内部传输dsl作为数据

对于数据库项目,一般涉及数据操作的大部分为sql语句。。

或者更高的安全性或者数据库移植性,使用sp存储过程

其他方面使用同一的http param模式的dsl,指明要调用的java方法路径与参数传递

5. 数据存储

5.1. 技术体系,dsl化 4gl化 sql化

5.2. 框架方面使用apache dbutil ,mybatis优先于hibernate

查询方面使用dbutil 更加简单,特别复杂条件。。二八原则,一个项目80%是查询,20%才是增删改

5.3. 数据返回与绑定 使用map通用模式 优先于 实体domain模式

通过json框架返回序列化效果是一样的,但可以大力减少复杂度。。增强通用性。

5.4. 适当使用存储过程 触发器 视图 简化开发

5.5. 要使用数据库gui管理工具比如navicate,简化开发,不要全程代码模式

5.6. 为了保持对hibernate的了解,可以在某些简单独立模块适当的使用hibernate

方便二次开发某些项目。。因为这些项目可以使用了这类orm框架

作者:: 绰号:老哇的爪子claw of Eagle 偶像破坏者Iconoclast image-smasher

捕鸟王"Bird Catcher  kok  虔诚者Pious 宗教信仰捍卫者 Defender Of the Faith. 卡拉卡拉红斗篷 Caracalla red cloak 万兽之王

简称:: Emir Attilax Akbar 埃米尔 阿提拉克斯 阿克巴

全名::Emir Attilax Akbar bin Mahmud bin  attila bin Solomon bin adam Al Rapanui 埃米尔 阿提拉克斯 阿克巴 本 马哈茂德 本 阿提拉 本 所罗门 本亚当  阿尔 拉帕努伊

常用名:艾提拉(艾龙),  EMAIL:1466519819@qq.com

头衔:uke总部o2o负责人,全球网格化项目创始人,

uke交友协会会长  uke捕猎协会会长 Emir Uke部落首席大酋长,

uke宗教与文化融合事务部部长, uke宗教改革委员会副主席

uke制度与重大会议委员会委员长,uke保安部首席大队长,uke制度检查委员会副会长,

uke 首席cto   软件部门总监 技术部副总监  研发部门总监主管  产品部副经理 项目部副经理   uke科技研究院院长uke软件培训大师

uke波利尼西亚区大区连锁负责人 汤加王国区域负责人 uke克尔格伦群岛区连锁负责人,莱恩群岛区连锁负责人,uke布维岛和南乔治亚和南桑威奇群岛大区连锁负责人

Uke软件标准化协会理事长理事长 Uke 数据库与存储标准化协会副会长

uke终身教育学校副校长   Uke医院 与医学院方面的创始人

uec学院校长, uecip图像处理机器视觉专业系主任   uke文档检索专业系主任

Uke图像处理与机器视觉学院首席院长

Uke 户外运动协会理事长  度假村首席大村长   uke出版社编辑总编

转载请注明来源:attilax的专栏  ?http://blog.csdn.net/attilax

--Atiend  v8

Atitit v3项目快速推进的推荐技术标准化 规范 流程相关推荐

  1. append从一个添加到另一_麻城一总投资1.5亿项目开工建设,另一项目预计9月底开工,还有一个年产值14亿的5G项目快速推进中...

    8月26日,湖北锡成食品有限公司在麻城经济开发区举行开工仪式,该项目由麻城籍人士丁诚投资建设,这是麻城市加大招商力度.突出返乡创业.推进疫后重振的成功案例. 江苏无锡锡成食品科技有限公司是一家民营高科 ...

  2. 推荐系统[一]:超详细知识介绍,一份完整的入门指南,解答推荐系统相关算法流程、衡量指标和应用,以及如何使用jieba分词库进行相似推荐,业界广告推荐技术最新进展

    搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排).系统架构.常见问题.算法项目实战总结.技术细节以及项目实战(含码源) 专栏详细介绍:搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排 ...

  3. 2022业界广告推荐技术最新进展与趋势:阿里、腾讯、字节、微软

    猜你喜欢 0.淘宝首页猜你喜欢推荐建模实践 1.[免费下载]2022年8月份热门报告 2.[实践]小红书推荐中台实践 3.微信视频号实时推荐技术架构分享 4.对比学习在宽狩推荐系统中的应用实践 5.微 ...

  4. atitit 音频 项目 系列功能表 音乐 v3 t67.docx Atitit 音频 项目 系列功能表 1.音频 音乐 语言领域的功能表 听歌识曲功能 酷我功能。 铃声 功能。。 音频切割(按

    atitit 音频 项目 系列功能表 音乐 v3 t67.docx Atitit 音频 项目 系列功能表 音频 音乐 语言领域的功能表 听歌识曲功能 酷我功能. 铃声 功能.. 音频切割(按照副歌部分 ...

  5. atitit 音频 项目 系列功能表 音乐 v3 t67.docx Atitit 音频 项目 系列功能表 音频 音乐 语言领域的功能表 听歌识曲功能 酷我功能。 铃声 功能。。 音频切割(按照副歌部

    atitit 音频 项目 系列功能表 音乐 v3 t67.docx Atitit 音频 项目 系列功能表 音频 音乐 语言领域的功能表 听歌识曲功能 酷我功能. 铃声 功能.. 音频切割(按照副歌部分 ...

  6. 深耕技术,与实践赛跑:一文告诉你如何稳妥快速完善区块链技术并有序推动商用​?...

    来源 |<区块链商业> 责编 | Carol 出品 | 区块链大本营(blockchain_camp) * 文末有福利! 浩大的区块链盛宴正在开场,各方人士.各路豪杰.各种资金,陆续入席. ...

  7. 每天超50亿推广流量、3亿商品展现,阿里妈妈的推荐技术有多牛?

    作者 | 夕颜 出品 | AI科技大本营(ID:rgznai100) 随着深度学习.强化学习.知识图谱.AutoML 等 AI 技术出现更多突破,推荐系统领域的企业和开发者开始将这些技术与传统推荐算法 ...

  8. 个性化智能推荐技术研究总结

    个性化智能推荐技术研究总结 随着网络与信息技术的飞速发展,互联网为用户提供越来越多的信息和服务,用户在得到便利的同时也不得不面临大量的垃圾信息和无意义数据,即所谓的信息超载问题.面对海量的网络资源,个 ...

  9. Flutter项目快速搭建指南

    本文字数:8683字 预计阅读时间:30 分钟 前言: 笔者在这之前已经有一年时间没有接触过flutter项目的开发了,目前由于新项目的需要,要重新开始搭建一个flutter项目.让我感到惊讶的是,f ...

  10. iOS学习资源汇总(开源项目、第三方库、技术博客等等)

    iOS学习资源汇总(开源项目.第三方库.技术博客等等) 字数3919 阅读10309 评论29 喜欢297 前言 Github众所周知,全球最大的同性社区交友网站,在这里你可以获取任何你想要的,只要你 ...

最新文章

  1. Python如何在以数字命名的文件前补0
  2. BNF范式(巴科斯范式)简介
  3. ehcache 手动刷新缓存_【第 21 期】一个架构师的缓存修炼之路
  4. Android在一个APP中通过包名或类名启动另一个APP
  5. 毕业设计-基于Python爬虫的疫情数据可视化系统
  6. 方法 注释_在IDEA中配置类和方法的文档注释
  7. 《Cocos2D-x权威指南》——3.7 容器类
  8. css02基本选择器
  9. Mac好用的图片压缩软件——JPG Compress 2 for Mac
  10. 计算机二级c语言的书籍,全国计算机二级c语言
  11. [乐意黎原创]联想G470老笔记本升级改造
  12. 系统架构设计师与系统分析师历年实体分析与解答下载_架构设计的本质
  13. android.dig机器人采访,机器人学导论心得 - osc_jjc36t9p的个人空间 - OSCHINA - 中文开源技术交流社区...
  14. 几款不错的整站下载工具
  15. LAMMPS分子动力学模拟技术与应用 第一性原理计算方法及应用
  16. 软件过程模型的管道理论
  17. 华容道3x3的技巧_华容道游戏秘决技巧
  18. 电视投屏显示设置服务器,Win10怎么投屏到电视?WIN10投屏到液晶电视具体步骤...
  19. IoTSAFE:Enforcing Safety and Security Policy with Real IoT Physical Interaction Discovery
  20. 图片文字怎么转换成Word文档?教你两招快速解决

热门文章

  1. 天津农学院计算机科学与技术在那个校区,天津农学院有几个校区及校区地址
  2. 中国人使用计算机互联网,发明计算机的核心专家,被美国隐瞒35年,只因是一名中国人...
  3. 为 Perl 定制 Vim
  4. 2016.7.27 VS搜索正则表达式,在UltraEdit中可选用Perl正则引擎,按C#语法搜索
  5. 微软MSDN订阅用户已可提前手工下载Windows 10安装包
  6. Emacs 配置 Python 编程环境
  7. Linux内核学习笔记一
  8. IIS架设PHP网站
  9. 页面之间传递参数的几种方法荟萃(经典)
  10. 唐努乌梁海问题的由来