- 博客(22)
- 资源 (4)
- 收藏
- 关注
原创 OpenGL取景变换(视图变换)矩阵推导
OpenGL取景变换(视图变换)矩阵推导标签(空格分隔): OpenGL VR 游戏开发前言关于取景变换(视图变换)矩阵的推导本人查过许多资料, 包过关于openGL的和数学方面, 数学方面的资料很严谨, 推导过程环环相扣, 但是数书知识毕竟是理论, 怎么将理论变成实现的代码, 数学知识是不涉及的. 代码原理方面的知识只能查找openGL或图形学相关的资料, 但是这些资料有个缺点就是涉及数学原理的地
2017-02-13 15:11:12 2818 1
原创 构建工具的发展及Android Gradle快速上手
最近谷歌宣布官方不再维护Eclipse ADT了,之后将更加专注于Android Studio的功能和性能上的改进,Studio使用了Gradle编译系统,本文旨在帮助大家认识Gradle,看懂Gradle脚本并能作一些常用的定制,同时介绍一下构建工具的发展,欢迎大家一起探讨研究。
2015-07-06 22:07:53 2319
原创 对红黑树的不种见解
红黑树很出名,也有很多人知道怎么用,但红黑树是怎么发明的,发明动机是什么,设计思想是什么一直困扰着我,我以到网上搜索了很久都没有答案,就找到了红黑树之前就对称平衡二叉树,这种树有种不同类型的结点,是因为有彩色打印机,才把这两种不同类型的结点表示成不同的颜色,其它的我今天就来大胆猜测一下。其实红黑树之所以那么流行,是因为他很好的平衡了一对矛盾,就是平衡度与维持这个平衡度所需要的性能代价,何谓平衡
2014-04-02 20:00:23 864
原创 用剪纸类比Android View的绘制流程
这个话题网上已有许多优秀的文章,但大部分都讲得比较严肃,本文打算用剪纸来类比,旨在帮助大家理解也方便记忆,本文尽量少提代码,免得想睡,只传达原理和思想。首先请注意一个界面的所有View是用一棵树组织的,如:View的绘制主要经过三个流程,分别是测量(measure),布局(layout),绘画(draw),以下我们逐个介绍。我们需要一块布,代表画布,来吧:值得注
2014-03-18 23:14:39 969
原创 漫淡Android开发与Web开发的渊源
本文的主旨就是Web开发有很多先进的思想,在Android开发中就采用了很多,希望大家重视web技术,学会其中的思想,会有助于你设计程序。先分享一下我的经历吧。还记得刚毕业时就常听人说不想做web,有一种理由是做web要学很多东西,也有人觉得做web没技术含量,连个排序算都不用写,很不幸当时的我也觉得很有道理,而且Web又无厘头的跟Java绑定到一起,至少在我们当时的公司是这样的,从而
2014-03-07 18:17:30 1972 1
原创 抽象描述排序算法(不适合初学者)
本文不适合初学者和尚未理解的人,主要作为熟手忘记过复习之用,所以本文力求以最简短的语言描述,以便记忆其原理。以下i的起始值都为0选择排序:对一个序列A[0], A[1], A[2], ..., A[i], ..., A[n],假定A[0]至A[i]已有序,A[i+1]至A[n]尚无序,在无序序列中选择出最小元素与A[i+1]交交换,作为新的A[i+1]。插入排序:对一个序列
2014-03-03 20:15:28 1396
原创 Java异常处理终结篇——如何进行Java异常处理设计
使用Java异常的人很多,但能合理使用的却不多,Java异常处理设计是一个冷门的话题,但好的异常设计会让程序有质的变化,所以本文从各个方面分析便总结了,在Java程序中,如何进行异常设计。
2014-02-28 15:08:57 14882 6
原创 Andorid Activity的本质是什么
Activity恐怖是Android用得最多且是最基本的组件了,估计也是每个学Android的人接触的第一概念,对于Activity的理解和说法,层出不穷,有人说是一个窗口,有个说是一个活动,但他的本质是什么呢?
2014-02-27 15:20:49 3080
原创 轻松理解Java动态代理
我在网上看到很多讨论Java动态代理的文章,都写得挺有水平,但是一般都用了一些高深的词汇,我个人觉得那些词汇对初学者来说是有点难理解的,所以,本文章要用很土的语言描述Java动态代理,争取让中学生都能听懂。Java是JDK5中新加的机制,大家都知道Spring是用Java的动态代理实现的,那这个动态代理是什么东东呢,首先他肯定是个代理,我们先讲代理,把代理弄明白了,动态代理就好说了。代理都知道
2014-02-26 20:59:07 1402
原创 轻松理解AOP(面向切面编程)
Spring如此流行,当我第一次接触Spring的时候,到网上看了一些文章,都讲得神乎其乎,最后我篇也没看懂,我当时就是认为这个东西一定很高深,于是我就遇到做WEB开发的人就会打听一下。得到最多的一个回答就是“Spring是一个框架”,然后我就会问框架是什么,但都没有一种说法不让我感觉玄乎乎的,同时也没有听懂,于是,我更感觉Spring很神了,这可能叫做朦胧美。还有一种说法就是“Spring两个首
2014-02-24 20:47:59 34762 26
原创 Android异步任务(AsyncTask)的设计思想
AsyncTask都经常,但你了解它的设计目的和思想吗,知道它是如何实现的吗,你好奇吗?
2014-02-22 23:07:04 1385
原创 本博客说明
为了少挨板砖,我觉得我有必要对自己的博客从以下几个方面说明一下:.最重要的一句:本博客所有内容都是个人观点,不保证绝对正确,欢迎大家指批指正,同时我自己也会不断的改进和完善。.关于语言风格:本人所有博客文章都力求以通俗易懂的风格进行描述,所有文章优先考虑文章的易懂性和意思的完整性,再追求语言的精炼,如果我发现某个精炼美丽的语句会影响到了意思的
2014-02-22 19:43:41 609
原创 轻松理解正则表达式
无论是Java、Shell、Python、Perl都用正则表达式,说明它肯定是个好东西,那它到底是一个什么样东东呢?本文将通极易理解的语言对其进行描述,让你彻底理解正则表达式。
2014-02-22 18:04:32 2714
原创 谈谈写博客的意义和感受
自工作以来,我一直打算要写博客,但感觉一直没时间,首先是公司任务多,进度压力大,其次是自己有很多东西要学,如Linux内核、Android Framework、WEB技术、Window和iOS平台的开发都在我的学习计划之中,2012年我几乎每天一下班就掏出手机看电子书,一到家吃完饭就看电子书,经常看到0点之后,躺在床也会思考技术问题,有时想着想着就越来越清醒,就睡不着了。因为我用云同步我的电子书,
2014-02-22 11:40:40 2030
原创 Linux命令的工作原理(1)——sed的工作原理
说明:本文章纯属个人观点,不保证绝对正确,欢迎大家批评和指正,同时我自己也会对本文不断的更新和完善。前言:本人酷爱Linux,Linux更变了我对命令行的看法,多年前在学校用Windows批处理的时候,觉得命令行一点都不方便,讨厌死了,毕业找工作的时候发现很多公司要求熟悉Linux环境,所以当时就迫不得以学Linux了,刚学的时候觉得晦涩难懂,有很多新观念,学到Linux中一切
2014-02-21 18:06:09 6481 4
原创 强大不代表完美——C++几个不方便的地方。
说明:本文章纯属个人观点,不保证绝对正确,欢迎大家批评和指正,同时我自己也会对本文不断的更新和完善。引言:本文自工作以来使用过C++、Java、Python、Groovy、Objective C、List,我最初学的就C++的,当时对她情有独钟,灵活和强大充分体现了她的智慧,随着你对她理解的深入,你会发现随便一段代码会有很大的优化余地,以致于大牛和小菜写的代码有很大的区别,举个十常
2014-02-20 15:33:34 2053
原创 Android版gmail奇怪的返回路径
当你点击widge进入邮件Compose(撰写)界面时,你按返回键是返回到收件箱,要再按返回键才返回到启动他的界面。现在好多应用都是这样的,原来是gmail带的头,有的应用要按好多次才能回到启动他的界面。
2013-09-26 14:39:59 1125
原创 智能手机应用去除返回键
当iPhone出来的时候,最大的特点之一就是只有一个按键,当时我就觉得Android的三个按键更胜一筹,menu键用于弹出菜单,返回键用于退出程序,随着自己见识多种不同软件和产品的设计,发现其实不然,关于menu键的多余性前面的文章已经说过了,这篇文章讨论一下返回键是否多余。我觉得返回键有两个作用,分别是退出程序,返回上一个界面(导航程序)。我们先讨论第一个作用,退出程序。我之前之所以认为
2013-09-26 13:33:41 2097
原创 扁平化设计请别太扁
扁平化设计日益流行,连拟物化设计的大师iOS都使用了扁平化设计,由于我平时使用的是拟物化ipad和扁平化的android手机,所有我对这两种设计都深有感触。网上的文章都说扁平化把事物表现成更抽象,扁平化是去除一些纹理和光泽和阴影,这不等于说扁平化是二维的平面图吗,我不这么认为,通俗讲,扁平化是二维的,拟物化是三维,我不认为三维的图就不能抽象,反而我觉得三维的图的表现力更强,二维的图能做到的,三
2013-09-25 17:24:15 2645
原创 关于智能触屏手机应该去除菜单(menu)键的思考
当android4.0的手机出来的时候有一个很大的变化就是没有menu键,取而代之的是快速切换键,我当时觉得很不方便,心想没有menu键,多余的操作放到哪里,尽管知道Android4.0的做法是ActionBar,但当时还是不能理解,等我自己用三星S4和IOS比较之后,才恍然大悟。其它很容易对比两个场景,假如A界面有menu菜单,B界面没有,如果使用menu键,那用户怎么会知道A界面有而B界面
2013-09-25 16:27:16 2096
原创 ListView重新获取焦点时,让其重新选中上次被选的item,而不是就近选择
在电视上开发android应用时,经常要做有二级菜单的应用,例如:但当我们按左键的时候,左边listview的最近的item会被选中,即如下效果:但是在电视上开发应用的时候,我们希望是上一次被选中的item重新被选中,即希望是“日期和时间”被重新选中。为了实现这个效果,我之前上网查过很多博客都没找到答案,也用过多个投机取巧的方法,这一次我通过查看源代码,发现造成这个问题的原
2013-08-10 18:00:49 3214
原创 apt-get E: Lists directory /var/lib/apt/lists/partial is missing.
sudo mkdir /var/lib/apt/listssudo mkdir /var/lib/apt/lists/partialLANG=C;sudo aptitude cleanLANG=C;sudo aptitude autocleanLANG=C;sudo apt-get update
2013-06-03 10:25:49 5236 2
bmp位图分析工具 Bitmap Info Analyzer
2013-01-26
Windows程序设计第5版(英文chm)
2013-01-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人