UIApplicationDelegate_Protocol
全部标签概要用户服务基本是每个互联网产品里必备的一个服务了,因为没有用户基本是什么也干不了。所以他的重要性不言而喻。本文主要介绍下如何开发一个用户微服务,以及他的详细开发流程。目录Go微服务实战-从0到1搭建一个类Instagram应用(持续更新)Go微服务实战-用户服务(gRPC+ProtocolBuffer)Go微服务实战-关系服务服务(gRPC+ProtocolBuffer)Go微服务实战-动态服务(gRPC+ProtocolBuffer)Go微服务实战-聚合服务(http)调用流程图技术栈GoEagle开发框架RedisMySQLGormdockerkubernetes接口开发使用proto方
概要用户服务基本是每个互联网产品里必备的一个服务了,因为没有用户基本是什么也干不了。所以他的重要性不言而喻。本文主要介绍下如何开发一个用户微服务,以及他的详细开发流程。目录Go微服务实战-从0到1搭建一个类Instagram应用(持续更新)Go微服务实战-用户服务(gRPC+ProtocolBuffer)Go微服务实战-关系服务服务(gRPC+ProtocolBuffer)Go微服务实战-动态服务(gRPC+ProtocolBuffer)Go微服务实战-聚合服务(http)调用流程图技术栈GoEagle开发框架RedisMySQLGormdockerkubernetes接口开发使用proto方
本文按照mac讲解protobuf的安装,windows上比较好安装按照mac的基本流程就可以安装成功,mac上的安装有的时候比较容易出现问题一、通过brew的方式安装(仅Mac)需要mac中存在brew,输入命令:brew--version查看是否存在brew,如不存在就进行安装,安装方法直接百度即可。1.安装protobuf命令:brewinstallprotobuf安装指定版本的protobuf命令:brewinstallprotobuf@3.72.查看是否安装成功命令:protoc--versionuser@C02FP58GML7Hbin%protoc--versionlibproto
本文按照mac讲解protobuf的安装,windows上比较好安装按照mac的基本流程就可以安装成功,mac上的安装有的时候比较容易出现问题一、通过brew的方式安装(仅Mac)需要mac中存在brew,输入命令:brew--version查看是否存在brew,如不存在就进行安装,安装方法直接百度即可。1.安装protobuf命令:brewinstallprotobuf安装指定版本的protobuf命令:brewinstallprotobuf@3.72.查看是否安装成功命令:protoc--versionuser@C02FP58GML7Hbin%protoc--versionlibproto
注:这是之前写的OC代码,搬到这里小记一下。现在swift是趋势,可自行转化,重在理解。运行环境语言:OCXcode:13.1演示图yanshi.gif代码使用Category分类可以在不创建子类的情况下,向已经存在的类添加新的方法分类的用途可以归结为以下几点:1.在不创建继承类的情况下实现对已有类的扩展。2.简化类的开发工作,例如,当一个类需要多个程序员协同开发的时候,Category可以将同一个类根据用途分别放在不同的源文件中,从而便于程序员独立开发相应的方法集合。3.将常用的相关的方法分组。4.在没有源代码的情况下可以用来修复BUG。MyClass.h#importNS_ASSUME_N
注:这是之前写的OC代码,搬到这里小记一下。现在swift是趋势,可自行转化,重在理解。运行环境语言:OCXcode:13.1演示图yanshi.gif代码使用Category分类可以在不创建子类的情况下,向已经存在的类添加新的方法分类的用途可以归结为以下几点:1.在不创建继承类的情况下实现对已有类的扩展。2.简化类的开发工作,例如,当一个类需要多个程序员协同开发的时候,Category可以将同一个类根据用途分别放在不同的源文件中,从而便于程序员独立开发相应的方法集合。3.将常用的相关的方法分组。4.在没有源代码的情况下可以用来修复BUG。MyClass.h#importNS_ASSUME_N
-用于通信一个简单的例子:比如你封装了一个View,需要回调出去一个按钮事件classTestView:UIView{//注意这里要使用weak标记weakvardelegate:TestViewProtocol?fileprivatelazyvariEnterBtn:UIButton={letbtn=UIButton()btn.addTarget(self,action:#selector(enterAction),for:.touchUpInside)returnbtn}()@objcfuncenterAction(){//执行代理delegate?.didClickEnterButton
-用于通信一个简单的例子:比如你封装了一个View,需要回调出去一个按钮事件classTestView:UIView{//注意这里要使用weak标记weakvardelegate:TestViewProtocol?fileprivatelazyvariEnterBtn:UIButton={letbtn=UIButton()btn.addTarget(self,action:#selector(enterAction),for:.touchUpInside)returnbtn}()@objcfuncenterAction(){//执行代理delegate?.didClickEnterButton
HowtocreateGRPCclientdirectlyfromprotobufwithoutcompilingitintojavacode使用GRPC时,我们需要通过协议缓冲区编译器(protoc)或使用Gradle或Mavenprotoc构建插件从我们的.proto服务定义生成gRPC客户端和服务器接口。1Flownow:protobuffile->javacode->gRPCclient.那么,有没有办法跳过这一步?如何创建一个通用的GRPC客户端,可以直接从protobuf文件调用服务器而不编译成java代码?或者,有没有办法在运行时生成代码?1Flowexpect:protobuf
HowtocreateGRPCclientdirectlyfromprotobufwithoutcompilingitintojavacode使用GRPC时,我们需要通过协议缓冲区编译器(protoc)或使用Gradle或Mavenprotoc构建插件从我们的.proto服务定义生成gRPC客户端和服务器接口。1Flownow:protobuffile->javacode->gRPCclient.那么,有没有办法跳过这一步?如何创建一个通用的GRPC客户端,可以直接从protobuf文件调用服务器而不编译成java代码?或者,有没有办法在运行时生成代码?1Flowexpect:protobuf