《终身成长》卡罗尔. 德伟克

作者认为每个人都存在两种思维模式:一种固定性思维模式,一种成长性思维模式。 固定思维模式: 认为能力是固定的,更关注别人如何看待你, 成长性思维模式:认为能力是可以改变的,是可以通过学习来培养的。拥有成长型思维模式的人能让人们在人生遭遇重大挑战的时刻,依然可以茁壮成长。更关注你能否提高自己。 未来的你比现在的你更优秀。 关于能力和成就的真相 固定型思维模式:会限制人的成就,它让人们的头脑中充满了干扰信息,让人们不屑于努力,毁

Read More...

深入Java线程(三)

线程池Executors 目前提供了 5 种不同的线程池创建配置: newCachedThreadPool(),它是一种用来处理大量短时间工作任务的线程池,具有几个鲜明特点:它会试图缓存线程并重用,当无缓存线程可用时,就会创建新的工作线程;如果线程闲置的时间超过 60 秒,则被终止并移出缓存;长时间闲置时,这种线程池,不会消耗什么资源。其内部使用 SynchronousQueue 作为工作队列。 newFixedThreadPool(

Read More...

Android View

Window、View、Activity Android View绘制 Android中慎用View#getViewTreeObserver#addOnGlobalLayoutListener来获取view的高度 源码解析View.post() Activity在onCreate()执行View.post(Runnable),缓存Runnable ViewGroup和View执行完ViewRootImpl.performTrav

Read More...

Android跨进程通信

跨进程通信IPC RPC 即 Remote Procedure Call (远程过程调用) 是一种计算机通讯协议,它为我们定义了计算机 C 中的程序如何调用另外一台计算机 S 的程序,让程序员不需要操心底层网络协议,使得开发包括网络分布式多程序在内的应用程序更加容易。IPC 即 Inter-Process Communication (进程间通信), Android 为我们提供了以下几种进程通信机制(供开发者使用的进程通信 API)对

Read More...

Android Handler机制总结

Handle机制 APP的启动过程中调用ActivityThread类main方法初始化MainLooper Handler创建Message并发送给Looper Looper循环处理MessageQueue的Message最后message通过target找到发送消息相对应的handle进行回调处理。 子线程创建handle Thread { //初始化线程looper对象

Read More...

Android动画

Android动画分类 Frame Animation(帧动画): 使用AnimationDrawable配置XML,按顺序播放事先做好的图像, 使用AnimatedVectorDrawableCompat在xml中定义一组动画 Tween Animation(补间动画):只能对View进行平移,缩放,渐变,旋转 Property Animation(属性动画):API11开始引入,基于Object进行属性改变而达到动画效果 使用

Read More...

拥抱变化《长期有耐心》

最近在看美团成长史的书《长期有耐心》,在结合当前公司所面临的环境-在线教育改革,探索新业务。比较应景的文章吧,从这本书也想获取到一些新意的想法和美团发现的一些抉择。今天已经把这本书读完了,跟以前把书中经典语录和独特观点记录,指引以后人生道路。 王兴认为,在传统行业,创业好比登山,在互联网行业,创业好比冲浪。错过了一波浪潮,就错过了一次机会。所以,要抓住时机踏上浪头,如果这个浪头过去了,就不要去追逐它,而应勇敢迎接挑战,敏锐捕捉下一个

Read More...

AOP(一)---什么是AOP

要理解AOP我们先要理解其他一些概念: 面向过程编程 面向对象编程 面向切面编程面向过程编程OPP 面向过程的编程思想将就是将一个大任务分解为一个一个小的任务,我们通过完成一个一个的小的任务来完成一个大的任务,然后就结束了。常用的编程语言有C语言,它 优点:符合我们人类的思维,编写起来相对比较简单 缺点:但是这种方式编写代码的往往只适用于一个功能;如果要在实现别的功能,即使功能相差极小,也往往要重新编写代码,所以它可复用性比较低,并且

Read More...

初始化失败,请尝试重新安装

EasyConnect mac “初始化失败,请尝试重新安装”一、 问题使用EasyConnect for mac的用户是不是会经常出现这样的提示:“初始化失败,请尝试重新安装”前端时间也碰到这个坑,点击重新下载安装后还一直提示这个,折腾了好几天最终在网上找到这个用户答案才解决:https://blog.csdn.net/langzichai/article/details/109488191出现这个问题最主要原因是EasyConnec

Read More...

Android Stuido常用快捷键(Mac)

提取内部类(内部类移除类新建一个外部类) 选中内部类–>F6 选择move inner class xxx to upper level 局部变量,全局变量切换大小写 command+option+U 格式化代码 command+option+L 删除多余的导入包 option+control+O 搜索指定类 command+option+O 全局搜索指定关键字 command+shift+

Read More...