从最基本结构说起
新建一个helloworld工程结构:
工程目录下只有根目录和一个app模块,没有其他模块。
- 根目录
build.gradle
:关于项目的一些总体配置(比如编译系统使用的仓库和依赖,其他模块都使用的仓库和依赖); - 根目录
settings.gralde
:项目的模块构成,最简单。 - app模块
build.gradle
:app模块的具体配置,该模块自身的性质,该模块依赖的库(jcenter的开源外部库,内部模块之间)
不得不说理财是一项基本的能力,从工作开始有意识地买了很多理财产品,股票,基金,p2p。仅仅基金就买过股票型,指数型,还有比较复杂的分级基金A/B。之前的购买大部分是尝试性的,漫无目的,更没有任何仔细的思量。似乎这叫做赌博更加合适。
经过这一年的尝试,渐渐确定了我的理财目标。几个原则:
为自己风险可以偏大,为父母,风险可控。基本公式:
理财资产(非固定收益类)/总资产=100-年龄
在此基础上微调:
- 自己:比例 > 75% —> 85%左右,40%回撤
- 父母:比例 < 45% —> 40%,18%回撤
不投资不了解的产品,必须经过数据计算后投资
目标:
今天写一篇杂谈,谈谈自己的所思,所想。不知道是什么时候关注的笑来老师的公众号—学习学习再学习,关注了就放在那里,看着发的一篇篇『鸡汤』,甚至都懒得点击看看。去年的某日吧,无聊地在星巴克坐了半天,看了一下午他的文章,很有感触。不是寻常的『鸡汤』,很多的想法与自己不谋而合,很多想法让我惊喜。最重要的是让我思考一些忽略已久的东西:
思考怎样去思考,学习如何去学习。
这是一个meta-problem。这是一个我还没有思考清楚的问题,也是最重要的问题。为什么是重要的?我想这需要一个判断标准,下面会粗浅的说一些我的理解。
近日,在Google开发者的微博上推荐了一个视频,是2015年开发者峰会上两位Google的Coder的演讲,关于Android应用框架,中文相关介绍文章看这里。
演讲中有个demo,类似于一个QQ的聊天界面的程序,用这个例子讲解了如何优雅地处理在各种网络异常的情况下的UI界面,既如何设计一个offline的应用。
网络请求与本地缓存相结合以获取最好的用户体验应当是几乎所有Android应用的基本需求。从我的开发经验看,我们往往会忽略之一点。大部分情况下,都是直接从网络拿回数据显示在界面上,如果网络不好,就不断loading。。。在无网情况下,app是不可用的。
推逻辑—提交post,demo中对某些请求进行排队,在后台不断重试,这种逻辑对于某些应用应该是不适用的,毕竟大部分应用是不需要这种『强同步』的(既server与local完全一致,如聊天list或记账,微信发朋友圈)。在一般应用中以下两种情况更加常见:
选择哪一种交互是设计阶段必须考虑的,这直接决定了编码方式。当然,一个设计良好的框架必须要提供这些能力:
Glide Wiki中文翻译。Glide是一个Android图片库,确切地说应当叫『媒体框架』。支持图片、Gif、原生视频的加载。使用简单,性能优异,Google推荐。
Glide Wiki中文翻译。Glide是一个Android图片库,确切地说应当叫『媒体框架』。支持图片、Gif、原生视频的加载。使用简单,性能优异,Google推荐。
从零开始构建一个用于生产环境的Android App,要走这些路。这篇文章是博客的总目录,会持续更新。同时也是我的一个起点,一些思考。优先写一些感兴趣的技术点,最后形成一个体系,完成构建一个可持续改进的用于生产环境的App的目标。当然也可能扩展到Server和IOS的其他方面。