在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
因为小编最近在写两套教程,分别是Java语言基础教程和Go语言的基础教程,并且这 2 门语言,小编在实际的工作中也都有用过 而且 所以对这两门语言还算比较了解,所以本文对这 2 种语言聊聊小编自己的感受与看法 ,也顺便聊聊小编这10年来,各种编程语言的一些感受 本文观点仅仅代表自己,仅供参考 不希望引起语言好与坏之争。 小编的C++开发经历最初小编我刚毕业的时候,是做 了解过 C++桌面软件开发的人都知道 , 但是也很难实现漂亮的界面,后来也接触过 导致你整天想着这个按钮怎么实现,那个编辑框文本怎么垂直居中,而不是把重心放在业务上。总之,吃力不讨好。 况且 甚至每个 做了 3 年的 想到 小编的Android开发经历因为大学是计算机专业,在大学里面学过 记得有一件事记忆特别深,之前做 需要手动一个key一个 key 的去解析,获取值。 做安卓开发的时候,同学当时告诉我有一个 当时看到这感觉用 感觉从原始的刀耕火种时代,到了现代时代 。 转眼间,开发安卓也有了6,7年了,Java现在用的,不说是专家吧,至少也算是个高级水平吧,随着Java语言的深入 也慢慢觉得Java虽好,但是也有一些不太好的地方了。 比如 语法简单,写起来也舒服。 还有Java的虚拟机,导致特别的消耗资源 。 比如 Java 的 Spring 那一整套解决方案,有人戏称是配置工程师,想要什么功能,只需要在配置一下就行了。(前提是你得记得住怎么配置或者知道怎么搜索) 可见 Java Spring 这套有多成熟 ,但是也带来了,黑箱操作,很多人只知道配置,不懂得其中的原理 编译出来的是什么?是一个可执行文件吗?是可以 很多初级的甚至做了5,6年 当时Java的好处也是非常的多,Spring 那一套提供了一篮子解决方案,用来企业级开发,最稳定不过 国内的阿里,JD等公司,都是在大规模的用 那小公司更不用说了,只要选择Java开发,99%的都会选择 Spring了 当然小编是做 后来接触 由此小编和后来的 Go语言有了交集 小编和Go语言的开发经历说到Go语言,不得不提 技术选型的时候,首先要决定的是,后台到底是用什么语言写?用什么框架写? 用 但是同时,也在网上搜一些 比如:语法简洁,函数返回多值,天生支持并发,使用通道进行多个协程之间的同步和同信,丰富的网络编程接口 当然还有人诟病 也真的很晦涩难懂,尤其是 STL 中的源码。 到了Java中,泛型虽然比C++中的简单了点,但是还是太难理解,所以小编宁愿多写几个函数,也不想要泛型,因为这玩意太费脑子了。 说了费脑子,小编了解到 所以啊,一个编程语言,主要看背后设计的思想, 所以在 因为前加加,后加加,区分得开,区分不开,反应不出啥,啥都反应不出来。 要跑题了,说到 语言本身就支持的,就提供了一接口,net 包中提供了相当丰富的接口,用来写 web ,而且 gin ,iris 这些web框架,封装的也不是很深 这正是我所需要的:不想要那种封装的太深的东西,只靠配置,让我不知道里面的具体原理流程 但是又不想要那种最原始的,什么都不封装,我觉得 gin , iris 正是我需要的这种框架。 还有一个原因,就是,Go语言编译出来的,只有一个可执行文件 ,扔到服务器上就能跑起来,提供服务了 连 nginx 这种都不用安装 。就直接提供80服务了,这个相于对 Java, 服务器上几乎 什么都 不用安装 编译出来一个可执行文件,命令行执行,就OK了,这个对运维太友好了。不用安装 tomcat ,不用安装 JDK ,不用配置环境,不用安装nginx 这一点也是最吸引我的地方 还有就是,Go语言开发的效率相当的高,性能也很高,被称为 21 世纪的 C 语言 所以最终,还是选择了 Go ,作为 Java和Go的比较这种话题最容易引起语言的好坏之争,因为本身程序员手里都有一种用的非常熟练的工具,比如有的人用 比如有的人只接触过 才能更公正一点,事实上,语言是分好坏的。这个小编认为是存在的。 Java与Go ,现在的争论很多,Java 二十多年的历史了,各种框架,库,解决方案非常的成熟,而且性能不差 是现在很多企业的首选语言,但是也不否认 Go语言,Google大力推广的,内部也在使用的,它的出现,必然是因为解决一些问题而出的 但是出来的较晚,各种库,解决方案没有 所以,现在这两种语言谁也代替不了谁。但是小编个人认为,未来在服务端编程方面,一定是Go的未来 现在的 历史总是惊人的相似,时间会回答一切。我们安静的见证就好。 至少在现在,会这两种语言之中的任何一种,都是不缺少工作的。 C++到 Java,再到 Go, 有什么感受作为过来人,可能第一感觉就是, Java真的很不错,优等生,有时候找不出什么出挑的毛病。有一些不太好的地方,但都不是实质性问题
这10年的开发经历,从 总得来说,语言只是工具,能正确使用工具,解决问题就好 但是解决同一种问题,有多种工具时,这里面就有好有坏了,有取有舍了,个中选择,懂的人自然懂 如果你是一个学生,如果你刚工作,如果你是做后端的,建议你一定要看看Go语言 如果你是一个工作多年的人了,相信哪种语言对你来说也不太重要了 |
请发表评论