首页 文章 精选 留言 我的
优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/160716

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

Alibaba iOS 工程架构腐化治理实践

“ 业务开发遇到环境问题越来越多,严重影响开发效率,有些表面看似打包问题,背后却是工程架构的腐化。” 背景 近年来,iOS工程复杂度高的负面影响逐渐暴露,很多同学都受到了iOS打包慢和打包复杂的“摧残”,业务开发效率受到很大影响。我记得曾经有个同学跟我诉苦,他把几个模块打包后集成到主工程,这个过程中每个步骤都有打包失败,总共花了大半天时间。 Alibaba.com是跨境B类电商业务,2012年开始开发iOS客户端。为了支撑业务发展,2016年进行组件化改造,从单一工程架构演化模块化架构。随着业务和无线技术的发展,客户端已经从小型模块化工程演化为一个巨无霸工程。团队一共建设了100多个自维护模块,包括业务模块、架构设施、Hybrid容器、Flutter容器、动态化技术、基础中间件等能力。表面上工程架构正在有序地演进,但内部已经乱象丛生。模块关系混乱,循环依赖和反向依赖行为越来越多。大量模块不符合LLVM Module标准,spec文件不全、头文件引用不规范。因为工程不规范,Cocoapods无法升级,只能使用1.2和1.5旧版本,技术上落后了3年以上。 为了彻底解决问题,提高业务开发体验...

继往开来: Google I/O 21 Android Gradle Plugin 更新总结

距离 Google I/O 2021 已经过去了一段时间,捋了捋关于 Android Gradle Plugin (AGP) 方面的东西,主要集中在 “What’s new in Android Gradle plugin”这个 session。不过由于 2020 年没有 Google I/O,线下的活动也因为疫情全部暂停,所以这个 session 短短 11 分钟,信息量却相当大,几乎可当作是这两年更新的重点浓缩 (前后看了三遍)。也因此,这篇文章里我会放出很多额外的参考资料,挖了下最近一两年大家可能忽略了的 talks/posts/repos。文章整体脉络仍按这个 session 的 agenda 来。 性能提升 Configuration Cache Gradle 的生命周期分为大的三个部分: 初始化阶段(Initialization Phase),配置阶段(Configuration Phase),执行阶段(Execution Phase)。其中任务执行的部分只要处理恰当,已经能够很好的进行缓存和重用——重用已有的缓存是加快编译速度十分关键的一环,如果把这个机制运用到其他阶段当...

相关文章

发表评论

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册