维护者数百个开源项目,《阿里巴巴Android开发手册(规约)》

摘要不知为何,总感觉 GitHub 成立不止 10 年了,你们有这种错觉么?本文是
GitHub 联合创始人兼 CEO:Chris Wanstrath
在计算机世界杂志写的文章。社区导读:不知为何,总感觉 GitHub 成立不止 10
年了,你们有这种错觉么?本文是 GitHub 联合创始人兼 CEO:Chris Wanstrath
在计算机世界杂志写的文章。当我们回顾 GitHub
过去十年,我们并不会想起某一款软件,而是想到人们用 GitHub
发生了何种改变。十年前,GitHub 正式上线。初衷何其简单:连接开发者,通过
Git
更好开展项目。过去十年,我们已经成为一家公司、一个平台,慢慢壮大,但是初衷从未变过。并不是一个好点子或者什么大事件让这个平台特别,而是使用它的人,感谢
GitHub
十年,感谢有你。当我们回顾过去十年,我们不会记得某一款软件,而是人们用
GitHub 做的事。全世界各地都可以用 GitHub
来分享、教授、修补、构建。在最初上线 GitHub
的时候,我们完全没有预料到它能成长如斯,如此大的体量,如此多的贡献和连接。展望未来,我们依旧会保持简单。未来在你的手中,由你来定义。我们愿意跟随你。与此同时,感谢你的代码,你的合并、你的文档,你共享的项目以及你在
GitHub 所做的一切。谢谢你,10
years。我们收集了这十年来的一些里程碑,今天在这个特别的日子,我们一起来回顾。并未下一个十年做准备。2008.4.10:GitHub
正式发布2008 年 4 月,我们的测试版结束,GitHub
推出了正式版,目的很简单:连接开发者,通过 Git
更容易的协同编程。2008.4.3:Rails 转移到 Git 和 GitHubRuby on Rails
是内测时的首批大开源项目之一,考虑到 GitHub 基于 Rails
建立,这是一个重要的时刻。2009.1.3:比特币的发明比特币于 2009
年被发明并在 2010 年发布到 GitHub。迄今为止此项目已有 18000+ 的
fork,500 merged pull request
作者,它启发了数以千计其他区块链的项目。2009.5.21:Node.js 启动Node.js
于 2009 年推出,导致人们使用 JavaScript 的方式发生根本性变化。借助
Node.js,开发人员可以使用 Angular,Ember,React,jQuery 和 Vue
等库和框架,在操作系统上构建复杂的服务器端和桌面应用程序。该项目有效地扩展了
JavaScript 的可能性,并成功推动了 JS。2010.11.26:Rails Girls
夏编程之夏第一次举办Rails Girls 于 2010 年在赫尔辛基举办了首次活动。2013
年,该团队开始了 Summer of Code 全球奖学金计划,除了 Google Summer of
Code,Outreachy 等,Rails Girls Summer of Code
对软件行业的产生了持久且积极的影响。2011.2.28:Travis CI 第一个 pull
requestTravis CI 是目前新兴的开源持续集成构建项目,它现已成为了 GItHub
的主要集成工具。2012.1.1:JavaScript 成为 GitHub 上最流行的语言在 2012
的开年,JavaScript 作为 GitHub 上最流行的语言,超越了 Ruby,Java 和
Python。今天它仍然是今天 GitHub 上最流行的语言。2013.1.16:GitHub
社区用户达到 300 万在 2013 年我们创建了第 1000 万个仓库。2014.6.9:
Docker 1.0 发布2014 年 6 月,Docker 1.0 推出,之后一年多,Docker
引入了企业数据中心和云。它和 Kubernetes 等项目简化了
DevOps,将团队从基础架构中解放出来,以便更专注于最重要的事情。2014.7.21:Django
Grils 第一次举办2014 年第一届 Django Girls
在柏林举办,开启了为期四年的世界各地软件培训和女性编程支持运动。2014.10.23:微软开源.
NET.NET 和. NET Foundation
只是微软开源计划的开始。现在该公司拥有数百个开源项目。其中包括去年拥有最多贡献者的
VS Code 和 2017 年发展最快的语言之一 TypeScript。微软也成为 GitHub
上最活跃的组织之一,数千名工程师,设计师和程序经理在平台和编程语言中贡献和发布软件。微软和谷歌等大公司对开源软件的重视,代表了他们对软件的态度。他们向我们表明,有时候重要的不是技术,而是社区以及人们如何使用技术。2015.3.2:虚幻引擎
4 源代码免费提供Epic Games 的团队发布了免费版本的「虚幻
4」引擎,这让创意与开发更更紧密连接在一起。免费的源代码允许访问主要功能。从错误修复到
Git 集成,他们的最新版本得到了 128 个 contribution
的帮助。由于开源游戏引擎,Game 成为了 2017 GitHub
最受欢迎的类目。Phaser,Godot Engine 和其他项目,如
Itch.io,正在塑造人们建立和分享独立游戏的方式。像 2048
这样的开源学习资源和游戏,激发了数百个
Clone,邀请了更多的人来玩和创造。2015.9.22:GitHub class 开课GitHub
Class
使教师更容易分发代码收集作业,今天,高中、大学、编程培训机构的学生们正在使用它来学习,现在有超过
180 万个 class 的库,但这也仅仅是 GitHub
教育资源的一部分。2015.12.3:Apple 开源 SwiftApple
这个决定提高了新开发工具的标准,并鼓励更多的公司发布开源。2016.7.9:阿波罗
11 代码开源阿波罗 11 号于 1969 年登月,四十七年后,它的启动源代码登录
GitHub,其中还包含了很多彩蛋,这也证明了 20 世纪 60
年代的程序员也有幽默感。NASA
维护者数百个开源项目,包括火星可视化地图,通过 TensorFlow
来识别系外行星的软件等等。你还可以找到 SpaceX
这些公司的开源项目。2017.2.10:Python 团队打开他们的第一个 pull
request在过去十年,Pyhon 已经成为增长最快的主要编程语言之一,自 2015
年来,它一直稳居 GitHub 语言前三。Python 的历史可以追溯到 20 世纪 90
年代,近年来因为数据科学和机器学习使它飞速发展。像 Pandas
这样广受欢迎的库,也让 Python 更流行。2017.2.15:TensorFlow 1.0
启动谷歌在 2015 年 将其内部机器学习库 TensorFlow 公开。去年,它是 GitHub
上最受欢迎的项目之一,TensorFlow 在 2017 年的访问量比 2016 年多 5.5
倍。现在,TensorFlow
是数据专业人员创建机器学习模型的首选工具。2017.5.2:30000 个
NGO(非营利组织)用户非营利组织通过技术产生了难以置信的积极影响。去年,30000
个非营利用户通过我们展开了 Human Utility,Maven 和 ConnectHome
等活动,让世界变得更美好。野生动物保护协会(WCS)的海洋保护涵盖 25
个国家,保护世界的珊瑚礁。在肯尼亚,WCS
使用软件收集全球研究人员的数据,并通过收集物种数据,监测超过 252
公顷的沿海礁石,这相当于 260
个足球场那么大。帮助当地更绿色生态地进行捕捞。2017.5.31:第 1 亿次 pull
request 被合并事实上,仅在 2017 一年,有 2.9
万亿行代码被提交。2018.4.10:十年的代码,协作和提交GitHub
正式推出十年后,我们的社区已经发展到全球拥有超过 8000 万个项目的 2700
万名开发人员。感谢您创建的存储库,感谢您的贡献以及您构建的软件。感谢你
10 年的代码。

摘要阿里巴巴于近日为广大程序员再送上重磅开春好礼:《阿里巴巴Android开发手册(规约)》。该开发规范在阿里内部经过了长期的修缮,现已总结成册,向所有移动开发者、技术爱好者开放,希望帮助开发者码出高效、码出质量
…1、前言阿里巴巴于近日为广大程序员再送上重磅开春好礼:《阿里巴巴Android开发手册(规约)》。该开发规范在阿里内部经过了长期的修缮,现已总结成册,向所有移动开发者、技术爱好者开放,希望帮助开发者码出高效、码出质量,提升系统的质量、协作的高效性。下载方式:重磅发布:《阿里巴巴Android开发手册(规约)》[附件下载]2、致谢贡献者《阿里巴巴Android开发手册》项目组成员,排名不分先后:芸墨(淘宝技术部)、矢亮(智能场景事业部)、游僧(淘宝技术部)、景宝(淘宝技术部)、邻云(闲鱼技术部)、尚节(猫客技术部)等。还有很多阿里巴巴移动端工程师参与,在此一并表示感谢,感谢孤尽(《阿里巴巴Java开发手册》主要作者)对手册的指导。3、这本手册(规约)有什么价值?2017年天猫双11,成交额再创新高达到1682亿元,其中无线交易额占比90%;2017年12月,钉钉在诞生1075天后,注册用户突破1亿;而在同期,闲鱼用户也突破了2亿……面对如此大的用户量和流量,这些App依然可以做到“丝般顺滑”。在这背后,是阿里巴巴移动开发团队的不断探索和优化。久而久之,这些经验汇总成了一套完善的开发规范,指导工程师开发出体验好、性能优、稳定性佳、安全性高的App。本手册(规约)以开发者为中心视角分为Java语言规范(遵循《阿里巴巴Java开发手册(规约)》),Android资源文件命名与使用,Android基本组件,UI与布局,进程、线程与消息通信,文件与数据库,Bitmap、Drawable与动画,安全以及其他等九大部分。这是一个广义的编码规范,
一本随时可以查阅的技术参考,你在手册中可以找到很多的技术规范、最佳实践,避坑指南等,它是每一位优秀移动开发者手里的必备好书。4、本手册规约)有哪些亮点?根据约束力强弱,规约依次分为强制、推荐、参考三大类:【强制】:必须遵守,违反本约定或将会引起严重的后果;【推荐】:尽量遵守,长期遵守有助于系统稳定性和合作效率的提升;【参考】:充分理解,技术意识的引导,是个人学习、团队沟通、项目合作的方向。对于规范条目的延伸信息中,增加了规范的解释说明和代码示例,“正例”提倡什么样的编码和实现方式,“反例”说明需要提防的雷区,以及错误案例,让开发者透彻理解每一条规范内容。5、阿里技术大牛对手册如何评价?淘宝技术负责人南天:车同轨,书同文,《阿里巴巴Android开发手册》既是高效合作的基础,也是深度创新的开始。淘宝基础平台部负责人天施:写出简洁优雅、性能好、兼容性考虑全面的Android代码是一件不容易的事情,更是优秀Android架构师功底所在。淘宝资深技术专家玄黎:稳定、体验优的客户端来源于一行行健壮的代码,手册沉淀了阿里多年的端侧经验,可以帮助Android工程师少走弯路。一个优秀的工程师和一个普通工程师的区别,不是现在满天飞的架构图,他的功底就是体现在他写的每一行代码上。别人都说我们是码农,但我们知道,自己是个艺术家。也许我们不过多在意自己的外表和穿着,但我们不羁的外表下,骨子里追求着代码的美、质量的美。而代码规约其实就是一个对美的定义。6、《阿里巴巴Java开发手册(规约)》目录前言一、Java语言规范二、Android资源文件命名与使用三、Android基本组件四、UI与布局五、进程、线程与消息通信六、文件与数据库七、Bitmap、Drawable与动画八、安全九、其他附录-认证考试7、部分内容截预览

摘要即时通讯云网易云信于2018年01月04日发布4.6版,本次更新为主要版本更新,详情见文章内容。发布的版本本次发布的版本号为
4.6版,更新时间为:2018年01月04日。iOS
更新内容新增新增在后台自动执行重连开关@interface NIMSDKConfig :
NSObject/** * 是否禁止后台重连 * @discusssion 默认为
NO。即默认情况下,当程序退到后台断开连接后,如果 App 仍能运行,SDK
将继续执行自动重连机制。设置为 YES
后在后台将不自动重连,重连将被推迟到前台进行。 *
只有特殊用户场景才需要此设置,无明确原因请勿设置。 */@property
(nonatomic,assign) BOOL
reconnectInBackgroundStateDisabled;@end新增聊天室历史记录拉取可以按类型筛选字段/**
* 检索服务器历史消息选项 (服务器) */@interface
NIMHistoryMessageSearchOption : NSObject/** * 查询的消息类型 *
@discusssion 消息类型组合,默认为 nil ,搜索全类型。
此参数只对聊天室会话有效 */@property (nonatomic,copy)
NSArray<NSNumber *>
*messageTypes;@end易盾反垃圾,支持对单条消息配置对应的反垃圾业务规则,NIMAntiSpamOption新增字段
businessId。/** * 反垃圾选项 * @discussion
这个选项用于配置易盾反垃圾,设置 enabled 为 YES (默认为 NO)
后该消息进投递到易盾系统进行反垃圾检测 (需要开启易盾服务)
*/@interface NIMAntiSpamOption : NSObject/** *
用户在易盾配置的额外反垃圾的业务ID */@property
(nullable,nonatomic,copy) NSString
*businessId;@end新增聊天室队列权限修改,NIMChatroomUpdateTag中新增字段
NIMChatroomUpdateTagQueueModificationLevel修正聊天室缓存用户扩展信息,保证掉线重连后不清除Android
更新内容新增1. 易盾反垃圾支持对单条消息配置对应的反垃圾业务规则。2.
新增支持海外推送 FCM 以及魅族推送。3. 支持配置聊天室队列管理权限。4.
支持群管理员撤销其他人消息。5. 支持视频消息获取远程缩略图 url。6.
聊天室历史记录拉取可按类型筛选。变更1. 修复酷派偶现崩溃问题。2.
接口变更:List<NimRobotInfo> getRobotInfo(List<String>
accounts);改为List<NimRobotInfo>
getRobotInfoList(List<String>
accounts);3.MessageNotifierCustomization新增消息撤回通知文案自定义接口:/**
* 定制消息撤回提醒文案 * @param revokeAccount 撤回操作者账号 * @param
item 被撤回的消息 * @return */String makeRevokeMsgTip(String
revokeAccount, IMMessage
item);4.ChatRoomPartClearAttachment附件内容变更getContentMap()返回由Map<String,Object>变为Map<String,
String>getChatRoomQueueChangeType()返回ChatRoomQueueChangeType.PARTCLEARWindows(PC)
SDK
更新内容新增群主或群管理员可以撤回其他群成员发送的消息的功能用户配置的对某单条消息另外的反垃圾的业务ID的功能视频消息主动获取封面功能NOS域名迁移NOS加速地址,上传、下载地址等统一配置聊天室历史记录拉取可以按类型筛选功能聊天室队列权限可配置聊天室更新用户信息后,断线重连进入聊天室时,相应信息依旧还在的功能Web
SDK
更新内容新增聊天室队列管理权限可配置聊天室历史记录拉取可以按类型筛选群管理员可以撤回其他人发的消息易盾反垃圾,支持对单条消息配置对应的反垃圾业务规则变更WebSocket链路若因网络状态不佳,悄悄被踢,将自动重连,不再由上层做处理WebSocket握手重连优化,清除实例接口下载地址请从以下官网地址下载:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

网站地图xml地图