距上次寫博客還是有點久了,中間有個寫的念頭,不過由於不知道寫什么也就放棄了。
14年4月份第一份前端工作到現在也有一年半之久了,自己對前端的熱愛相對於一年前是有過之而無不及。一年半的時間里自己也成長了少,對前端的看法和理解也在不斷的變化,中間拋棄了很多東西,也學了很多東西,一切也都是為了未來做前端更輕松吧。
前段時間有點浮躁了,不知道干什么,學新的東西也學不進去了,感覺整個人都失去了目標一樣,這種感覺在之前也有過,就是我做第一份工作的時候,當時根本不知道自己當時做的事情對以后有什么幫助,這可能是大部分剛進入IT行業的新人來說都有這種感覺吧。話說回來,才入IT行業有這種感覺正常,但是轉入前端以來我一直有自己的目標,自己也感覺成長的比較快,不應該有這種不知道做什么的感覺,但是這種感覺的確存在,不知道做什么,什么也都不想做。不過后來公司的任務重起來了,加了幾天班,浮躁的心情也就沒怎么去關心了,可能是轉移了目標吧。
這段時間除了做公司的任務,空余的時候也會看看博客、看看前端的基礎知識,相對與后端來說,前端的樂趣性比后端更高,但是想深入卻需要自己不斷的積累才行。我進入前端這個行業可以說完全是自己摸索入門的,貼一段自己以前的html代碼吧、
<div class="index-banner"> <button class="index-banner-btn-left"></button> <button class="index-banner-btn-right"></button> <div class="index-banner-image"> <img src="#" /> <img src="#" /> <img src="#" /> <img src="#" /> </div> </div>
這段html代碼是一個banner里面的,轉前端到的第一家公司寫出來的代碼,現在回想一下真的寫得太爛了,從一開始學前端到現在,最大的改變就是現在學會了看別人的,以前只知道自己寫,自己實現功能就ok了,我想基本上寫代碼最開始的時候就兩種人:
1.什么都自己做,做出來的東西基本上自己看懂,別人看半天就一個半懂的造輪子新手;
2.什么都先去網上找,功能實現其它什么的無所謂,上司要修改點細節上的功能各種頭痛的找輪子新手。
我屬於前者,而且才開始做前端人新人基本上就這兩種(有老手用心帶的人基本除外吧)。
其實無論做前端你才開始怎么樣,只要過了半年時間你就應該在代碼美化、html結構等一些方面都會有一定提升,這是我自己經歷過的,但是這點提升卻不足以代表你在前端的能力提升,無論是造輪子還是找輪子,在前端這個行業里面這些都只是開頭,前端的東西實在是太多太多了,你要做一個什么效果,去網上找找,總能找到自己需要的。但是,網上找的難免會有一些小問題,功能達到要求了一些效果需要修改、還需要添加一個小小的功能等,這些是在工作中難以避免的事情,所以無論你造輪子還是找輪子,最終你要提升你自己的能力,至少別人寫的代碼你能看懂,而且要能去修改。輪子的問題我也就不多說了,其實無論是找輪子還是造輪子,最后的目的就是完成我們所需要的功能,方法有很多,但是更多的方法卻是需要自己在職場上不斷積累。
我現在這家公司是我上班的第4家公司,做的大項目不是很多,但是平時做的活動專題、節日專題等東西確實不少,不過前端不止我一個,所有我也有閑下來的時候,我現在在公司做的也不只是純前端的東西,偶爾還是會用node寫一些后台的東西,現在我的github上面也放了幾個項目上去。其實我們做前端所接觸的東西有很多,但是你要吃飯最基礎的是html、css、js和ps,這4個是做前端最基礎的,其它的你才開始做可以都不會,但是這4個如果你也不會我想你還沒有做好做前端這行的准備。html、css、js是一個網站呈現視圖和交互最基本的,ps是制作頁面所需要的。但是在前端這個行業這4個往往不夠,現在找個后台程序員都有不少人會這4個技能,所以,如果前端僅僅只會這4個技能又如何能體現出前端開發人員的價值呢?
我認識不少做后端的朋友,他們或多或少都會做頁面,還是一些做設計的朋友都會,但是他們存在一些問題,html結構雜亂、頁面上和標簽上到處都是css、js代碼等,當然,不排除有些還是在前端做的不錯的其它職位的人。其實前面的都是一個美觀和易修改性問題,還有個最重要的問題就是我前面提到的輪子問題:javascript。
很多現在有很多后端人員轉到前端來,有一個嚴重問題就是后端的編程語言靈活性沒有js好,js寫代碼的時候也沒有后端那樣嚴謹,舉個例子:
C#:
public object point()
{
int x = 100, y = 100;
return new
{
x = x,
y = y
};
}
JS:
function point() {
var x = 100, y = 100;
return {
x: x,
y: y
};
}
上面兩段代碼一個是C#的,一個是JS的,都是相同的功能,返回一個坐標對象,各種程序語言的定義都差不多,但是js就太過於簡單了,C#里面很多東西在定版出來時就限制死了,比如C#定義一個函數需要 ‘訪問類型 返回類型 函數名’,而js只需要一個‘function 函數名’,所以后端才轉入前端的人在js上就會碰壁一段時間,這個其實並不奇怪,當你習慣一種方式,然而外力讓你改變的時候你內心就會不自覺拒絕。
前端入門真的很簡單,但是想要深入前端,你卻要花費很多時間去了解前端的各種東西,前端有很多現成的東西,但是這些東西用多了自己也會變懶,特別是對才入門的人來說這就是一個毒瘤。現在網上現成的東西很多都可以拿來直接用,很多新人也是這樣,一個項目為了趕進度什么的,很多前端代碼都是來源於網絡上,各種插件、各種框架等等,最終項目出來了,想要修改卻不知道怎么下手,因為東西實在太多了,你根本不知道這個功能修改了其它地方會不會莫名其妙的出問題。所以做前端要花時間去了解別人發布出來代碼的邏輯,你至少要知道里面大體是干什么也可以,新手可以多看看別人的代碼,找到自己寫代碼的風格,不斷熟悉。
寫到這里感覺廢話了好大一篇文字,做前端一年半,可能已經到了一個瓶頸期了吧,才入前端的時候找工作唯一的想法就是學不學得到東西,學得到多少東西,有時候看別人的博客提到過瓶頸期,其實當時沒什么感覺,但是現在看來,很多東西都是不想程序那樣可以預判的。這段時間想了很多,其實人就是這樣,無聊的時候就會亂想,想過前端這行可以做多久,想過換行,也想過就這樣混經驗,不過這些都只是想想而已。之前在一篇文章看到過做事從零開始,其實我在想我做前端為何不可從零開始呢,想想這一年半走來,一直在最求更好的技術,更好的框架,卻忘了一個最終要的東西,那就是基礎。我想很多做前端的都沒有想過怎么去從零開始吧,其實從零開始也很簡單,把上課老師講過的東西拿出來看看,把自己以前做過的東西拿出來寫寫,就像自己才開始學寫代碼那樣從新去學,當你第二次回過頭看自己以前做的東西,也是在對自己一種審視,也能看見自己的成長。
當然,前端也並不是寫代碼,更多的是去想怎么寫,代碼是死的,人是活的,一個功能有很多方法去實現,我們想的就是怎么用更好的方式去實現,當然,自己在以后的發展是怎么樣的誰也沒法預測,平時多想想、多看看,沒事多了解下周邊知識對自己也沒壞處,每個人都是一步一步走新手到大神的,中間的怎么把汗水揮灑好全看自己怎么去學。
這篇文章中間斷斷續續的寫,思路也是斷斷續續的,寫得不好請見諒。