摘要:同的其他版本相通,实现了跨编程语言运行时环境的数据安全交换。函数式编程的除了式的写法,还提供了函数式编程的调用方式,列如下。函数式编程适合单一次启动并运行的使用场景。
在此前的一篇Blog(-R/G2SW )中,“-gMIS 吉密斯优化更新+分组项区段AddGroupBySeg/+复制AddByCopy等”, 我们提到“注册动作registerAct: 改进增加 Base62x.class.js”, 初尝跨编程语言、运行时环境进行数据交换的便利,这次也因着部署一个新的 -GWA2 的项目,需要在 -PHP 和 -Perl 中进行多字节非ASCII字符数据的传递,于是就推荐了 -Base62x , 这样 Base62x in Perl 的工作就排上日程,在两个周末的实验下,完成了 Base62x in Perl 的初个版本. 如下是一些使用细节,同时也可以在 -GitHub-Wadelau 上寻找获得, 或者直接访问 -Base62x .
1. 面向对象编程OOP的 Base62x.pmuse Base62x; my $base62x = Base62x->new(); my $str = “Hello World! ”; my $encoded = $base62x->encode($str); $str = $base62x->decode($encoded);
在 Perl 程序的开始,引入 Base62x.pm , 然后生成相应的对象实例,通过调用 该实例的 encode/decode 方法实现相应的编码与解码。
同 Base62x 的其他版本相通,实现了跨编程语言、运行时环境的数据安全交换。
同 Base62x的其他版本一样,Perl版本也实现了针对数字进制转换和ASCII快捷处理的相关方法。如,
my $i = 100; # treas $i as base 10 and transform it into Base62x my $numInBase62x = $base62x->encode($i, 10); # try to decode a Base62x num into base 10 $i = $base62x->decode($numInBase62x, 10);
OOP的调用方式,适合进行循环内反复调用的使用场景,由于在实例化时,进行了环境变量的初始化而节省了后续重复动作。
.
除了 OOP式的写法,Base62x.pm 还提供了函数式编程的调用方式,列如下。
use Base62x qw (base62x_encode base62x_decode); my $str = “Hello World! ”; my $encoded = base62x_encode($str); $str = base62x_decode($encoded);
函数式编程适合单一次启动并运行的使用场景。
详细实现可以参考 Base62x.pm 的代码。
.
截止目前,Base62x 已经可以提供的编程语言版本包括 C, Java, PHP, JavaScript, Perl. 其中JavaScript 还有两个实现, Base62x.class.js 和 npm base62x.
Base62x: An alternative approach to Base64 for only-alphanumeric characters in output.
Base62x is an non-symbolic Base64 encoding scheme. It can be used safely in computer file systems, programming languages for data exchange, internet communication systems, and is an ideal substitute and successor of many variants of Base64 encoding scheme.
Base62x 是一种无符号的Base64编码方案。在计算机文件系统、编程语言数据交换、互联网络通信系统中可以安全地使用,同时是各种变种Base64编码方案的理想替代品、继任者。
-R/J2SL
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/101293.html
摘要:的布局势头很猛,上个月也就是月份新增了欧洲的瑞典节点,随后在本月也就是月日,在北美洲又新增了一个墨西哥节点。当然从墨西哥到国内,这个线路肯定还要横穿美国了。联通回程,联通依然走,国内走联通。vultr的布局势头很猛,上个月也就是9月份新增了欧洲的瑞典节点,随后在本月也就是10月6日,在北美洲又新增了一个墨西哥节点。这已经是vultr的第19个数据中心了,就目前的情形来看,vultr应该不会停...
摘要:所以未经调整的浏览器都符合。原因可能是处理汉字时,对于浮点的取值精确度有限。是新增的一个相对单位,根。目前,除了及更早版本外,所有浏览器均已支持。对于不支持它的浏览器,应对方法也很简单,就是多写一个绝对单位的声明。 单位转换工具 点我 px px是一个虚拟长度单位,是计算机系统的数字化图像长度单位,如果px要换算成物理长度,需要指定精度DPI(Dots Per Inch,每英寸像素数)...
摘要:原文高级篇之修改基本使用姿势本篇依然是中的一篇,主要介绍的更新,主要内容如下常见类型成员的修改数组类型成员的增删改类型成员的增删改基本使用首先是准备好基本环境,可以参考博文高级篇之基本环境搭建与使用高级篇之查询基本使用姿势在开 原文: 190218-SpringBoot高级篇MongoDB之修改基本使用姿势 本篇依然是MongoDB curd中的一篇,主要介绍document的更新,...
摘要:为了使程序员能够一次一个地处理集合中的元素,引入了迭代器接口。迭代器使用该方法获取对象属性名称的数组,然后将其分配给常量。迭代器的缺点是它们不适合表示异步数据源。每次循环时,都会调用迭代器的方法,它返回一个。 前言 原文地址:https://css-tricks.com/new-es2018-features-every-javascript-developer-should-kno...
阅读 1197·2023-04-25 18:57
阅读 2042·2023-04-25 16:28
阅读 3870·2021-11-24 09:39
阅读 3584·2021-11-16 11:45
阅读 1775·2021-10-13 09:40
阅读 1222·2019-08-30 15:52
阅读 1683·2019-08-30 10:57
阅读 559·2019-08-29 16:55