atitit.为什么 java开发要比php开发速度慢??
atitit.为什么 java开发要比php开发速度慢??
1. 界面开发方面vs php 1
2. 架构繁琐 1
3. 环境配置复杂 1
4. 类库jar包冲突(严重) 1
5. 配置文件热部署的缺失(严重) 2
6. 热部署的缺失(严重) 2
7. 参考: 3
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开发速度慢??相关推荐
- 钉钉需要什么java知识_Java钉钉开发_01_开发前的准备
源码已上传GitHub:传送门 一.准备事项 1.1 一个能在公网上访问的项目: 1.2 一个钉钉账号 1.3 创建一个应用 登录钉钉后台->工作台->自建应用 二.钉钉的配置参数 2 ...
- Java新手看招 常用开发工具介绍
Java新手看招 常用开发工具介绍 Java的应用越来越广泛,学习Java的人也越来越多.学过程序设计的人知道,使用Basic进行程序设计,可以使用QBasic.Visual Basic等开发工具:使 ...
- java ug二次开发_使用Java进行UG二次开发:简单的例子(上) | 学步园
最近因为要进行TeamCenter二次开发(胖客户端定制),所有要开始研究Java了.因此突发奇想为什么不能使用Java进行二次开发呢?现在对UG进行的开发以C/C++应用为主.大多数使用的是原来的U ...
- java和python的web自动化有什么区别-Java Web开发和Python Web开发之间的区别
今天的文章讨论了Java Web开发和Python Web开发之间的区别.我不鼓励我们在这里从Java Web迁移到Python Web开发.我只是想谈谈我的感受.它不一定适合所有情况,仅供我们参考. ...
- Java程序员转Android开发必读经验
小编最近几日偷偷的发现部分Java程序员想转安卓开发,故此加紧补充知识,为大家搜集资料,积极整理前人的经验,希望可以给正处于困惑中的你,带来些许的帮助. 啰哩啰嗦的说说Java和Android程序的区 ...
- Java vs Kotlin,Android开发人员应该选择哪种语言?
自 Google 于 2017 年宣布 Kotlin 成为 Google IO 的 Android 开发官方语言以来,想要成为Android开发人员的程序员正陷入两难境地. 在讨论这个问题前,我首先要 ...
- 微信公众号Java开发-笔记02【开发接入准备、开发接入】
学习视频网址:哔哩哔哩网站 微信公众号开发-Java版 [P01-P02]微信公众号Java开发-笔记01[微信公众号介绍.开发环境搭建] [P03-P04]微信公众号Java开发-笔记02[开发接入 ...
- Java实例开发教程:SpringBoot开发案例
最近在做邮件发送的服务,正常来说SpringBoot整合mail还是很方便的,然而来了新的需求:A请求使用邮箱C发送,B请求使用邮箱D发送,也就是说我们需要配置两套发送服务. 单实例 首先我们来看下单 ...
- java web开发技巧_java web开发技巧
1 java web开发技巧 java学习没有诀窍,也没有捷径.只有脚踏实地学好java知识,把理论知识灵活运用实践,多学,多问,多操作,只要这样才能真正成为java编程高手.下面小编给大家说说jav ...
- Atitit.技术管理者要不要自己做开发??
Atitit.技术管理者要不要自己做开发?? 1. 为什么很多管理者不能自己亲自做了1 1.1. 沟通成本多了1 1.2. .组织分散. 1 1.3. 会议多 .协调多 1 1.4. 问题的根源在于我 ...
最新文章
- POJ 1207 The 3n + 1 problem
- 第8章 多项式回归与模型泛化
- Linux内核目录结构(2.6版本以上的kernel)
- mysql对串列进行短索引_MySQL 请选择合适的列
- oracle 酒店客户数量,浅谈经济型酒店行业的数据分析(二)
- 卡通驱动项目ThreeDPoseTracker——模型驱动解析
- 接口隔离原则_设计模式的三大分类及六大原则
- 剑指offer——6.从尾到头打印链表
- 软件技术架构:通过限流与熔断,打造一个“靠谱”的系统
- DAY37-Python入门学习-进程池与线程池、协程、gevent模块
- modelsim安装_XLINUXFPGA开发工具篇modelsim的安装
- Linux安装yum过程(超详细!)
- 分类预测 | MATLAB实现ELM极限学习机多特征分类预测
- 深度学习算法面试问题整理
- Net share 命令详解
- 操作系统动态分区分配方式的模拟实现(分配与回收)C++
- OSChina 周日乱弹 —— 会后空翻算个屁,咱这卖艺卖身吃鱼干
- Hive批量删除历史分区
- Java学习—初入Java
- jQuery制作tab选项卡
热门文章
- 蓝桥杯java 最短路_Java实现蓝桥杯 最短路
- dubbo monitor mysql_dubbo-monitor监控台的部署
- [官方消息]优秀云大使推广经验分享合集
- QQ 木子版 vs 现在的某些修改版
- css(二) block,inline和inline-block概念和区别
- JS错误 theForm.submit();SCRIPT3: 找不到成员。
- Source Insight 3.5 序列号分享
- Introduce Local Extension
- 文本框焦点清空以及回车键提交表单的实现
- 30 | 答疑文章(二):用动态的观点看加锁