要想提高工作效率,必须得有好的工具。大数据有很多组件,但是邪了门儿的就是,竟然没有一个好用的客户端程序。
没办法,我只好用antd+webview自己做了一款跨平台的桌面应用。

先看下效果。

这是github地址:https://github.com/CJSoldier/whitepawcat。我一个人做有点孤单,还有点累,希望能跟大家一起玩。

为什么要做成桌面应用,做成web服务,用浏览器不好吗?

我觉得不好。因为我经常打开太多tab页了,到时候就不知道哪个tab也是咱们的大数据客户端程序了。而且当我们把右边所有的tab都关闭时,很可能会把我们的大数据客户端也关了。还有一个不好的地方就是没办法用alt+tab来切换应用。

做成web服务的形式不是不可以,但是比较尴尬。首先它会占用一个端口,我不喜欢看到“端口冲突” 的错。
更重要的是,做成web服务的话,jar包冲突怎么解决? 就算自定义一个classloader,每次加载不同的jar包。但是这个http服务什么时候开启呢?
在双击程序之后就立马启动还是提前部署到某个地方?

要知道这是桌面应用诶,桌面应用不应该是一双击就能用的吗?

为什么不用electron?

因为打包后文件太大,而且启动速度太慢。VS Code启动速度很快呀。 对,但它是微软出品的。一般情况下用electron打包的程序启动很慢的。我试过。

为什么不用bootstrap+jquery?

因为react可以做成单页面,这样看起来更像桌面程序。而且,似乎react渲染的更快一些。

为什么用自定义一个classloader来加载Jar包?

这是为了解决jar包冲突的问题。试想一下,我要连接两个版本的Hbase,一个是0.94,一个是1.2.0,如果jar包都放在一起冲突了怎么办?

为什么Java代码不做成服务的形式

我不想占用用户的端口。而且我觉得这是个真·桌面程序,不想让它看起来像一个web程序。

webssh不还是用了bootstrap+jquery?不还是要占用一个端口?

问的好。 我自己没本事做一个ssh客户端程序。只好把huashengdun/webssh直接拿来用了。 这个我也是无奈。如果你有心,你可以用react-xterm+java来做一个ssh,感激不尽。

为什么有很多硬编码?

约定大于配置,我是这样安慰自己的。

为什么代码看起来很矬?

Keep it simple stupid,我是这样安慰自己的。

为什么没有Linux版本的?不是号称跨平台嘛?

问的好。因为webview在linux下编译需要安装gtk-webkit。我没装成功。
这是zserge/webview的地址: https://github.com/zserge/webview.
你可以按文档说的试一下,其实不难的。

感觉开发起来好复杂

乍一看是复杂,我在写README的时候就感觉到了。 仔细一想其实不复杂。 C代码不用动,第一步就不用编译了。webssh我也已经编译好了。除非你修改了需要重新编译,否则直接从release里拷贝一份就可以了。 剩下的就跟开发web应用一模一样了。

用antd和webview打造一款大数据客户端程序的更多相关文章

  1. 3款大数据bi工具,让企业数据分析更简单

    ​企业数据可视化的髙速发展趋势让互联网时代的数据分析及可视化拥有全新的面貌.企业针对信息内容的数据分析及可视化,的要求在日益严格,那么有哪些在企业数据分析方面做得好的大数据bi工具呢? 一.大数据bi ...

  2. php 在线 mysql 大数据导入程序

    1 <?php header("content-type:text/html;charset=utf-8"); error_reporting(E_ALL); set_tim ...

  3. [Hadoop 周边] Hadoop和大数据:60款顶级大数据开源工具(2015-10-27)【转】

    说到处理大数据的工具,普通的开源解决方案(尤其是Apache Hadoop)堪称中流砥柱.弗雷斯特调研公司的分析师Mike Gualtieri最近预测,在接下来几年,“100%的大公司”会采用Hado ...

  4. Hadoop和大数据:60款顶级大数据开源工具

    一.Hadoop相关工具 1. Hadoop Apache的Hadoop项目已几乎与大数据划上了等号.它不断壮大起来,已成为一个完整的生态系统,众多开源工具面向高度扩展的分布式计算. 支持的操作系统: ...

  5. 【转载】Hadoop和大数据:60款顶级大数据开源工具

    一.Hadoop相关工具 1. Hadoop Apache的Hadoop项目已几乎与大数据划上了等号.它不断壮大起来,已成为一个完整的生态系统,众多开源工具面向高度扩展的分布式计算. 支持的操作系统: ...

  6. Hadoop和大数据:60款顶级开源工具(山东数漫江湖)

    说到处理大数据的工具,普通的开源解决方案(尤其是Apache Hadoop)堪称中流砥柱.弗雷斯特调研公司的分析师Mike Gualtieri最近预测,在接下来几年,“100%的大公司”会采用Hado ...

  7. PayPal高级工程总监:读完这100篇论文 就能成大数据高手(附论文下载)

    100 open source Big Data architecture papers for data professionals. 读完这100篇论文 就能成大数据高手 作者 白宁超 2016年 ...

  8. PayPal 高级工程总监:读完这 100 篇文献,就能成大数据高手

    原文地址 开源(Open Source)对大数据影响,有二:一方面,在大数据技术变革之路上,开源在众人之力和众人之智推动下,摧枯拉朽,吐故纳新,扮演着非常重要的推动作用:另一方面,开源也给大数据技术构 ...

  9. 大数据和BI商业智能有何区别?有何相关?

    大数据 ≠BI商业智能,大数据也不是传统商业智能的简单升级. 1.大数据和BI两者的区别 BI(BusinessIntelligence)即商业智能,它是企业数据化管理的一整套的方案,用来将企业中现有 ...

随机推荐

  1. java生成jar并用ikvm生成dll供C#调用

    最近想尝试用C#做NB_IOT北向API接口的访问.北向API的接口的访问需要证书的双向认证,而C#不支持双向认证,所以就使用IKVM在C#中跑JAVA程序实现HTTPS请求部分. 步骤如下: 一.使 ...

  2. iview中,table组件在缩进时产生的bug。

    问题描述: 在父元素因为缩进的关系撑开时,table组件不会因为父元素的撑开而自适应,问题如图 解决办法:在父一级的组件中使用table {width: 100% !important},强制使表格宽 ...

  3. 使用min-device-pixel-ratio媒体功能实现真正的1像素border

    关于设备像素比的知识,想必做过移动端开发的都有接触,这里就不介绍啦,万一有不懂的可以看张鑫旭大神的设备像素比devicePixelRatio简单介绍 由于设备像素比存在的原因,我们在处理设计图的一些边 ...

  4. windows 查看端口是否被占用

    查看本机端口是否被占用:netstat -ano | findstr "端口号" 用此端口的pid查看是哪个程序在占用:tasklist|findstr "1896&qu ...

  5. firefox support.mozilla.org 的管理员没有正确配置好此网站。为避免您的信息失窃,Firefox 并未与此网站建立连接。

    1.在地址栏输入:"about:config"-我了解此风险: 2.右键-新建-布尔: 3.在框内输入:security.enterprise_roots.enabled-确定-搜 ...

  6. es6里面的arr方法

    es6里面,关于arr的遍历以及查找,新增了很多的方法,对于不同的应用场景,运用合适的方法,可以达到事半功倍的效果: 一, arr.find():用于查找到符合条件的第一个成员,如果没有查找到的话,则 ...

  7. angularjs - 自定义指令(directive)

    自定义指令(directive) 使用 .directive 函数来添加自定义的指令. 要调用自定义指令,HTML 元素上需要添加自定义指令名. 例子:使用驼峰法来命名一个指令, demoDirect ...

  8. Mechanism:Limited Direct Execution

    虚拟化机制的几大挑战:1.性能.在实现虚拟化的同时不增加系统过多开销.2.控制.高效运行程序的同时对CPU保持控制(对资源的管理). Limited direct execution:直接在CPU中运 ...

  9. fillder抓包工具详解

    https://www.cnblogs.com/yyhh/p/5140852.html

  10. STM8L LCD配置与com使用问题

    void LCD_GPIO_Config(void) { //SEG GPIO Init GPIO_Init(GPIOE, GPIO_Pin_0|GPIO_Pin_1,GPIO_Mode_Out_PP ...