尝试加载一千张照片 (mp.weixin.qq.com)
我在捣鼓一个图片上传App,我需要上传手机上的照片,首先要把照片显示出来,类似于微信发送朋友圈选取照片的场景。假说我用一个RecyclerView去显示所有的照片(1000张)。在不适用Glide的情况下,如何尽可能好的去加载这些照片。
by @code小生 2019-04-14 16:49 查看详情
React Native 实践与感悟 (mp.weixin.qq.com)
移动开发的发展渐渐趋于成熟,开发者的技能树分布渐渐完善。随着大前端的发展跨平台技术也衍生除了相关平台。对于移动开发者来说,也是面临着新的机遇与挑战,各个公司也尝试拥抱新技术,可以说这也是一个趋势相关的挑战。由于公司产品,存在Android,iOS两组开发人员,且业务逻辑与UI几无差别。对于成本和效率的考虑团队开始考虑使用React Native 开发产品。
by @code小生 2019-04-14 16:49 查看详情
从考研说起:大学、职场、个人选择 (mp.weixin.qq.com)
A同学本科长沙理工,已经通过上海大学通信工程系复试,大数据人工智能方向。他想跟我聊聊以后学习大方向的问题,通话的时候,他正在从上海回长沙的高铁上,语气中可以感觉到对方抑制不住的兴奋。
by @code小生 2019-04-08 00:10 查看详情
给职场新人的 10 条中肯经验 (mp.weixin.qq.com)
这一条,重点针对技术方面,当然职场其他方面也相同,尤其是在公司。作为一个软件工程师,最起码你得努力将自己进阶到「合格」这个级别,因为在这个级别,你已经具备了熟练的搜索技巧,常用的技术问题答案解决方法,所以很少有问题是你动手解决不了的。
by @code小生 2019-04-08 00:10 查看详情
写给程序员的 10不该 (mp.weixin.qq.com)
女:你是一名程序员吗?
男:是。
女:你是一名合格的程序员吗?
男:是。
女:你是一名优秀的程序员吗?
男:是吧,额~,不是......
by @code小生 2019-04-08 00:09 查看详情
11 条编程经验分享 (mp.weixin.qq.com)
1. 从小事做起,然后再扩展
无论是创建一个新的系统,还是在现有的系统中添加新的功能,我总是从一个简单到几乎没有任何所需功能的版本开始,然后再一步一步地解决问题,直到满意为止。我从来没有妄想过能够一步登天。相反,我一边开发一边学习,同时新掌握的信息还可以用于解决方案中。 我很喜欢 John Gall 的这句话:“复杂系统总是源于简单系统的演化。”
by @code小生 2019-04-08 00:09 查看详情
编写高质量代码 改善Python程序的91个建议 (mp.weixin.qq.com)
建议1:理解Pythonic概念
建议2:编写Pythonic代码
建议3:理解Python与C语言的不同之处
建议4:在代码中适当添加注释
建议5:通过适当添加空行使代码布局更为优雅、合理
by @code小生 2019-04-08 00:09 查看详情
我们始终不能只靠技术来生活 (mp.weixin.qq.com)
1. 我们生活的每天都面临着很严重的挑战

虽然目前看起来我们都在做着自己的事情,一切在顺利的进行着,但是,实则不然,我们每个人的身边或是自身已充满着“危机”,这里说的危机是指你的自身价值可替代性。
by @code小生 2019-04-08 00:08 查看详情
对于 Android 业务开发的一些理解总结 (mp.weixin.qq.com)
关于 PopupWindow ,很多博客有谈到利用 Builder 设计模式的链式写法,以下是我项目中的类似写法
by @code小生 2019-04-08 00:06 查看详情
2019 年 Android 面试题汇总 (mp.weixin.qq.com)
1.跨进程通信的几种方式
Intent,比如拨打电话
ContentProvider 数据库存储数据
Broadcast 广播通信
AIDL通信,通过接口共享数据
by @code小生 2019-04-08 00:06 查看详情
Kotlin + Mvp + RxJava + Retrofit 心得体会 (mp.weixin.qq.com)
本项目是参考 git-xuhao/KotlinMvp ,对原项目 Mvp 核心代码及 Adapter 代码按照自己的想法进行了重构,布局 (xml) 文件(除 fragment_mine.xml )、工具类、自定义 View 都直接使用的原项目的文件,本项目的主要目的是为了 Kotlin 学习,将自己对 Java 版 Mvp 的理解用 Kotlin 实现。
by @code小生 2019-04-08 00:06 查看详情
Android 组件化之路 (mp.weixin.qq.com)
模块化编程是将一个程序按照功能拆分成相互独立的若干模块,它强调将程序的功能分离成独立的、可替换的模块。每个模块内只有与其相关功能的内容。
by @code小生 2019-04-08 00:05 查看详情
ByteDance Android 高工面试记 (mp.weixin.qq.com)
最近加入了 ByteDance 某“Awesome”部门(具体保密,想猜的话就看这单词猜吧,下文简称Awe),遂一群周遭好友来讨要面经;其实自己过去在前东家也负责很多面试工作,对于这种内容猛一想还是保密相对好些,然鹅仔细想想涉及的东西很多是比较针对我所擅长的方向,未必和大多数人都能重合,而那些公共的基础部分也是目前市场上一个合格的Android工程师所该必备的,所以整个面经分享我还是决定写出来,只是换个没那么直接的方式,更多当成是一篇指导性的文章吧,毕竟面试还是靠硬实力,一篇面经如果真对你的实力有所提升那也算是我为招人企业做了点实在的贡献,何乐而不为呢?先来个指导性总纲吧:ByteDance的Android面试整体是对计算机本源思想、实战应用和个人思维、潜力的综合性考查~打个比方就是:这里比的更多是内力、是能打出真实伤害的武功祭奠,而非某种视听上似乎很厉害的招式(这也是很多工程师不经意间欺骗自己的点)~
by @code小生 2019-03-31 18:24 查看详情
记录一次代码演变过程——35行变24行 (mp.weixin.qq.com)
Android实现首页过程中,fragment与activity的结合使用是很常见的一种方式,本文主要其中很小的一个点——显示fragment的逻辑,另外感谢同事小武同学对代码孜孜不倦的探究精神。
by @code小生 2019-03-31 18:24 查看详情
Android 仿抖音实现动态壁纸 (mp.weixin.qq.com)
壁纸运行在一个Android服务之中,这个服务的名字叫做WallpaperService。当用户选择了一个壁纸之后,此壁纸所对应的WallpaperService便会启动并开始进行壁纸的绘制工作。
by @code小生 2019-03-31 18:23 查看详情
一目了然:git命令三种方式实现Gitlab和Github同时登录 (mp.weixin.qq.com)
很多时候,我们都需要去在电脑上去同时使用gitlab和github,但是这样会很容易造成冲突,看了很多文章去解决这个问题,但是我发现大家的方式各有不同,导致看博客的人感觉很困惑,于是我尝试一步一步引导大家用三种方式去真正的实现在一台PC上去同时使用gitlab和github
by @code小生 2019-03-31 18:22 查看详情
资本寒冬下的 android 面经 (mp.weixin.qq.com)
在2018年10月初,公司倒闭,无奈走上找工作的道路,不想自己平时图安逸,不思进取,再次找工作才发现,android行业也不是站在风口上,猪也能吹上天的世道了.作为技术小菜的我,再找工作那几个月真是战战兢兢,被打击得信心全无.记录下我的面试经历,分享给需要的人.勉励自己要时时进步,才不会被淘汰.
by @code小生 2019-03-31 18:22 查看详情
面试相关之 JVM &设计模式 (mp.weixin.qq.com)
JVM会用一段空间来存储执行程序期间需要用到的数据和相关信息,这段空间就是运行时数据区(Runtime Data Area),也就是常说的JVM内存。JVM会将它所管理的内存划分为线程私有数据区和线程共享数据区两大类:
by @code小生 2019-03-17 19:18 查看详情
Android模块化中的服务发现机制 (mp.weixin.qq.com)
本文讨论的其实是项目经过模块化后的一种情况,如果没有模块化需求其实是无所谓的。如果项目已经进行了模块化,推荐大家花几分钟看下。
by @code小生 2019-03-17 19:18 查看详情
Android 适配总结之服务 (mp.weixin.qq.com)
手机同时运行的应用越多,对系统造成的负担越大。 如果还有应用或服务在后台运行,这会对系统造成更大负担,进而可能导致用户体验下降;例如,音乐应用可能会突然关闭。
by @code小生 2019-03-17 19:17 查看详情