為什麼有的開發人員喜歡用低版本開發工具,甚至抵觸高版本的工具?
01-08
RT!如VS2005與VS2013,明顯後者開發起來相比前者爽得不是一個數量級,為什麼有人仍然寧願用前者,而抵觸後者?
——————————————— 2015-07-23: 感謝各位的回答!很多知友提到了系統兼容性的問題,這個問題是該考慮,我也考慮過。那要是一個全新的項目呢?注意,我說的不是老系統系統升級!
可能是百度出身的程序員。
百度的 GCC 被三體人鎖定在 3.4.5 版本是什麼典故? - 三體(系列小說)恐懼改變。
並非恐懼改變 而是沒必要浪費時間。
我拋棄vs和office都是一個原因 為毛我每年都要浪費時間去研究你又把那些按鈕選項藏哪了?
拒絕學新知識叫畏懼離開comfort zone。懶得因為廠商的無知與自大每年去改變工作習慣不是一回事。
Linux和Latex那麼難用,依然很多粉絲,原因就是你一旦會了,就可以專註在你該做的事上了,不會每年都犯懵,突然間好多東西都找不到了。程序員PK的終極奧義是把所用的工具版本號加起來,然後比大小。
一般在規模大一些的項目里,工作流程上使用的工具會做一些二次開發,比如VS。而如果高版本不支持低版本上二次開發的內容,那意味著換一個版本會讓之前數十年的積累都付之一炬。這明顯是不可能輕易決定的一件事情。
生產環境中,穩定性壓倒一切。特別是和錢相關的領域。所以一個版本沒有確認它沒有任何影響生產的問題之前,是不可能引入生產環境的。出個問題就是幾百萬上下的事,誰敢開玩笑啊。一般來說,會有個固定周期,比如6個月-2年。在這個周期里,一個穩定版本依然沒有致命問題,才會被引入生產環境。不是因為項目兼容原因而不使用高版本的都是懶和恐懼。
不是VC6?差評→_→
低版本的一般不用帶任何插件,裸系統下就可以運行,越高越麻煩,缺這個缺那個的。
都是扯淡回答。
.net,甲方要求什麼就用什麼開發。
java,先期開發用什麼環境就用什麼開發。和喜歡沒有任何關係。
雖然現在用的2015,但是BUG真的好多啊好多啊好多啊啊啊啊啊啊啊啊啊
不敢改,不敢升級,出bug了怎麼辦?有事故了誰來負責?用不慣工具delay了怎麼辦?不思考,一味的守著原有的工具。但其實卻應該思考一下,新工具可能帶來的效率提升。
太新了,很多庫都不支持的。C++的庫都是認編譯器版本,沒有庫支持怎麼破?沒有插件的支持怎麼破?新版本的編譯器 從上手到正式投入應用總是需要一段時間的。不然被坑了,無盡的熬夜就等著你了。
沒有開發效率上顯著提升,換編譯器的收益可能就小於學習本身的成本甚至被坑的成本。
兼容性,和習慣都是考慮的問題。
不過萬年的vim黨是不擔心這個問題的。一般成熟的IDE都會用很久. 嘗鮮之類的事情, 還是請小白鼠們先把坑都踩過了再說.
經歷過兩家公司的開發工具升級, 其中一次就是我負責的, 但是不是簡單的vs版本更新那麼簡單, 還有對應的make文件升級, 當時我還是新手, 前後弄了得有兩個月吧, 不是你用新版本的vs導入舊版的工程那麼簡單, 不兼容的代碼要修改, warning不能有, 加上我當時經驗太少, 反正很狼狽, 不過還好成功交差了.現在的公司從vs2003升級到vs2012, 還不是vs工程, 只是用vs的toolchain來編譯, 一個在公司十幾年的美帝工程師負責, 從聽說要升級, 到真正用上新vs, 也是幾個月過去了, 沒辦法, 代碼庫太大, 好多文件還是九幾年創建的.說懶說恐懼改變的, 都是站著說話不腰疼.
快播更新後就不能用了
真的是慫啊,2005是有點低了,但是太新的版本實在不敢用,不知道哪裡就會出問題。比如用的庫要你編譯,但是經常不支持到最高版本的VS。
再比如出了問題又不知道是什麼情況的時候,用最高版本容易找不到資料。
按理來說都是折騰可以解決的問題,但是實在是害怕毫無意義的浪費生命。恐懼改變。還有一種原因是,高版本並不好用,或者去掉了低版本好用的功能。去掉好用的功能這條很多是這樣。
拋個磚,,, 很多事情,並不是用著爽就能用的,就拿VS來說,升級是要錢的。而且,軟體這東西,向下兼容一般都弄的很好,但是向上兼容幾乎很難完成。再說了,即使本公司用的盜版的,隨便升級,你不能保證合作公司也可以隨便升級吧? 之前做硬體的時候,我也搞不明白,明明cadence 16.5 都出來了,為什麼還都在用老舊的orcad 9.2! 一個老手跟我說,你用高版本,做出來的圖,老大的老版本打不開,你就等著挨罵吧,,, 對決策者來說舊版沒什麼不好,夠用,穩定,兼容性好,經過驗證,大家都用的很熟練,缺點忽略掉,反正他又不經常用。 現在覺得,低版本也還好,可以克服。像VS,建立工程時用2005,敲代碼用2013,提交前合併到2005,多一步沒什麼的,各取所需。
(1)因為習慣了舊的,他用的熟練一樣可以快速開發,只想開發,不想折騰,快速把代碼寫完才是王道(2)他不想讓一個新人在老碼農面前介紹一個新事物,因為這樣會顯得老碼農很low(3)寫代碼的時候面對一個新工具,以前的各種常用功能不知道在哪是很煩的。
推薦閱讀:
※開發需要寫單元測試嗎?
※在開發中,說下你奇葩的排錯思路,解決問題的巧妙方法?
※究竟是c++的發展進入了邪路,還是我寫代碼的姿勢不正確?
※哪些公司的哪些團隊有嚴格的 code review?