atitit.为什么 java开发要比php开发速度慢??
atitit.为什么 java开发要比php开发速度慢??
1. 界面开发方面vs php
javaer的理念验证滞后,常常手写界面与tag,而不能好好利用dw
解决::好好利用dw这个最强大的html ide吧。。不要使用struts,jstl一类框架的tag,大大破坏布局,而且难以调试。。
作者:: 老哇的爪子 Attilax 艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://blog.csdn.net/attilax
2. 架构繁琐
:其实这与语言关系不在.更重要的是人的思想..可惜..大多数JAVA项目都用SSH MVC方式,以及大批框架,什么设计模式三层架构,复杂的结构带来复杂的开发方式。不像php大力简化结构,
更易于使用,更快速.
解决::大力简化架构
3. 环境配置复杂
这个没办法解决,天然比php复杂
引入类库,php需要修改php。ini文件。
java 。net系列只需要导入类库。。但是java ide许多关于类库缺失的提示不如vs系列提示的好。。。
4. 类库jar包冲突(严重)
这个极其严重的问题。稍微大点的程序,类库很容易冲突。。导致大量时间排查次类错误。。jdk 缺失大量标准库 ,只能使用第三方库,造成的..
解决::目前难以解决。。企业可以建立自己的标准库..大量的减少了冲突...可以建立排除冲突流程,可以大大减少时间开销,但是对开发人员要求高。。
对于初手来说,只能花时间排查。。
.net系列理论上也会有次dll hell的问题。。但是因为.net ms供应了大量的标准库,,引进的lib大大减少,,所以,冲突也很少了...
5. 配置文件热部署的缺失(严重)
常用的ssh的常常修改了配置文件,就要重启web服务器.....
解除:: 放弃struts,使用jsp+ajax,,使用guice替换spring
自自定义orm框架,,添加热修改能力..
当然也可以修改ssh源码解决次问题,但对开发人员要求高。。初学着还是算了把。。
6. 热部署的缺失(严重)
5.写在JSP的代码不用编译即可执行.但是写在JAVA文件里的代码必须要先编译..不利于快速修改...
而.NET网站模式可以即时修改CS文件里的代码,即时编译生效..从开发人员角度看,类似于PHP脚本,可快速修改生效.
普通人员使用的tomcat的热部署能力极差。。导致修改少量代码都要重启web服务器
解决::使用支持热部署的web服务器吧。。小项目基本可以达到apache的速度了。 大项目虽然也可以热部署,但可能启动要慢。。这个暂无法解决
7. 结论::
java可以做到快速开发,但对开发人员要求高,而且比如标准库的积累,都需要长时间的积累,要可以修改大型开源项目(比如ssh)的源码等能力要求。
普通人员能力不够的情况下,只能受其残害无法自拔。。
8. 参考:
paip.JAVA的几大优点与缺点相比C#.NET.txt - attilax的专栏 - 博客频道 - CSDN.NET.htm
paip.java优缺点attilax总结c0.doc - CSDN博客.htm
atitit.为什么 java开发要比php开发速度慢??的更多相关文章
- atitit.为什么java体系开发效率这样低的原因and解决
atitit.为什么java体系开发效率这样低的原因and解决 #---开发理念问题(影响度:很大的,2-3倍效率) mvc<>webform server control ajax< ...
- Atitit.技术管理者要不要自己做开发??
Atitit.技术管理者要不要自己做开发?? 1. 为什么很多管理者不能自己亲自做了1 1.1. 沟通成本多了1 1.2. .组织分散. 1 1.3. 会议多 .协调多 1 1.4. 问题的根源在于我 ...
- Java程序员转Android开发必读经验分享
小编最近几日偷偷的发现部分Java程序员想转安卓开发,故此加紧补充知识,为大家搜集资料,积极整理前人的经验,希望可以给正处于困惑中的你,带来些许的帮助. 啰哩啰嗦的说说Java和Android程序的区 ...
- .NET C#转Java没那么难,开发环境篇
.NET C#转Java没那么难,都是面向对向的语言,而且语法还是相似的,先对比一下开发环境,再到Servlet,再到MVC,都是一样一样的,只是JAVA的配制项比较多而已,只要配好一个,后面都是co ...
- Java 容器在实际项目开发中应用
前言:在java开发中我们离不开集合数组等,在java中有个专有名词:"容器" ,下面会结合Thinking in Java的知识和实际开发中业务场景讲述一下容器在Web项目中的用 ...
- Java与Kotlin, 哪个是开发安卓应用的首选语言?
Java是很多开发者创建安卓应用的首选语言.但它在 Android 界的领导地位正受到各种新语言的挑战,Kotlin就是其一.虽然Kotlin最近才开始受到热捧,但有为数不少的人相信 Kotlin 在 ...
- Java Web开发和Python Web开发之间的区别
今天的文章讨论了Java Web开发和Python Web开发之间的区别.我不鼓励我们在这里从Java Web迁移到Python Web开发.我只是想谈谈我的感受.它不一定适合所有情况,仅供我们参考. ...
- 【.net开发者自学java系列】使用Eclipse开发SpringMVC(3)
[.net开发者自学java系列]使用Eclipse开发SpringMVC(3) 标签(空格分隔): Spring RESTful 很久没继续学习java的spring了.接下来继续 回忆一下上个随笔 ...
- Java or Python?测试开发工程师如何选择合适的编程语言?
很多测试开发工程师尤其是刚入行的同学对编程语言和技术栈选择问题特别关注,毕竟掌握一门编程语言要花不少时间成本,也直接关系到未来的面试和就业(不同企业/项目对技术栈要求也不一样),根据自身情况做一个相对 ...
随机推荐
- nodejs 服务器 崩溃 2种解决办法
用node启动server后,发现服务器不稳定,经常crash.我是用ssh远程登录的,ssh远程通道中断,或者Ctrl+C,都会使nodejs server崩溃掉. 一,node server 崩溃 ...
- linux集成开发环境
Linux操作系统的种种集成开发环境 随着Linux的逐渐兴起,已经有为数众多的程序在上面驰骋了,许多开发环境(Development Environment)也应运而生.好的开发环境一定是集成了编辑 ...
- Mac配置PHP开发环境
安装环境如下: Mac OS 10.10.1 Apache 2.4.9 PHP 5.5.14 MySQL 5.6.22 Apache配置 在Mac OS 10.10.1中是自带Apache软件的,我们 ...
- gdb对应vc调试命令
gdb vc调试对照表: 实现功能 vc gdb 修改后编译 f7 ma ...
- 《Linux兵书》
<Linux兵书> 基本信息 作者: 刘丽霞 杨宇 丛书名: 程序员藏经阁 出版社:电子工业出版社 ISBN:9787121219924 上架时间:2014-1-13 出版日期:20 ...
- SQL Server更改排序规则的实现过程
摘自: http://www.2cto.com/database/201112/115138.html 以下的文章主要向大家描述的是SQL Server更改排序规则的实现过程,以及在实现其实际操作过程 ...
- js和jquery判断事件流
$('body').on('click',function(e){ var $target = $(e.target); if($target.parents('.fixNav>div').le ...
- Unable to lock the administration directory (/var/lib/dpkg/),is another process using it?
Description:无法获得锁 /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)Unable to lock the ...
- C++标准库简介
C++标准库的所有头文件都没有扩展名.C++标准库的内容总共在50个标准头文件中定义,其中18个提供了C库的功能. <cname>形式的标准头文件[ <complex>例外]其 ...
- 根据Ip地址与掩码 得出 子网地址与广播地址
由于给予条件优先,没有直接给出子网地址与广播地址.但是又需要这两个参数,需要我们使用ip 地址与 子网掩码得出子网地址与广播地址.思路如下: 1. 子网地址, ip地址与 子网掩码分别换算 ...