Atitit.提升 升级类库框架后的api代码兼容性设计指南 1. 增加api直接增加,版本号在注释上面增加1 2. 废弃api,使用主见@dep1 3. 修改api,1 4. 修改依赖import,雅瑶增加文件模式.保持兼容性..1 5. 优先选择同一个文件内的修改,因为文件多了不好管理了,编译速度也慢的了...1 5.1. 增加文件模式的优缺点2 1. 增加api直接增加,版本号在注释上面增加 2. 废弃api,使用主见@dep   3. 修改api, 先,添加一个api 方法,附件ver.…
Atitit.提升电子商务安全性 在线充值功能安全方面的设计 1. 防止dataservcie对充值订单表的直接改写,只能通过api,不能通过sql1 1.1. Order_id的安全取值,注入检测1 1.2. 判断是否有此订单,否则CantFindRechargeOrderEx1 1.3. 如果订单状态有无.throw new RechargeOrderStatErr(" order.stat:" + order_id + "." + stat);1 1.4. 判…
atitit.jQuery Validate验证框架详解与ati Validate 设计新特性 1. AtiValidate的目标1 2. 默的认校验规则1 2.1. 使用方式 1.metadata用法,将校验规则写到控件中2 2.2. 2.将校验规则写到js代码中2 3. 校验2 4. jquery的validate问题3 1. AtiValidate的目标 支持验证单个元素 支持后端服务器验证 支持html ext 标签的属性书写方式 可以在btn-click时间中手动调用. 2. 默的认校…
Atitit. 提升软件开发效率and 开发质量---java 实现dsl 4gl 的本质and 精髓  O725 1. DSL主要分为三类:外部DSL.内部DSL,以及语言工作台. 1 2. DSL规则 2 2.1. DSL = 整洁的代码 2 2.2. DSL必须以文本代码的形式出现 2 2.3. DSL的语法应该尽可能地接近英语或者其他自然语言 2 3. DSL 文本形式 or 图形标识 2 4. 实现方式 2 4.1. 2. 管道抽象 2 4.2. 3. 层次结构抽象 3 4.3. 4.…
Atitit. 提升开发效率与质量DSL ( 3) ----实现DSL的方式总结 1. 管道抽象 1 2. 层次结构抽象(json,xml etc) 1 3. 异步抽象promise 1 4. Ide  code templete 1 5. 方法链( 流接口.??管道抽象??) 1 6. static factory method)和import 1 7. varargs 1 8. 元编程(anno??) 1 9. 易读API 1 10. 方法链 1 11. 功能序列 1 12. 嵌套函数 2…
Atitit.编程语言新特性 通过类库框架模式增强 提升草案 v3 q27 1. 修改历史2 2. 适用语言::几乎所有编程语言.语言提升的三个渠道::语法,类库,框架,ide2 2.1. 单根继承 vs  多跟继承3 2.2. 默认参数3 2.3. 等号判断相等,儿不是equ3 2.4. 隐式类型,类型推导3 2.5. 匿名类型3 2.6. 初始化器  对象初始化器 与 集合初始化器 { }4 2.7. 委托4 2.8. 内置委托 Func / Action 4 2.9. 标准查询运算符 St…
atitit.提升研发效率的利器---重型框架与类库的差别与设计原则 1. 框架的意义---设计的复用 1 1.1. 重型框架就是it界的重武器. 1 2. 框架 VS. 库 可视化图形化 1 2.1. 类库 2 2.2. 应用框架 2 2.3. 框架与类库的差别主要表如今下面几个方面: 2 2.4. 框架模式就是參团游,而自由行则类似于库的组合 3 3. 框架的特点 3 3.1.  没有一个万能的框架 3 3.2. 框架是不可组合的 3 3.3. 框架设计的俩个方向::全栈式与精细化 4 4.…
atitit.提升研发管理的利器---重型框架 框架 类库的区别 1. 重型框架就是it界的重武器. 1 2. 框架 VS. 库 可视化图形化 1 3. 应用框架 1 4. 类库 2 5. 框架是不可组合的 2 6. 框架设计的俩个方向::全栈式与精细化 2 7. 选择框架还是库..可组合的库 3 8. 在最后 3 1. 重型框架就是it界的重武器. 2. 框架 VS. 库 可视化图形化 框架和库有什么区别呢?两者的主要不同之处在于如何使用它们以及编写什么样的代码. · 框架--框架控制了系统的…
atitit.提升研发效率的利器---重型框架与类库的区别与设计原则 1. 框架的意义---设计的复用 1 1.1. 重型框架就是it界的重武器. 1 2. 框架 VS. 库 可视化图形化 1 2.1. 类库 2 2.2. 应用框架 2 2.3. 框架与类库的区别主要表现在以下几个方面: 2 2.4. 框架模式就是参团游,而自由行则类似于库的组合 3 3. 框架的特点 3 3.1.  没有一个万能的框架 3 3.2. 框架是不可组合的 3 3.3. 框架设计的俩个方向::全栈式与精细化 4 4.…
Atitit.提升api兼容性的方法 v3 q326 1. Atitit.兼容性的“一加三”策略1 2. 2. 扩展表模式1 3. 3. 同时运行模式1 3.1. 3.1. 完美的后向兼容性2 3.2. 3.2. 虚拟机模式2 3.3. 3.3. 版本兼容性模式2 4. 4. 向前兼容(为升级预留足够余地)3 5. 5. “向前兼容”理念3 6. 6. 专门处理的软件列表3 7. 新api  vs  修改旧的api4 8. Threadlocal4 9. ref5 1. Atitit.兼容性的“…
Atitit 图像处理之编程之类库调用的接口api cli gui ws rest  attilax大总结.docx 1. 为什么需要接口调用??1 1.1. 为了方便集成复用模块类库1 1.2. 嫁接不同的语言与类库,以及嵌入dsl1 1.3. 方便跨机器,跨开发板,跨硬件,跨运行环境的代码复用2 2. 接口api的历史2 2.1. 发展历程2 2.2. API 这个类库默认提供的接口,要求同语言调用一般2 2.3. Cli接口 命令行接口.单机跨语言接口(推荐比较常用)3 2.4. 图形用户…
atitit.提升软件开发效率大的总结O5 #---平台化.组件化 1 #--cbb公用模块的建设 1 #---内部最佳流程方法跟实践的总结 2 #---内部知识体系的建设 2 #---问题Qa库的建设. 2 #---内部框架/标准类库/api/业务库的建设... 2 #----开发工具集和配置的建设.... 2 #---代码生成跟代码转换工具的集合,互操作等 3 #----常常关注开发语言,类库,框架,工具的新特性,补充到我们的内部框架里面.固化下来. 3 #---代码输入法 3 #----热…
Atitit. 提升存储过程与编程语言的可读性解决方案v3 qc25.docx 1. 大原则:分解+命名1 1.1. 命名规范1 1.2. 分层.DI和AOP是继OO1 1.3. 运算符可读性一般要比函数好1 1.4. 函数式样 流程控制全部函数化2 1.5. 递归代替循环2 1.6. 中缀表达式  取代 前后缀表达式2 1.7. 有时候异常处理也会提升可读性2 1.8. dsl2 2. Refactor2 2.1. 方法链2 2.2. 其他2 2.3. PIE 原则:意图清楚而且表达明确地编程…
atitit.提升软件开发的效率and 质量的那些强大概念and方法总结 1. 主流编程中三个最糟糕的问题 1 1.1. 从理解问题后到实现的时间很长 1 1.2. 理解和维护代码  2 1.3. 学习曲线高  2 1.4. 扩展性烂 2 1. Coc 2 2. Dsl 2 3. DSM 3 4. 4gl 3 5. 产生式编程(Generative Programming,GP) 3 5.1. 为重用而开发以及使用重用的开发 3 6. 在模型驱动开发(MDD)介绍MDA 4 7. ·  元编程…
ThinkPHP V5.——为API开发而设计的高性能框架 ThinkPHP5..0版本是一个颠覆和重构版本,采用全新的架构思想,引入了很多的PHP新特性,优化了核心,减少了依赖,实现了真正的惰性加载. GitHub项目地址:点击访问 ThinkPHP5在保持快速开发和大道至简的核心理念不变的同时,PHP版本要求提升到5.,对已有的CBD模式做了更深的强化,优化核心,减少依赖,基于全新的架构思想和命名空间实现,是ThinkPHP突破原有框架思路的颠覆之作,其主要特性包括: 基于命名空间和众多PH…
Atitit.提升语言可读性原理与实践 表1-1  语言评价标准和影响它们的语言特性1 1.3.1.2  正交性2 1.3.2.2  对抽象的支持3 1.3.2.3  表达性3 .6  语言设计中的权衡4 表1-1  语言评价标准和影响它们的语言特性 标    准 特性 可 读 性 可 写 性 可 靠 性 简单性 · · · 正交性 · · · 数据类型 · · · 语法设计 · · · 对抽象的支持 · · 表达 · · 类型检查 · 异常处理 · 有限地使用别名 ·   第三个潜在的问题是运…
Atitit.提升稳定性-----分析内存泄漏PermGen OOM跟解决之道...java 1. 内存区域的划分 1 2. PermGen内存溢出深入分析 1 3. PermGen OOM原因总结 2 4. 常见的类加载器和类型卸载的可能性总结 2 5. PermGen内存溢出的应对措施 3 6. 第二种就是使用oracle的BEA JDK,因为这个里面的JVM没有PermGen space 3 7. 参考 3 1. 内存区域的划分 java的内存泄漏基本上按照内存区域的划分可以分为: 1 堆…
atitit.提升开发效率---mda 软件开发方式的革命--(2) 1. 一个完整的MDA规范包含: 1 2. 一个完整的MDA应用程序包含: 1 3. MDA能够带来的最大的三个好处是什么? 2 4. 三大MDA工具 2 5. 代码补充 3 6. Mda的问题 3 7. EMF与MDA 4 8. MDA跟代码自动生成的区别 4 9. openMDX-开源MDA平台 5 10. openMDX 的开发过程 5 11. MDA的两种实现 5 12. 参考 6 1.  一个完整的MDA规范包含:…
atitit 提升数据库死锁处理总结 正常的来说,锁上都是自动的..不用官.. 正常来讲,insert时不需要加rowlock,就默认是rowlock了, #-----锁的自动转换原理.(正常的不用理它,除外alter  表格字段) 当事务超出其升级阈值时,数据库也许 会自动将行锁和页锁升级为表锁. 例如,在行上执行表事务时,数据库会自动在受影响的行上获取锁,同时将更高级别的意向锁置于包含这些行的页和表上.所有相关的索引页也将同时锁定.当事务所持有的锁的数量超出其阈值时,就会尝试将表上的意向锁更…
Atitit 提升进度的大原则与方法  高层方法  attilax总结 生产力的提升点 1.1. 管理,管理的发展发展非常缓慢,1 1.2. 方法论(前后分离,dsl等)1 1.3. 工具( 工具链 甚至包括类库等)1 1.4. 积累(类库,框架,开发平台)1 1.5. 参考资料1 1.1. 管理,管理的发展发展非常缓慢, 期间当然出现了一些东西,例如...等等,但是远没有好上1000倍 事实上,近几十年来的努力主要体现在工具以及累计沉淀等方面 1.2. 方法论(前后分离,dsl等) 抽象级别越…
Atitit 提升效率 界面gui方面的前后端分离与cbb体系建设 规范与推荐标准 1. 界面gui方面的前后端分离重大意义1 2. 业务逻辑也适当的迁移js化1 3. 常用分离方法2 3.1. 页面html 静态化2 3.2. Html Ide用好dw ,切莫手写ui界面代码,少量调整可以手动调整.2 3.3. H5 html+ajax与后端彻底的前后端分离2 3.4. Ajax 推荐使用fetch w3c api.也可使用jq ajax备用 .2 3.5. 数据绑定到表格,到form表单使用…
Atitit 图像处理 halcon类库的使用  范例边缘检测 attilax总结 1.1. 安装halcon11 ..体积大概1g压缩模式1 1.2. Halcon的科技树1 1.3. 启动 "D:\Program Files\MVTec\HALCON-11.0\bin\x86sse2-win32\hdevelop.exe"2 1.4. 编写hdev脚本 用的halcon自己的脚本语言2 1.5. 查找边缘算法3 1.6. 查函数列表与资料3 1.7. 对多语言的支持,以及接口,以及…
atitit.提升性能AppCache 1.1. 起源1 2. 离线存储2 3. AppCache2 3.1. Appcache事件点如图2 3.2. Manifest文件4 3.3. 自动化工具4 3.3.1. CACHE:(必须)5 3.4. 页面都离线了,ajax 更新5 3.5. 页面的参数如何携带使用js解析6 3.6. 离线页面的更新  长尾问题6 3.7. 如何更新缓存7 3.8. 注意事项8 1.1. 起源 html5之前的网页,都是无连接,必须联网才能访问,这其实也是web的特…
Atitit.提升软件Web应用程序 app性能的方法原理 h5 js java c# php python android .net 1. 提升单例有能力的1 2. 减少工作数量2 2.1. 减少距离2 2.2. 添加索引2 2.3. Dma api2 2.4. Cdn2 2.5. Cache2 2.6. Pool技术2 2.7. 减少HTTP请求数2 2.8.  ·更大的数据格式2 2.9. 循环展开2 2.10. 循环转置3 2.11. 提高Cache命中率3 2.12. 小组件替换大组件…
atitit.提升兼容性最佳实践 p825.doc 1. Atitit.兼容性的“一加三”策略1 2. 扩展表模式2 3. 同时运行模式2 3.1. 完美的后向兼容性3 3.2. 虚拟机模式3 3.3. 版本兼容性模式3 4. 向前兼容(为升级预留足够余地)4 5. “向前兼容”理念4 6. 专门处理的软件列表4 1. Atitit.兼容性的“一加三”策略 “通过移除陈旧代码降低编译器维护成本,Java9 javac 将不再支持Java 1.5以及更早的代码.JDK9的“一加三”策略意味着该版本…
Atitit.uml2 api 的编程代码实现设计uml开发 使用eclipse jar java 版本 1. clipse提供了UML的底层Java包, 1 2. MDTUML2Getting Started with UML21 3. 要使用的jar2 4. 矢量绘图系统 java2 5. JpGraph 3.0.72 6. Code4 7. Ref8 1. clipse提供了UML的底层Java包, 就是说用纯代码可以构建一个UML模型,当构建完之后需要保存到磁盘上以备以后使用,该UML模…
atitit.提升开发效率---使用服务器控件生命周期  asp.net 11个阶段  java jsf 的6个阶段比较 如下列举了服务器控件生命周期所要经历的11个阶段. (1)初始化-- --在此阶段中,主要完成两项工作:一.初始化在传入Web请求生命周期内所需的设置:二.跟踪视图状态.首先,页面框架通过默认方式引发Init事件, 并调用OnInit()方法,控件开发人员可以重写该方法为控件提供初始化逻辑.此后,页面框架将调用TrackViewState方法来跟踪视图状态. 需要注意的是:多…
atitit.提升稳定性---hibernate 增加重试retry 机制解决数据库连接关闭 1. 流程总结 retry(5times).invoke(xxx).test().rest().$() throw OvertimeEX retry(5times):: throw OvertimeEX 调用器() /// 调用原来的api 测试器() :::://////返回T/f Reset()     //// 重设器 End:: 测试器() 命令Case1 ok, 返回T Case2 fail,…
atitit.提升备份文件复制速度(3) ----建立同步删除脚本 1. 建立同步删除脚本两个方法.. 1 2. 1从回收站info2文件... 1 3. 清理结束在后snap比较 1 4. Npp replace  gene del from lst 1 5. Code 2 1. 建立同步删除脚本两个方法.. 2. 1从回收站info2文件... Copy info2 {String s="G:\\RECYCLER\\S-1-5-21-602162358-1284227242-68200333…
atitit.提升开发效率---MDA 软件开发方式的革命(3)----自动化建表 1. 建模在后自动建表 1 1. 传统上,需要首先建表,在业务编码.. 1 2. 模型驱动建表---更多简化法是在建模在后自动建表 1 2. 自动建表的原理: 1 3. 自动建表工具::hibernate.hbm2ddl 跟Hibernate4.1 2 4. hbm2ddl最佳实践 2 3. hibernate.hbm2ddl.auto 2 5. Java语句执行 3 6. 使用Ant 执行hbm2ddl 3 7…