我于2007年參加高考,順利考入一所男女比例嚴(yán)重失調(diào)的師范大學(xué),主修計(jì)算機(jī)科學(xué)與技術(shù)。其實(shí)高中的時(shí)候本來想選生物的,可惜報(bào)生物的人太少,就沒有開班,后面選修了化學(xué)。原計(jì)劃是想學(xué)高分子材料相關(guān)專業(yè)的,怎奈高考分?jǐn)?shù)太低,沒有考上相關(guān)的大學(xué)。第二志愿填寫的是計(jì)算機(jī)相關(guān)的學(xué)校,當(dāng)初并不知道這個(gè)專業(yè)是編程,以為是修理電腦的。因?yàn)樽约译娔X老是這個(gè)那個(gè)的問題,所以就義無反顧的報(bào)考了計(jì)算機(jī)專業(yè)。填志愿的時(shí)候沒有什么偉大的理想,也沒有什么周密的計(jì)劃,就是隨意的這么一填,沒想到現(xiàn)在就靠這個(gè)吃飯了。
## 一、課程
**1)疑惑**
  本校的這門計(jì)算機(jī)科學(xué)與技術(shù)是偏向綜合的,既要學(xué)軟件相關(guān)的知識(shí),又要學(xué)硬件相關(guān)的知識(shí)。剛進(jìn)入大一的時(shí)候,對(duì)一些課程感到疑惑,例如數(shù)學(xué)、物理、英語、模擬電路等課程,修電腦怎么要學(xué)這些課程,后來才知道,其實(shí)我們學(xué)的不是修電腦,而是編程。
**2)為分?jǐn)?shù)而學(xué)習(xí)**
  由于對(duì)編程并不熱愛,因此上課其實(shí)也不是很上心,剛開始就是為了分?jǐn)?shù)而學(xué)習(xí),完全領(lǐng)會(huì)不到這些課程的意義。比較上心的就是C語言了,譚浩強(qiáng)出的那本。一開始完全沒有基礎(chǔ),寫代碼很吃力,而且那時(shí)候筆記本電腦還沒普及,也很少有機(jī)會(huì)上機(jī)調(diào)試。雖然學(xué)校有機(jī)房,但離的比較遠(yuǎn),基本是不會(huì)去的。后面練習(xí)的多了,慢慢也就會(huì)了,應(yīng)付考試是沒問題的,但寫的代碼不夠有靈性。大二學(xué)了數(shù)據(jù)結(jié)構(gòu),比較難理解,也是靠課后練習(xí),當(dāng)時(shí)純粹是應(yīng)試,所以過段時(shí)間就都忘了。包括后面的網(wǎng)絡(luò)、離散數(shù)學(xué)、排列組合等等,都是為了考個(gè)好成績才學(xué)的。
**3)學(xué)習(xí)氛圍**
  大一和大二被安排在遠(yuǎn)離繁華都市的偏僻海邊的新校區(qū),在這里沒有量販KTV、沒有大型超市、沒有巨型商場。此處雖然資源有限,但是卻非常適合學(xué)習(xí)。不過,大家高中時(shí)候都學(xué)累了,進(jìn)入大學(xué)后就都很放松。很多人喜歡去網(wǎng)絡(luò)文化交流中心包夜,最夸張的是隔壁班的一個(gè)同學(xué),居然一去就是幾個(gè)月。在這種環(huán)境中,想要心無雜念的深入學(xué)習(xí)計(jì)算機(jī)真的蠻難的,況且自己也不熱愛,所以經(jīng)常告訴自己學(xué)這個(gè)只是為了以后能有個(gè)混口飯吃的技能。
  后面大三回到老校區(qū),遇到了專升本的那幫人,他們的學(xué)習(xí)熱情與我們正好相反。他們真的是熱愛這個(gè)專業(yè),有次放學(xué)路過,發(fā)現(xiàn)他們把任課老師圍了起來,正在向老師咨詢這個(gè)那個(gè)的問題,他們肯定是已經(jīng)明白了學(xué)習(xí)的意義,所以才能這么投入。
**4)教授**
  我們文科學(xué)院的教授講課都非常有趣,可以用引人入勝來形容,上他們的課相對(duì)會(huì)有勁很多,尤其是歷史課,可以聽到很多故事。反觀我們理科院的教授,就不那么有趣了,很多時(shí)候都是蠻枯燥的,上課很容易走神。他們的水平都很高,就是講課的時(shí)候很難讓我們理解,當(dāng)時(shí)有一門離散數(shù)學(xué),讓我印象深刻,大部分人都不會(huì)。課堂氛圍比較好的是操作系統(tǒng)課的那位老師,他講的蠻通俗的,有時(shí)候上課還能互動(dòng)互動(dòng)。
**5)操作課**
  大二有一門網(wǎng)頁設(shè)計(jì)課,授課老師讓我們用Dreamwever制作一張靜態(tài)網(wǎng)頁,模板就是他的博客首頁,他博客的訪問量一度飆升。這門課提起了大家的興趣,都在宿舍開筆記本制作,還會(huì)對(duì)比,看誰做的相似度最高,有的人做的很不錯(cuò)??磥泶蠹疫€是喜歡這種能看到效果的操作課,像數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu)那種理論課,都提不起大家的興趣。
  大三的時(shí)候,還有一門多媒體,這門課會(huì)教點(diǎn)PS的內(nèi)容,讓我們整天P一個(gè)胖子,摳圖啥的,大家有時(shí)候還是會(huì)有點(diǎn)興趣。
**6)ACM**
  ACM是一項(xiàng)編程競賽,大一的時(shí)候,有學(xué)長過來做宣講,說拿到好名次能為以后找工作提供很大的便利,一下子就勾起了一大批人的興趣,大家爭相報(bào)名參加。因?yàn)槊蔚暮鹆扛?,所以這項(xiàng)編程競賽難度也很大。ACM考的是算法,并且他的題目都是英文的,有專門的刷題網(wǎng)站,很多人一看要做題目,興致就降低了很多,后面又看到題目難度很大,有些題目有點(diǎn)奧數(shù)的味道,漸漸的越來越多的人選擇退出。我當(dāng)時(shí)也堅(jiān)持了一段時(shí)間,不過自己的數(shù)學(xué)建模能力實(shí)在太弱,最終也還是放棄了。隔壁班有個(gè)同學(xué)堅(jiān)持了,還能拿到名次,畢業(yè)的時(shí)候直接進(jìn)了騰訊。
## 二、實(shí)習(xí)
**1)ERP系統(tǒng)**
  大三下半年輔導(dǎo)員給了我一個(gè)機(jī)會(huì),讓我和一個(gè)學(xué)長一起做個(gè)校外的項(xiàng)目,雖然這個(gè)項(xiàng)目做到一半終止了,但對(duì)我的影響是很大的。當(dāng)時(shí)是用的軟件編輯器是VS2005,打算做個(gè)ERP系統(tǒng),學(xué)長是在英特爾上班的,他把那套成熟的軟件開發(fā)模式帶了過來。第一次使用項(xiàng)目管理系統(tǒng)readmine,第一次使用版本控制系統(tǒng)SVN,第一次使用C#開發(fā)系統(tǒng),第一次制作一個(gè)完整的項(xiàng)目,第一次采集需求等各種第一次,讓我感覺自己好像已經(jīng)進(jìn)入了職場。每個(gè)月還能有500塊的收入,我用第一個(gè)月的收入買了塊500G的移動(dòng)硬盤。不得不說,這次實(shí)習(xí)經(jīng)歷,直接改變了我未來的職業(yè)規(guī)劃,促使我踏上了程序員這條道路。
**2)商城系統(tǒng)**
  時(shí)間很快到了大四,那一年我的一個(gè)初中同學(xué)聯(lián)系到了我,和我說他同學(xué)搞了個(gè)軟件項(xiàng)目,正好缺人,想讓我也加入。當(dāng)時(shí)學(xué)長的那個(gè)ERP項(xiàng)目已經(jīng)被腰斬,正好沒事,馬上就答應(yīng)了。抽了一天時(shí)間,坐了很久的公交,到了他們租的一套公寓里,了解到他們想搞個(gè)商城系統(tǒng),正好也是用C#開發(fā),模仿當(dāng)時(shí)的一套開源系統(tǒng)來做。這次的經(jīng)歷讓我接觸到了前端,確切的說是JavaScript,因?yàn)镃SS和HTML由團(tuán)隊(duì)的另外一個(gè)成員做。與此同時(shí),我也迷上了前端,因?yàn)樵谕瓿赡硞€(gè)效果時(shí),能帶給我巨大的成就感和滿足感。不過,一直到6年后,才有機(jī)會(huì)轉(zhuǎn)型成全職前端。
**3)戶外旅游網(wǎng)**
  商城系統(tǒng)團(tuán)隊(duì)后面由于種種客觀原因無奈解散了,當(dāng)時(shí)正好有一家戶外旅游網(wǎng)在我們大學(xué)里招實(shí)習(xí)生維護(hù)公司的網(wǎng)站。我就報(bào)名了,學(xué)校在徐匯區(qū),而這家公司在虹口區(qū),兩者相距蠻遠(yuǎn)的,地鐵都要坐一個(gè)多小時(shí),然后下地鐵再走到公司。這家公司還有另外一個(gè)同事管網(wǎng)站這塊,不過他只能算半個(gè),因?yàn)樗饕苈糜萎a(chǎn)品那塊。舊網(wǎng)站是用ASP開發(fā)的,我過來后老板讓我先做點(diǎn)邊邊角角的事情,然后讓我開發(fā)一個(gè)和開心網(wǎng)類似的社交網(wǎng)站。這次是獨(dú)立完成了這個(gè)項(xiàng)目,包括數(shù)據(jù)庫設(shè)計(jì)、頁面制作、產(chǎn)品規(guī)劃等,我的另一篇文章《[憶2011年的秋天:一個(gè)人的項(xiàng)目](https://www.cnblogs.com/strick/p/10007237.html)》就詳細(xì)記錄了其中的開發(fā)過程。實(shí)習(xí)期間,還拿了公司傳單在學(xué)校里發(fā),中午的時(shí)候,在人流量最多的地方發(fā),對(duì)自己也是一種挑戰(zhàn)。
*****
> 已建立一個(gè)微信前端交流群,如要進(jìn)群,請先加微信號(hào)freedom20180706或掃描下面的二維碼,請求中需注明“看云加群”,在通過請求后就會(huì)把你拉進(jìn)來。還搜集整理了一套[面試資料](https://github.com/pwstrick/daily),歡迎閱讀。

- ES6
- 1、let和const
- 2、擴(kuò)展運(yùn)算符和剩余參數(shù)
- 3、解構(gòu)
- 4、模板字面量
- 5、對(duì)象字面量的擴(kuò)展
- 6、Symbol
- 7、代碼模塊化
- 8、數(shù)字
- 9、字符串
- 10、正則表達(dá)式
- 11、對(duì)象
- 12、數(shù)組
- 13、類型化數(shù)組
- 14、函數(shù)
- 15、箭頭函數(shù)和尾調(diào)用優(yōu)化
- 16、Set
- 17、Map
- 18、迭代器
- 19、生成器
- 20、類
- 21、類的繼承
- 22、Promise
- 23、Promise的靜態(tài)方法和應(yīng)用
- 24、代理和反射
- HTML
- 1、SVG
- 2、WebRTC基礎(chǔ)實(shí)踐
- 3、WebRTC視頻通話
- 4、Web音視頻基礎(chǔ)
- CSS進(jìn)階
- 1、CSS基礎(chǔ)拾遺
- 2、偽類和偽元素
- 3、CSS屬性拾遺
- 4、浮動(dòng)形狀
- 5、漸變
- 6、濾鏡
- 7、合成
- 8、裁剪和遮罩
- 9、網(wǎng)格布局
- 10、CSS方法論
- 11、管理后臺(tái)響應(yīng)式改造
- React
- 1、函數(shù)式編程
- 2、JSX
- 3、組件
- 4、生命周期
- 5、React和DOM
- 6、事件
- 7、表單
- 8、樣式
- 9、組件通信
- 10、高階組件
- 11、Redux基礎(chǔ)
- 12、Redux中間件
- 13、React Router
- 14、測試框架
- 15、React Hooks
- 16、React源碼分析
- 利器
- 1、npm
- 2、Babel
- 3、webpack基礎(chǔ)
- 4、webpack進(jìn)階
- 5、Git
- 6、Fiddler
- 7、自制腳手架
- 8、VSCode插件研發(fā)
- 9、WebView中的頁面調(diào)試方法
- Vue.js
- 1、數(shù)據(jù)綁定
- 2、指令
- 3、樣式和表單
- 4、組件
- 5、組件通信
- 6、內(nèi)容分發(fā)
- 7、渲染函數(shù)和JSX
- 8、Vue Router
- 9、Vuex
- TypeScript
- 1、數(shù)據(jù)類型
- 2、接口
- 3、類
- 4、泛型
- 5、類型兼容性
- 6、高級(jí)類型
- 7、命名空間
- 8、裝飾器
- Node.js
- 1、Buffer、流和EventEmitter
- 2、文件系統(tǒng)和網(wǎng)絡(luò)
- 3、命令行工具
- 4、自建前端監(jiān)控系統(tǒng)
- 5、定時(shí)任務(wù)的調(diào)試
- 6、自制短鏈系統(tǒng)
- 7、定時(shí)任務(wù)的進(jìn)化史
- 8、通用接口
- 9、微前端實(shí)踐
- 10、接口日志查詢
- 11、E2E測試
- 12、BFF
- 13、MySQL歸檔
- 14、壓力測試
- 15、活動(dòng)規(guī)則引擎
- 16、活動(dòng)配置化
- 17、UmiJS版本升級(jí)
- 18、半吊子的可視化搭建系統(tǒng)
- 19、KOA源碼分析(上)
- 20、KOA源碼分析(下)
- 21、花10分鐘入門Node.js
- 22、Node環(huán)境升級(jí)日志
- 23、Worker threads
- 24、低代碼
- 25、Web自動(dòng)化測試
- 26、接口攔截和頁面回放實(shí)驗(yàn)
- 27、接口管理
- 28、Cypress自動(dòng)化測試實(shí)踐
- 29、基于Electron的開播助手
- 30、SkyWalking使用和排查分析
- 31、IP白名單變遷史
- Node.js精進(jìn)
- 1、模塊化
- 2、異步編程
- 3、流
- 4、事件觸發(fā)器
- 5、HTTP
- 6、文件
- 7、日志
- 8、錯(cuò)誤處理
- 9、性能監(jiān)控(上)
- 10、性能監(jiān)控(下)
- 11、Socket.IO
- 12、ElasticSearch
- 監(jiān)控系統(tǒng)
- 1、SDK
- 2、存儲(chǔ)和分析
- 3、性能監(jiān)控
- 4、內(nèi)存泄漏
- 5、小程序
- 6、較長的白屏?xí)r間
- 7、頁面奔潰
- 8、shin-monitor源碼分析
- 前端性能精進(jìn)
- 1、優(yōu)化方法論之測量
- 2、優(yōu)化方法論之分析
- 3、瀏覽器之圖像
- 4、瀏覽器之呈現(xiàn)
- 5、瀏覽器之JavaScript
- 6、網(wǎng)絡(luò)
- 7、構(gòu)建
- 前端體驗(yàn)優(yōu)化
- 1、概述
- 2、基建
- 3、后端
- 4、數(shù)據(jù)
- 5、后臺(tái)
- Web優(yōu)化
- 1、CSS優(yōu)化
- 2、JavaScript優(yōu)化
- 3、圖像和網(wǎng)絡(luò)
- 4、用戶體驗(yàn)和工具
- 5、網(wǎng)站優(yōu)化
- 6、優(yōu)化閉環(huán)實(shí)踐
- 7、后臺(tái)上傳大批量圖優(yōu)化
- 數(shù)據(jù)結(jié)構(gòu)與算法
- 1、鏈表
- 2、棧、隊(duì)列、散列表和位運(yùn)算
- 3、二叉樹
- 4、二分查找
- 5、回溯算法
- 6、貪心算法
- 7、分治算法
- 8、動(dòng)態(tài)規(guī)劃
- 程序員之路
- 大學(xué)
- 2011年
- 2012年
- 2013年
- 2014年
- 項(xiàng)目反思
- 前端基礎(chǔ)學(xué)習(xí)分享
- 2015年
- 再一次項(xiàng)目反思
- 然并卵
- PC網(wǎng)站CSS分享
- 2016年
- 制造自己的榫卯
- PrimusUI
- 2017年
- 工匠精神
- 2018年
- 2019年
- 前端學(xué)習(xí)之路分享
- 2020年
- 2021年
- 2022年
- 2023年
- 2024年
- 2025年
- 日志
- 2020
