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

做spa的网站怎么推广网站建设与网页制作盒子模型

做spa的网站怎么推广,网站建设与网页制作盒子模型,wordpress 移动版,做网站要自己租服务器吗前几天我写了一个简单的词法分析器项目:https://github.com/MarchLiu/oliva/tree/main/lora-data-generator 。 通过词法分析快速生成 lora 训练集。在这个过程中,我需要通过命令行参数给这个 java 程序传递一些参数。 这个工作让我想起了一些不好的回忆…

前几天我写了一个简单的词法分析器项目:https://github.com/MarchLiu/oliva/tree/main/lora-data-generator 。
通过词法分析快速生成 lora 训练集。在这个过程中,我需要通过命令行参数给这个 java 程序传递一些参数。

这个工作让我想起了一些不好的回忆。我这些年来做过太多类似的东西,随着程序开发的进展,命令行参数的规则越来越复杂,于是简单的几个赋值操作迅速变成了一大堆逻辑分支。

对于 Python 程序,至少内置的命令行解释工具 argparse 足够好用,对于通常
的开发工作已经足够。但是 Java 标准库中并没有这样的组件。

目前我所知道的,apache commons cli 或许是个好选择。但是我也有一些自己特定的期待:

  • 我希望有一个能够很方便的和 jaskell try 机制良好配合的工具
  • 希望它的构造足够方便
  • 对我常用的命令行设计风格有足够的支持,具体的内容后面我会介绍

于是,我顺手在 jaskell-rocks 库中加入了一个 ArgParser 工具,用于处理以下的命令行设计:

  • option: 可以指定 --xxx 类型的参数,这类参数需要带有参数值
    • option 可以有默认值
    • option 可以是 required 或者可选的
    • option 可以设置为只能在某几个值中选择
    • 允许多次传入同一个 option 名的参数,所有同名 option 的参数聚合为一个集合
  • with option:with option 不需要带有值,
    • 可以通过 --with-xxx 或 --without-xxx 表示某个 with option 是否设定
    • with option 有默认值,但是没有 required 限制
  • switch 开关
    • 开关有默认值
    • 可以通过 --enable-xxx 或 --disable-xxx 表示一个 switch 的状态
    • switch 有默认值
    • switch 有 required 或可选的状态
  • args
    • 前面介绍的三类都是有显式参数名的参数项,在其后可以有零到多个无名参数
    • 这些参数可以隐含有 require 约束,例如复制操作必须要提供 source 和 target,args 的 size 就至少需要为 2
    • args 参数也有可能有默认值,例如一个连接http服务的调试脚本可能默认连接 localhost:8080 ,没必要显式给出。
    • 显然,required args 应该在 所有 args 的最前面,而有默认值的应该在最后
  • help 所有显式设定的参数都允许提供 help 文本,argParser 内置对 --help-h 的识别,输出参数的文档
  • 允许为参数名设置缩写,例如 --source 可以设定为 -s

目前的 ArgParser 已经完全满足我的需要,例如 oliva 的 lora 数据生成工具,就使用了这个命令行解释器:

        var lexer = new LexerRouter();var source = Option.create("source").help("source project directory").required(true);var target = Option.create("target").help("where save lora train dataset").required(true);var argParser = ArgParser.create().header("Oliva is a assistant program. It just cut source code to lora training data.").formatter("%1$-20s %2$-20s %3$-60s\n").option(source).option(target).footer("Power by Jaskell");argParser.parse(args).onFailure(err -> {System.err.println(err.getMessage());}).onSuccess(result -> {result.autoHelp();//...

这里就是 lora-data-generator 项目的参数解析部分。如果传入了 help 参数,autoHelp 会向控制台打印帮助然后 System.exit(0) 退出。如果
需要深度的控制help行为,这个解释器还暴露了几个与帮助文档有关的中间方法,包括帮助格式的模板字符串。这个工具已经初步满足了我的需要,在未来,也
许我会加入一些便利的工具方法,类似 intValue 这种。但是总的来说,这个设计不需要再有大的改动,如果真的遇到在结构上不能满足我的需求,也许我会
考虑 apache commons cli。

http://www.yayakq.cn/news/448509/

相关文章:

  • 安康免费做网站公司网站vps
  • 临汾网站建设费用网页版梦幻西游贴吧
  • 网络营销的网站wordpress的数据库在哪里
  • 网站制作公司官网南京wordpress企业网站 教程
  • 各省备案网站个人怎么找猎头公司推荐自己
  • 网站建设礻金手指下拉十一wordpress 在线浏览
  • 灵感中心素材网站微信小程序注册认证
  • 外贸网站 字体怎么做学校网站和微信公众号
  • 网站建设的申请重庆 网站定制
  • 关于网站建设管理工作的报告wordpress值得买
  • 一般做网站的在哪里找设计工业
  • 网站报备之后如何建设网站比优化更好的词是
  • 在ai中做网站图片怎么设置我用帝国做的网站上传到别一个服务器上重新邦了一个域名
  • 免费的企业网站怎样建立一个自己的网站
  • 小程序链接网站自己做上海做网站seo
  • 厦门市机场建设招投标网站重庆工程信息官网
  • 网站定制开发哪家做的好对企业网站的印象
  • 塘厦最新消息seo站内优化最主要的是什么
  • 志愿服务网站建设方案网站后台怎么替换图片
  • 如何不花钱建设网站北京网页设计制作网站
  • 做网站要具备些什么长春手机模板建站
  • 建设企业网站流程台州学校网站建设
  • 宁波高端网站制作公司wordpress 审核用户
  • iview做的网站seo整站优化服务
  • 如何给网站做备份网站册数
  • 网站开发需要学习什么技术godaddy加wordpress
  • 自适应和响应式网站千博网站管理系统安装
  • 手机网站建设视频教程_兰州有哪些互联网公司
  • 网络教育做的好的网站Wordpress elgg
  • 上海建设部网站镇网站建设管理工作总结