当前位置: 首页 > news >正文

宁夏自治区住房与城乡建设厅网站wordpress繁体

宁夏自治区住房与城乡建设厅网站,wordpress繁体,广告设计学什么,网站pc端和手机端分离怎么做并不全#xff0c;记录了一些流程和注意点。新项目建议直接用zio2#xff01; 首先#xff0c;从1.0迁移到2.0#xff0c;可以使用官方的scalefix规则完成一部分方法自动替换#xff08;迁移主要解决方法重命名#xff0c;去掉Has#xff09;。 然后#xff0c;添加依… 并不全记录了一些流程和注意点。新项目建议直接用zio2 首先从1.0迁移到2.0可以使用官方的scalefix规则完成一部分方法自动替换迁移主要解决方法重命名去掉Has。 然后添加依赖到plugins.sbtaddSbtPlugin(ch.epfl.scala % sbt-scalafix % version) 然后执行迁移sbt scalafixEnable; scalafixAll github:zio/zio/Zio2Upgrade?shaseries/2.x这会完成大部分关于方法名的重写。 比如之前含有effect的方法被重写为带有attempt带有M的被重写为带有ZIO。 不过仍有一些方法是被删除的没有修正或者遗漏的一些方法没有被重写需要自己手动改了基本不需要什么大的改动删除的方法可以在官方迁移文档中找到实在找不到可以到discord频道询问。 接着更新zio办法到2.0.0即可。这里不用直接更新到最新版这样可以保证迁移是最小改动迁移后再升级即可。所有生态库也需要升级如果有的生态库不支持就暂时不能升级。 对于业务系统当我们执行上述命令后其实我们已经完成了大部分迁移。最后我们应该尝试编译项目修复剩余的编译错误。通常这步必会报错因为由于2.0已经删除了Has、ZEnv、ZManaged迁移规则也并不是完善的。 执行迁移命令后Has被直接删掉了代码看起来更清爽。 在删除ZManaged后官方发现迁移工作可能非常庞大后来出了个过渡方案允许暂时不迁移ZManaged但是需要导入一个中间包dev.zio %% zio-managed % 2.x version zio2全部使用Scope所以ZManaged本身不在核心库了。如果打算直接迁移把ZManaged[Any, E, A]改成ZIO[Scope, E, A]即可。同时把resource.use(f)改成ZIO.scoped { resource.flatMap(f) }。 之前ZManaged的acquireRelease相关方法都已经在ZIO中toManaged_也需要删掉返回的R类型多出一个Scope返回类型从ZManaged[R, E, A]变成ZIO[R with Scope, E, A]此时需要ZIO.scoped()才能使用。 Clock、Console、Random、System这些基础Layer已经移动到顶级包下面需要改导入语句。 个人认为变动最大的是Transducer拿一个zio-redis解码器举例它在1.0中是这么写 final val decoder: Transducer[RedisError.ProtocolError, Byte, RespValue] {import internal.Stateval processLine Transducer.fold[String, State](State.Start)(_.inProgress)(_ feed _).mapM {case State.Done(value) IO.succeedNow(value)case State.Failed IO.fail(RedisError.ProtocolError(Invalid data received.))case other IO.dieMessage(sDeserialization bug, should not get $other)}Transducer.utf8Decode Transducer.splitLines processLine}到了2.0是这么写 final val decoder {import internal.State// ZSink fold will return a State.Start when contFn is falseval lineProcessor ZSink.fold[String, State](State.Start)(_.inProgress)(_ feed _).mapZIO {case State.Done(value) ZIO.succeedNow(Some(value))case State.Failed ZIO.fail(RedisError.ProtocolError(Invalid data received.))case State.Start ZIO.succeedNow(None)case other ZIO.dieMessage(sDeserialization bug, should not get $other)}(ZPipeline.utf8Decode ZPipeline.splitOn(internal.CrLfString)).mapError(e RedisError.ProtocolError(e.getLocalizedMessage)).andThen(ZPipeline.fromSink(lineProcessor))}这里ZTransducer被重写为了ZPipeline并且使用方式有些变化不是改个名字就能编译的甚至调用方还需要略微改动。 现在ZSink和ZStream都是基于ZChannel实现现在设计更合理解码器decoder是由输入流经过ZPipeline处理再到输出 ZStream ZPipeline ZSink。 相比之前的ZTransducerZPipeline更容易理解。同时ZTransducer并不够通用在流式解码中性能并不好所以被弃用了。
http://www.w-s-a.com/news/619275/

相关文章:

  • 怎么可以建网站小程序代理项目
  • 怎样做软件网站哪个网站用帝国cms做的
  • 网站开发编程的工作方法wordpress dux-plus
  • 廊坊电子商务网站建设公司网站进不去qq空间
  • 南宁网站推广费用创意网页设计素材模板
  • 深圳技术支持 骏域网站建设wordpress 酒主题
  • 东莞网站建设+旅游网站改版数据来源表改怎么做
  • 手机端做的优秀的网站设计企业做网站大概多少钱
  • 优化网站使用体验手机网站解析域名
  • 网站制作 商务做网站的软件名字全拼
  • 阿里巴巴网官方网站温州网站建设设计
  • 传奇购买域名做网站国外网站设计 网址
  • 西安凤城二路网站建设seo网站是什么
  • 网站后台如何更换在线qq咨询代码在线种子资源网
  • 东莞网站优化制作免费中文wordpress主题下载
  • 东莞建筑设计院排名网络优化论文
  • 做牙工作网站郑州前端开发培训机构
  • 温州专业建站网站制作的管理
  • 公司网站开发策划书有没有专门做教程的网站
  • 江苏省工程建设信息网站一天赚1000块钱的游戏
  • 制作响应式网站报价品牌建设整体体系包括什么
  • 网站推广策划报告目前做win7系统最好的网站
  • 东莞网站建设咨询公江西网站建设平台
  • 什么是网站功能源码下载站
  • 石家庄制作网站的公司双柏县住房和城乡建设局网站
  • 影视vip网站建设教程ppt模板免费下载 素材红色
  • 内蒙古城乡建设部网站首页平台网站建设ppt
  • 集约化网站建设项目官方网站建设
  • 原创先锋 北京网站建设网站开发电脑内存要多少
  • 婚恋网站建设项目创业计划书网站建设 食品