專註前端還是全棧?
我室友說不想當全棧的web前端不是好前端,這句話對嗎
我舉個實際的例子吧。
最近換了新公司,部門一片荒蕪,包括人,對接部門的人,系統,自己的,其他部門的系統,都沒有,從零寫起。
那麼我作為一個前端,我能做什麼呢?好像什麼也做不了?除了寫寫頁面,寫寫css,js,我什麼也做不起來,無法發力。
尷尬的是我還是個title比較高的前端…
怎麼辦呢?
在了解過一些業務需求之後,我總結出了幾個內部系統的雛形和大致技術實施方案。(我相信純前端幹不了這個)之後,針對不同技術的實施做框架或者開源工具的調研。其中包括python,php,nodejs,java的技術棧和框架。之後又和運維了解了一下之前的一些上線發布方式,之後選型了我能最快實現的一套nodejs的解決方案,和業務和技術對接方討論完可行性之後,開動編碼。
申請了測試機和資料庫,申請了產品資源(prd文檔),申請了運維資源,申請了數據挖掘的資源,我自己開動了一個nodejs主導的項目,做起了公司內部的大數據平台,廣告平台等。並且最後在招聘方向上也做了對應調整。
怎麼說呢,前端挺好,但是懂的更多,能讓你看見更大的世界,主導更多的資源,干更喜歡做的事。
ps:招前端,招nodejser,招h5前端開發。評論私聊~先答題:客觀上,前端處於鄙視鏈較末尾位置,室友可能正在鄙視,你懂的。
但是全棧究竟是個什麼意思呢?
第一種解釋是:前後端都會第二種解釋是:能不依賴別人/別的角色解決問題, 根據需要使用知識和語言還有一個大前提:你必須有一門精的,什麼都會什麼都不精,按鄙視鏈來說,處於更末尾要成為第一種意義上的全棧,對我們【前端】來說,成本最低的方式是,nodejs
而第二種就要根據情況來定了,也許只掌握一門語言/技能,甚至沒有編碼技能;也許需要學習你目前技術棧外一堆新東西 實際上第二種比較有市場和核心競爭力「面向工資編程」,但我在進行第一種,並且就是用nodejs。問我為什麼?這就是所謂的「技術信仰」某互聯網公司一名小全棧,當然這個title不是我自封的,招的時候職位就是這麼設定的,而且是前後端輪番『強姦』你面試的。
關於這個問題談一下自己的一點淺薄的看法。全棧這個職位的概念比較虛,界定的範圍也不好說,某些前端工程師學個nodejs會個資料庫存取數據也號稱自己全棧,某些後端工程師會個jquery實現個特效也號稱全棧,其實這些浮躁的現象讓這個稱號變得蠻不討人喜歡的。
一名全棧工程師應該是什麼樣的呢?首先基礎肯定要牢固,計算機編程基礎這是起碼的要求,不要覺得什麼編譯原理演算法對你不重要,這些訓練的是你的編程思維和解決問題的能力。其次,技術要深入,要知其然知其所以然,很多人看到新鮮的技術都去嘗試一下,但往往因為在實際工作中用不到會半途而廢,我之前也寫過python,ruby還看過golang、做過android,最終都沒能成氣候。後來總結了一下是自己沒有掌握一個良好的體系,這個體系一旦建立起來再多的語言也只是語法上的問題。第三,一專多精,這一點也是我剛來的時候領導給我講的,你必須有自己專場的一個領域,這是你的閃光點,其他方面的互補則是你的加分項,全棧要有一種『補位』意識,哪裡緊迫需要,你要能補上去。
關於一名合格前端工程師長什麼樣?這個問題前端圈最近比較活躍的很多『大牛』可以給出你答案,在此不做贅述,如果你想從這個領域深入發展,那麼你可以專職做前端,年輕的時候不要過分的去計較哪個好哪個壞,如果一開始順風順水,那麼後面的坑你早晚要踏過,你可以把前端當做你的一份工作也可以當過一個興趣,我選擇了後者,因為我不想把興趣當工作來做。
另:做前端不要被前端圈看起來各種類似高大上的概念和工具迷惑了,近幾年前端圈的變化層出不窮,無非就是讓css看起來更像一門編程語言,讓js更有條理,無非就是想讓天花板高一些,基礎最重要,基礎最重要,基礎最重要,重要的事情說三遍。
程序界的大門才剛剛打開,不要急著找自己的座位,欣賞下各路神通,也未嘗不是種好事呢,把title去掉,為自己編碼。以上純屬扯淡~~~
反正就是擼碼,給個什麼title都一樣。只要是自己喜歡做的,都行
看成了「專註前端還是金錢?」,正準備回答「當然是金錢啦」
我發現在各種技術崗位里,前端工程師特別喜歡糾結這些玩意兒。。「前端工程師的價值是什麼」「前端工程師在公司如何體現自己的價值」「前端工程師如何在產品里有話語權」
……
都是自己把自己關進小房子里,然後想我怎麼跳出這個房子呢無所謂,前端就那些東西,你要牛B,搞兩年自己也會去搞點其他的。你要是菜,前端那些搞不定也沒精力去搞其他的。所以,還是先把眼前需要的東西做好。
自己業內的事都沒做好還想全棧,這是作死行為。
全棧更多是"你們做的都是渣渣,還不如我自己上"的結果,而不是一開始就奔著這個目標去的。瀉藥
是個程序員就別老糾結什麼前端全棧的破名詞兒圈裡某些人天天造名詞兒瞎JB忽悠菜鳥實際上是
寫什麼代碼不是寫如果你有能力所謂的前後全學會了,為啥不學?
前端工程師,注意重點是 工程師 這個稱呼,不是前端美工。
工作這麼多年,全套網站也干過,專職前端也干過,專職java也干過,打雜做app也弄過。 我發現其實最重要的還是,計算機組成原理,數據結構,離散數學這些現在大夥普遍看不上的東西。
不過現在是前端面試你問個冒泡排序的偽代碼實現, 都有人噴你裝逼的時代,呵呵。1 純粹的前端,HTML+CSS+JS,只在瀏覽器里運行,天花板比較低。2 網路和終端與前端關係特別緊密,不了解很難進一步優化代碼。所以大多數情況下,前端最終是要變成全棧的。
想成為全棧工程師是好的,但是必須有所長,學的雜而不精並不是什麼好事情。
作為一個好的前端,去了解後台語言,可以提高自己的能力,也有利於提高工作效率。
全棧是你在學習工作中慢慢接觸慢慢學習到的,根據實際需要學習越來越多的知識。
為了全棧而全棧並沒有什麼益處,先學好某一方面,然後慢慢深入,有所擅長,比起追求一個全棧的title,到最後什麼都不精通,什麼都只會皮毛要好的多吧。
最近挖出來一個道理,不知道對不對?一個做web開發的人,前端是來自後端的.
」一專多能「從來都是職場上的搶手貨,如果做不到,那就做「一專」,而不要做沒有一專的」多能「,「啥都會做」其實就是「啥都不會做」。
來我司面試,號稱全棧的基本上都被鋸掉。真不是歧視,基礎太差了。
嘖嘖,你們沒讀出題主的潛台詞。
這個問題的背後,我估摸著是這麼一個故事。(如果猜錯了,你們就當段子看,別打我~~)
相信大家都有這樣的經驗呀,聊天的時候並不是想證明『我的觀點』是對的,而只想證明『我是對的』。我相信題主的室友要是真是全棧大神,就不會說這樣的話了。而現實是,室友說『不懂全棧你搞個毛線啊』,題主想想竟無言反駁。所以這個問題並不是『青菜更好還是青菜蘿蔔套餐更好』,而是『如何反駁室友青菜蘿蔔套餐比青菜更好』!
所以,這個問題的正解是,你看人家 大漠 老師 CSS 登峰造極,JavaScript 不會都能這麼牛!你室友算哪根蔥?
覺得原來的回答太草率了。
什麼是全棧?拿node這樣的和js同樣語法的語言,能寫一個文件上傳就算是全棧么?能寫php的前端算全棧么?還是能拿某些mvc框架湊湊合合搭起來的算全棧?還是說輕鬆切換語言,拿什麼都能寫點像樣的東西,寫個mvc框架只需要看完語法後對著api?
我覺得全棧,就是那些會點後端的前端自我安慰的話。本來就沒什麼全棧,就像本來就沒什麼前端。給自己畫個圈,然後死守在圈裡面,其實沒什麼意義吧。都是程序員,寫什麼不是寫。您說對么?//原答案所以,前端水平好點,別的語言就都不能玩了,是吧…
全面了解整個web,對前端開發是很有幫助的。
我之前一直是寫web前端的,也包括Hybrid的解決方案,基本上都是前後端完全分離獨立開發的,就像安卓和iOS。後來開始寫python,其實python還是比較容易上手的,剛開始只是寫一些簡單的api。後面做新產品佐佑https://www.zuoyou.ren/ 時,開始做整個服務端和web端。這時候就對整個web開發了解的比較全面了,已經不再是前後端分離,而是前後端融合(當然這樣有優缺點,這裡不討論),模板部分由服務端渲染、服務端路由。然後開始了解http,比如通過Etag觸發304;然後redis和celery來做非同步和定時任務,便於做推送和統計;在基本的web service了解過後,開始了解一些原理,比如sid的生成與生命周期、負載均衡等。然後使用大量的第三方庫,比如requests,才知道爬蟲是這麼玩的。等等吧.....
在服務端這麼玩了一圈之後,對web開發的理解已經與停留在前端時完全不一樣了。前後端相輔相成、對數據的構造和解析更加合理規範、在兩個世界之間無障礙的暢遊,這才是web全棧的意義和價值。1、大多數人學好一個領域已經是一個優秀的人了。(天才除外,我非天才)2、假如你已經是一個優秀的人了,那你應該已經養成,能使自己變得更加優秀的學習習慣以及思維方式。=====先學好一門,有點透的感覺後,再去想自己到底想要什麼,那時候的你,比現在的你,更加清楚自己想要什麼。知己者莫如己。
推薦閱讀:
※當前主流HTML5的網頁是否依然是以DIV + CSS為基礎開發的?
※像「class="btn btn-large btn-block btn-primary"」這樣的 CSS 使用風格好嗎?
※前端開發中如何做到頁面安全,防止 xss ,csrf 這樣的欺騙及偽造?
※hexo怎麼添加留言板?
※純前端如何抵禦CSRF攻擊?