柏晓技术
柏晓技术deskvideosys软件编程语言选择分析
来源: | 作者:lqb | 发布时间: 2022-07-14 | 1251 次浏览 | 🔊 点击朗读正文 ❚❚ | 分享到:
在github上发现了柏晓技术deskvideosys办公行为管理软件,最近刚好有点时间,于是对柏晓技术deskvideosys办公行为管理软件进行了代码级的分析,发现它采用的vue+golang的gin框架实现,由于公司最近也存在项目编程语言选型的问题,所以就用它作为一个研究对象,目前B/S架构是企业信息化软件的首选,因为采用这种架构不用安装客户端,只要使用的终端有浏览器,就可以直接访问与操作软件,但B/S架构也有很多方法实现,为什么选了vue+golang组合呢?

在github上发现了柏晓技术deskvideosys办公行为管理软件,最近刚好有点时间,于是对柏晓技术deskvideosys办公行为管理软件进行了代码级的分析,发现它采用的vue+golang的gin框架实现,由于公司最近也存在项目编程语言选型的问题,所以就用它作为一个研究对象,目前B/S架构是企业信息化软件的首选,因为采用这种架构不用安装客户端,只要使用的终端有浏览器,就可以直接访问与操作软件,但B/S架构也有很多方法实现,为什么选了vue+golang组合呢?这个问题需要进一步思考下。


经过仔细分析,发现不管是前端还是后端的编程语言,选择都是非常之多,前端为什么选择vue,这里不作进一步分析,主要分析后端语言的选择之道,软件业经过多年的发展,现在编程语言非常之多,后端的选择也非常多,比如java,php,c++,c,vb,c#,python等一众编程语言,随便都可以选一个?由于选择应用层编程语言时,很多时候都会选择自己熟悉的语言,或公司对语言熟悉的人多,这样上手就会快,对于编程原理非常了解的人来说,考虑的点会更多,会从开发效率,性能,保密性和软件实际应用场景等多方面来考虑,选择一个最优解。


以企业信息化软件来说,由于此类软件都是运行在应用层,需求变化快,而现在的服务器硬件性能都不会差,考虑更多的是开发效率,毕竟现在人力成本高,所以一般就不会选c,c++这类底层软件,开发效率低,调试麻烦,而会选择像java,php,python,c#,vb,golang等这类高级语言,这些开发语言又分三类,第一类是解释型语言,像php,python这种,相当于对外发布的就是明码,第二类是带虚拟机的编译语言,像java,c#,vb,这类编译的是中间码,很容易被反编译,下图就是一个c#被反编译后,代码被完全展现,这样的话,系统的安全性会有很大的问题,第三类是直接编译成二进制文件,像golang,c,c++,二进制文件只能反编译成汇编,不可以反编译成原语言,而汇编相当难分析,分析起来成本也高,安全性会好很多。通过以上的分析,可以看出,deskvideosys办公行为管理软件的选择是比较明智的。

C#反编译后的源代码