最近,996这个话题刷爆了朋友圈,大家谈论最多的便是互联网行业,对于大多数程序员而言,996是工作常态。程序员怎样才能摆脱996?
程序员怎么才能摆脱996?
- 工作时间,不做私事
- 先设计,再开发
- 善于利用团队成果,不做重复工作
- 利用开发插件提高工作效率,避免写无用代码,做无用功
- 更早的发现问题,修改问题
- 总结过往,根据经验和实际情况编写可复用模板
- 使用高效的项目、团队管理工具
- 不断学习,提升综合能力
身为开发者的我,给大家总结几个开发中提升效率(必知必会)的工具:
charles:抓包工具
Stetho:轻松的查看数据库、网络通讯、UI结构等
Hugo插件:快捷的查看方法运行时间
JsonToKotlinClass(Gsonformat):Json的数据格式生成对应的JavaBean
手机开发助手APP:快捷查看手机信息、打开各种开发模式
LeakCanary:内存泄漏检测工具
自定义开发模板:TemplateBuilder或默认模板,减少重复工作量
charles
主要功能:
- 支持SSL代理。可以截取分析SSL的请求。
- 支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。
- 支持AJAX调试。可以自动将json或xml数据格式化,方便查看。
- 支持AMF调试。可以将Flash Remoting 或 Flex Remoting信息格式化,方便查看。
- 支持重发网络请求,方便后端调试。
- 支持修改网络请求参数。
- 支持网络请求的截获并动态修改。
- 检查HTML,CSS和RSS内容是否符合W3C标准。
安装:
去Charles的官方网站(http://www.charlesproxy.com) 下载最新版的相应操作系统的Charles安装包安装即可使用
1、确保Charles和设备在同一网络下
2、安装电脑证书
3、在电脑端选择安装移动端的证书
选择后会显示IP与端口号,用于手机设置http代理:
4、查看ip地址
5、设置手机代理,选择网络高级设置,手动设置代理,输入主机名和端口,然后保存,设置完成后会弹出如下框,点击allow
6、手机上访问chls.pro/ssl 下载证书并安装,完成后可正常看到https请求的数据了~
Stetho
主要功能:
1、查看组件布局
2、网络抓包
3、查看sp存储
4、查看数据库存储
使用
1、Androidstudio 引入
implementation 'com.facebook.stetho:stetho:1.5.1'
implementation 'com.facebook.stetho:stetho-okhttp3:1.5.1'
implementation 'com.facebook.stetho:stetho-urlconnection:1.5.1'
2、application初始化
public class MyApplication extends Application {
public void onCreate() {
super.onCreate();
Stetho.initializeWithDefaults(this);
}
}
3、网络请求的时候加上拦截器
new OkHttpClient.Builder()
.addNetworkInterceptor(new StethoInterceptor())
.build()
4、配置完成后运行app,打开Chrome浏览器,输入调试地址:chrome://inspect/#devices 点击inspect,便可看到网络请求和布局
Hugo插件
主要功能
轻松查看方式运行耗时
使用
1、项目添加 2、在方法前面加上@DebugLog
JsonToKotlinClass(Gsonformat)
主要功能
json直接生成kotlin data class 或 java data class
使用
1、打开开发工具,并按如下指示操作
File—>Settings—>Plugins—>Browse repositores—>搜索JsonToKotlinClass
2、安装插件,重启Intellij idea 或 android studio
3、输入相应json即可生成(Gsonformat 同理)
手机开发助手APP
主要功能
快速打开开发者选项,debug选项,包括显示布局边界、显示GPU过度绘制、不锁定屏幕等
使用
下载手机开发助手APP即可
LeakCanary
主要功能
简单快速的发现内存泄漏
使用
1、gradle配置
dependencies {
debugApi'com.squareup.leakcanary:leakcanary-android:1.6.2'
releaseApi'com.squareup.leakcanary:leakcanary-android-no-op:1.6.2'
}
2、Application 初始化
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
LeakCanary.install(this);
}
}
3、开始使用,内存泄漏会生成app,打开即可看到具体泄漏地方
自定义开发模板
主要功能
一键生成模板代码
使用
学习编写模板最好的方式就是参考IDE已经提供的模板,在Androidstudio下可参考:Empty Activity 具体位置:在 android studio 安装目录下plugins/android/lib/templates/activities 每一个插件都对应一个文件夹,包含
template.xml:定义模板参数
globals.xml.ftl:定义全局变量
recipe.xml.ftl:配置要引用的模板路径和生成文件路径
root: 存放对应源码的ftl文件,以及资源文件
png图:效果缩略图
template.xml
具体字段意思:
1、 id :唯一标识,最终会通过它获取字符串
2、name:界面上的左边的提示语
3、type : 输入值类型 可以是string int boolean 等等
4、constraints:填写值的约束 如noneempty
5、default:默认值 如
6、help:显示的帮助提升语,点击后会显示提示语
globals.xml.ftl
用于定义一些全局的变量,可以看到其内部有global 标签,分别定义id,type,默认值
recipe.xml.ftl
注意:在自定义模板时,将EmptyActivity模板复制一份,再修改,这样可以大大提高效率。 另外,也可使用androidstudio插件进行模板开发:TempateBuilder
你认为这就能摆脱996? 答案当然是’‘no’,摆脱996,其实很简单,那就是你要有资本。这个资本,就是你的能力!请多花时间想一想,你未来要做什么,需要什么技能,只有有针对性的学习,你的能力才会不断的提升。做为一名Android开发者,我要做的便是学习前沿技术,总结归纳属于自己的知识库。
结语
无论你是否正在经历996,希望这边文章能给你一点点的启发。 最后,送给大家一首颜真卿的《劝学诗》 三更灯火五更鸡,正是男儿读书时。 黑发不知勤学早,白首方悔读书迟。
本文由博客一文多发平台 OpenWrite 发布!