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开发速度慢??相关推荐

  1. 钉钉需要什么java知识_Java钉钉开发_01_开发前的准备

    源码已上传GitHub:传送门 一.准备事项 1.1  一个能在公网上访问的项目: 1.2  一个钉钉账号 1.3 创建一个应用 登录钉钉后台->工作台->自建应用 二.钉钉的配置参数 2 ...

  2. Java新手看招 常用开发工具介绍

    Java新手看招 常用开发工具介绍 Java的应用越来越广泛,学习Java的人也越来越多.学过程序设计的人知道,使用Basic进行程序设计,可以使用QBasic.Visual Basic等开发工具:使 ...

  3. java ug二次开发_使用Java进行UG二次开发:简单的例子(上) | 学步园

    最近因为要进行TeamCenter二次开发(胖客户端定制),所有要开始研究Java了.因此突发奇想为什么不能使用Java进行二次开发呢?现在对UG进行的开发以C/C++应用为主.大多数使用的是原来的U ...

  4. java和python的web自动化有什么区别-Java Web开发和Python Web开发之间的区别

    今天的文章讨论了Java Web开发和Python Web开发之间的区别.我不鼓励我们在这里从Java Web迁移到Python Web开发.我只是想谈谈我的感受.它不一定适合所有情况,仅供我们参考. ...

  5. Java程序员转Android开发必读经验

    小编最近几日偷偷的发现部分Java程序员想转安卓开发,故此加紧补充知识,为大家搜集资料,积极整理前人的经验,希望可以给正处于困惑中的你,带来些许的帮助. 啰哩啰嗦的说说Java和Android程序的区 ...

  6. Java vs Kotlin,Android开发人员应该选择哪种语言?

    自 Google 于 2017 年宣布 Kotlin 成为 Google IO 的 Android 开发官方语言以来,想要成为Android开发人员的程序员正陷入两难境地. 在讨论这个问题前,我首先要 ...

  7. 微信公众号Java开发-笔记02【开发接入准备、开发接入】

    学习视频网址:哔哩哔哩网站 微信公众号开发-Java版 [P01-P02]微信公众号Java开发-笔记01[微信公众号介绍.开发环境搭建] [P03-P04]微信公众号Java开发-笔记02[开发接入 ...

  8. Java实例开发教程:SpringBoot开发案例

    最近在做邮件发送的服务,正常来说SpringBoot整合mail还是很方便的,然而来了新的需求:A请求使用邮箱C发送,B请求使用邮箱D发送,也就是说我们需要配置两套发送服务. 单实例 首先我们来看下单 ...

  9. java web开发技巧_java web开发技巧

    1 java web开发技巧 java学习没有诀窍,也没有捷径.只有脚踏实地学好java知识,把理论知识灵活运用实践,多学,多问,多操作,只要这样才能真正成为java编程高手.下面小编给大家说说jav ...

  10. Atitit.技术管理者要不要自己做开发??

    Atitit.技术管理者要不要自己做开发?? 1. 为什么很多管理者不能自己亲自做了1 1.1. 沟通成本多了1 1.2. .组织分散. 1 1.3. 会议多 .协调多 1 1.4. 问题的根源在于我 ...

最新文章

  1. POJ 1207 The 3n + 1 problem
  2. 第8章 多项式回归与模型泛化
  3. Linux内核目录结构(2.6版本以上的kernel)
  4. mysql对串列进行短索引_MySQL 请选择合适的列
  5. oracle 酒店客户数量,浅谈经济型酒店行业的数据分析(二)
  6. 卡通驱动项目ThreeDPoseTracker——模型驱动解析
  7. 接口隔离原则_设计模式的三大分类及六大原则
  8. 剑指offer——6.从尾到头打印链表
  9. 软件技术架构:通过限流与熔断,打造一个“靠谱”的系统
  10. DAY37-Python入门学习-进程池与线程池、协程、gevent模块
  11. modelsim安装_XLINUXFPGA开发工具篇modelsim的安装
  12. Linux安装yum过程(超详细!)
  13. 分类预测 | MATLAB实现ELM极限学习机多特征分类预测
  14. 深度学习算法面试问题整理
  15. Net share 命令详解
  16. 操作系统动态分区分配方式的模拟实现(分配与回收)C++
  17. OSChina 周日乱弹 —— 会后空翻算个屁,咱这卖艺卖身吃鱼干
  18. Hive批量删除历史分区
  19. Java学习—初入Java
  20. jQuery制作tab选项卡

热门文章

  1. 蓝桥杯java 最短路_Java实现蓝桥杯 最短路
  2. dubbo monitor mysql_dubbo-monitor监控台的部署
  3. [官方消息]优秀云大使推广经验分享合集
  4. QQ 木子版 vs 现在的某些修改版
  5. css(二) block,inline和inline-block概念和区别
  6. JS错误 theForm.submit();SCRIPT3: 找不到成员。
  7. Source Insight 3.5 序列号分享
  8. Introduce Local Extension
  9. 文本框焦点清空以及回车键提交表单的实现
  10. 30 | 答疑文章(二):用动态的观点看加锁