投身互联网行业了,开发语言从java换成了php,从道理上来说,java要比php难很多,话虽如此,但上手的过程还是痛苦无比
吐槽一下吧
-
php的弱类型虽然带来了足以让java都比不了的灵活性,但也失去了对其进行精准词法错误分析和检查的功能,基本上没有哪款php开发工具的错误检查机制能做的和java一样好。
-
基本上php就是个CGI程序,php脚本就是CGI程序的定制化执行脚本,理解了这个原理,就清楚PHP和java的差异为啥这么大了
-
PHP基本上是直接有php解析器直接分析源代码并运行,没有和java的字节码这样的东西,更不能把代码装载到内存运行。所以理论上来说PHP做的东西要比java的项目IO要高,服务器负载也受限。当然facebook出了自己的php虚拟机可以把脚本编译成字节码,还有resin公司的quercus也可以把php直接编译成jvm的字节码,然后跑在jvm上面,但这俩方案会不会有啥潜在风险和问题?php又没有一个类似JCP这样的机构可以把PHP技术标准化,用起来有些不放心。
-
和phper沟通起来略感吃力,在java领域的一些术语和名词对于phper来说差不多是陌生的,而phper所了解的术语和习惯,对我来说又搞不清楚说的是啥,经常出现一些理解上的偏差,有点头疼。
-
目前流行的PHP框架(ThinkPHP和YII)怎么看怎么像是抄袭的Ruby on Rails和Struts,理解起来到不是很吃力。
-
php的那一堆函数,连个标准库都没有,想找个啥功能得现去网上搜,唉。
-
最让人抓狂的是php的的语法,搞不明白为啥变量前一定要有个$,为啥调用方法要用=>,为啥连接字符串要用.,怎么php这么标新立异呢,满篇的$=>.看着眼晕
说了半天了,php也是有优点的
-
php代码变了不需要重启服务器,这点很棒
-
php的类名字符串可以直接实例化成类,一行代码就办了,java里却要写一堆代码。
-
php开发效率挺高,具体原因可能是开发思想上存在差异,php的定位就是网页开发的后台脚本语言,java的定位是企业级平台,分了5层,每层可替换,然后所有java开发者张嘴闭嘴的表现层,逻辑层,php里一共就三层(客户端层+表现层+持久层),这样划分倒也简单。
-
看得出php的侧重点就是网站开发了,对于互联网有关的URL重写,搜索优化,反向代理什么的,这些东西在java做企业开发时不太常见,也不经常用到,java的侧重点并不是互联网应用,从名字上就看出来了,java ee本身就带着企业的印记。