九路 九路
4年前
Go 函数是“一等公民”的理解
函数(function)作为现代编程语言的基本语法元素存在于支持各种范式(paradigm)的主流编程语言当中。无论是命令式语言C、多范式通用编程语言C,还是面向对象编程语言Java、Ruby,亦或是函数式语言Haskell、动态脚本语言Python、PHP、JavaScript,函数这一语法元素都是当仁不让的核心。Go语言以“成为新一代系统
Easter79 Easter79
3年前
swift对Moya的一些功能封装
项目开发中的接口比较多,在使用moya时会使用多个类,为避免一些代买的重复书写,做了一些封装处理,网络使用Alamofire,数据解析使用MoyaObjectMapper首先是对返回数据统一处理的模型importObjectMapperimportMoyaclassResponseModel:N
刘望舒 刘望舒
4年前
Android Binder原理(二)ServiceManager中的Binder机制
Binder原理Android框架层本文首发于微信公众号「刘望舒」<more前言在上一篇文章中,我们了解了学习Binder前必须要了解的知识点,其中有一点就是Binder机制的三个部分:JavaBinder、NativeBinder、KernelBinder,其中JavaBinder和Native
刘望舒 刘望舒
4年前
Android Binder原理(四)ServiceManager的启动过程
Binder原理Android框架层本文首发于微信公众号「刘望舒」<!more前言在上一篇文章中,我们以MediaPlayerService为例,讲解了系统服务是如何注册的(addService),既然有注册就势必要有获取,但是在了解获取服务前,我们最好先了解ServiceManager的启动过程,这样更有助于理解系统服务的注册和获取的过程。另外还有一点
刘望舒 刘望舒
4年前
Android Binder原理(三)系统服务的注册过程
Binder原理Android框架层本文首发于微信公众号「刘望舒」<!more前言在上一篇文章中,我们学习了ServiceManager中的Binder机制,有一个问题由于篇幅问题没有讲完,那就是MediaPlayerService是如何注册的。通过了解MediaPlayerService是如何注册的,可以得知系统服务的注册过程。1.从调用链角度说明M
Wesley13 Wesley13
3年前
PSR 类自动加载规范的翻译与看法
先列举一些资源:PSR0官网原文(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.phpfig.org%2Fpsr%2Fpsr0%2F)PSR的Github源(https://www.oschina.net/action/GoToLink?urlh
Stella981 Stella981
3年前
Android 11 的无线调试简直不要太好用
前言大家应该知道,之前写过一篇旧文:你知道adb的无线方式开发模式吗,不过今天想跟大家介绍一下Android11的无线调试有了新的变化。旧文介绍的无线调试模式,第一次使用需要先连接usb线来完成手机跟电脑的无线调试,而且每次都得这样的重复操作(想象一下每天早上上班都得先通过usb线连接一次)。而
Stella981 Stella981
3年前
JS计算两个日期之间的天数
 JS计算两个日期之间的天数function DateDiff(sDate1, sDate2){          var aDate, oDate1, oDate2, iDays        aDate   sDate1.split("")        oDate1    new Date(aDat
Stella981 Stella981
3年前
React与Vue的相同与不同点
我们知道JavaScript是世界上最流行的语言之一,React和Vue是JS最流行的两个框架。所以要想前端的开发那么必须掌握好这两个框架。那么这两个框架有什么不同呢?React和Vue相同之处,它们都有:使用VirtualDOM提供了响应式(Reactive)和组件化(Composable)的视图组件
Wesley13 Wesley13
3年前
vivo 基于原生 RabbitMQ 的高可用架构实践
一、背景说明vivo在2016年引入RabbitMQ,基于开源RabbitMQ进行扩展,向业务提供消息中间件服务。2016~2018年,所有业务均使用一个集群,随着业务规模的增长,集群负载越来越重,集群故障频发。2019年,RabbitMQ进入高可用建设阶段,完成了高可用组件MQ名字服务以及RabbitMQ集群