為什麼感覺很多人都選擇前端不選擇java?

蔣獻凱


這個就是仁者見仁智者見智了,都是開發崗位,只不過面對的對象不一樣,前端對應的是網頁,那就是我們打開網址看到的,包括這個網頁中的結構和排版。java語言對應的後臺,我們看不到的地方,它負責數據的儲存以及讀取,你在網頁中填寫的資料,會在後臺數據庫中儲存起來,網頁要顯示的數據,是根據後臺數據庫中讀取出來的。


前端和JAVA(後臺)特點:

前端:相對與JAVA相對簡單,有較好的基本邏輯能力即可勝任,整個代碼易調整,驗證效果立馬顯示,整體工作要求仔細認真。

JAVA:要求有全局的掌控能力較高,縝密的思維,足夠的耐心,因為JAVA前期代碼都是一些構建基礎功能鋪墊。

發展前景:

未來的職業發展,已經沒有明顯的邊界了,都是向全棧發展

但是能力的高低依舊很重要,企業對於高級開發工程師的需求卻是遠遠沒有實現滿足的。

言吾時刻


因為很多人壓根就不懂啥叫前端。

很多人認為前端就是html + CSS,這個叫網頁設計,屬於設計工作,不是程序員。

html css 壓根就不是編程語言。

於是很多人覺得前端簡單,html 和css根本不是程序語言,學起來當然簡單了。

請記住一點,前端程序員也是程序員,他和其他程序員的唯一區別就是使用javascript,專門和瀏覽器打交道而已。

一個合格的前端,知識體系並不會比一個java項目程序員少多少,並且還要面對js這種一言難盡的語言,可以說技術難度甚至有時候比java還高。

所以,請不要連對象,循環,函數這些基本東西都搞不清楚呢,就說自己是前端程序員。

最後給大家一些建議,如果對編程感興趣,可以先學其他語言,比如java,php,python,有一定的開發基礎,然後再學習JavaScript轉前端。

如果對編程不感興趣,那麼你就好好的去學設計,紮實ps,ai的基礎,學好色彩理論,學好設計理論,然後你再去學html +css ,網頁設計,簡單瞭解一些js就可以了。

千萬不要一股腦的去培訓班學什麼前端,學到最後沒有編程能力做不了程序員,沒有設計能力做不了設計,幹啥啥不行,浪費了自己的青春。


shawn25



原因其實很簡單

  1. 入門及其容易,精通極其困難。
    1. 一個智商正常的高中畢業生,一個星期,絕對能寫出基本的HTML頁面,附上CSS,還有簡單的JS。
    2. 但是,只要你的資質不差,努力肯學,那麼隨著你的項目經驗豐富和自己的鑽研,RD(C、Java,甚至PHP)升級到高級工程師到資深工程師不難。但是前端,看看現在市場上的資深工程師有幾個,北極廠裡面能到T7、T8的,其他廠類似等級前端工程師有多少就知道了,JS的作為一個從函數式編程過來的語言,很多比較低級的工程師因為理解不了他的思想導致很容易裝撞上天花板,然後再也邁不過去了。
  2. 錦上可以添花,雪中不能送炭
    1. 現在因為大家對移動端重視,對交互要求高,看了國外的好東西多了,審美也上來了,所以才覺得前端重要,交互重要。
    2. 但是客觀說,一個網站/APP,沒有好的前端,就是交互不好、頁面不美觀,就當作一個醜人吧。但是沒有後端,功能實現不好,性能上不去,那就是缺胳膊少腿的殘疾人了。
    3. 所以很多用人的CEO、CTO、HR喊缺前端的時候,心裡想的是這個錦上缺朵花,但是絕對不會給你炭的地位。
  3. 充滿BUG的開發環境
    1. 是的,計算機的一個重大的特點就是兼容性的問題。這個任何開發都不否認。
    2. 但是能夠不兼容到JS、CSS這個級別的,還有幾個語言?雖然說連C這樣的都有兼容性問題,C89下跑的好好的程序,到了C99下面可能就會有問題,或者說你用的Sun的Java實現寫的程序到MS的Java實現下面就有問題,但是那都是很細節,很特定的兼容性問題了啊。
    3. 像JS這樣,連最重要的事件處理就兩大派系,DOM結構兩大派系,CSS一堆混亂的情況,真心沒見過更亂的啊。就好象說你用的JDK裡面的Date對象默認給你處理的是瑪雅曆法,你是不是想掀桌子罵人?
    4. 所以JS的面試、開發中,很大一塊被人津津樂道的就是各種兼容性的問題,比如讓你自己寫一個AJAX實現你怎麼處理不同瀏覽器的兼容性問題啊,冒泡和捕捉怎麼處理啊等等。
    5. 不過感謝IE6,要不然全中國的2/3的FE都少失業了。
  4. 職能/責任不對稱
    1. 在一個成熟的公司、項目裡面,前端只負責顯示、交互,和簡單的現實邏輯,後端負責業務邏輯、數據存儲。
    2. 對應的,前端出點問題,比如按鈕位置不對了,點擊後的事件不對了,傻子都能看出來,但是後端的問題,除非真的是邏輯寫錯了,而且是很直白的錯誤,否則很難一眼看出來,灑家曾經客串過一次RD,寫的一個BUG上線穩定運行30後才發現。
    3. 但是出問題了,因為所有人,包括QA第一接觸的就是前端界面,所以很自然的就把bug扔給前端,前端吭哧吭哧看半天,發現有60%都是後端的問題再扔過去——做過業務的FE同學肯定有過這樣的經歷吧。
    4. 所以灑家自己做leader的時候很多同學都抱怨過這些類似的問題,不是自己的問題但是第一個被指責的卻是自己。很不爽,或者說,很委屈。
  5. 職業技能樹亂點
    1. 一般公司裡面,FE和RD都是放在技術體系下面,最終彙報對象都是CTO,但是FE在很多地方,技能樹是瞎點出來了!
    2. 如果你看FE的面試題目,會發現和RD沒啥區別,語言的特性、性能的分析、基本算法等等,除了把語言換掉基本沒事情區別。
    3. 但是實際工作中,一個好的FE,要跟PM、UI/UE/UX、RD、QA打交道,需要你理解產品的思想,懂藝術設計,發現bug的時候還要跟蹤到後端確定是誰的bug等等,人家RD的技能數是一顆茁壯成長的蒼天大樹,FE的技能書就是一個歪歪扭扭枝枝杈杈但是還要你長高長粗的怪樹。
    4. 最明顯的,需求評審會上,RD只關注這個功能我能不能實現,FE還要關注這個按鈕能不能這麼畫,這個設計會不會有瀏覽器兼容問題,這個交互是不是合理——雖然這是別人的工作但是一旦有問題第一個被罵的都是FE啊。
  6. 職業發展線路不明
    1. 其實這點從整個互聯網行業都有,你做醫生、教師這些職業,看看周圍的人,就知道,如果你做得好,或者不好,或者平庸,你到40、50、60的時候是什麼樣子。但是IT從業人員,尤其是互聯網從業人員,看不到這個未來,所以才有那麼多類似能不能寫程序到30歲這樣的問題。
    2. 在這個前提下,FE更悲催的是,RD可以看見自己的技術路線是,初級工程師、高級工程師、資深工程師、Team/Tech Leader、Tech Manager,直到CTO,當然半道改行的不算啊。
    3. 在FE看來,一直升到資深工程師還是可以的,但是後面除非很大的公司,有專門的前端Team,否則再升Leader和Manager的時候,FE處於一個很不利的地位。我們確實也看到因為FE的技能樹亂點,所以很多FE也會在合適的時候走PM、UI、甚至創業的路線但是很難看見FE做到CTO(除非加入創業公司直接做CTO)。

隨手畫了這麼一張圖,只要你勤奮、努力,RD是可能隨著時間累計自己的經驗然後提高自己的等級的,但是FE可以看到,在藍色點之前,很快的就能學到80%的技能,但是後面的20%需要非常長的時間去突破,甚至有人因為不理解FE的很多編程思想,幾年都一直突破不過去。

如果你也喜歡IT方面的知識,歡迎關注我哦


北大青鳥海南大立校區


1.前端開發是什麼?

前端開發是從網頁製作演變而來。

早期的網頁製作主要內容都是靜態的,以文字圖片為主,用戶使用網站也以瀏覽為主。

隨著互聯網的發展,現代網頁更佳美觀,交互效果顯著,功能更加強大。

因此現在的前端開發的主要技術通常是指html、css、js技術和一些開發框架的使用。

JAVA開發

基礎語法。雖然Java語言經過了多次版本迭代,但是語言的基礎語法一直秉持著純粹的面向對象方式,所以java的根基始終沒有變化。基礎語法的關鍵在於理解各種抽象,包括類、抽象類、接口等,另外還需要掌握封裝、繼承和多態這一系列面嚮對象語言的特徵。

Web開發是目前重要的開發方向之一,也是幾乎每一名程序員都會掌握的內容。Web開發的內容包括兩個大的部分,一部分是前端開發,另一部分是後端開發。隨著大數據的發展,Jaa全棧程序員正在成為一個重要的崗位,所以前端開發知識對於Java程序員來說也比較重要。

前端開發的重點在於Html、CSS和javaScript,尤其是javaScript要重點學習一下。

後端開發要掌握的技術包括Serlet、JavaBean、JDBC以及Spring框架(SpringBoot、SpringCloud、SpringMC)。

相比較JAVA需要學習的內容更多,層次更深。





騎著摩托去取經的唐僧


WEB前端與JAVA的區別

WEB前端,對應的職位是HTML5開發工程師、WEB前端開發工程師。這種職位主要的工作內容,是將設計師製作好的PSD圖製作成網頁,網站當中的結構、樣式、行為都是由WEB前端開發工程師完成的。

JAVA是後臺語言的一種,和PHP、Python屬於同類型語言。它們要做的是數據庫的搭建以及將數據放置到前端製作好的網頁當中。

WEB前端與JAVA的工作特點

WEB前端:具有一定的可視性,在書寫一些代碼後能夠立即查看到相應的效果,在JavaScript方面對邏輯方面有一定的要求,一定的邏輯能力加上對細節的一絲不苟,才能夠完成相應的工作內容。

JAVA:邏輯能力方面要求較高,書寫的後臺代碼以及數據庫操作,無法實時展示,較抽象,無法所做即所得、隨時查看效果。

WEB前端與JAVA學習的適用人群

適用人群是基於兩種技術特點而定

WEB前端:學習者邏輯能力一般,喜歡處理樣式、製作網頁特效,希望即時性的看到代碼效果

JAVA:學習者邏輯能力很強,注重非可視性內容的優化,如網頁加載速度、用戶交互的時長等

WEB前端與JAVA的薪資發展

初期入行來說,WEB前端的入行門檻要稍低於JAVA語言,根據行業特點,入行薪資也會稍有變化,後期薪資兩者水平基本一致,甚至JAVA薪資水平要稍高於前端。

職業特點發展

未來職業發展過程當中,無論是從事WEB前端還是JAVA,都會向“全端”方向發展

前端走向“熟練掌握前端開發,又對後臺語言有所瞭解”

後臺走向“熟練掌握後臺語言開發,並掌握基本的前端開發知識”。


數字海洋


坦白講,以現在的市場行情分析,前端的薪資整體上接近於Java,但選擇前端的主要原因是加班少,工作量更具體一些;那麼Java的話無論有無新需求或新業務工作量始終能滿足飽和的常態。還有就是如果企業是按照項目制分發獎金的層面去做,那麼前端攻城獅可在不同大小Team之間自由穿梭,同事能獲得多分獎金,反觀作為Java工程師,一個邏輯要不斷寫不斷測試,上層對接前端頁面,下層對接數據庫等複雜數據及業務層,還要做些數據蒐集,數據分析,甚至到大數據,深度學習等方面的工作,比較費腦子。


但不管選擇哪端,選擇自己最合適的才是重要的~

迪廳加油站


大家好,非常榮幸可以有這個機會解答這個問題,現在讓我們一起探討一下吧。

  這是不同的人看到的。它們都是開發帖子,但是它們面向不同的對象。前端對應於網頁。這就是我們打開網站時看到的,包括網頁的結構和佈局。Java語言對應於我們看不到的背景,它負責數據的存儲和讀取。您在網頁中填寫的數據將存儲在後臺數據庫中。要顯示在網頁上的數據是從後臺數據庫中讀出的。

  前端和JAVA(後端)功能:

  前端:與JAVA相比相對簡單,可以勝任,具有良好的基本邏輯能力,整個代碼易於調整,驗證效果立即顯現,整體工作需要認真對待。

  JAVA:需要高度的整體控制、仔細的思考和足夠的耐心,因為JAVA的早期代碼是構建一些基本功能的基礎。

  發展前景:

  未來的職業發展沒有明顯的界限,所有這些都是為了全面發展。

  然而,能力水平仍然非常重要,企業對高級開發工程師的需求遠未得到滿足。

以上這些就是我對於這個問題的一些個人看法和見解,分享給大家,希望大家能開開心心的做頭條,頭條作品能更進一步,最後希望大家能夠喜歡我的回答,謝謝大家,祝大家每天工作開開心心,生活快快樂樂,健康生活每一天,家和萬事興,年年發大財,生意興隆,謝謝!


分享到:


相關文章: