就職的公司居然還在用Java 1.6,該不該換公司?

秦汝鵲


從事軟件開發已經多年,中間換過幾次工作,有些公司的編譯環境的確不是總是最新的,就是環境有點差異而已,對於編程思想的影響非常有限,而且和平時編程工作差異也不是很大,對於企業來講除非必須要切換環境否則不會沒事折騰環境,企業首先要考慮效益問題,不會因為流行就跟風,現在很多企業還在用著VB,VC等老的腳本,已經用的非常熟練,後續也沒有非常大的功能切換,所以這種性質得公司也不會隨意切換新的編譯環境。



由於JAVA受眾太多,沒有切換編譯版本的公司也是大有人在,特別是一些外包公司基本上不做切換,反正還能繼續用,一些自主的產品研發公司,跟進新版本會快一點,互聯網性質的公司更新也會快一點。這些都是和公司本身的業務相關的,也不會影響別的東西,換個角度來講編程語言只是編程的基本功而已,編程的核心是編程思想和解決問題的能力,所以企業在招聘人的時候就是希望找到的人能夠立即上手解決問題,表面上是項目經驗,本質上講是解決問題的能力,所以JAVA版本對於大局得影響小的可憐。


很多人迷信掌握多種編程語言的人,覺得這才是高手,編程語言只是基本功,有些人可能掌握的快一些,有的人掌握的特別慢但只要堅持一樣能夠掌握到位。編程入門有兩種性質的人,一種開始感覺特別好,很快就能進入編程語感,但在系統框架上還是需要時間打磨,相對來講入門會快一些;另外一種人開始反應非常遲鈍,甚至外界人感覺到這人可能真的不適合編程,甚至有可能都懷疑自己是不是真的適合從事這個行業,但這類人都有一個潛質就是能夠堅持,即使當前看不到希望,可能經過一兩年的時間突然有一天覺得自己能寫一些東西了,好像突然之間茅塞頓開了,就是傳說的開竅了,這類人往往後勁更足,越容易在慢慢積累過程中幹成事情。


曾經帶過兩個這種類型的人,有時候覺得很簡單的概念都不能理解,有時候說的話也很難聽,甚至用語言來刺激他上進,但看到低頭勤勤懇懇學習的樣子心又軟了,基本上堅持一年多就能找到感覺,一旦有了突破後面做的事情都會比較紮實,個人還是喜歡帶這種類型的,畢竟給人的感覺比較踏實,就是前期帶著費勁。

越是編程水平高的人越是不會在意編譯環境以及編程語言,編程語言本質上講就是工具般存在,很多編程高手接手一門新的編程語言,只需要很短時間就能上手做項目,不是這人多聰明因為編程套路基本上大同小異,所以學好一門編程需要之後再去學習新的編程語言就會快速許多,難度至少縮減三分之二,學習編程要掌握核心本質,數量和表面都是次要的。

希望能夠幫到你。


大學生編程指南


公司還在使用JDK6,不應該是你跳槽的直接原因。


為什麼有些公司還在使用JDK6

別說1.6了,還在用1.5的我都見過。

很多企業級的應用,都會運行個三五年,甚至更長的時間,才會有新的系統替代他。如果題主公司的項目都是運行五年以上的話,現在還使用JDK6是有情可原的。(JDK7好像是11年發佈的)。

對於大多數企業級應用來說,當系統上線後,“穩定”是最重要的,所以當業務需求可以滿足、系統效率也能跟得上的時候,企業是不會輕易升級JDK版本的。


版本高,不一定使用到新特性

  • 首先,Java常用的內容,比如集合、IO、多線程(併發框架)、JVM的內部原理,這些基礎的東西是一直都有的,你依然可以從JDK6中學到很多知識;

  • 另外一方面,例如我們單位使用的是JDK8,但是據我觀察,大部分程序員都沒有用到高版本的新特性,比如很多程序員是不會寫lambda表達式的;

  • 我估計我們單位在幾年內,也不會升級JDK版本的;若干年後,可能也會被問到“公司還在使用JDK8,要不要跳槽”。


順著JDK,看看公司的技術棧

這裡的技術棧是指:公司項目用到的框架、軟件、架構等。(業務經驗的積累,在這裡不討論,只談技術)

  • 有些公司使用SSH框架,單臺關係型數據庫;

  • 有些公司除了常規的框架,開始使用Spring Boot;系統和系統之間除了接口調用之外,也用到消息隊列進行解耦;除了關係型數據庫,也引入了非關係型數據庫;

  • 有些公司用到了Dubbo、Spring Cloud,開始使用Docker,引入Devops,分庫分表...

這時,公司之間技術的差距就顯現出來了;同時也會影響到程序員的技術發展;這才是你考慮是否需要跳槽的因素之一。


總之,平臺和個人的努力,都很重要。


我將持續分享Java開發、架構設計、程序員職業發展等方面的見解,希望能得到你的關注。


會點代碼的大叔


你可以換公司,但是不該是因為這個理由。

別說1.6,1.4的公司我也待過。

首先要端正態度:你是在掙碗飯吃,不是在改變世界。所以你用的技術,不在於酷炫與否也不在於是否前沿,而在於是否適合公司業務。

這兩年太多媒體給了大家錯覺,讓很多碼農有了一種改變世界的蜜汁優越感。改變世界的是資本,不是碼農。

迴歸正題,你在寫JAVA,1.6的功能基本也算夠了。如果非得用函數式編程,為啥要用JAVA呢。1.6還是1.8,不妨礙你進步。

更多的還是要看看公司的技術氛圍,發現前景,還有老闆是不是智障。這些決定了你是否應該跳槽。


嘲拉誤國


光憑這一點就要換公司,那你的想法也太low了。首先你得看,公司用1.6的原因是什麼。1比如說有很多企業級的系統,已經運行多年了,1.6可能就是當時最穩定的,畢竟穩定性才是首要的考慮因素。其次再大的公司,或者你眼中技術很牛的公司,未必用的都是最前沿的技術。一昧的使用新技術,並不能夠證明什麼,反而可能引發不可抑制的問題。而且技術更新迭代迅速,學都學不完。最後就算是 JDK 6,你也能學到很多東西,比如基本的Java API、併發框架、JVM 的內部原理,GC策略,常見的 Java 應用程序的優化措施等。

建議:技術並不是你放棄的原因,還是得看你的需求,如果你在此公司能夠實現,那你何必糾結那麼多呢?存在即合理!



吃貨楊


分享黑客技術,GO、Python、Kotlin、Android、Java編程知識,科技資訊等

我認為不能簡單根據公司用的Java版本去判斷是不是應該換公司,這樣做很不理智!

你應該認真分析下公司的情況,公司項目的架構,代碼你熟悉多少,是否都懂了或者能很快的看懂!在現有的項目中你是否能學到新的知識,版本老可能一樣能學到東西。想跳槽你至少應該把現在的項目弄清楚,讓自己有一定的技術積累。

你不應該注重Java版本,而是要看分析項目的架構,用到的技術是否值得學習。

一般Java Web開發會用Spring、Spring MVC、Mybatis、Hibernate、MySQL或者Oracle數據庫、redis等。這些技術你是否都懂了,學習項目中你不懂的技術。你自己是否能夠搭建項目的框架,現在的項目有哪些不足,自己是否完全可以獨立開發一個項目。

特別是Spring系列的框架要學好,Java Web開發中必用,Spring框架也的確好用。

公司採用jdk 1.6的確有些老,最新版本jdk是jdk9。

採用老版本jdk,新版本的一些特性就無法使用,不能更新自己的知識。不過你可以安裝新版本,自己學習。

不要憑公司採用jdk版本,來決定是否換公司,而是應該根據你自己在公司是否學到東西,是否能進步。

喜歡的朋友可以點贊、關注、轉發、評論!同時歡迎大家在評論中補充不足的地方!


黑客之家


說實話不知道你這問題是無知還是來引戰?我先問你項目最需要的是什麼?穩定。一個新的JDK版本總會經歷數次更新,那麼在生產上更新前的底層BUG你怎麼辦?自己找到改寫JDK?其次你到底瞭解多少JAVA底層?知道每一個版本的差異嘛?如果只多了一個對現在項目無用的功能,是否要升級?最近發現每日頭條上流行什麼智商機,什麼用蘋果什麼心態,用華為什麼心態,什麼無知新手感覺理所當然問題。感覺提問的人越來越主觀,失去客觀考慮問題的角度。記住,萬事皆有因,只是你能不能看到所有的因果關係。


SIDFIRST


等你產品做到一定程度你會發現語言只是工具,用什麼組件沒有高低之差,只有那個更合適。有時候可能用C,python,為了剛併發避免鎖可能關係數據庫和NOSQL!並用。

為了提升產品能力,可能會用物理設備替代虛擬設備。

一切看產品的目標,承載能力。如果只是實現非常簡單單一的業務需求,說PHP是最好的語言也不會錯的。如果做個平臺,自動納管千萬服務器,實現自動化管理,遠程操作,實時監控,等等。你可能會弱化java,用物理設備,內存,shell,python,C,甚至lua做更多運算和對沖。

jdk1.6沒什麼不好。


JDIt


如果你想一輩子做技人強人,你可以考慮換一個公司,以滿足自己適應當前技術水平的新鮮感,如果你以後想向其他方向發展,你是管理,比如業務?現在的學習公司其他方面的東西,比如企業文化,比如業務知識。其實答應了公司產品的項目架構成型後,技術在項目裡面起的作用其實非常小。別說jdk1.6了,1.5,1.4都能看到,前兩年我甚至看到個國內上市公司的產品還是主要jsp中嵌java的方式實現的,一些數據庫連接都是在jsp中完成,但絲毫不影響人家的產品在全國的知名度及行業競爭度,人家技術用的再low,但也不影響人家賺錢,你技術水平再高,沒有東西拿出手也是白搭。


長空之風23


看到題主這個問題好逗,就忍不住回答一下。那些年經歷過的較真,隨著隨著年齡的增長和生活的壓力,漸漸變得越來越遠,不知從什麼時間,漸漸的習慣了遇到的一切,漸漸忍受了遇到的種種,把所有的不適在時間的荒野裡,改變自己讓其舒適,在熟悉了之後,又背上行囊,走向下一城,接受新的不適,從熟悉到陌生,從陌生到熟悉,做著自己應當做的工作,熱烈的愛著自己的工作。

從沒有想過,因為公司仍在使用Java 1.6,而選擇跳槽,也不會由於團隊是搞PHP的,就選擇離開。在大學裡,不曉得以後要做什麼,要從事什麼樣的工作,就學了很多雜七雜八的東東,Java、PHP、.NET都學過。最後進入的國企,最初是搞PHP的,我們進入之前才轉變技術線做Java,使用的是Java1.6.既來之,則安之,抱著《Head First Java》,將自己熟悉的PHP丟掉,結果就那樣真的丟掉了,再也沒有拾起過,就這樣進入了Java Web的研發行列,一干就是兩年多。

就這樣,跳槽到另一家公司,團隊成員是有搞PHP的,有搞Java的,也有H5、客戶端等,大家一起協作,團隊分工,完成共同的2C應用的研發。更多的是接手維護一些老項目,並時不時做一些新的需求,以及做相關的架構升級。很不幸,接手的應用就是題主提到的Java1.6、Tomcat6。看著別人普遍在使用Java8,而且一些新特性用的很溜的同事,真心感覺這個版本低了一些。鑑於此,我就發起,將該項目的所有應用都做升級,同時為了保證系統的穩定,不敢跨越的版本太大,只是將Tomcat6升級到Tomcat7,將Java1.6升級至Java1.7,版本逐級遞升需要有一個過程,也需要經過充分的測試。

所有的技術都是為業務來服務的,脫離了業務的技術,只是看起來美好的空中樓閣。使用Java1.6並不能說明什麼,使用Java1.8更是如此,當你的業務到達那一步,或者你們團隊的整體技術到達了非使用Lambda不可時,就會自覺不自覺的推動團隊應用體系的升級。而當你主導不了團隊的技術體系時,只能默默的融入環境去做好自己,或者沉澱一段時間去尋找更加適合自己的工作。



夕陽雨晴


Andoter的學習筆記很高興為您解答這個問題。

因為公司使用的JDK是1.6,而決定換公司是非常不可取的。

首先,公司的軟件開發統一使用JDK1.6進行開發肯定是有相關的項目需要導致的。

比如歷史遺留項目使用JDK1.6開發,裡面中涉及的相關特性代碼升級起來成本比較高,所以針對老項目使用JDK1.6進行開發。我第一家公司是做土地信息管理的,那些事業單位使用的數據庫都是Access+VisualStudio2008,工具非常久,但是由於相關的限制原因就無法升級。包括我現在公司的開發使用的還是Visual Studio2008,現在都過去很多年了,一直也沒用升級版本,就是由於歷史項目原因導致。

其次,這也是你展示能力的大好機會。

公司使用jdk1.6,這時候你有比較好的推薦選擇,做個充分的準備,然後跟你們領導彙報一下,說一下現在的jdk1.6的弊端,推出最新的jdk版本來升級項目,事成之後,領導肯定對你另眼相待,升職加薪不是夢。

加油。


分享到:


相關文章: