App架构师实践指南二之App开发工具
App架构师实践指南二之App开发工具
1、Android Studio
2、编译调试
---条件断点。右键单击断点,在弹出的窗口中输入Condition条件。
---日志断点。右键单击断点,在弹出的窗口中取消勾选Suspeng复选框,然后勾选Logevaluated expression,并输入打印语句即可。
---变量赋值。动态改变变量值调试程序,无须重新运行程序。在该变量的代码处打个断点,然后在Variables窗口找到对应的变量,修改变量值再执行即可。
---计算求值。与变量赋值类似。
---变量观察。直接值断点处以弹框形式查看变量属性值,而不需要值variables变量区和watches观察区查看。
---异常断点。工具栏菜单Run——>选择View Breakpoints——>添加Exception Breakpoints异常断点。
3、版本管理
作为个人开发者,主要使用的是Github或者Bitbucket/Gitcafe,如果使用Github(免费版)必须开源,而Bitbucket/Gitcafe可以使你拥有一定量的私有项目。
作为创业型团队,建议使用Github在公司服务器构建一个Git代码管理平台,或者付费使用Github等工具。
作为大型团队,基本上都是基于Gitlab来搭建Git托管服务器等。如果项目太大,涉及的人太多,Git库超过了GB等级,此时就不太适合用一个Git库来管理来,可以结合Repo(一个管理Git库的工具)和Gerrit来管理。
3.1、 Git分支管理
可以参考learnGitBranching这个开源项目。核心把握下面几个基本原则
---控制好你的分支,区分Release分支(版本发布分支)、Master分支等,保护好你的Realease分支。
---控制分支数量,删除不必要的励志特征分支。
---每次版本体测前、灰度前、发布前记得打Tag。
---分支和主干不能分离,不能脱离组织独干,分支一定是要和主干合并的。如果某种当前特性分支持续时间比较长,那也要不定期地融合主干与分支。所谓分久必合,长期分离是不对的。
---慎待Rebase,深刻理解Gitbase后再使用。
---使用Issue,Markdown。
---关注Code Review,使用Gerrit相对来说比较惬意。
---冲突来,不要慌,沉住气,满满解决。解决冲突必备的装备主要有Kdiff和BeyondCompare。Android Studio内部集成了Git Merge工具。
一般通用的分支管理策略如图3-5和图3-6所示,图3-5是A successful Git branching model一文中描述的Git-Flow流程,图3-6是作者对以前项目的一种分支管理模式的图形化整理,主要有5个核心分支干系,分别为master主干分支、版本主干分支bus/trunk,发布分支bus/trunk{$versionName}、特性主干分支featureX{$featureName}以及hotfix{$versionName} Bugfixed分支,其核心思想是Bug修复主要沿着master分支进行,修复后并进master分支;特性主干分支每次从master分支拉取代码,一个特性完成后合并进bus/trunk分支,最后以恶版本发布后,bus/trunk分支再合并进master主干分支(小技巧,bus_trunk命名换为bus/trunk方式,无论事在SourceTree还是Github界面上,都能够以文件夹的方式呈现)
4、产品设计
5、抓包工具
使用抓包工具希望达到的目的
---SSL拦截。Mac Charles中,如果要在真实设备上拦截SSL连接,需要安装证书。
---弱网环境模拟。弱网模拟有多种用途,其中最主要的是测试App的兼容性。
---断点功能。用于篡改Request和Response数据。
--网络流量检测。最常见的方式是使用TCPDump抓取设备上的网络流量信息,然后在PC上用Wireshark分析。
6、ADB
7、Chrome开发插件
App架构师实践指南二之App开发工具的更多相关文章
- App架构师实践指南一之App基础语法
第二章:App基础语法1.编程范式编程范型或编程范式(programming paradigm),是指从事软件工程的一类典型的编程风格.常见的编程范式有过程化(命令行)编程.事件驱动编程.面向对象编程 ...
- App架构师实践指南六之性能优化三
App架构师实践指南六之性能优化三 2018年08月02日 13:57:57 nicolelili1 阅读数:190 内存性能优化1.内存机制和原理 1.1 内存管理内存时一个基础又高深的话题,从 ...
- App架构师实践指南四之性能优化一
App架构师实践指南四之性能优化一 1.性能维度常见用来衡量App性能的维度如图9-1所示.其中,性能指标包括电池(电量/温度).流量(上行流量/下行流量等).CPU(平均/最大/最小).内存 ...
- App架构师实践指南五之性能优化二
App架构师实践指南五之性能优化二 2018年07月30日 13:08:44 nicolelili1 阅读数:214 从UI和CPU方面来说App流畅体验优化,核心为流畅度/卡顿性能优化. 1.基 ...
- App架构师实践指南三之基础组件
App架构师实践指南三之基础组件 1.基础组件库随着时间的增长,代码量的逐渐积累,新旧项目之间有太多可以服用的代码.下面是整理的公共代码库. 2.关于加密密钥的保护以及网络传输安全是移动应用安全最关键 ...
- 网易新闻App架构重构实践:DDD正走向流行
网易新闻App架构重构实践:DDD正走向流行 https://mp.weixin.qq.com/s/FdwrT_xn3CQqpWoRVBttvQ 小智 InfoQ 2020-05-14 作者 | 小智 ...
- 华为云Stack首席架构师:打造“称手”的数字化工具,答好政企IT数字化转型这道必选题
摘要:数字化转型是一号位工程,数字化的工具本身就是企业的核心竞争力. 本文分享自华为云社区<华为云Stack首席架构师:打造"称手"的数字化工具,答好政企IT数字化转型这道必 ...
- Jeecg-Boot 开发环境准备(二):开发工具安装
目录索引: 后端开发工具 前端开发工具 Nodejs镜像 WebStorm入门配置 JeecgBoot采用前后端分离的架构,官方推荐开发工具 前端开发: Webstrom 或者 IDEA 后端开发: ...
- 【架构师之路】APP架构师必看:面对爆发流量如何进行架构调整
一.APP架构与WEB架构的最大不同 移动APP的架构和传统PC的WEB架构有三点不同: 1.连接的稳定性.在传统的web端连接成功后就可以认为它是稳定的,但在移动端.无线端,APP连接非常敏感,可能 ...
随机推荐
- jquery之jsonp相关知识
这里讲的不错,可以参考:链接 我自己的理解: 服务器为了保证数据的安全,同时也为了保证不被攻击, 凡是来服务器请求的url,域名必须和服务器一致,否则就是跨域请求 为了解决跨域问题,就出现了jsonp ...
- IOS支持多国语言
- 并发之atomicInteger与CAS机制
并发之atomic与CAS自旋锁 通过前几章的讲解我们知道i++这种类似操作是不安全的.针对这种情况,我们可能会想到利用synchronize关键字实现线程同步,保证++操作的原子性,的确这是一种有效 ...
- ubuntu chrome 安装ubuntu16.04 : google浏览器安装及离线插件安装(谷歌访问助手)
1.https://blog.csdn.net/cheneykl/article/details/79187954 https://download.oracle.com/otn-pub/java/j ...
- 持续集成一:git上传代码
先注册一个账号,注册地址:https://github.com/ 记住地址 下载git本地客户端,下载地址:https://git-scm.com/download/win 一路next傻瓜安装,加入 ...
- LINQ学习之旅(三)
Linq to Sql语句之Join和Order By Join操作 适用场景:在我们表关系中有一对一关系,一对多关系,多对多关系等.对各个表之间的关系,就用这些实现对多个表的操作. 说明:在Join ...
- hdu 1257 一共要多少套拦截系统 (LIS)
给出导弹的高度 拦截的导弹会比上一次低 至少要几套拦截系统才能防御所有导弹 求一套系统能防御的最大导弹数: 反向LIS求一共要多少套:正向LIS Sample Input8 389 207 155 3 ...
- python常用内建模块--collections
1.namedtuple #namedtuple是一个函数,它用来创建一个自定义的tuple对象,并且规定了tuple元素的个数,并可以用属性而不是索引来引用tuple的某个元素.#这样一来,我们用n ...
- 4.Django|ORM模型层
ORM简介 MVC或者MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人员的 ...
- js获取按键
event.altKey.event.ctrlKey.event.shiftKey 属性 属性为true表示事件发生时Alt.Ctrl.Shift键被按下并保持,为false则Alt.Ctrl.Shi ...