自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(81)
  • 收藏
  • 关注

原创 凤凰涅槃-在2016年的我

2016年已经过去,在过去的一年,有许多的收获,也有许多的不足,过去的2016年,我想到的一个词语来概括2016,就是"凤凰涅槃"     凤凰涅槃: 凤凰是人世间幸福的使者,每五百年,它就要背负着积累于人世间的所有不快和仇恨恩怨,投身于熊熊烈火中自焚,以生命和美丽的终结换取人世的祥和与幸福。同样在肉体经受了巨大的痛苦和磨练后它们才能得以更美好的躯体得以重生。

2017-01-07 19:01:00 3277 1

原创 思维能力对于软件开发中的缺陷修复的促进作用

潜意识的思维 意识的逻辑推理  对于解决问题的能力的促进作用

2017-01-06 18:45:50 697

原创 认知 方法 思维《暗时间》读书笔记

今天终于阅读完《暗时间》这本书,前后读了两遍,这是一本与数学领域密切相关的一本书。直到阅读至第二遍,才有入木三分的感觉,也体会到了简洁的数学之美。我想从认知、方法、思维三个方面来讲述自己对这本书的理解。      认知       在这本书的序言中,作者就讲到了人人都需要学习心理学,通过学习心理学来避免一些认知的弱点,从而提高对客观世界的认知能力。   第一篇暗时间   1. 从科学的

2016-11-07 09:15:24 568

原创 IBM Http Server 7.0 不能正常启动的问题

对于被很多地方使用的ibm http server服务器,有时候会出现不能正常启动问题,产生的原因有很多。例如操作系统的登陆密码被修改了,作为以系统服务的形式存在的ibm http server的进程,因为与当前登录的session的权限有关系。如果没有权限,那么ibm http server的进程,就不能正常地运行。   对于这种情况,在ibm http server的后台运行的系统日志中,经

2016-11-07 09:15:12 2530

原创 在Spring的环境中,如何限制上传文件的文件大小

在开发中,经常地会有上传文件,文件超过限制大小的情况,对于这类的异常,我是这么处理的。在原来的系统的spring的配置文件中,有一个参数文件是用来配置上传文件时的文件大小的参数文件中的内容是:maxUploadSize=104857600可以从配置文件中读取配置的上传文件时的文件限制大小在系统中有一个继承AbstractHandlerExceptionResolver的

2016-11-07 09:15:06 2995

原创 在 ibm http server 和 websphere 之间配置 ssl

在 Websphere 环境中,如何安装插件,在Http Server与WebSphere之间配置SSL

2016-11-07 09:15:00 5043

原创 上传文件超过限制,造成长时间无响应的解决方案

在上传大文件,造成长时间没有响应的情况的解决方案:上传大文件时,因为http协议的响应问题,造成长时间不能向客户端发送响应请求头。解决方案:1. 向服务器发送上传大文件的request2. 在客户端采用轮循的方式,向服务器端再次发出一个新的请求,服务器端从request中获得session,判断session中是否存在文件上传的request中放置的文件过大的状态标识。如果存在。轮循的

2016-11-07 09:11:23 10847 2

原创 软件开发者的精力管理(一)

关注健康,从精力管理开始

2017-03-09 18:03:54 731

原创 Ext4使用总结(十二) 采用 CellEditing 方式的Grid,如何取得修改的单元格数据值

使用cellediting方式编辑数据的grid在保存数据时,需要进行数据的处理,所以数据处理的方式需要特别注意!       cellEditing 插件的事件 listeners: { edit: function (editor, e) { e.grid.getView().refresh(); } }

2017-03-06 17:34:24 4662 1

原创 如何高效能地学习和使用"工具"?

如何高效能地学习和使用"工具"?

2017-02-23 17:18:14 1155

原创 Ext4使用总结(十一) Grid的单元格的背景色和字体的处理

1    修改表格的单元的背景色       1.1 在html文件中,增加单元格的样式定义 1.2 Grid的单元格定义中增加renderer函数,使用样式2 不同颜色显示单元格中的字

2016-12-19 17:43:08 953

原创 Ext4使用总结(十) 如何在Ext4 的grid中显示精确到秒的时间

java的Entity中这样写:@DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME, pattern="yyyy-MM-dd HH:mm:ss")private Date a;@Temporal(TemporalType.TIMESTAMP)Date getA() {   return a;}Ext 的 mode

2016-12-08 18:37:35 703

原创 对于成长社区的发展的个人思考

前天与我的一位企业家、律师的同学吃饭,聊了很多,感恩!回家后,关于成长社区想了很多,做了简单整理!     这些年来,在工作之余,我参加了许多种类型的成长社区的活动,不同的社区,有着不同的特点,这些社区涉及到时间管理、心理学、性格、技术、健康等领域。从我个人来看,这些年,成长社区,逐渐地具有了初步的运营机制。这些成长社区对于我个人成长的帮助,是非常大的。最重要的是开阔视野、引发我的思考、进而去阅

2016-11-07 09:18:13 1065

原创 如何从项目开发的错误中走出

在软件的开发过程中,变化不可避免,特别是在项目类型的开发中。项目变化的目标经常是不清晰的。如果对多个目标进行试错,又或者对一个目标进行了多次的试错。而这些试错,又不会给用户带来最终的体验和价值,那这些试错性的开发是没有意义的。     这种情况就是:一鼓作气、再而衰、三而竭,就是浪费。导致了用户需要的真正的价值实现延迟,在开发过程中产生的缺陷激增,最终结果就是成本激增。        从程

2016-11-07 09:18:07 330

原创 在软件开发中,推理的典型运用

在软件开发中,如果我们能注重推理的运用,就能把复杂问题简单化。     在知识迁移时,如果能够考虑到类似的情景,进而思考具体的用法,即条件是什么?逻辑是什么?结论是什么?  有效地联想,会有效地找到问题的解。如下图:          感谢《暗时间》(作者:刘未鹏)带给我的知识!

2016-11-07 09:18:01 406

原创 在软件开发中,反证方法的典型运用

在我的开发中,经常存在着多分支条件校验的的情况,例如有三种情况导致出错,而导致三种情况的原因呢,又各是三种。 如果导致校验出错的情况,有n个分支,那么出错的解空间大小也许就是2的n次方,或者是3的n次方的大小。     如果我们在各分支上分别写条件去校验是否出错。那么可能会非常的复杂,而且对于出错的分支的预计,总是不是很全面、准确。即使你能够写出所有的出错的条件分支,那么写出来的代码将是非常丑陋

2016-11-07 09:17:55 320

原创 Ext4使用总结(九)radiogroup 必填项的提示信息为何是英文

xtype:'radiogroup ',allowBlank:false,blankText:"请您选择!",Ext.form.RadioGroup  document:blankText : StringError text to display if the allowBlank validation failsDefaults to: 'You must select on

2016-11-07 09:17:49 334

原创 软件开发者的学习

首先软件开发者的学习,我认为不再是以考试本身为主要目的。   软件开发者大多数都是在公司里工作。而公司面临着如何发展的问题。而这又与公司的类型、公司面临的局面、公司领导层能否正确地思考有关系。公司的发展会影响软件开发者的思考和发展。   学习有时是主动的、有时是被动的。主动的学习,往往建立在思考的基础之上。那么正确地思考,掌握科学的学习方法、持之以恒地去思考和学习, 最终让思考和学习成为一种习

2016-11-07 09:17:43 360

原创 软件开发者的持续成长需要注意的

一  学习      在学生时代,我们学习时,考试是非常重要的。但是如果一切为了考试。并且因为考试,养成了被动学习的习惯,我认为不是很好。如果因为考试没有考好,而因此背上了沉重的心理包袱,逐渐地失去了学习的本应该具有的兴趣,就更不好了。最后,如果这个心理包袱,随着年龄的增长,逐渐地形成了一种桎梏。那就是特别不好的。    当然,我并不是说考试本身不好,或者没有意义, 这不是对考试的否定!

2016-11-07 09:17:37 306

原创 个人成长之我见

情绪有好的一面,也有不好的一面,情感也可以被视作是情绪的一部分。既然是情绪,那么就会有好的情绪和坏的情绪。无论对于个人还是对于组织。好的情绪,都将会带来积极的效应。坏的情绪则不然。在《暗时间》(作者:刘未鹏) "逃出你的肖申克(三) 遇见20万年前的自己" 中所说,我们的大脑从只有原始的反射模块, 到拥有初步的情感区域,一直到进化历史上较为新近的"新皮层(neocortex)" 所支撑的高级认知能

2016-11-07 09:17:31 303

原创 使用Ext3 事件的机制,修改遗留系统的业务流程

目前,笔者正在修改一个基于Ext3的、业务流程并不是特别明晰的遗留系统。在不同的业务中,表单的编辑、查看、新增等都是有区别的。如下图:    我们应该如何实现系统的变化呢?1. 在遗留的系统中,通过新增表单的方式,来实现不同的业务选择。2. 把变化区域抽取出来。再通过事件的机制,实现业务子系统的局部的解耦。最终使不同业务的得到变化。避免了“霰弹式”的修改,完成“外科手术式”的修改。

2016-11-07 09:17:26 263

原创 参加第十三届BQConf大会有感

感觉自己听的还不够仔细,但是仍然感觉这次BQconf大会干货不少。    一,演讲《模式之路》中,在京东质量部部长 苗再青老师,对模式改进之路颇有心得,仔细听来,无形中收获很多。我猜测他的国学应该很不错的,呵呵。当我看到模式的三步演进时,下面的图形是方形的,方形上面是圆形的。我忽然间想到了《孙子兵法》中势篇所讲的: 木石之性,安则静,危则动,方则止,圆则行。故善战人之势,如转圆石于千仞之山者,

2016-11-07 09:17:20 348

原创 从心理学和传统文化角度来初步理解个体与环境

最近,我参加了2014年8月10号的敏捷个人的线下分享。自己分享的题目是“个体与环境”,现在主要是从以下几个方面来讲述。一、个体与环境、遗传与环境    《认识心理学.第9版》(中译名)中讲到现代心理学始终关注个体与环境,一直在探寻在多大程度上,行为是由思维、情绪、动机、态度、价值观、人格和基因等内部过程引起的呢?相反而言,行为由是在多大程度上是由刺激、环境因素和其他个体的存在而引起或触发的呢

2016-11-07 09:17:14 708

原创 Ext4使用总结(八) Ext4使用Ext.view.View 做菜单的灵活布局

在Ext4中使用Ext.view.View,可以灵活地做菜单布局1. 菜单的竖向布局,根据菜单的不同的状态显示不同的菜单的标识 itemSelector: 'div', overItemCls: 'menu-list-item-hover', tpl: new Ext.XTemplate( '', '{[this.renderI

2016-11-07 09:17:09 1674

原创 Ext4使用总结(七) Ext4使用view做图片的横向显示

Ext.define('MyChart.view.FlowChart', { extend: 'Ext.view.View', alias: 'widget.myChart', itemId: 'myChart', autoScroll: true, loadMask: true, itemSelector: 'div.chartList

2016-11-07 09:17:03 855

原创 ThoughtWorks TDD open-workshop第三次参加个人总结

我非常荣幸第三次参加了ThoughtWorks组织的 TDD open-workshop的活动。感谢组织者们的精心组织。我报名参加的是这次活动的Ruby场。我做为一个参加者,来写一下我个人的收获和个人的不足。    收获:    1. 本次活动,所采用的题目和第一场的题目,基本上是一致的。但是只有在这场活动中,我对题目才有了更深刻、更全面的认识。也就是说,在读懂题目的基础上,才能开始真正意义

2016-11-07 09:16:57 1324

原创 Ext4的MVC结构如何抽取公用组件

Ext.define("Component.controller.CommonController", { extend: 'Ext.app.Controller', refs:[ //搜索Form的ID需要是searchForm { ref : 'searchForm', selector: '#searchForm'} ],

2016-11-07 09:16:51 379

原创 重构时避免方向性错误

保持对系统和结构的可控,减少重构时的方向性错误

2016-11-07 09:16:45 454

原创 程序员如何有效地做到纵向管理,减少压力

这个时期,业余一直在看时间管理方面的书籍,这些天在回家的地铁里,我在读GTD《无压工作的艺术》,作者是戴维.艾伦。其中讲到了纵向管理项目计划的五个阶段。    作为程序员,似乎总免不了面临Block,面临压力,这本书第三章讲到:    为了:    控制某个项目    找出解决方案    确保行动切实可行    需要将精力聚焦某项活动上,做纵向管理。    我是程序员,深知自己的潜意

2016-11-07 09:16:40 283

原创 混乱到清晰-重构之拆离

周五,对一个模块的代码做重构,这部分的代码,是采用Ext4以MVC的方式实现的,在修改代码的过程中,经历了两个阶段,从混乱到清晰,而从混乱到清晰的转变的关键是静下心,思考一下,画出代码的结构草图,整个过程,我使用下面的一个草图来表达1.混乱  从图的上半部,可以看到 A、B两个Panel中分别拥有属于自己的Record, 而A和B属于同一个命名空间,所有对于record的处理,特别命名时

2016-11-07 09:16:34 371

原创 Ext4使用总结(六)树的动态加载,分支的刷新

对于Ext4的树,与Ext.grid.Panel是属于同一个父类Ext.panel.Table,所有有树的有许多的基本特性可以参照Table和grid来学习,当然树也有自己的特性。如下图:在树的动态加载,有如下配置:Tree的Store中需要的属性:autoLoad: true,root:{ id:null, text: "根节点",

2016-11-07 09:16:27 1689

原创 Ext4使用总结(五)布局的调试

在使用Ext4的过程中,因为刚开始对Ext4,固有的技术特点不是很了解,在调试时,出现了layout error,这样的布局错误,其它的提示信息很少,对与复杂的布局,要找到布局出现错误的地方,非常的困难。在stackoverflow网站找到(后来在Ext设计权威指南中也看到过),Ext4,是有自己的布局调试工具的:所以,我在html文件中,加入如下的引用: 随

2016-11-07 09:16:21 453

原创 Ext4使用总结(四)Ext4跨命名空间 引用

调用端Ext的加载配置 Ext.Loader.setConfig({ enabled: true, paths : { 'CommonView.common.plugin' : '../common/plugin' }});在公用的命名域内,可以做action,event,logic等的处理,如

2016-11-07 09:16:15 384

原创 Ext4使用总结(三) 使用Model加载Form

loadFormData: function (modelPath, formName, centerpage, record) { Ext.ModelManager.getModel(modelPath).load(record.data.id, { failure:function (record, operation) {//

2016-11-07 09:16:09 441

原创 Ext4使用总结(二)简单的hbox布局

布局的合理利用:如图:{ xtype:'container', margins:'5 0 0 0', layout:{ align:'stretch

2016-11-07 09:16:03 3700

原创 Ext4使用总结(一)解除小数位运算溢出

在Ext中,具有合计功能的grid,有时会出现小数位运算溢出的问题,可以在合计列上加入如下代码来解除问题: summaryType: 'sum', renderer: function(val) { return Ext.util.Format.round(val, 6); }, ..... 校验时也可以使用函数Ext.

2016-11-07 09:15:58 553

原创 软件开发中的版本控制

面对不知所措的异常时,版本的控制,显得是如此的重要

2016-11-07 09:15:52 821

原创 通过消除重复逻辑,实现解耦

最近,碰到一个问题,在不同的模块间产生了强的依赖,导致模块A的数据执行完毕之后,在模块B,C无法找到模块A的数据,而模块B和C属于同一类型的业务数据,如下图所示:当业务 A 调用 UNION_DATA_FLOW时,同时也会调用逻辑B和逻辑C,这时逻辑B和逻辑C对于业务A就是冗余逻辑当业务B或C调用UNION_DATA_FLOW时,同时也会调用逻辑A,这时逻辑A相对于业务B和C就是冗余逻辑

2016-11-07 09:15:46 849

原创 从重复逻辑中抽取新的数据组件

在A,B,C三个类中的不同的方法method中分布有重复逻辑,如果需要新增业务。不消除重复逻辑,只是简单地通过复制,粘贴的方式来实现新增的业务,重复逻辑会继续增加,会造成不必要的复杂度。如下图:                 抽取出重复逻辑,形成一个新的数组组件LogicHandler,如果需要使用就可以通过注入的方式,以关联的形式,来使用逻辑。   如下图所示:

2016-11-07 09:15:41 279

原创 分析、思考、重构

在平时的开发中,我们总是习惯于使用过程化的思维方式来编写代码,没有通过开发高内聚的方法,来结构化自己的思维,从而消除逻辑重复,逻辑复用不仅仅是指在一个平面内的逻辑复用,更应该是一种结构化的逻辑复用。下面,我用平时开发过程中一个重构的过程,来做一个描述。   假设,现在有三个类,如下图所示:   在这三个class中,分别有三个重复的属性:a, b, c, 而且这三个属性具有相关性,对

2016-11-07 09:15:35 466

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除