码农的转型之路-这款轮子可以造吗?


从昨天发表的《码农的转型之路-多年以来的反思》收到了不少猿友的评论和关注,还有几个加了wx,给了很多正面的反馈。趁着热度还在:) 也有很多人不知道这个人要干嘛,索性今天正式介绍一下,但名字还没有想好,她应该是一款浏览器工具。

一、什么应用场景?
1.C/S开发

大概是7年前当时公司接了一个区域品牌羊肉追溯项目,其核心是通过RFID的卡标识人(养殖户)、货(羊)、场(屠宰场)以防止洗澡羊冒充品牌羊,应用价值就不多说了。技术点包含RFID读写器控制、轨道秤的重量数据采集、信号灯控制、屠宰场温湿度采集、打印溯源标签以及摄像头直播和录像等功能。
我做为项目的技术经理,一堆硬件数据采集和控制,按照当时主流做法是采用WPF/Winform做为上位机的控制终端,架构师都做了基础的技术研究,最后我提议考虑引入B/S和C/S混合架构,从易用性、扩展性、维护性等几个维度分析两种方式的优劣势。
考虑到会C/S的人员有少(更别说熟悉了),扩展性差(更新升级不方便,工控环境鼠标键盘都没有,将大部分业务界面使用web开发,刷新就是最新版)、C/S开发的界面比较low(也不是不做出来,做出来的成本比较高),所以最终采用WPF+CEF Chromium来做C/S底盒,用控制台Web Api来控制硬件设备。这样一来只需要1个人做硬件对接再开放一个http接口,1个前端人员就可以完成核心功能开发。

2.大屏展示系统
大屏展示系统有2个问题:

第一、静态资源加载多、加载慢,现在ZF项目喜欢高大上的界面,传统的2D地图看腻了。为了解决领导们的喜好,很多都使用3D地图+倾斜摄影做模型展示,视觉效果确实杠杠的,但是好看意味着资源文件大,往往加载这些资源都要卡成狗。
所以使用本地微服务加载资源,可以大大提高效应速度。
第二、界面全屏、开机启动功能,大屏系统大部分也是一个web界面,都是用浏览器展示,如果可以看到浏览器就显得太low了,所以必须全屏展示,电脑基本也是专用功能需要开机就自动打开系统。
所以这个工具可以完美解决这两个问题,其实其他项目也有类似的问题,主打一个DIY版本的浏览器。

3.工业互联网项目
与我遇到的羊肉追溯项目类似,核心的设备都是按照在屠宰场内部,屠宰场就是一个简易版的工业生产环境,都是基于上位机控制下位机,比如称重采集、RFID、信号灯、打印机等串口开发。

二、功能清单
1.支持加载远程服务器html,可以使用Java、.NET、PHP或者其他动态网页技术。支持加载本地Html、js、css开发UI,同时支持vue 混合模式,也就是可以开发单机版Windows App。
2.支持Get、Post等Web接口,可以通过web请求控制物联网设备相关的接口。
3.支持工控常规的关机、界面全屏、开机自启等操作。
4.支持调起开发者调试工具,方便界面调试。
5.支持Flash播放,也就是支持视频播放和直播等功能。
6.支持多种电子秤协议,支持实时推送串口数据,并且可以扩展新的品牌型号。
7.支持多种RFID设备协议,并且可以添加的品牌型号。
8.支持打印插件,可自定义打印模板。
9.支持调用执行任意代码或插件,实现桌面定制功能开发。
10.支持语音播放和语音识别模块。
11.支持html转pdf。
12.支持图片文字识别,基于OneNote实现。
13.支持窗口截图,实现抓屏或抓拍直播画面。

三、写作最后
如果单纯的有这些功能,也仅仅是一个轮子而已,稍微花点时间就可以复制一套。那么有什么特殊或装b的亮点吗?我想说跟xx一样挤一挤还是有的,总结了2个:

一个是功能多,尤其是RFID的厂家和型号至少支持5款以上,基本上大部分都支持了,电子秤已经支持耀华、托利多、顶尖等常用的品牌型号。

另外一个是扩展性,系统封装了通用的基类,只要继承实现编译dll或exe放到插件区域就可以自动加载,比如支持一个新的称重仪表,具体可以看一下称重驱动二次开发教程

通过上面的介绍不知道有没有表达清楚,这个轮子是给程序猿打辅助的,所以为了避免自我YY,现面向各位客户(程序猿、老板、架构师),通过此文做个小调研,这个轮子是您需要的吗?您愿意花多少银子呢?还有其他想说的评论区见:)

  • 18
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 我是一位20多年的老码,我的IT学习之从大学时期开始,我就立志要成为一名优秀的程序员。那时,我的专业是计算机科学与技术。我通过自学和老师的讲解,掌握了基本的编程语言,如C、C++、Java等。 后来,我开始应聘IT公司的工作。工作中,我更深入地了解了软件开发的流程,了解了各种软件开发工具和框架。我也去了解了计算机硬件的结构,学会了如何优化代码以及如何调试代码。 我还参加了很多培训课程和研讨会。这些课程和研讨会涵盖了各种主题,包括算法、数据库、网络、安全、人工智能等。我也参加了各种技术社区和论坛,了解了最新的技术趋势和应用。 除此之外,我还逐渐形成了自己的学习方法和习惯。我会在业余时间阅读相关的书籍和论文,并进行实践和探索。我还会与其他IT从业者交流,分享经验和发现。 今天,我已成为一名有经验的开发者和技术专家。通过积累多年的实践经验和持续的学习,我对计算机技术的理解和掌握越来越深入。我相信,在未来的IT学习之上,我将继续保持热情和学习,迎接新的挑战和机遇。 ### 回答2: 作为20多年老码,我一直认为学习是一个持续不断的过程。我第一次接触计算机是在1990年,那时我还是一名高中生。那时的计算机技术还很落后,我用的是DOS操作系统,还有些简单的软件和一些基本的编程语言。但是,我对计算机技术的兴趣与日俱增,并在大学里学习了计算机科学专业。在大学里,我学到了关于计算机体系结构、编程语言、数据结构和算法等基础知识。 毕业后,我开始在一家软件公司工作,并继续学习新的技术知识。在那里,我学会了C++和Java等高级编程语言,并开始做一些大型软件的开发工作,在这个过程中,我还深入研究了数据结构和算法等领域的知识,这些知识对于设计高效的程序非常重要。 随着互联网的发展,我开始学习一些Web技术,如HTML、CSS、JavaScript和PHP等。我还学习了数据库编程和网络编程等知识,这些技能对于Web应用程序的开发非常重要。 尽管我一直在学习新的技术和编程语言,但我也认为,编程不仅仅是掌握语言和技术知识,还需要不断地学习软件工程、代码设计、测试和维护等方面的知识。事实上,我认为软件工程实践是我职业生涯中最重要的经验之一。通过反复的代码测试、优化和维护,我发现自己的代码质量有了很大的提高,这使我更能够理解代码设计和开发有效的软件系统的重要性。 总的来说,我认为,编程是一个持续不断的学习过程,需要不断地学习新的技术和知识,以保持自己的竞争力。但是,对于一个成功的程序员,仅仅掌握技术知识是不够的。在实践中,我们还需要学习如何设计高效的程序和系统、如何测试和维护代码,并与其他开发人员进行协作和沟通。在每个开发项目的过程中,我们都有机会从错误中学习,以及提高自己的技能和知识。 ### 回答3: 作为一个20多年的老码,我的IT学习之可谓是经历了许多风雨,对我来说其中所经历的各种挫折与成长都是不可或缺的。 我的IT学习之从初中开始,那时我对计算机十分感兴趣,每天放学后都会去学校的计算机教室玩电脑。那时候的电脑是286的机器,比较简陋,但我激动的心情却一直没有减退。初中之后我考入了一所职业高中的计算机专业,那时候,我们上课基本都是在实验室里进行,许多同学开始学习C++语言,我也跟着学习了一段时间,但是很快发现自己还需要更多的基础知识,于是我花了许多时间学习了计算机原理、数据结构、算法等基础知识。 高中毕业后,我考入了一所大学,在那里我又接触了更多的知识领域,例如数据库、网络、操作系统等等。这个阶段的学习是比较理论性的,但它为我后来的职业发展打下了很坚实的基础。 大学毕业后,我开始在一家小公司工作,那时候我在实际的工作中学习到了更多的技能,例如如何使用版本控制系统、如何与团队协作、面向对象编程等等。这个阶段的学习很实用,它让我能够真正地将我的理论知识用于实际的工作中。 随着我逐渐成长为一个有经验的工程师,我也学会了如何不断地更新自己的技能。我通过参加各种培训、阅读技术书籍、参与技术社区和开源项目,不断地学习新的技术和知识,并将它们应用于我的工作中,这使我的职业生涯不断上升。 总的来说,我的IT学习之是一个持续不断的过程,从初中到现在,我始终在不断地学习和成长。在过程中,我体验了挫折,但同时也获得了成就感和满足感。通过持续地学习和更新自己的技能,我们可以不断发掘自己的潜力,实现自己的目标。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值