`
文章列表
上篇博客介绍了logback是怎么对接slf4j的,简言之,就是通过下面这行代码 return StaticLoggerBinder.getSingleton().getLoggerFactory(); slf4j委托具体实现框架的StaticLoggerBinder来返回一个ILoggerFactory,从而对接到具体实现框架上 这篇博客就接 ...
最近开始学习JVM,在此把学习中的体会记录下来。资料主要来源是《深入理解JAVA虚拟机》这本书,以及一些网上找的其他资料。目标JVM是HotSpot 1、JAVA运行时数据区包括程序计数器、堆、虚拟机栈、本地方法栈、方法区 2、内存 ...
1、组合和聚合的区别 组合,叫compose。在代码层面上用内部类实现,如果A类由B类组合而成,则A和B有共同的生命周期。打比方的话就是人和大脑的关系,人由大脑组合而成,如果人死了,大脑也活不成。用UML表示,是一个实心 ...
以前也读过一些开源项目的源码,主要是spring和ant,不过那会都没记录下来,也没仔细消化吸收,现在时间久了忘了好多,而且模模糊糊地感觉学到了一些东西,但具体是什么也说不出个所以然来。深刻反省,这样读源码效果太差。 前几天决定重新开始读源码,并把读源码的过程和收获记录下来。想了想决定先用1-2个月时间把logback的源码看一下。目的是……,好吧,没什么目的,就是想读一下。 大家知道,slf4j为各种日志框架提供了一个统一的界面,使用户可以用统一的接口记录日志,但是动态地决定真正的实现框架。logback,log4j,common-logging等框架都实现了这些接口。所以分析logbac ...
现在这家公司的开发流程很奇怪,和以前的公司很不一样 一、首先拿到一个客户需求,这个客户需求(OR)可能就只有一句话:“做XXXX运维成本太高了,管理也很混乱,能不能给做个管理系统给控制一下” 由于这个客户很重要,所以虽然需求很不明确,连系统该做成啥样都不知道,但是领导还是决定要做。于是项目组就启动了。这个时候所有已知的东西,就只有这个一句话的OR 二、第一阶段,叫Chart开发,这个阶段找了很多业务专家,以及有现场运维实际经验的人来。一边猜想,一边问。这个阶段主要解决以下问题: 1、这个系统做出来要解决什么问题 2、这个系统大概是啥样的 3、这个系统做出来以后,用户要怎么用 然后这个阶段 ...
最近做的这个项目,是一个外线管理系统。 外线人员使用android应用与服务端进行交互,内线人员使用浏览器访问系统。服务端既提供了给浏览器访问的页面,也暴露了一些接口给智能手机调用。 我原本觉得,这理所当然是一 ...
先上效果图: 下面详细说说这个页面是怎么做出来的: 1、这个页面最下方可以看到一个TAB页签,分别是“主页”、“提及”等等,这个是一个在底部的TAB分页样式,在上一篇博客中已经介绍了 2、这个页面就是“主页”这个子页面,是嵌入到上面说的TAB布局中的。由3个部分组成,分别是最上面的状态栏(包含2个按钮,和一个文本区)、中间的列表、最下方的“更多”按钮(当更多按钮点击时,会加载更多数据,并且出现LOADING提示) <?xml version="1.0" encoding="utf-8"?> <FrameLayout xm ...
这篇博客是参考helloandroid兄的腾讯微博应用,我整理了一下。完整项目的介绍请在http://helloandroid.iteye.com/看 首先是效果图: 我把helloandroid兄的源代码整理了一下,并梳理了涉及到的知识点,总结如下: 1、TabActivity的使用 public class MainActivity extends TabActivity { private TabHost tabHost; @Override public void onCreate(Bundle savedInstanceState) { sup ...
在开发SMS等应用时,有时调用相关的API会要求提供一个类型为PendingIntent的参数,那么这个PendingIntent是啥东西呢 A PendingIntent specifies an action to take in the future. It lets you pass a future Intent to another application and allow that application to execute that Intent as if it had the same permissions as your application, whether o ...
1、 通过Context.getSharedPreferences(String fileName,int mode)方法,可以打开一个xml文件,文件的位置在/data/data/package_name/shared_prefs/fileName.xml,如果不存在,则会自动创建。可以对该文件进行读写操作,在应用内的各组件之间共享数据。如果将mode设置为Context.MODE_WORLD_READ或者Context.MODE_WORLD_WRITE,则还可以被其他应用访问到。不过这不是android推荐的方式,要实现跨应用共享数据,推荐的方式是用ContentProvider实现 2、 ...
明天才开始讨论包需求,估计离进入开发阶段还要一段时间,今天继续复习android in action,结合之前的知识,把总结的东西记一记 1. 一个应用内部各组件之间的跳转,以及不同应用间组件的跳转(这里的组件包括activity、service、 ...

额~~~~

一命二运三风水,四积功德五读书~~~~ 思来想去,哥悍然走上了读书的道路。。。
最近2周预研做得差不多了,没什么新功能点要研究,就回头再看看android in action这本书,翻翻google的文档和API,感觉进展比之前做预研的时候慢一些,现在把这两周总结到的一些东西记一记 1. 当发生ANR时,记录会保存在data/anr/tr ...
项目前期的技术点预研完成了,最近开始做原型开发。 之前没有在android上写过单元测试,今天写了几个组件,没有测试过,心里发虚,觉得都是裸代码,不稳啊。就试了一下单元测试怎么弄,总结如下: 1. eclipse里的默认做法是建一个什么测试工程(test project),不知道为啥要这样,以前java也没见这么搞。所以还是按照以前的做法,跟src目录平行地创建一个test目录 2. eclipse里好像不能直接new->junit test,真麻烦,只好手动在test目录下创建同名的package,比如要测试com.xxx.workforce.db下的一个QuestDAO,就在te ...
前三周android预研中,把可能用到的技术点都识别了,并完成了一个DEMO。之后一直在等UCD的同事把应用界面设计出来。。等待过程中有点无聊,就把android in action看完了,UCD的设计结果还是没出来,于是继续看google的android文档。刚才看到process and thread这节,总结整理一下 通过在manifest中配置,是可以改变android系统的默认行为的,不过好像没想到有什么场景需要这样做,所以这篇博客只总结默认配置下的情况 1. 一个application对应一个process 2. 所有的component(包括activity,service) ...
Global site tag (gtag.js) - Google Analytics