前言
之前大量使用php开发自己想要的功能,用久了发现了很多php不适合我的需求的地方。于是一直有个念头,想要寻个适合我发需求的开发语言。在此过程中,翻阅了大量资料(网上), 后来意识到,之所以存在这么多的编程语言,是因为它们各有专长。不同的需求可以选择最适合的编程语言。以开发效率为准。
当然,我还是觉得,有些语言的历史包袱太重,所以才依然“坚挺”。否则很多新语言会更快的推广吧。
编程语言类型
放上链接:弱类型、强类型、动态类型、静态类型语言。
为什么要写这篇文
大多数人学校编程都是从java开始的。如果是在大学,则会从C语言开始。然后当时我接触的适合并不习惯C和java的风格,感觉上手比较费劲。然而资料有限,在编程了路上,我先入了Java的坑。不过学习时java基础打的还算好,很多面向对象的思想是很多种语言中都是通用的。并且折腾java的环境搭建锻炼了我的耐心与解决问题的能力。
后来学习了JavaEE的一点皮毛,利用java开发web。然而只会写点简单的jsp,以及一个个的servlet。每一个页面都对应到具体的jsp。或者servlet。与实际的文件路径对应。感觉比较low。后来用了Struts2、hibernate,修改配置文件即可使用。但还是觉得操作起来比较费劲。并且总有各种版本兼容问题、各种Struts漏洞。总之,我放弃java了。
在java之后,一直不知道用什么好。无意间发现了php以及ThinkPHP框架。让我这个对php一窍不同的人,大概看了看文档就感觉可以上手了。于是照猫画虎的开发起来,还别说,ThinkPHP的入门成本很低。并且我有java的基础,敲代码也很顺利。使用XAMPP,配合简单的html、JavaScript、css、即可用ThinkPHP开发出比较好的web应用。比如我为工作开发的:https://tlexcel.tk:4433/zx_apply/(可能因域名到期或修改端口因而失效哦)
但是现在,我还是遇到瓶颈了:
- 适合复用比较麻烦
- 想要的功能需要自己实现,需要写好多代码,开发效率不高
- php也存在版本兼容问题。很多库、框架对最新版php并不完全支持
- 跨平台不算很方便
我想,是时候研究个新的开发语言了。我并不想在一个地方钻研的很深,深入研究某语言对于应用层的开发并不会提升太多。为贴合实际的使用,我想要能够兼容大部分情况(复杂环境)的编程语言,一次开发,适应各种环境(PC端、移动端、web、app、CLI等)。开发效率简洁,语法适合自己。呃...要求不高吧。
找到了几个适合的编程语言
Python
爬取网页,简单的文本、图像处理、CTF做题等。上手应该比较快。有很多成熟的库。社区成熟,版本从2.x到3.x,各种插件数量很多。环境搭建也简单
NodeJS
基于JavaScript,在NodeJS环境中增加了很多api,使用JavaScript语法调用系统底层。开发web可实现前后端语言一致。环境部署同样简单。好像在数据库支持方面弱一些。
其实JavaScript在很多地方使用,一些嵌入式平台使用JavaScript,B/S架构的系统均离不开JavaScript。 并且JavaScript用于开发web的的库与框架数不胜数。新版向后兼容
Go语言
Google的,跨平台功能很强大。因直接编译成二进制,所以无关平台。
Kotlin
可看这篇:为什么我要改用Kotlin。Kotlin主要是替换java来开发Android。很多原理和java一致。已实现将java代码转成Kotlin,Kotlin则可直接在JVM编译。
我已经放弃java的坑了,使用Kotlin的概率比较小。