随着 2019 的过去,2020 迎来了第六年的码农生涯,过往如烟挥之即散,所以我习惯通过一些关键词来凝结这一年的收获,而 2019 我总结的关键词是:技术大会、焦虑、耐心、学习、竞争力。 技术大会 2019 年参加了不少技术大会,对于技术大会可能会有一部分“过来人”感觉不屑一顾,因为大多数时候技术大会看起来像是广告大会,分享内容可能往往也过于“空泛”,参加的既得收获其实并不高。 但是在时间允许的情况下,我还是喜欢参加到各类技术大会中,甚至在 2019 年有幸作为分享嘉宾参与了技术分享, 这可能和我“外向”且“话唠…

2021年4月24日 0条评论 16点热度 阅读全文

随着 2019 的过去,2020 迎来了第六年的码农生涯,过往如烟挥之即散,所以我习惯通过一些关键词来凝结这一年的收获,而 2019 我总结的关键词是:技术大会、焦虑、耐心、学习、竞争力。 技术大会 2019 年参加了不少技术大会,对于技术大会可能会有一部分“过来人”感觉不屑一顾,因为大多数时候技术大会看起来像是广告大会,分享内容可能往往也过于“空泛”,参加的既得收获其实并不高。 但是在时间允许的情况下,我还是喜欢参加到各类技术大会中,甚至在 2019 年有幸作为分享嘉宾参与了技术分享, 这可能和我“外向”且“话唠…

2021年4月7日 0条评论 30点热度 阅读全文

面了几家公司,先和面试官说了一下之前的工作内容,擅长的领域,在了解过后,面试官便看着简历问:“做过高并发项目吗?你的系统可以支撑高并发吗?在高并发场景中,你会用到负载均衡中的哪几种分配方式?你认为百万流量的技术应该怎么选型?”听到这个问题之后就是一愣,怎么这家也问高并发?想了一些之前看过的一些高并发文章、资料,囫囵说了一遍。以前没接触过高并发,回答的毫无逻辑,根本不知道从何说起。待再回答后面的面试题时,没有刚开始那么自信,看面试官的态度就知道自己没戏了。 处处需要高并发 **“为什么Java面试必问高并发?”**这…

2021年3月30日 0条评论 54点热度 阅读全文

Jetpack版Wan-Android项目地址:Android Jetpack架构开发组件化应用实战 Flutter版Wan-Android项目地址:Flutter版Wan-Android   Room是Jetpack组件库一员,属于ORM库,主要是对Sqlite做了一层抽象,从而简化开发者对数据库操作。Room支持编译时的语法检查,并且支持返回LiveData。 添加依赖 在app的build.gradle中添加如下依赖: def room_version = "2.2.0-rc01" implemen…

2021年3月24日 0条评论 24点热度 阅读全文

前言 关于Android架构,可能在很多人心里一直都是虚无缥缈的存在,似懂非懂、为了用而用、处处生搬硬套,这种情况使用的意义真的很有限。本人有多个项目重构的经验,恰好对设计领域较为感兴趣,今天我将毫无保留的将自己对架构、设计的理解分享给大家。 本文不会具体去讲什么是MVC、MVP、MVVM,但我描述的点应该都是这些模式的基石,从本质上讲明白为什么这样做,这样做的好处是什么,有了这些底层思想的支持再去看对应的架构模式,相信会让你有一种焕然一新的感觉。 知识储备:需掌握Java面向对象、六大设计原则,如果不理解也无妨,…

2021年3月23日 0条评论 19点热度 阅读全文

一个师妹问:哥,我今年应届毕业,刚开始写代码,不知道有没有一些新手需要注意的地方。 给了师妹一些建议之后,感觉这是个好问题!不光是新手程序员,很多小技巧小秘密恐怕老手也未必掌握了。 1.重视架构能力的培养 对于新手程序员而言,最好的培养方式是:写代码前先画好类结构图和代码时序图,这样会让编码能力迅速进步。 用什么工具画?Start uml就挺不错的。 2.debug的能力远比编码能力更重要 把功能实现只是程序员的第一步,甚至是最基础的一步,更多时候,你需要解决各种稀奇古怪的问题。 这个能力不提升,不仅影响工作效率,…

2021年3月10日 0条评论 22点热度 阅读全文

做项目的过程中碰到一个需求: 在java客户端,使用http通信,把客户端的本地文件通过http发送上传到服务器; 请求格式是xml(不管是json还是xml都是字符串,所以这个无所谓),中间包含[文件流字符串]; 之前的做法是,把文件流通过base64编码转换为base64Byte,然后和其它字符串信息放到一起,post的时候通过HttpURLConnection的write方法写入到服务器中去,这个上传的过程就完成了。 —————————— 但是碰到一个问题,当文件体积较大时,从文件流转换成base64Byte…

2021年1月17日 0条评论 31点热度 阅读全文

最近看了老罗分析android资源管理和apk打包流程的博客,参考其他一些资料,做了一下整理,脱离繁琐的打包细节和数据结构,从整体上概述了apk打包的整个流程。 流程概述: 1、打包资源文件,生成R.java文件 2、处理aidl文件,生成相应java 文件 3、编译工程源代码,生成相应class 文件 4、转换所有class文件,生成classes.dex文件 5、打包生成apk 6、对apk文件进行签名 7、对签名后的apk文件进行对其处理 打包过程使用的工具 名称 功能介绍 在操作系统中的路径 源码路径 aa…

2021年1月17日 0条评论 49点热度 阅读全文

在 2019 年的 Google I/O 和 Apple WWDC 上,新露面的 Android 10 和 iOS 13 都宣布将支持 Dark Theme 也就是我们常说的暗黑模式,并提供相关 API 供开发者适配。 那么,为什么我们需要暗黑模式?暗黑模式到底有什么好处?Android 开发者该如何适配暗黑模式呢?今天这篇文章就告诉你。 Why we need Dark Theme? 暗色主题的 App 比比皆是,但是让 Android 和 iOS 从系统层级支持暗黑模式还是头一次。也许是用户的呼声也许是工业的推…

2021年1月16日 0条评论 31点热度 阅读全文

Android Studio 4.1 主要是包含了各种新功能和改进,其中 Android Gradle 插件也升级为 4.1.0,要了解更多信息请查看完整的 Android Gradle 插件发行说明:https://developer.android.com/studio/releases/gradle-plugin#4-1-0 新数据库检查器 使用新的 Database Inspector 可以在应用运行的过程中检查,查询和修改数据库,当然前提应用所在的设备API Level 需要 26或更高,然后从菜单栏中选…

2021年1月16日 0条评论 32点热度 阅读全文