长孙雨聪--七星上将

相信现在是因为相信未来


前言

这篇文章主要讲解view的工作原理中的三大流程,包括测量流程,布局流程,绘制流程。这些都是自定义控件的基础。下面先对三大流程的职责做简要的概述:

测量流程确定了控件的测量的大小;
布局流程确定了控件在父控件中的四个位置的坐标和控件的实际大小;
绘制流程负责控件的绘制并显示在屏幕上。

view的绘制流程是从哪里开始的?

View的绘制流程是从ViewRoot的performTraversals开始的。在performTraversals经过一堆的逻辑,会分别调用performMeasure,performLayout,performDraw。
然后在view树中,先后调用一下的方法:

阅读全文 »


android事件的源头在哪里?

当用户触摸屏幕或者按键等时,形成事件,事件经过linux底层Event节点捕获之后,一直传到android应用层。中间传递的过程不是本文的重点,我也不是很清楚(哈哈哈)。本文的重点是事件在应用层的分发机制。

事件在View树中的分发过程

View树:
图片

在Android中,事件的分发过程就是MotionEvent在view树分发的过程。默认是中从上而下,然后从下而上的传递的,直到有view、viewgroup或者Activity处理事件为止。

阅读全文 »


鸣人和雏田

那个时候所有人只是把鸣人当做孤儿看待。他长相最多只能算一般,成绩吊车尾,缺家教,没才华,家世没有,血统没有,智商没有,然后还调皮爱恶作剧。

阅读全文 »


背景

为什么想写这一篇文章呢?做android的开发也有两年的时间了,就想把以前学到的一些东西记录下来。于是首先就想在github.com上开一个项目MVPDemo,将一些自己认为比较好的知识点都串联起来。

主要目的:
1、初步认识和使用MVP、dagger2和rxJava2
2、使用对称和非对称加密加强前端与后台的安全机制
3、前后台的socket交互实现

其中3、中的socket实现,我专门建了一个github仓库NodeTestDemo,这个仓库不仅仅实现了前端的普通接口,还提供了一个socket服务。

阅读全文 »


前言

话回我刚刚毕业来到深圳时,作为一个android菜鸟在一个大神波哥的指导下,学到了很多东西。其中,二进制和分类就是我印象最深的。想按自己理解记录一下。

想一下,有这样的需求:一个物体有一个种类属性,它这个属性有很多相互独立可以相加的值,也就是它有很多种情况,而且一个物体可同时具有其中一个或者多个情况。而我们想用一个数字就表示它的所有情况(这就是数学思维,总把东西抽象化)。

来个具体的,用于表示一个人是否有高血压,高血糖,高血脂这种属性。这个属性可以有各种情况的值,一个人可以只是有高血压、高血糖或者高血脂,也可以有“三高”。那我们如何用一个十进制的值来表示一个人的这个属性的各种情呢?

我们可以让十进制数字的二进制表示的每一位代表一种情况,运用二进制的位运算来表示和判断它的各种情况。

阅读全文 »


读前提取论点

  1. 人类因为自然的一次偶然的基础而出现。智人摆脱了基因的宿命,开始用语言交流,可以说故事了,慢慢产生了各种概念,如神,社会,国家,配偶,金钱等等。
  2. 智慧的产生,源于人的反思和内心。
  3. 现在人只是生活在自己编造的故事里,正是因为故事才赋予人以意义。
  4. 从历史谈到现在,指出万物皆是算法,不同的算法,只是意识的有无和不同。
    阅读全文 »

前言

这篇文章适合熟悉nodejs的同学观看。主要是关于如何使用nginx做反向代理和负载均衡nodejs的多个实例的配置流程,nodejs实例可以是分布在同一台主机上或者不同的主机上的多个实例。

主要内容有

  • 在同一主机创建nodejs多个实例
  • 详细讲解ngnix.conf文件的每项配置的作用

在同一主机创建nodejs多个实例

我的nodejs环境:

图片
最近AlphaGo和AlphaZero的出现,预示着2017年成为人工智能元年,人工智能逐渐进入我们的生活和工作的方方面面,如在工作中,阿里巴巴双十一中,出现了“千人千面”智能推荐系统,鲁班AI设计师,小蜜机器人,IDC智能巡检机器人,还有京东的无人仓库等。这些都让我觉得人工智能越来越重要和越来越感兴趣,所以决定学习python和tensorflow。现在就以一个使用tensorflow构建一元线性模型开始我的人工智能学习吧。

阅读全文 »
0%