敏捷开发

Android开发架构思考及经验总结(下)

我们两清 提交于 2021-02-20 16:53:20
前言 架构设计,到底是什么呢?基于这段时间的学习和自己的一些思考, 我认为架构是基于产品和技术所达成的一种共识 。 我不是专业的架构师,也不是经验老道的开发者。本文目的有三,一是整理这段时间的架构学习和思考以及总结这一年的开发经验教训,二是希望能够与各位朋友探讨移动端App的架构设计,三是希望我们每一个应用开发者能够拥有架构的意识。 个人的水平有限,诸多不对的地方,恳请批评指正。 提示:文中链接需要点击文章末尾处 阅读原文 才能点击。 零、 知识大纲 提示 请先阅读 《Android开发架构思考及经验总结(上)》 五、 技术 前面啰嗦了很多,终于写到这里了。对于一个开发人员来说,怎么做才是我们的关键问题所在。只会Android开发,所以以下只讨论Android。我主要从以下几个方面来谈一谈怎么做这个问题。 1、技术选型 (1)、 开发平台 移动端的开发目前主要是两大阵营Android、IOS,其他的就不多说了。 (2)、 开发工具 编译工具:Eclipse&Ant、AndroidStudio&Gradle,作为Android开发者,目前毫无疑问应该选择AndroidStudio&Gradle; 代码仓库:Git 、SVN ,工具有海龟、AndroidStudio也集成了VCS; Maven仓库:可以使用nexus创建自己的maven私服; 持续集成:Jinkens、Buildbot

介绍一款 API 敏捷开发工具

末鹿安然 提交于 2021-02-20 07:07:06
作者:棒锤 xie.infoq.cn/article/b5c3a339267e1351c6151b42a 初衷 用尽可能简单的方式,完成尽可能多的需求。通过约定的方式 实现统一的标准。告别加班,拒绝重复劳动,远离搬砖 特性 用于快速开发API接口。不再定义 Controller , Service , Dao , Mybatis , xml , Entity , VO 等对象和方法. 可视化界面,将入参自动封装到可执行的脚本上,支持所有关系性数据库SQL执行语句,非关系型 MONGODB 查询语句.欢迎扩展 完全基于springboot2.x 作为springboot项目的stater方式集成,无侵入性,新老项目都能快速集成 只需编写一行代码即可完成大部分的业务需求开发,使用难度级别(测试 or 运维)也可参与开发 在线动态编译,无需重启,即时生效,多数据源操作 版本控制,历史记录比对,回滚等功能 远程一键发布到线上环境 线上POSTMAN调试,保存POSTMAN信息或三方文档的自动生成,历史调用记录存储,回塑 代码提示,SQL提示,语法提示 用户管理控制,安全性控制,以及历史行为记录 经过多次项目验证,传统业务型开发,服务端效率能够提升3-5倍,前后端联调提升效率1倍,测试效率2倍提升 传统开发步骤: 增加一张表 创建实体对象,映射这张表 创建API入参VO 创建API出参VO

介绍一款 API 敏捷开发工具

左心房为你撑大大i 提交于 2021-02-18 21:00:34
点击上方 Java后端 , 选择 设为星标 优质文章,及时送达 初衷 用尽可能简单的方式,完成尽可能多的需求。通过约定的方式 实现统一的标准。告别加班,拒绝重复劳动,远离搬砖 特性 用于快速开发API接口。不再定义 Controller , Service , Dao , Mybatis , xml , Entity , VO 等对象和方法. 可视化界面,将入参自动封装到可执行的脚本上,支持所有关系性数据库SQL执行语句,非关系型 MONGODB 查询语句.欢迎扩展 完全基于springboot2.x 作为springboot项目的stater方式集成,无侵入性,新老项目都能快速集成 只需编写一行代码即可完成大部分的业务需求开发,使用难度级别(测试 or 运维)也可参与开发 在线动态编译,无需重启,即时生效,多数据源操作 版本控制,历史记录比对,回滚等功能 远程一键发布到线上环境 线上POSTMAN调试,保存POSTMAN信息或三方文档的自动生成,历史调用记录存储,回塑 代码提示,SQL提示,语法提示 用户管理控制,安全性控制,以及历史行为记录 经过多次项目验证,传统业务型开发,服务端效率能够提升3-5倍,前后端联调提升效率1倍,测试效率2倍提升 传统开发步骤: 增加一张表 创建实体对象,映射这张表 创建API入参VO 创建API出参VO 创建Controller

介绍一款 API 敏捷开发工具

十年热恋 提交于 2021-02-18 18:33:53
点 击上方“ 掌上编程 ”,选择“ 置顶或者星标 ” 优质文章第一时间送达! 初衷 用尽可能简单的方式,完成尽可能多的需求。通过约定的方式 实现统一的标准。告别加班,拒绝重复劳动,远离搬砖. 特性 用于快速开发API接口。不再定义 Controller , Service , Dao , Mybatis , xml , Entity , VO 等对象和方法. 可视化界面,将入参自动封装到可执行的脚本上,支持所有关系性数据库SQL执行语句,非关系型 MONGODB 查询语句.欢迎扩展 完全基于springboot2.x 作为springboot项目的stater方式集成,无侵入性,新老项目都能快速集成 只需编写一行代码即可完成大部分的业务需求开发,使用难度级别(测试 or 运维)也可参与开发 在线动态编译,无需重启,即时生效,多数据源操作 版本控制,历史记录比对,回滚等功能 远程一键发布到线上环境 线上POSTMAN调试,保存POSTMAN信息或三方文档的自动生成,历史调用记录存储,回塑 代码提示,SQL提示,语法提示 用户管理控制,安全性控制,以及历史行为记录 经过多次项目验证,传统业务型开发,服务端效率能够提升3-5倍,前后端联调提升效率1倍,测试效率2倍提升 传统开发步骤: 增加一张表 创建实体对象,映射这张表 创建API入参VO 创建API出参VO 创建Controller

CODING 如何使用 CODING 研发管理系统来敏捷开发

陌路散爱 提交于 2021-02-18 18:33:09
之前我们分享过《CODING 如何使用 CODING 开发 CODING》的文章,时过境迁,现在 CODING 研发管理系统已经上线了如持续集成、缺陷管理、测试管理等 DevOps 中的重要功能,并增加了对 SVN 的支持。借此机会我们以自身的研发流程为例,来展示一下 How CODING uses CODING to build CODING 2.0。 企业级一站式软件研发协作平台 CODING 现在的团队有 100 多人,分布在全球各地(深圳、北京、成都、西雅图等),均使用 CODING 研发管理系统作为云端协作平台。在 CODING,不仅研发相关的团队使用 CODING 来进行研发管理,市场、运营、行政的部门也同样使用 CODING 进行任务分配与追踪、文件分享等日常工作。 同时通过 CODING 的企业微信/微信小程序,还能实现随时随地同步与协同任务,小程序可以直接查看任务详情、评论任务,还能实现代码合并(MR)等功能,真正做到 Coding Anytime Anywhere。 CODING 研发管理系统是基于项目进行的,我们依据组织架构建立了相关项目并使用【成员管理】添加相应部门的人员。通过项目这种扁平化的管理形式,帮助企业加快反应速度,提高自身敏捷性。 下周即将上线的 CODING 权限管理功能,可以帮助项目管理员方便地根据项目成员角色来分配相应的权限

Scrum与看板区别

放肆的年华 提交于 2021-02-17 12:28:00
看板:在制品(work-in-progress, WIP)必须被限制 WIP上限和拉动式生产 1. Scrum与看板简述 Scrum:组织拆分,工作拆分,开发时间拆分,优化发布计划,过程优化 看板:流程可视化,限制WIP,度量生产周期 2. Scrum和看板的关系 Scrum和看板都是过程工具 Scrum和看板只是给了一些明确的约束和指导,比如,Scrum的约束是固定时长的迭代和跨功能团队,看板的约束是要有可见的看板,队列大小要有约束 敏捷方法也被称作轻量级方法 3. Scrum规定了角色 Scrum规定了三种角色:PO/Team/SM,看板没规定任何角色 4. Scrum规定了固定时长的迭代 Scrum的迭代混合了三种活动:计划/过程改进/发布 5. Scrum按迭代限制WIP,看板按流程状态限制WIP 6. Scrum与看板都是经验主义,需要自省/反馈/调整 7. Scrum在迭代期间内拒绝变化 看板的原则是“一件出去,一件进来”,响应时间等于手头事情的处理时间 Scrum的平均响应实践等于sprint长度的一半 8. 关于任务规模 Scrum团队只承诺一个迭代内能完成的任务,如果任务太大会进行拆分 看板对任务规模没有明确规定必须要在某个时间段做完 9. Scrum规定了估算和生产率,看板没有规定估算 有的团队跳过估算,把每个任务拆分得大小接近,统计每周完成的特性数

普通程序员看代码,顶级程序员看趋势

☆樱花仙子☆ 提交于 2021-02-17 03:49:21
都说选择比努力更重要,在IT领域更是如此了。 一次失败的面试经历 大约在五年多以前,小灰千方百计想要进入一家IT公司。之所以这么想去,并不是因为这家公司能给多高的薪资、多高的股权,而是因为这家公司引领着全球的IT技术趋势,他们的首席科学家更是IT行业的泰山北斗。 小灰觉得,要是有幸能进入这家公司,自己就会从此变得不一样,能够拥有更大的格局,能够看清楚未来的趋势。 投了简历,心中忐忑地等了几天,终于接到了公司HR的电话。这家公司的招聘方式也挺特立独行的,在面试之前,先给小灰留了一个“作业”,让实现一个小功能;后续的面试中,又搞了个所谓的“结对编程”,小灰在整个面试过程中收获了许多。 然而,人生总是伴随着遗憾。第二天,小灰迫不及待地给HR打电话询问面试结果,被告知没有通过。小灰复盘了整个面试流程,明白自己在一些技术的深度上还有些欠缺,因此最终和心仪的公司失之交臂。 虽然那一次面试失败的经历很令人惋惜,但也让小灰有了更大的学习动力。毕竟,再好的企业环境也只是外因,真正能改变自己的,只有自己。 至于这家公司,到底是何方神圣呢?许多小伙伴应该已经猜到了,这家公司就是 ThoughtWorks 。 而前面提到的那位首席科学家不是别人,正是 Martin Fowler 。这位老爷子曾经撰写《重构》、《分析模式》、《UML精粹》等经典著作,同时也是全球著名的面向对象分析设计、UML

《Java程序设计》 第四周学习总结

浪子不回头ぞ 提交于 2021-02-14 15:55:54
学号 20175313 《Java程序设计》第四周学习总结 教材学习内容总结 第五章主要内容 了解子类的继承性 子类和父类在同一包中的继承性(除private外其余都继承) 子类和父类不在同一包中的继承性(只继承public和protected) 掌握成员变量的隐藏和方法重写 成员变量的隐藏:注意与this的区别。 用关键字super对其进行操作。 通过调用从父类继承的方法对其进行操作。 方法重写:注意与方法重载的区别。 语法规则:这个方法的名字、参数个数、参数类型和父类的方法要完全相同,但是方法的类型可以是父类方法类型的子类。 重写目的:通过方法重写可以隐藏继承的方法,或是把父类的状态和行为改变成自身的状态和行为。 理解何为多态性以及如何产生多态 所谓多态就是指父类的某个方法被其子类重写时,可以各自产生自己的功能的行为。(后面的abstract会用到) 将子类创建的对象的引用放到一个父类的对象中,就得到了该对象的一个上转型对象,那么这个上转型对象在调用这个方法时就可能具有多种形态。 熟悉abstract的使用以及相关规则 对于abstract方法,只允许声明,没有方法体。 不允许用final和static修饰abstract类或方法。 abstract类不能用new运算符创建对象。但该对象可以成为其子类对象的上转型对象调用子类重写的方法。 学会面向抽象编程 目的

架构师是否应该写代码:架构师的认知误区

回眸只為那壹抹淺笑 提交于 2021-02-14 02:32:24
当我面试架构师职位的候选人时,我通常会问一个这样的问题:“你认为架构师是否应该做一些编码工作?”而通常会得到下面两个反馈之一: “不,我正在寻找一个不再需要编码的职位。” “我喜欢继续编码,至少是少量的编码,但可能不会有时间这样做。” 与此类似,当问及其他一些架构师最近做过多少编码的工作,通常得到的答案是: “有一段时间没有编码了。” 这些回应总是让人感到不安。从何时开始一个技术角色的提升开始意味着脱离技术和交付? 如果不能深入到实现这些技术的团队中,架构师又怎能期望在规模庞大的技术选择中指引方向,并理解这些技术如何在企业中发挥作用?或者更好的是,亲自实施这些技术? 在没有与交付团队保持紧密联系的前提下,架构师如何能够期望在应对持续变化的项目需求时,保持灵活? 优秀的架构师必须与交付团队紧密合作。这对发展成功的系统架构,进而成功交付是十分必要的。 收集反馈并展现领导力是保持与交付团队紧密合作的两个核心利益。 反馈 深度参与的架构师会见证第一手反馈信息并且与团队紧密合作以缓解各种缺陷。反馈可能源自于各处,如企业标准的变化,持续变化或发展的功能性/非功能性需求以及在实施和测试过程中所发现的各种挑战。 能够越早识别这些缺陷,架构师就能够越快改进系统架构。如果架构师没有积极参与到交付团队中,那么这个反馈可能会花费数周甚至数月才能够上报给架构师,这时通常已经处于交付周期的晚期了。

CODING 受邀参与 DevOps 标准体系之系统和工具&技术运营标准技术专家研讨会

让人想犯罪 __ 提交于 2021-02-13 17:54:36
2019 年 5 月 24-25 日,国内领先的一站式 DevOps 解决方案供应商 CODING 作为腾讯云的深度合作伙伴,受邀参加在成都举行的由 TC608 云计算标准和开源推进委员会主办,中国信息通信研究院牵头,高效运维社区支持,DevOps 标准工作组负责组织的 DevOps 标准体系之系统和工具 & 技术运营标准技术专家研讨会。 在《研发运营一体化 DevOps 能力成熟度模型第 8 部分:系统和工具》与《研发运营一体化DevOps 能力成熟度模型第 4 部分:技术运营》标准技术专家研讨会上,围绕项目与开发管理、应用设计与开发、持续交付、测试管理与自动化写实、技术运营、安全开发等进行了技术研讨,并制定了相关规范。 本次会议专家组合影,第五排左起第四位为 CODING 产品总监王振威 本次会议还邀请了来自华为、平安科技、腾讯、阿里巴巴、中兴通讯、亚信科技、浙江移动、京东金融、中国联通、苏宁消费金融、百度、去哪儿网、新华三等行业顶尖企业的 40 余位 DevOps 实践与工具专家,对标准框架和内容进行了全面的研讨,将系统和工具 & 技术运营两部分标准内容进行完善与规范,并在第二天的会议中将部分内容定稿。 DevOps 能力成熟度模型第八部分 项目与开发管理 & 应用设计与开发 此次会议“项目与开发管理”、“应用设计与开发”两个部分的内容依旧由华为、腾讯、阿里、CODING