简单工厂模式 和 工厂方法模式 的区别 简单工厂模式工厂方法模式比较这两个结构图,我们会发现,每个结构图右侧的红色边框内有很大的区别,前者的简单工厂没有子类,只有一些逻辑判断代码;而后者却又重新分出四个具体的工厂。到这里,两种模式的区别之一就出来了。那么,工厂方法模式中的逻辑判断代码在哪里呢?答案是...
分类:
其他好文 时间:
2014-07-18 20:38:35
阅读次数:
307
通常应用程序在处理触摸事件时一般会用到motionevent.getAction()来判断上报的触摸点是ACTION_DOWN、ACTION_MOVE或ACTION_UP,然后做出移动、缩放等处理逻辑。每一个触摸点属性是在哪里定义的呢?是驱动上报就标记了每个点的触摸属性吗?
直接给结论:对于触摸点的属性,在InputReader中的dispatchTouches()函数中定义,而不是驱动给的。
...
分类:
移动开发 时间:
2014-07-18 18:08:59
阅读次数:
320
第一个项目虽然失败了,但是最起码成功上线,并且获得了一定的收入(虽然杯水车薪),也因为第一个项目拉来了投资。但是第二个项目就彻彻底底的胎死腹中了。
没有检讨、没有总结,大家自然而然而又兴高采烈的开启了第三个项目。
我感到有些悲哀。如果我们都不知道自己的弱点在哪里,不明白自己的优势在哪里,如何能够扬长避短?一个创业团队难道靠硬推能推出一款游戏吗?
...
分类:
其他好文 时间:
2014-07-18 18:01:12
阅读次数:
194
ASP.NETMVC描述类型(二)前言上个篇幅中说到ControllerDescriptor类型的由来过程,对于ControllerDescriptor类型来言ActionDescriptor类型的生成则简单的多了,本章的主题有两个,第一是说明ActionDescriptor类型的生成过程,第二是描述ActionDescriptor类型的重要性,在哪里体..
分类:
Web程序 时间:
2014-07-18 13:22:06
阅读次数:
218
上个篇幅中说到ControllerDescriptor类型的由来过程,对于ControllerDescriptor类型来言ActionDescriptor类型的生成则简单的多了,本章的主题有两个,第一是说明ActionDescriptor类型的生成过程,第二是描述ActionDescriptor类型的重要性,在哪里体现它的重要性呢?对于前面篇幅的学习忽略了最后控制器方法的执行过程,而在这个执行过程中ActionDescriptor类型起到了至关重要的作用,来看下文吧。...
分类:
Web程序 时间:
2014-07-18 12:20:11
阅读次数:
197
n表示有n个卡片,每个卡片有一种颜色和一个数字(共五种不同的颜色和五个不同的数字)。事先知道每种卡片有几张,但是不知道具体的位置。问需要几次提示就可以知道所有卡片的位置都在哪里:每次提示可以选择一个颜色或者一个数字,就可以知道含有所选属性的牌有哪些。...
分类:
其他好文 时间:
2014-07-17 19:21:44
阅读次数:
222
(会持续更新)这边讲的常用快捷键是指做完Keymap到Eclipse后的,不是纯Android Studio的,这边主要讲下比较常用的一些快捷键:
Ctrl+G / Ctrl+Alt+Shift+G:查询变量或者函数在哪里被使用或被调用,后者是前者的复杂表现,可以选择查询范围等。
Alt+H:查找功能,全局查找
F4:查看类继承关系
F2:查看文档说明(函数使用说明)
Ctrl+E:查看...
分类:
移动开发 时间:
2014-07-17 19:03:16
阅读次数:
275
暂时草记一下,有时间好好整理## ctags如果只是查看函数与变量是在哪里定义的,用ctags就可以了。ctrl+]跳到定义的地方,ctrl+t跳回来。想要像IDE那样在旁边显示函数与变量列表,用taglist插件。ctags下载地址## cscope如果想要更多,比如: * 函数是在哪里实现的 ....
分类:
编程语言 时间:
2014-07-17 11:14:08
阅读次数:
284
在DRP项目中,我们使用了ThreadLocal来创建Connection连接,避免了一直以参数的形式将Connection向下传递(传递connection的目的是由于jdbc事务要求确保使用同一个connection连接)。那么ThreadLocal是如果做到的呢?它和同步锁的不同在哪里?
是什么:
对于ThreadLocal看英文单词我们很容易理解为一个线程的本地实现,但是它...
分类:
编程语言 时间:
2014-07-17 10:30:04
阅读次数:
314
Ctrl+/:联想Ctrl+F1:联想Ctrl+O:查看项目所用变量以及方法目录,可搜索Ctrl+T:查询类的继承管理Ctrl+D:删除整行Ctrl+Shirft+G:查看此方法在哪里调用Ctrl+F12:虚拟机旋转屏幕Ctrl+shirf+O:自动匹配所需的包Alt+Shirft+M(Refactor:ExtractMethod):将代码抽象成方法新建..
分类:
移动开发 时间:
2014-07-17 08:41:56
阅读次数:
251