“免费”,“标准”,“开放”软件异端
有些人对所谓的“免费”或“标准”或“开放”软件怀有强烈的教条主义信念。 其中一个人就是Jimmie(在本文中,我们称他为Jimmie),他对TheServerSide上Marco Behler撰写的有关Java持久性的文章做出了回应。
让我在这里引用吉米的回应:
JPA困难但完整。 它具有学习曲线,如果您尝试简化其复杂性,将会感到惊讶。 但是他们大多在那里是有原因的。 使用JPA很难处理困难的事情,这是事实。
JOOQ学习很快。 并且是专有的东西。 不是免费的。 只有一种实现。 没有公众审查,只有一个机构参与其演变。 面向SQL,而不是面向对象(好的,他们说这是一个功能)。
作为一个认真的专业人员,学习JPA。 太好了 没有任何借口不知道您的生产应用程序中会生成哪些sql查询。 用更基本的框架代替它不是解决方案。
让我们不深入探讨JPA和jOOQ / SQL之间的具体区别。 该主题已经在Reddit上进行了详细讨论 。 让我们考虑一下Jimmie认为比较的本质。 因为,吉米在比较时可能会说完全一样的话:
- 带有Ext.JS或ZK的 JSF
- PostgreSQL与Oracle
- 使用LibreOffice的MS Office或Google文档(可能是“免费”造成的)
- 带有Windows或MacOSX的Linux(尽管他可能会以Mac用户的身份进行一些双重思考 )
软件不是免费的
吉米(Jimmie),您的软件是否免费且“非专有”? 如果是这样,您如何融资? 你如何谋生? 你为什么要这么做? 真正激发您动力的是什么? 什么真正激发了您的客户,为什么呢?
只有一种实现
实际有多少人使用Hibernate的替代品,为什么? 他们之所以使用EclipseLink,主要是因为他们过去20年来一直使用TopLink并且切换到Hibernate的学习曲线(或收益)太高了? 您实际上多久切换一次实现? 是什么使您无法实现jOOQ API,并使其实现开源?
最重要的是:即使Hibernate拥有许多很棒的专有扩展,它们恰好可以更好/更轻松地工作,您是否仍然坚持使用JPA API?
没有公开评论
谁才是“公众”,他们的主要利益是什么? 您是否知道JDK的主要推动力之一是瑞士信贷 ( Credit Suisse) ,例如,它是Java环境中Oracle的大客户? 您与瑞士信贷作为您的“公共”代表有何利害关系?
只有一个身体参与其进化
您是否也对您的客户说您自己的软件?
面向SQL与“认真的专业人员”
SQL不重要的是什么? 实际上,与JLS相比,SQL受到更多实体的审查,更不用说JPA规范了。 你有没有想过?
更基础
很公平。 但是请不要忘记:您可能从2000年代初期开始用一个更基本的框架替换了复杂的EJB 2.0框架(仍然是一个标准!),该框架当时(当时)是专有的,只有一个实现,没有公开审查,也没有。它的进化涉及多个机构。 当时称为Hibernate。 让我借此机会引用Gavin King(Hibernate的创建者)有关何时使用Hibernate的信息:
我对你的答复,吉米
据您介绍,必须充分学习JPA。 因此,我挑战您也要全面学习SQL,包括所有SQL:2011子句,包括
- 窗口功能
- 分组集
- 常用表表达式
- 唯一/匹配/类型/子多重集/唯一谓词
- 时间段
- 分区外部联接
- 横向连接
- 标准偏移分页
- 上下文类型的值规范
- 量化比较谓词
…当然还有SQL和XQuery之间的互操作的所有细节,这是SQL:2011标准中最受欢迎的方面之一!
而且,请完全了解此内容,无论这些内容是否属于您特定的实现。 因为作为一个认真的专业人员,您将充分学习SQL。 同时,您还学习了有关执行计划的所有知识,以及联接,获取,缓冲区缓存,游标缓存和所有其他种类的算法。 因为没有理由不知道数据库的CBO生成了哪些SQL转换 。
我知道你喜欢标准,吉米。 但是请注意,有些人迫不及待地想要制定标准来解决他们的问题。 他们可能有更直接的问题。 更具体的问题。 简单的问题。 到目前为止,只有专有软件才能解决的问题。 或者由专有软件解决的问题,可以比您的标准Jimmie花费更少的精力投入生产。
缩短上市时间是您的客户可能认为的“专业”。 不管是使用该技术还是该技术。
总有人会在某个时候发明一些专有的东西 。 它可能只是演变成一个标准。 这可能是一个坏主意,并且不会演变成任何东西。 或者它可能演变成一个标准,然后成为有史以来最糟糕的标准。 再次参见:EJB 2.0。 我认为我们今天都对此表示同意 。
不,吉米,世界不是黑白的。 这不仅仅是关于标准还是专有。 关于免费(自由)与商业。 关于免费(免费)与“关闭”。 这是为客户创造价值。
哦,还有吉米。 我衷心希望您既不是Windows用户,也不是Mac用户,因为这不是免费的,每个操作系统只有一个实现,没有公开审查,只有一个机构参与其发展。 但是,整个世界都在其中之一上运行。
谢谢您的关注,吉米。
翻译自: https://www.javacodegeeks.com/2014/08/the-free-standard-open-software-heresy.html
“免费”,“标准”,“开放”软件异端相关推荐
- vue获取异端数据_“免费”,“标准”,“开放”软件异端
vue获取异端数据 有些人对所谓的"免费"或"标准"或"开放"软件怀有强烈的教条主义信念. 其中的一个人就是Jimmie(在本文中,他称为J ...
- 虚拟局域网软件开源_用于云和虚拟化的事实上的标准开源软件包括Linux
点击"蓝字"关注我们 风河 ®是物联网(IoT)软件的全球提供商,通过引入可商业部署的软件虚拟化平台,正在推动工业物联网(IIoT)的发展.它是为关键基础设施公司设计的,使它们能够 ...
- 用了这么久开源社区,还搞不明白免费/自由/开源软件?
在开源社区中,有很多人经常把免费软件.自由软件.开源软件这三个概念混淆在一起. 今天就来和大家谈谈这三个软件到底有什么不一样. 免费软件 用户可以免费使用该软件,但通常会有其他权限的限制: 1.源码不 ...
- 免费音乐开放接口api_5种免费开放的音乐制作工具
免费音乐开放接口api 作为音乐老师,我向学生推广免费/自由/开放软件(以及音乐和教育材料!). 在某些情况下(例如完全切换到GNU / Linux),鉴于所有不一致的质量和怪异之处,这可能很困难. ...
- 几款免费流程图制作软件
几款免费流程图制作软件 编辑: 卿本佳人 时间: 2009-02-13 • 11:26 3 条评论 分享 流程图(flow charts)可以用直观的图表方式展现系统各组成部分的流动过程,是学习工作中 ...
- 六款最主流的免费网络嗅探软件全接触
六款最主流的免费网络嗅探软件全接触 要如何才能找到网络传输的性能瓶颈?要如何才能快速定位已经失效了的网络设备?以及要如何才能迅速找到网络病毒(一种具有隐蔽性破坏性传染性的恶意代码)传播或拒绝服务*** ...
- 老榕智能建站软件_2020年,10大最佳免费建站软件
文章目录 1 10大最佳免费建站软件 1.1 1. Site123 –是否像1-2-3一样容易? 1.2 2. Wix –国际重量级 1.3 3. Weebly –一个缺点很大的网站建设者 1.4 4 ...
- Linux 上最好的 9 个免费视频编辑软件(2018) | Linux 中国
概要:这里介绍 Linux 上几个最好的视频编辑器,介绍它们的特性.利与弊,以及如何在你的 Linux 发行版上安装它们. 我们曾经在一篇短文中讨论过 Linux 上最好的照片管理应用[1],Linu ...
- 国外免费(开放获取)学术资源大全
国外免费(开放获取)学术资源大全 1 开放存取期刊列表DOAJ(Directory of Open Access Journals) 网址:http://www.doaj.org DOAJ开放 ...
最新文章
- 实际开发中,有时没有异常发生,但是执行结果不是我们期望的情况,需要手动让事务回滚
- 【2019雅礼集训】【CF 960G】【第一类斯特林数】【NTT多项式】permutation
- 李飞飞重回斯坦福,Andrew Moore接手谷歌云AI
- bzoj4383(拓扑排序)
- centos7建站php_centos7搭建php服务器
- 初步认识spring mvc
- dual vector space
- 安卓版LightBlue 低功耗蓝牙BLE设备调试
- tesseract-ocr验证码识别
- 回溯算法-八皇后问题
- 快速实现大量数据匹配来电号码归属
- java 泰勒级数_使用rSymPy计算泰勒级数
- 数据标注下半场:PLG模式下的增长飞轮丨曼孚科技
- 2018网易互娱笔试1——花砖拼接C++
- 玉米生吃好还是熟吃好 各种情况分析
- leveldb安装以及使用
- 数据库和数据仓库联系和区别
- 输入一段英文句子,单词之间用若干空格隔开,将每个单词的首字母转换为大写字母。 例如,“I am very glad to see you”的转换结果为“I Am Very Glad To See Yo
- arduino自制cnc绘图仪_Arduino + 光驱改造数控绘图机
- 小狈.搜集的一些photoshop 教程.软件.下载方法及相关网站 ps软件下载官方网站