回覆列表
  • 1 # 濤哥初中數學666

    本人就是文科生,從對HTML感興趣到能做小規模webapp的全棧開發,斷斷續續花了差不多七八年,在完全自學的條件下,現混飯吃的工作內容包括Web開發。分享一下,希望對題主有幫助。

    主要原因是,我認為Web開發不需要考慮太多資料結構和演算法方面的問題,所以無論文理科,在數學方面只要有中學數學基礎就夠了,最重要的是要適應工程師的語言和行事方法,這對“文科生”來說可能最有挑戰性,但是隻要跨過這個門檻,你一定會覺得豁然開朗。

    辦法只有一個,就是找靠譜的資料,跟著做tutorial,做的時候必須自己手動敲程式碼和除錯,這個不用多說了,懂英文的話推薦http://codecademy.com。進階之後最主要的是學會查文件,我個人認為文件的質量是專案活力的重要指標。有不明白的地方就上社群問,首推http://stackoverflow.com,沒有第二。

    另外,所謂web開發包括的內容太多,樓主可以慢慢學習瞭解後,找自己喜歡的鑽研下去,或者做一個generalist,兩者需要的精力都差不多,對文理科生來說,十年磨一劍算正常吧。總之,下面每一個關鍵詞都是一個大坑,你要學會取捨和分配精力(不好意思,後端以PHP為例,因為只會這個):

    · 前端

    o HTML+CSS

    o 基礎Javascript -> jQuery -> 其他框架和庫(Bootstrap, React, AngularJS, D3.js...)

    o Design pattern, UX(要關注Jakob Nielsen的文章,篇篇經典)

    · 後端

    o 基礎PHP -> 框架和庫(牆裂安利 Laravel。當然還有許多,如Yii, CodeIgniter等,都是極其優秀的工具)

    o OOP概念 -> MVC概念 -> software design pattern

    o 學會版本控制、單元測試、資料庫遷移

    o 資料安全(關注各種安全部落格,瞭解基本的XSS, CSRF, SQL注入/遠端執行、白名單)

    o 有興趣的話瞭解一下Node.js

    · 資料庫

    o 關係型資料庫的特點 -> mySQL基本語法 -> 複雜的statement

    o MongoDB

    · 伺服器

    o Linux 操作(基本檔案操作、設定訪問許可權、白名單、資料備份、CRON job、分析access log等等)

    · 工具

    o 版本控制、合作:Git(windows下有gitbash)

    o 程式碼編寫:Notepad++; Sublime Text; Eclipse或phpStorm

    o 虛擬機器:vagrant, XAMPP 等

    個人認為,不像其他專業,關於Web開發的知識最容易獲取,因為有無數優秀的開源專案和優秀做法,很多專案的文件做的都非常好。

    功夫不負有心人,少年,動手吧,奔跑吧。

  • 中秋節和大豐收的關聯?
  • 作為女人,你每天想得最多的是掙錢還是花錢?為什麼?