我是學計算機專業的, 在剛大學的時候,還不知道什麼是全棧,反正什麼都學。我大學關於編程學的課 程有c、彙編、linux、JavaSE、嵌入式等;css
我一直對c++很憧憬,以爲學c++都大神,在大三的時候,要三選一:c++ 、c#,、Java。不過我報課的時 候網速不行,沒報上c++,報上了java。那時候c++很搶手, 不過上課一段時間後有人就後悔了,轉了 Java或者C#。我當時也是瞭解Java入門簡單, 之後工做也好找,就安安心心的學Java了。當時是2012年 !html
大學生活老是過得很快,很充實。除了要學的編程課程, 我還看一些培訓的課程。對於新手的我,開始 是看一些基礎的視頻:如html,css3, js,jquery,Java,JavaWeb,mysql,tomcat。老師也會讓咱們
自由找幾個同窗組成一個小組,我通常都是小組長,負責基本所有的開發任務,如今想起來,當時確實 很難,雖然當時的一個bug對於如今的我來講可能不算什麼, 分分鐘就搞定,但在當時可能要弄兩天。前端
第一個小項目:盆栽商場,就一個網頁頁面,沒啥邏輯,加入購物車這樣的功能都沒有,更沒有付款雲 雲了。vue
第二個小項目:聊天室,這個算是很好的了, 有服務端,有客戶端,用swing組件寫的桌面應用,後來 代碼上傳到了百度文檔,畢業後幾年了, 還有人找到我, 問聊天室代碼的問題。服務端使用的socket 連接,一個服務端能夠連接多個客戶端, 能實現多人同時聊天,像一個羣同樣,作工很簡單。java
第三個小項目:上傳下載,我當時的目標就是把上傳下載作成一個jar包,供其它項目調用,作出來是功 能很是簡陋, 啥設計模式,接口編程思想,都浮雲。只能上傳成功到服務器,下載文件到本地。node
第四個小項目:手機通信錄,手機app端的,能夠填寫手機號碼,生日什麼的,以我當時代碼編程的水平 , 我確定不會寫, 我是根據網上的項目視頻教學,本身一行一行敲出來的。python
大學的其餘項目,可能都想不起來的,就這幾個印象最深。親歷親爲,很好的鍛鍊了個人編程能力。在 此,想對還在學校的同窗們說一句話: 代碼真的是敲出來的!mysql
大學畢業了,全棧這詞好像從那時剛剛流行,我自我感受良好, 至少比我同窗他們的編程能力高,反正 我是這麼認爲的。不過最後我同窗他們都找到工做了, 我尚未(好打臉)。react
個人前兩家公司都是小公司。第一家是在上海作了幾個項目被外派到了安徽黃山。黃山有最著名的一棵 樹:迎客鬆,我爬上去看了它兩次。jquery
在黃山,作了幾個項目,當時用的項目框架:Struts,Spring,Hibernate;使用mysql 數據庫, struts1和struts2 視頻教學都看過, 本身搭過框架,都是很基礎級別的,配置都是網上找。後來替換 到新一點的Java框架: Spring,SpringMVC,Hibernate;前端也使用了easyUI,bootstrap,layui。本身也看過less和sass的視頻。(好像如今還有stylus,技術真是層出不窮,學無止境啊。) 關於nodejs 我也看過簡單的文檔教程,本身能搞簡單的服務請求什麼的。
那些項目對於如今的我來講,只能說是鞏固了看視頻學習到的知識。沒啥技術含量,基礎卻是打的很牢 ,不過底層的源碼,設計模式,思想編程等也都是浮雲。
後來又辭職來到上海,那時是在17年,公司是創業型公司。用nodejs開發的後端,IOS、Android前端, Spring、SpringMVC、Mybatis框架的後端管理平臺。我負責後端管理平臺。
創業型公司須要的是全才,不會的要立馬學。在此我如下技術獲得了很好的提高:
linux基本命令和各類軟件的安裝(菜鳥級別的):和不少菜鳥同樣, 我開始弄服務器系統的時候,都 是windows服務器的tomcat.用的是阿里雲買的服務器(如今想一想是真的菜)。後來弄linux系統,先是使 用各類鏈接工具(目前我用的是winSCP+Putty),學習各類基本命令,找各類日誌,排查各類出錯。最 難的就是安裝,由於版本問題致使的出錯機率太大了。
nginx(域名的配置):之前也用過tomcat直接配置過域名,後來知道nginx也能夠用就學這個,技能總 是不斷迭代更新。nginx的conf配置基本都是copy來的,各類參數基本都是默認。https證書除了買, 還 能夠用Let's Encrypt免費申請(安裝Let's Encrypt可讓你遇到各類坑:python版本,nginx ssl鏈接 ,文件權限等)
nodejs(js後端服務):npm install是最難的命令,各類版本問題、模塊報錯(java的maven就很好, 能自動下載模塊,定製各類版本,如springboot相關的jar能控制默認相關jar的版本)。
mysql(備份,主從配置):之前以爲能寫sql,訪問數據庫,CRUD,萬事大吉。不過真正要本身考慮項目 的高可用、高併發、高性能、分佈式、負載均衡的時候, CRUD顯得不值一提。mysql的存儲文件, InnoDB索引,B+Tree算法,執行計劃優化。哎,太複雜了。
redis(數據緩存):redis 安裝簡單,可是運行起來後,不懂配置的話, 會遇到各類坑。最簡單的一個 :要不要序列化。咱們有個20G的應用服務器由於序列化問題,致使磁盤爆滿,程序都GG了。集羣也是一 個挑戰。
jetty(java部署,和tomcat相似):四個字:簡單實用。
svn(版本控制,還有git等):svn的安裝,分配帳戶,這些還算比較簡單,git也是自學的,如何註冊申請 也都是按照博客教程來的
vue(前端框架):提及vue,我最早知道的是angularJS,那時還不叫angular。如今還有react,真正的三 足鼎立啊。不過其餘兩個我沒學。學vue仍是一個UI的哥們啓蒙的。這個UI哥們是搞PS,設計師。他說想轉前端,一直在學習這方面的東西。公司正好要作一個單頁應用,他就弄了一個,發給我,我幫部署, 迭代什麼的,看了兩天就學會裏面的語法了, 真是比js,jquery 寫起來舒服多了,頁面渲染更輕鬆。後 來又弄elementUI、iview,感受都超容易!
到此時,也就是18年10月份。個人技術體系相信你們已經有所瞭解。再有幾天就2020年了,這段時間我 又學會了什麼技術,提升了什麼能力,請你們繼續往下看!
下面咱們來談一談全棧:
全棧英文的詞叫作:Full Stack Developer。
當我說我會前端框架vue、會前端elementUI、會後端java框架、會後端linux部署,你們都說你是 「全棧」 吧!(我心想, 我要是全棧, 我工資咋正低!)
對於這一年多來個人編程能力帶給的體會,我更喜歡這句話: 全棧不是說把本身的能力堆上去,而是你 要把本身強勢的東西給它賦能出去,讓別人具備全棧的能力。
一個政府項目:全國個個省,市,縣都用,還有一些特殊機構。這樣的項目全國不少,好比報稅系統, 全國人員系統。想一想都頭大,全國各個地方的警察天天查人員要訪問多少次?怎麼保證系統不蹦?若是項目交你來作,你能接下嗎?
我爲啥要舉這個示例呢, 就是想說,本身的能力能夠在咱們要作的項目裏面最高能夠擔任什麼角色。
好比我這種前端後端框架都會,部署上線也能夠。可是若是老闆把項目交給,我可能會拒絕,由於我還 沒學會團隊管理(雖然如今正在在方面努力)。若是你編程的時候需求改了10次8次的,不光開發編程頭疼,項目經理會更頭疼。誰不想本身的項目更穩定,交付安全可靠的產品。團隊管理在項目開發中佔了 很大的比重。
那麼此時全棧能起到什麼做用呢? 那就是先後端業務需求溝通0成本。不光是寫代碼,解決bug也是。有時候出了個bug, 前端可能推給後端訪問500,後端說前端傳參有問題,最後花費不少時間才能解決。
這時有人可能說,全棧先後端都會, 可是他沒我學的精,沒我專研的深。我以爲會的廣,真和會的深沒有太大關係。舉個簡單的例子:高中分文科理科,難道文科理科一塊兒學,學霸們還會偏科不成? 國家如今的高中教育也是在慢慢推行文科理科合併吧!
因此,全棧只是比普通的前端或者後端多了一些技能而已,僅此而已。(測試人員可能內心不舒服了,爲啥沒說測試?在我理解,沒bug要啥測試!)
雖然如此, 但我仍是提倡你們都來搞全棧。全棧的好處:
顯得更像大佬:懂得多, 解決問題快,能搞各類技術,能獨立寫各類應用,教會各類新人。
學習東西快:理解能力強,各類編程語言都大同小異,舉一反三。能快速學習各類插件,障礙很是小。
項目全局: 理解業務能力更強,實現業務代碼更快,知道技術邊界,參與項目深度更深,技術規範統一 。
bug解決快: 能迅速找到bug緣由,判斷bug類別(後臺服務,前端,服務器等),而且bug出現機率低。
爲此, 我這一年多一值在提升技術技能的深度:
java : 集合源碼,多線程,JVM虛擬機
spring:看控制反轉的實現原理,AOP;代理的實現,做用等等
springboot : 註解驅動,組件內置配置
springCloud :不只僅是大框架,運行原理,服務概念都要學
docker:鏡像,K8s
微服務註冊:Zookeeper
SQL性能調優:執行計劃,
算法 : 排序,查詢,各類樹等等吧,反轉不少要學的!
全棧目前來看就是技術會的多,所以之後的發展方向: 高級技術經理,項目需求經理;(等等經理都能作,有技術咱就是牛!)兩個方向發展基
本都沒障礙(鍵盤忽然蹦出:葬愛,難道註定沒女友?)
創業也是首選:學習能力強。技術開發更輕鬆。能夠本身接私活,本身兼職創業搞項目。
最後附上論語的開篇:
子曰:「
學而時習之,不亦說乎?
有朋自遠方來,不亦樂乎?
人不知而不慍,不亦君子乎?「
(相信你們是否是不少人都不認識 「慍」 是啥了:yun4 怨恨)
轉載聲明: 可自由轉載、引用,但須要屬名做者且註明文章出處。
個站連接: https://www.bloghome.com.cn/user/yysblog
原文出處:https://www.cnblogs.com/yysbolg/p/12111610.html