日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

API的非向后兼容性无论如何通常代表着一种比较差的设计

發(fā)布時(shí)間:2023/11/29 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 API的非向后兼容性无论如何通常代表着一种比较差的设计 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

不管一個(gè)類庫或者工具方法實(shí)現(xiàn)多么的好,如果無法做到向后兼容性,通常會(huì)給用戶帶來很大的升級(jí)成本,很多對(duì)此的依賴如果希望在后續(xù)的升級(jí)和維護(hù)期間使用該類庫的其他新增特性或者好處,將不得不推遲升級(jí)亦或是被迫接受改變。

無論這個(gè)類庫實(shí)現(xiàn)的多么完美或者流行,如果版本升級(jí)意味著大量API或者包名的變更,我認(rèn)為很大程度上是因?yàn)樵O(shè)計(jì)者意識(shí)到從維護(hù)的角度來說,這個(gè)類庫的實(shí)現(xiàn)非常的糟糕,以至于已經(jīng)非常的難以維護(hù)下去了。

在開源的社區(qū),做這種變更或者說犯這種錯(cuò)幾乎不需要付出任何成本,所以很多的類庫甚至非常流行的類庫都有發(fā)生大版本間API的完全重構(gòu),如果是商業(yè)類庫,除非有適配API,恐怕用戶都跑光了。常見的類庫有如下:

jackson:

1.x:org.codehaus.jackson

2.x:com.fasterxml.jackson

由此帶來的是大量類路勁的變化,spring?HttpMessageConverter針對(duì)1.x和2.x的分別實(shí)現(xiàn);到了spring 4.x,MappingJacksonHttpMessageConverter又被spring給刪除了。

dbcp:

1.x:

2.x:

apache.common.lang:

2.x:

3.x:

log4j :

1.x:

2.x:

common.pool

1.x:

2.x:

netty:

4.x:

3.x:

不過主流的容器和應(yīng)用服務(wù)器以及數(shù)據(jù)庫則做的好的多,比如tomcat/nginx/mysql/postgresql/rabbitmq。

轉(zhuǎn)載于:https://www.cnblogs.com/zhjh256/p/5977319.html

總結(jié)

以上是生活随笔為你收集整理的API的非向后兼容性无论如何通常代表着一种比较差的设计的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。