學習編程,如果只看"工程類"書籍,不看"科學類『書籍,會有哪些不良後果?
補充說明:
工程類書籍是指語言類書籍,介紹module的書籍,以o"reilly動物封面的那些書為典型,比如:Web.Scraping.with.PythonMySQL.Cookbook.3EProgramming.Python.4EPython.for.Finance
Doing.Data.ScienceGetting.Started.with.SQLFluent.Python科學類書籍是指CS專業大學上課的那些課程所用的書籍,比如:演算法導論深入理解計算機系統操作系統離散數學計算機網路SICP
知其然而不知其所以然。
這個「看」字信息量太小了。
看哪本書?看哪些部分?如果有習題的話做不做,做多少?要不要開坑做相關的項目加深理解?是一個人看,還是藉公開課/讀書會之類有交流機會的場合看?etc
最重要的一點是,你的時間和注意力的預算又能撥出多少呢?我自己的有限的經驗里,看CS專業教材並不能像看輕小說或者背單詞一樣,碎片化地閱讀,一旦翻開書頁,那一段時間裡沒有確切地掌握一個知識點的話,基本上就是浪費掉了:要麼日後還需大量時間反覆閱讀揣摩,要麼建立了浮皮潦草的自以為理解了的感覺,真的需要用到相應知識做點什麼時才會發現到處是坑。
不是說專業書沒用,只是給大家提個醒。不看專業書自然知識會有所欠缺,但反過來說,並不是去「看」了專業書就能自動厲害起來的。無法成為真正的大牛,職業發展會很受限。可以儘早考慮轉產品經理……或者,也可以考慮項目管理?
學而不思則罔,思而不學則殆
你列的那堆「科學類書籍」其實也要算到工程類裡面
有些東西不一定要看書學的。
一個人如果有好奇心,想學,沒書他也能去學的。
所以跟書無關,跟人有關。沒什麼後果。題主列得書我都沒怎麼看過。
但是我寫過驅動,寫過rootkit,調過windows內核,各種樹和圖的數據結構以及演算法也都自己實現過,也設計過架構寫過遊戲引擎,玩過Direct3D也寫過CUDA,搭過網站也寫過WebGL,本科畢業時候代碼量150k+,個人認為編程能力比那些讀過這些書但只會考試和寫文檔的同學強多了。
書只是工具,需要用的時候查一下就行,而現在遇到不懂的問題上網搜一下很多時候也是等效的。編程這個行當,實踐出真知。
我覺得互聯網唯一比不上書的就是不能感動自己,不會給你一種讀了很多書好像就全懂了的成就感來滿足虛榮心。其實你列出來的除了離散數學,都屬於工程類。
個人覺得是切入點不同,早晚你會意識到不能僅僅看xx類的書,還要再看一下yy類的。嗯,然後就有了這個提問。
如果你習慣了xx思維,再讓你看yy的,就會有不適應,反之亦然。
所以,還是看你想弄啥,然後選擇主要看xx還是yy。真知和經驗交給實踐和時間吧~
看工程的時候會有需要看科學類的,因為會有本質點;同樣看科學類的時候因為看不見摸不著,會需要工程類的實際證明一下。所以不存在這兩類書籍的鴻溝,看書為使用。
只會造輪子,,,
本人計算機大二在讀,總感覺把計算機底層弄清楚很重要,所以科學類是基礎,工程類是剛需。
書我是不看的。不過GitHub和stackoverflow你說可以有一個不用么?
到真正使用時,你會發現:這。。還是搞不懂、還是可能會錯誤的使用。
知道怎麼去干,不知道為什麼這麼干
整個計算機科學不都是工程嗎?
技能成長性不好,提升曲線陡峭。
按道理來說,計算機理論基礎是非常重要的。但是編程有一個好處就是即使你不知道理論,也可以開始寫代碼,做點東西出來。如果你是想從別的行業轉成程序員,一個拿得出手的項目也許更重要。(這種就是先上車再補票的那種,先弄到一個編程的職位,然後慢慢補)。當然,我認為理論書籍很重要,比如CSAPP,SICP之類的。
工程類的似乎大多是語言方面的trick
只會成為碼農,而不是程序員
推薦閱讀:
※個人充電,想學一門替代python的語言?
※自動處理excel數據,用什麼語言合適?
※python 3.4 下載了PIL第三方模塊,whl格式,如何安裝?
※計算機研二女生 幾乎沒什麼整個項目經驗,編程也馬馬虎虎,現在想要自學python找工作 難嗎?
※自學php或python到什麼程度才能找到工作?