`
hatedance
  • 浏览: 59075 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

关于开发效率和性能的选择

阅读更多
开发效率和性能总是死敌。
一个技术,基本上要么开发效率低下但性能超好,或者开发效率提高但性能下降了。
je上最近的2个帖子,其实都是在讨论一个问题,到底是性能优先还是易用性优先。(rpc or norpc,hibernate or jdbc)
我看到很多人都选择性能优先。
其实这个问题很简单,选择性能优先的选择norpc,jdbc,甚至存储过程。
倾向开发效率的人往往选择rpc,hibernate。
同类的选择还有stateless or stateful.spring的作者rod johnson一开始也曾鄙视stateful ejb,理由是性能太差。不过后来他也承认stateful ejb有其合适的用途。

另外一个类似的例子是web层的状态管理。如今的大多数基于jsp的mvc都是无状态的。但hibernate的作者却提出要让web层有状态。他搞了web beans规范,推出了seam产品。
显然,seam的一个目的就是通过新增的状态管理,简化web的开发。然而,同时他也指出,seam适合小型的相对简单的项目。

我的结论就是,每种技术都是双刃剑,作为程序员,尤其是架构师,要根据情况,选择合适的技术。不能简单的说那种技术好还是不好,而是得有上下文。
不能盲目的追求性能,
舍弃hibernate,舍弃stateful session bean,舍弃web service,
而选择jdbc, 存储过程,stateless session bean, socket.

对于性能,在满足需求的前提下,就应该追逐开发效率。否则你连java也不要用了,直接写汇编去吧。
不见得每一个系统都有庞大的用户群。我相信绝大多数的系统都是中小型的系统,绝对有理由牺牲部分多余的性能换来开发的简化。
更何况就算是一个庞大的系统,正因为其庞大,也不必只选择单一的技术。比如客户访问的模块因为人多,考虑性能而选择jdbc。
但管理模块则考虑整个系统就几个管理员使用,可以选择hibernate。
分享到:
评论
1 楼 xiaoych 2010-04-08  
赞同你的观点,呵呵

相关推荐

    eclipse开发性能优化、java代码性能优化

    通过上述介绍的 Eclipse 开发环境和 Java 代码级别的性能优化措施,开发者可以在很大程度上提升开发效率和应用性能。需要注意的是,性能优化是一个持续的过程,随着技术的发展和业务需求的变化,优化策略也需要不断...

    List.removeAll() 方法的性能效率

    总之,理解`List.removeAll()`的性能特性及其背后的实现原理,可以帮助我们在实际编程中做出明智的选择,优化代码性能,提高程序运行效率。在处理大规模数据时,合理的数据结构和算法选择将显得尤为重要。

    后端开发框架探索与选择

    通过了解不同框架的特点和优势,并结合项目需求和个人偏好进行选择,可以大大提高开发效率和系统性能。同时,保持对新技术和新框架的关注和学习也是非常重要的。希望本文能帮助读者在后端开发框架的选择上做出明智的...

    PyCharm插件安装指南:提升开发效率的秘诀

    记住,选择和使用插件时要考虑其维护状态、功能适配和性能影响,以确保获得最佳的开发环境。 本文详细介绍了PyCharm插件的安装和管理过程,从基本概念到具体步骤,再到最佳实践和高级技巧,为读者提供了全面的指导...

    sql性能分析工具效率分析

    5. **报表和可视化**:生成性能报告和图表,使问题一目了然,方便决策者和开发人员进行问题定位。 6. **调优建议**:根据数据库的特性和查询模式,自动或手动提供优化建议,例如创建合适的索引、优化查询语句等。 ...

    提高 Android UI 开发效率的 UI 库

    为了提高开发效率,许多开发者会使用UI库,这些库提供了丰富的组件、样式和工具,帮助开发者快速构建美观且功能齐全的用户界面。本文将详细讲解如何利用名为QMUI_Android的UI库来提升Android UI开发的效率。 QMUI_...

    C++ json库性能对比

    总结来说,C++中的JSON库选择应该基于项目的具体需求,如性能、内存效率、易用性、兼容性和社区支持等因素。对于性能敏感的应用,如网络服务或大数据处理,像rapidjson这样的高性能库可能是首选;而对于那些对代码...

    从运行效率与开发效率比较Python和C++

    ### 从运行效率与开发效率比较Python和C++ 在当今软件开发领域,选择合适的编程语言对于项目的成功至关重要。Python和C++作为两种广泛使用的编程语言,各有其独特的优势和应用场景。本文将深入探讨这两种语言在运行...

    高性能PHP应用开发pdf

    6. **PHP框架与性能**:分析常见PHP框架(如Laravel, Symfony)在性能优化上的特点和策略,如何选择合适的框架,以及如何对其进行定制以提高性能。 7. **Web服务器与PHP集成**:讲解如何配置Nginx、Apache等Web...

    loadrunner性能测试模板和性能测试计划模板

    在IT行业中,性能测试是确保软件系统在高负载和大用户量情况下稳定运行的关键环节。LoadRunner是一款由...对于任何涉及LoadRunner性能测试的项目来说,这些文档都是不可或缺的参考资料,有助于提升测试效率和质量。

    linux性能调优.pdf

    Linux性能调优是系统管理员和开发人员优化Linux系统性能的重要技能。它涉及对系统资源和应用程序的分析、监控、和调整,以实现更高的效率和响应速度。本篇学习笔记详细介绍了性能分析的步骤、优化工具、性能指标的...

    如何在C++中实现代码性能分析工具集

    通过选择合适的工具、编写分析代码、集成到构建系统和CI/CD流程,可以自动化性能分析过程,提高开发效率和软件质量。 在C/C++开发中,代码性能分析是一个关键步骤,它可以帮助开发者识别性能瓶颈并进行优化。为了...

    MySQL 前端交互式工具,提升开发效率!

    在这个标题为“MySQL 前端交互式工具,提升开发效率!”的话题中,我们将深入探讨这类工具的重要性和特点。 首先,MySQL 是一个广泛使用的开源关系型数据库管理系统,它在Web应用、数据存储和分析等领域有着广泛的...

    DataGrip:数据库管理利器,提升开发效率新选择.zip

    通过充分利用其智能代码编辑、直观数据库视图、强大查询功能以及版本控制和性能分析等特性,开发者可以大幅提升数据库开发效率和质量。无论是个人开发者还是团队协作,DataGrip都是一款值得推荐的数据库管理利器。

    高性能PHP应用开发_(0601).rar

    - **Nginx和Apache**:了解这两种Web服务器的性能特点,选择适合的部署方案。 - **负载均衡器**:学习如何配置如`HAProxy`或`Nginx`的负载均衡,分发请求至多个服务器。 7. **日志与监控** - **日志记录**:正确...

    性能测试经验分享.ppt

    性能测试经验分享 性能测试是一种验证系统性能的方法,旨在评估系统在高负载或高压力下的表现。...性能测试是对系统性能的评估和优化,旨在提高系统的性能和效率,并为客户提供良好的服务和支持。

    软件性能测试过程详解与案例剖析

    包括从不同视角(用户、管理员、开发人员)对软件性能的理解,总结了用户视角下的软件性能包括响应速度、可用性等方面,管理员视角下的性能涉及系统资源利用效率,而开发视角则关注代码的优化和资源使用情况。...

    高性能网站的开发(开发经验)

    了解开源项目可以借鉴和利用成熟技术,提高开发效率。 9. **性能优化策略**: - **良好规划**:域名规划、选择适合的Web服务器、静态与动态内容分离,如使用Nginx作为反向代理服务器,可以大大提高性能。 - **...

    extend bootstrap for mobile,专注移动端,专注开发效率.zip

    "extend bootstrap for mobile,专注移动端,专注开发效率.zip"这个压缩包文件,其名称暗示了它可能是对Bootstrap框架进行了一定程度的优化和扩展,特别针对移动端的开发,旨在提升开发效率。 Bootable-master,作为...

    系统性能的分析和优化

    性能分析涉及的环节涵盖了硬件资源(如CPU、内存、存储系统和网络带宽)、操作系统、服务器软件、开发平台、中间件和应用程序。例如,CPU性能影响计算密集型任务,内存不足会导致交换内存使用,降低系统响应速度;...

Global site tag (gtag.js) - Google Analytics