V2EX 首页   注册   登录
 g00001 最近的时间轴更新

g00001

  •   V2EX 第 47953 号会员,加入于 2013-10-26 06:56:08 +08:00
    g00001 最近回复了
    你说的“只适合个人使用的编程语言” - 在这个世界上并不存在。这个推理本身就有点矛盾。简洁灵活并不是缺点,个人都用不好的编程语言 - 团队也不可能用好。
    别看 aardio 只有 5.6MB 这么小的体积,功能并不简单,可以用来写企业 ERP,参考开源项目 https://github.com/carlaau/aardio-erp 可以用来做网站写个论坛都很轻松,例如 http://www.jianma123.com/

    然后你所说的,打开随便看了一下,马上就总结出 aardio 不适合用于“实际项目” - 这个把个人开发的项目理解成了一定是不实际的项目,实际上很多优秀的桌面软件都是个人开发的。aardio 历经 14 年的开发,更新活跃,不可能是用来做不实际的项目,这样的话也不可能论坛有几万帖子,大量开源代码,第三方群都有一千多人。

    aardio 也算不上是你所说的完全不开源、个人维护的项目。aardio 本身就是一个开放的框架,主要的特性和功能使用开源的标准库提供,要不了几句代码就可以扩展一个模块,类似在 aardio 中嵌入 Java,C#,Python.....这些编程语言,以及嵌入 Webkit,Electron.....这些浏览器控件,这些功能都是由标准库中无保留的开源模块提供的,对于桌面软件,核心开源的语言都容易被研究破解反编译出源代码的,而这对于多数桌面软件是致命的,aardio 出于保护用户软件的目的不开源核心运行时 - 没有什么问题,不开源的桌面开发工具实际上很多。

    说到跨平台,对于桌面软件,除了 Windows 其他操作系统的市场占有率可以忽略(例如 electron 跨平台是有代价的 ),并不是所有桌面软件都有必须跨平台的需求。所谓跨平台,也并不一定就要是 100%的跨平台,并不是所有操作系统提供的接口、特性都是完全一样的,实际上单纯的用 electron,像调用 WINAPI 这些简单的事都做不到,aardio 不一样,虽然是嵌入浏览器壳子,在 javascript 里就可以直接调用 WINAPI,非常的方便。

    适不合用于“实际项目”,关键看这个“实际项目”是干什么,aardio 的优势就是小,可以使用原来已经熟悉的语言和技术写桌面软件,相比 VC,VB 这种要投入多年时间去学习的开发工具要方便很多。
    这些东西也还是要看软件开发者各自的需求,区分需求具体对待,有一些软件的确是不怕大,越大越好卖钱,但也不是说你写个软件觉得越大越好,所有人都一定也得是相同的想法,对于大多数共享软件,几 MB 还有很多人嫌大了,如果动不动就几百个 MB 起步,估计大多数共享软件下载站都得关门了。有很多用户一看你的软件上百 MB,扭头就走了,毕竟不是每个软件开发者都是腾迅、网易,要用户忍受你的体积,你先得有他那么大的底气呀。

    而且软件的体积大,占用的资源一般也会大,例如 chrome,多开几个网页,8G,10G 的内存就没有了,一个网页就得启动一个 chrome 进程,不要以为开发者自己配的内存大,小白用户个个内存都很大。而且别人愿意 chrome 耗很大的内存,不见得对每个共享软件都有这种耐心,要是桌面上开几十个进程,个个都想占个 8G,10G 的耗光用户的内存,那就笑话了。

    如果希望开发的桌面软件体积小一点的,可以试试 aardio,aardio 一个主要特色就是体积小,开发工具带全部标准库也就 5.6MB ,虽然体积小功能可并不少,接口丰富,而且还可以嵌入调用 Java,C#,Python...这一大堆的第三方语言,非常方便。

    用 aardio 嵌入浏览器也很方便,可以嵌入一个很小的 HTTP 服务端,服务端支持类 PHP 的模板语法(关键还可以直接调用系统 API 这些),支持系统自带的浏览器控件,带精简版的 WebKit 控件 3MB,也支持 chrome 的精简版的 blink 控件,也可以用来嵌入 electron。

    发一个 aardio 范例里的 asar ( electron 发布打包格式)文件管理器,类似这种软件用 aardio 要不了几句代码就能写出来。 像这种一些小的软件,几句代码可以搞定的事,几百 KB 可以搞定的事,非要上个几百 MB 的框架,没有必要吧。

    开着豪车非要去骑自行车,这的确是不对。
    但是要知道,满大街更多的是自行车,你溜个菜市场,还不愿意骑自行车,非要把房车挤到菜市场里去买菜,理由竟然是越大就一定越方便,越高级,这就不合理了。
    大 python 培训一年居然只要¥ 200,还是高级工程师,还被喷成这样,看来抱大腿也不好混,aardio 培训一年都¥ 1500 了,交钱还要先排队。
    15 天前
    回复了 Sixzeroo 创建的主题 程序员 有没有 Win 下好用的 OCR 工具推荐?
    可以用 aardio 写一个,
    不需要运行时,生成软件几百 KB,开发工具 5.6MB ,简单方便。

    几句代码可以解决问题:

    import console
    import win.clip;
    import gdip.bitmap;
    import baidu.client;

    //创建百度 OCR 客户端
    var http = baidu.client();
    http.setAuth("http://update.aau.cn/v10/test/test-baidu.aardio")

    //读取剪贴板图像
    var hbmp = win.clip.readBitmap();
    var bmp = gdip.bitmap(hbmp);

    //调用 OCR 识别接口
    var ocr = http.api("https://aip.baidubce.com/rest/2.0/ocr/v1/");
    var result = ocr.general_basic(
    image = bmp.saveToBuffer("*.jpg");
    )

    //输出结果
    console.dumpJson(result);
    console.pause(true);

    参考源码:
    http://bbs.aardio.com/forum.php?mod=viewthread&tid=22093

    调用 google 的 tesseract-ocr 也可以
    http://bbs.aardio.com/forum.php?mod=viewthread&tid=12601
    https://github.com/zsj1029/MillionHero
    还是这个好,不用配置一大堆,拿起来就可以耍
    58 天前
    回复了 zjsxwc 创建的主题 程序员 windows 下如何命令行调用迅雷下载?
    windows 上就用 aardio 吧,
    实现一个 HTTP 服务器用于浏览器上局域网调用也就没几句代码
    ----------------------------------------------
    import wsock.tcp.asynHttpServer;
    var srvHttp = wsock.tcp.asynHttpServer();

    srvHttp.run(
    function(response,request){
    response.write(request)
    }
    );


    下载可以调用 aria2,
    用 aardio 调用他的 WebSocet/PRC 接口,也就几句代码的事
    ----------------------------------------------
    import web.socket.jsonClient;
    var ws = web.socket.jsonClient();
    ws.aria2.addUri({"下载地址"})



    至于调用迅雷嘛,用 aardio 也简单:
    ---------------------------------------------
    import com;
    var thunder = com.CreateObject("ThunderAgent.Agent")
    thunder.AddTask("http://download.aardio.com/aardio/ide/aardio.7z","aardio.7z")
    thunder.CommitTasks()


    而且 aardio 可以调用 python,node.js 这些提供的模块,如果会这些东西就更快。
    138 天前
    回复了 changwei 创建的主题 JetBrains 为什么 JetBrains 的 IDE 永远都这么卡?
    哪个 IDE 又不卡?!

    不过 aardio 的 IDE 除外,体积只有 6.5MB ,智能提示的速度跟飞一样,编译发布软件只要几个秒。
    Windows 有 VS,C#这些东西,纯玩命令行的时候不多,所以 CMD 弱。
    CMD 内部也是 Unicode,但做了 ANSI 转换,对 UTF8 的支持很烂。类似的 Windows 上的一些开发工具:VB,易语言都是这个路数,不能愉快的 Unicode 经常遇到乱码。

    换任何一个支持 Uniocde 的编程语言都比用 CMD 方便,例如用 aardio 写几句代码调用 ffmpeg

    import console
    import process.popen

    prcs = process.popen("D:\ffmpeg\bin\ffmpeg.exe","-i","d:\test.mkv")
    prcs.codepage = 65001;//使用 UTF8 编码

    for( all,out,err in prcs.each() ){
    console.log( out,err );
    }

    console.pause();

    还可以给 ffmpeg 来个带界面的:

    windows 是干这事的
    DigitalOcean
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   鸣谢   ·   667 人在线   最高记录 3541   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.0 · 22ms · UTC 18:28 · PVG 02:28 · LAX 10:28 · JFK 13:28
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1