`
1025250620
  • 浏览: 229780 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
(下面写的这些并不是Jdk的新特性,也不是Java某个版本提供的语法糖,不过是java语言早就提供的书写技巧,但是却被一直忽略的技巧) 最近代码中总能用到循环嵌套的情况,大致模板如下: forech1(..) {     forech2(...) {         ...         checkbreak1();         ...     }     ...     checkbreak2();     ... } 为了达到跳出循环forech1 的目的需要进行两个过程:checkbreak1和checkbreak2 ,问题在于checkbreak1 和checkbreak2这两个过 ...
当设计模式的观点被众人所推崇的时候,单例模式似乎已经成了掌握设计模式时候要掌握的基础模式。当然我并不认为设计模式中有基础和非基础之分,我只觉得模式的应用有普遍和非普遍之别。单例模式的普遍并不体现在应用场 ...
如果你是一个Android程序员,那么你一定对适配器模式情有独钟。如果你还不知道 适配器模式为何物,你还陶醉在自己对AdapterView子类运用的有多熟的暗中自喜中,希望这篇文章能给你当头棒喝。人们常常举电脑适配器的例子作为 适 ...
学 习模式的人对门面模式都不会太陌生,如果说工厂模式是对对象的高层次抽象的话,那么门面模式就是对对象,就是一种更高层次的抽象。这么说可能不好理解,我 们举个很好理解的例子,我们知道cpu的目的是为了运算,而 ...
有人说模式会让代码变的优雅,也有人说模式会让你的代码更利于扩展。我个人觉得这些说 的都对。但是滥用模式一样会成为被人诟病的痛点。与其说面向对象语言考察的主要标准是语法,不如考察对模式的理解更加切合实际。很大一部分人都觉得模式枯 燥无味,但其实模式是一些充满智慧的集合,可以用在任何的领域,本系列文章就是希望在一种新新的角度里看模式。《三国杀》一 直是我热衷的游戏之一,当然外界对它褒贬不一我们不作深究。我相信很少有人把模式和游戏联系起来,不过我还是愿意开这个先例,如果你觉得我的方式并不赖, 不妨跟我一起探讨,我很愿意和一些志同道合的人聊这些东西,当然不限制于任何的学科。虽然市面上关于模式的文章非常 ...
Sublime Text 2:代码提示插件 Sublime Text 2是个相当棒的编辑器,这一点异次元和Lucifr的文章都介绍的很充分了。用了一段时间觉得Sublime确实“性感”而“强大”。 只是Sublime Text 2毕竟是一款“编辑器”而非“集成开发环境”IDE ...
这次我们回顾一下函数的定义,在此之前,如我们学习结构化编程一样,任何语言都脱离不了某种范式,我们先从这些范式入手。首先是条件判断。 具体的结构是: if condition; then command; elif  condition; then commands; else     command; ...
看了<Unix的设计思想>,情不自禁希望重新学习我曾经忽视的linux的shell脚本编程。我并不是随波逐流,也不是那种顽固的技术党,只是很纯粹的想了解这么技术,如果你有什么好的想法,也可以跟我交流,下面是我的微博地址: http://weibo.com/1752090185/profile?rightmod=1&wvr=5&mod=personinfo 如果你有跟我一样的学习热情,不妨跟我一块学习下去。 先说变量的定义: 变量的定义非常的简单,就是变量名=变量值,中间不加空格。如果你加上空格,那么shell会认为这个是一个命令而不是一个语句。而你在引用变 ...
将自己的安装和配置过程记录下来供参考:安装: sudo apt-get install vim-gtk vim-doc cscope 创建启动项 sudo cat > /usr/share/applications/gvim.desktop << "EOF"[Desktop Entry] Name=Gvim Comment[zh_CN]=Gvim编辑器Exec=gvim Icon=/usr/share/pixmaps/gnome-word.png Terminal=false X-MultipleArgs=false Type
Android3.0新增功能:主要增加全息主题     1、Fragments:较activity粒度小的拥有独自生命周期的模块。可作为acitivity的一部分,activity通过FragmentManager管理独自的fragments back stack。     2、Action Bar:activity顶部标题栏的替代品,通常含logo,点击出现原menu菜单项--称作action item。可与tab、Fragments back stack合用。     3、粘贴版:系统范围的复制、粘贴。通过系统服务CLIPBOARD_SERVICE。     4、Drag ...
这几天一直在修改twigee的源代码,其中一个要加入的功能是常驻Notification栏,以前写的时候只能出现 在“通知”这一组中,想把它放在“正在运行”组中却不知道怎么放,查了下官方文档,找到了方法,在notification的flags字段 ...
    我们知道,在一个APK文件中,除了有代码文件之外,还有很多资源文件。这些资源文件是通过Android资源打包工具aapt(Android Asset Package Tool)打包到APK文件里面的。在打包之前,大部分文本格式的XML资源文件还会被编译成二进制格式的XML资源文件。在本文中,我们就详细分析 XML资源文件的编译和打包过程,为后面深入了解Android系统的资源管理框架打下坚实的基础。         在前面Android资源管理框架(Asset Manager)简要介绍和学习计划一 文中提到,只有那些类型为res/animator、res/anim、res/color ...
本章我们讲Proguard非常重要的一个步骤:混淆Obfuscator 混淆的目的很明显,是为了混淆语义。 我们能轻车熟路的找到混淆的源头: Obfuscator 的execute方法 我们来看一下就行混淆器给我们设置了怎样的访问者: ClassVisitor memberInfoLinker =            configuration.useUniqueClassMemberNames ?                (ClassVisitor)new AllMemberVisitor(new MethodLinker()) :                (Cla ...
目前,我们读了Proguard的代码,相信已经开始对访问者模式和装饰器模式有很深的理解,现在我们再带着这两个模式认真的回顾下代码,因为只有这样,我们才能更好的进行下面的代码阅读。但是如果你还带着疑问,不妨看下前面的章节, ...
学习Java的朋友应该都知道Java从刚开始的时候就打着平台无关性的旗号,说“一次编写,到处运行”,其实说到无关性,Java平台还有另外一 个无关 性那就是语言无关性,要实现语言无关性,那么Java体系中的class的文件结构或者 ...
Global site tag (gtag.js) - Google Analytics