我必须开发一个支持Windows,MacOS和Chrome OS的应用程序 - 至少.Chrome操作系统是一项重要的要求,因为此应用程序旨在用于学校 - Chromebook是一个大问题.正如你可能知道,Chrome应用即将过时的Windows,MacOS和Linux中,让我们留下两种选择:基于网络的"原生"应用: 电子和NW.js.
由于我是从头开始开发这个应用程序,而不是转换任何现有的Web代码,我觉得倾向于选择Electron来完成这个特定的项目.但是,如果Electron可用于开发Chrome OS应用程序,我找不到任何可靠/完整/具体的答案.我发现这个发行说明指出:
Electron现在为ARMv7上的Linux提供构建.它运行在Chromebook和Raspberry Pi 2等流行平台上.
然而,正式来说,Electron只支持Windows,MacOS和Linux,这让我觉得这个Chromebook支持可能有些限制,这反过来又让我认为NW.js可能是这个项目的更好选择.
我的具体问题是: 是否有人成功使用Electron创建了Chrome OS应用程序?这些应用程序是否可以由普通用户轻松安装?(12岁的孩子) 或者他们是否需要某种类似Linux的黑客来让它们运行?
我想检测一个子程序是如何被调用的,所以我可以根据每种情况使它的行为不同:
# If it is equaled to a variable, do something:
$var = my_subroutine();
# But if it's not, do something else:
my_subroutine();
Run Code Online (Sandbox Code Playgroud)
那可能吗?
我一直在研究一些用于数据挖掘的Perl库.这些库充满了嵌套循环,用于收集和处理信息.我正在使用严格模式,我总是my在第一个循环之外声明我的变量.例如:
# Pretty useless code for clarity purposes:
my $flag = 1;
my ($v1, $v2);
while ($flag) {
for $v1 (1 .. 1000) {
# Lots and lots of code...
$v2 = $v1 * 2;
}
}
Run Code Online (Sandbox Code Playgroud)
对于我在这里阅读的内容,性能方面,最好在循环之外声明它们,然而,我的代码的维护变得越来越困难,因为一些变量的声明最终远离它们实际上的位置用过的.
像这样的东西会更容易保持:
my $flag = 1;
while ($flag) {
for my $v1 (1 .. 1000) {
# Lots and lots of code...
my $v2 = $v1 * 2;
}
}
Run Code Online (Sandbox Code Playgroud)
我没有太多的Perl经验,因为我来自主要使用C++.在某些时候,我想开源我的大多数库,所以我希望它们尽可能地满足所有Perl大师的需求.
从专业的Perl开发人员的角度来看,这些选项之间最合适的选择是什么?
假设我正在尝试将URL与正则表达式匹配:
$text = 'http://www.google.com/';
$text =~ /\bhttp:\/\/([^\/]+)/;
print $1; # It prints www.google.com
Run Code Online (Sandbox Code Playgroud)
我想将其匹配的模式替换为其中每个字符的一个空格.例如,考虑到上面的例子,我想最后得到这个文本:
# http:// /
Run Code Online (Sandbox Code Playgroud)
有一个简单的方法吗?找出匹配模式有多少个字符,并用相同数量的不同字符替换它?
谢谢.
我想阅读Mac OS Finder上显示的文件的创建日期.这是我的代码的一部分:
require File::stat;
use Time::localtime;
($dev, $ino, $mode, $nlink, $uid, $gid, $rdev, $size, $atime, $mtime, $ctime, $blksize, $blocks) = stat($file_path);
print ctime($ctime) . "\n";
Run Code Online (Sandbox Code Playgroud)
在Finder上,每个文件都有两个日期:创建和修改.我认为这$ctime将等于Finder的"创建"日期,但它完全不同.做了一些研究,我发现大多数Unix操作系统都没有存储这种日期,但Mac OS确实如此.
有人知道从文件中读取此信息的方法吗?
我有这么长的音译:
$text =~ tr/áà?â?å?ä?ã???????????????ç??????ð????éè?ê?ë????????/aaaaaaaaaaaaaaaaabbbbcccccccccdddddddeeeee/;
# Etc. (About 400 chars)
Run Code Online (Sandbox Code Playgroud)
我想将它分成几个音译,因为生成的代码更容易维护:
$text =~ tr/áà?â?å?ä?ã???????/aaaaaaaaaaaaaaaaa/;
$text =~ tr/????/bbbb/;
$text =~ tr/????ç????/ccccccccc/;
# Etc.
Run Code Online (Sandbox Code Playgroud)
我相信这会让事情变得缓慢,但我想肯定地知道.此过程在非常繁忙的服务器上每秒运行大约1000次.
谢谢.
perl ×5
electron ×1
file ×1
function ×1
macos ×1
nw.js ×1
performance ×1
regex ×1
subroutine ×1