作者camry2009 (camry)
看板Soft_Job
標題[請益] 如何增進自己程式的實力?
時間Mon Oct 12 01:07:14 2020
我是台科的資工系 (原本是高中生)
大一剛從機械轉過來,在一下有修過C#
目前直接銜接資工大二的課程
現在學的東西的確讓我比較有興趣,但一方面也覺得有點挫折
現在學到的資料結構 ,數位邏輯等課程的功課都花費我大量的時間...
我暑假因為怕跟不上大家,有先去台大暑假開設的C語言設計課程,希望至少不要差的這
麼多
但我資料結構想了10天...別人一個小時就輕鬆解決..還是讓我有點對自己失望,
甚至會有點害怕打code...
大一的課程---C語言程式設計目前都還可以,但資結有點讓我失去信心的感覺
我想讓自己趕快跟上大家...想要趕快進步
有先去爬過tinlans大大的文章了...要先搞清楚自己要幹嘛,我原本想說想成為寫遊戲的
工程師,但感覺離夢好像越來越遠了,也不確定會不會繼續這個想法
這樣會有礙我的進步嗎?
然後我想問一下,程式不會的話是不是不要問人比較好?
我想很久之後,越靠近繳交期限,就會很想把作業交出去...就會去請教別人,這樣是不
是錯誤的學習方式?
還有一點是我現在身邊的用書是:absolutely c++,是原文的
最近在想要不要買C++ primer 因為好像大家都推這一本
然後我朋友跟我說買中文就好了...看比較快,學程式知道他講甚麼就好了。可是我看ptt
大家好像還是推原文,因為意思比較不會跑掉? 請問該怎麼選擇?
然後我該怎麼增進自己實力比較好? 一直刷題嗎?如果要,題目該刷哪一種的?
有點迷惘的感覺...希望前輩們可以給我一點方向 感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.118.135.139 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1602436036.A.817.html
→ james732: 看書,多練習,要實作 10/12 01:11
→ leo08210917: 怕甚麼 沒有人從一開始就全都會的 10/12 01:27
推 taffy128s: 就業方向先有個大概就好 10/12 01:28
→ taffy128s: 多練習 先靠自己研究 真的不會再問別人 10/12 01:28
→ taffy128s: c++ primer 我大學時候有買 但是沒看過幾次 10/12 01:28
→ taffy128s: 通常用到什麼概念上網查一查就好 10/12 01:28
→ taffy128s: 刷題可以用uva online judge, code force等 10/12 01:28
→ taffy128s: 或者是leetcode 依你來說可能先寫一些easy 10/12 01:28
→ taffy128s: 建立一下信心 然後不要心急心慌 慢慢來才大二 10/12 01:28
噓 xxtuoo: 浪費時間擔心 還不如多練兩題Zzz 10/12 01:30
→ camry2009: 謝謝taffy大...明天就開始 另外請問primer是中文嗎 10/12 01:38
推 yoche2000: 貴校資工用C++上嗎 那先從c++基本程設開始吧 10/12 01:46
→ yoche2000: 喔看到了 有C# 10/12 01:47
→ taffy128s: computer science的東西建議還是看原文比較好 10/12 01:48
→ taffy128s: 因為之後看paper或公司文件都會是英文 10/12 01:48
→ taffy128s: 如果英文不好還是趁早練習 至少閱讀要ok 10/12 01:48
推 sherees: 中文書滿常有奇怪的翻譯問題 可以挑大家推薦的中文書 比 10/12 01:53
→ sherees: 較不會那麼嚴重 10/12 01:53
推 mercurycgt68: leetcode 先刷200題 不要多不要少 刷完會看到新世界 10/12 01:54
→ sherees: 但新技術終究得看英文的document 10/12 01:54
→ camry2009: 回yoche大 資工本系是一上c一下c++ 我是轉過去的 10/12 01:54
推 CaptPlanet: 刷起來! 10/12 01:55
→ sherees: 真的想不出來就看討論或問人吧 有思考過看多問久就會比 10/12 01:56
→ sherees: 較有sense 了 10/12 01:56
→ camry2009: 我自己覺得英文還算ok 但就中文看比較快... 10/12 01:57
→ camry2009: leetcode一題大概要給自己多久時間呢?有點不會拿捏問 10/12 01:57
→ camry2009: 別人之前大概要想多久.. 10/12 01:57
→ mercurycgt68: 刷題法請以「兔系」優先 (對比龜系,自行 google) 10/12 01:58
→ mercurycgt68: 每種題型都要做到 重點是二元樹 遞迴 回溯還有資料 10/12 01:58
→ mercurycgt68: 結構題 DP做五題內就好 10/12 01:58
→ mercurycgt68: lc剛開始時間多久不是重點 抄答案都沒關係但要完整 10/12 01:59
→ mercurycgt68: 看懂 最終任何 medium 題難度限定20分 10/12 01:59
推 CaptPlanet: 基本科目用心讀作業好好寫 找出自己喜歡的領域挑個語 10/12 02:01
→ CaptPlanet: 言去練習 語法熟悉後做點簡單的小 project 這都是需要 10/12 02:01
→ CaptPlanet: 時間的 一步步來 會漸漸看到效果 還有 英文跟刷題還是 10/12 02:01
→ CaptPlanet: 非常重要的要持之以恆 10/12 02:01
推 DarkIllusion: 其實你可以中英文都買 10/12 02:03
推 dmeiki: C++ primer可以買,當作工具書不錯。 10/12 02:04
推 CaptPlanet: 刷題真的想不出來可以看 discussion 了解別人是如何 10/12 02:04
→ CaptPlanet: 思考 但一定要標記起來過一段時間再自己解一次 10/12 02:04
→ DarkIllusion: 在116時不少同學為了增加讀書效率兩種語言都會買 10/12 02:06
推 mouse21: 為什麼會因為資結害怕寫程式....如果沒辦法理解的東西就 10/12 02:34
→ mouse21: 嘗試土法煉鋼,題目的要求先不管,用你目前會的東西寫出 10/12 02:34
→ mouse21: 來,在想辦法填回去合理化答案。 10/12 02:34
→ mouse21: 這個辦法很萬用,出社會還能一直用。 10/12 02:34
→ mouse21: 然後寫出來在回頭看看資結是什麼,怎麼把你的答案合理成 10/12 02:35
→ mouse21: 資結就好了,這也是資結的起源 10/12 02:35
→ mouse21: 別人寫的快是因為他們曾經用過土方法,想過質疑過為什麼 10/12 02:39
→ mouse21: ,所以一碰到資結就像發現答案,就好比有些人能夠一秒理 10/12 02:39
→ mouse21: 解陣列指標,有些人卻要花時間理解,其實多半只是因為快 10/12 02:39
→ mouse21: 速理解的人有類似的學習經驗,所以不用氣餒,多看多學就 10/12 02:39
→ mouse21: 多懂了,往後很多都是觸類旁通的東西 10/12 02:39
推 enthos: 多閱讀,看不懂是教材不適合,換一套教材。 10/12 03:40
→ flyawayla: 寫code就像學書法, 一開始都是多看多臨摹 10/12 04:27
→ flyawayla: 等你練的量夠多, 才有可能融會貫通有自己的風格 10/12 04:29
推 alihue: 想十天正常啊,我以前找分號找了八小時。此外學生時代不 10/12 07:01
→ alihue: 要跟最強的比,強的太強了。但絕大多數時候比的是誰最用 10/12 07:01
→ alihue: 心 10/12 07:01
→ alihue: 剛學程式,作業自己寫的話,連印星星寫個十幾小時都正常 10/12 07:03
→ jobintan: 看自己未來想往哪方向走,firmware與硬體有關,C與C++學 10/12 07:17
→ jobintan: 好學滿,web或app學c#之外,還要再學java、js、python。 10/12 07:18
→ jobintan: 語法基礎建立起來先,之後再去玩framework。 10/12 07:18
→ camry2009: 感謝大家的回覆 我就先跟學校進度 如果有課餘時間 我在 10/12 07:31
→ camry2009: 去LC刷題 這樣ok嗎 10/12 07:31
推 longlyeagle: 想做遊戲直接 unity godot 打開開始寫就好了 10/12 08:15
→ longlyeagle: 想那麼多做啥? 10/12 08:15
推 dream1124: 推 mouse21 alihue flyawayla 的回覆,很溫暖。 10/12 08:16
→ dream1124: @longlyeagle 我想他只是覺得現實與業界現況落差太大吧 10/12 08:17
→ dream1124: 現實做遊戲不可能完全不用引擎從零開始刻 10/12 08:18
→ dream1124: 他只是覺得連資結都卡一陣是否意謂自己並不行 10/12 08:19
推 rain45: 我覺得應該還不用到某些刷題網站刷 先把不懂的科目的題目 10/12 08:39
→ rain45: 寫完吧 不懂就問甚至看別人的也很正常 學習一開始都這樣 10/12 08:39
推 ken83715: 我資工 老實說剛開始學寫程式的時候沒翻幾次書 上課聽 10/12 09:05
→ ken83715: 懂比較重要 買中文英文都可 至於寫code不會當然要去問人 10/12 09:05
→ ken83715: 啊 剛開始都是去問人 看答案 重點是要能看懂怎麼寫 之 10/12 09:05
→ ken83715: 後就可以自己寫了 10/12 09:05
→ ken83715: 去網站刷題我覺得還太早 可以先把資結的幾個經典東西寫 10/12 09:07
→ ken83715: 出來 課程的內容寫成code就夠你想破頭了 10/12 09:07
推 Csongs: 資結 演算法 我建議做電子筆記,方便之後複習 10/12 09:08
推 springfeel: 如果博弈也算遊戲業的話 你不用擔心找不到工作的 10/12 09:17
推 x246libra: 有前途,棄機械,轉電子 10/12 09:26
推 BlacksPig: 推原文是因為最新版都只有原文,但是你還在練基礎,看 10/12 09:36
→ BlacksPig: 中文就好,有多餘時間再用英文看一遍。就算你現在看最 10/12 09:36
→ BlacksPig: 新最潮的寫法,等你畢業後這寫法就可能已經落伍了 10/12 09:36
→ mizhao: 要多去 GitHub 讀別人寫的 code,比較別人寫法優劣。 10/12 09:39
→ mizhao: 新手大多都是寫 dirty code,自己練寫久了還是 dirty. 10/12 09:39
→ mizhao: 等比較有空一點就去讀 clean code, 才不會被自己卡關 10/12 09:41
→ x246libra: 在學校學的都是基礎,不會變動的重要觀念,真的很在意 10/12 09:59
→ x246libra: 學習速度,買中文我覺得可以接受,但要知道相對應的英 10/12 09:59
→ x246libra: 文 10/12 09:59
推 alihue: 可以先看中文對於學習有效率。英文可以先試著 google 解 10/12 10:11
→ alihue: 答時,一率用英文查看 10/12 10:11
→ camry2009: 好的 謝謝你們的建議 10/12 10:20
推 Lhmstu: 其實問完人之後,要理解的是自己缺少什麼點導致沒辦法完 10/12 11:09
→ Lhmstu: 成。把思考流程實體化寫下來或是畫下來都會幫助你未來解 10/12 11:09
→ Lhmstu: 決演算法問題。看了別人的想法後再來比對自己是中間缺少 10/12 11:09
→ Lhmstu: 關鍵知識卡住還是想錯方向。 10/12 11:09
→ Lhmstu: 當然你看到別人演算法的程式要學會拆解別人的想法,一步 10/12 11:17
→ Lhmstu: 一步寫下來,而不是”哦!!好厲害天才”就過了這樣... 10/12 11:17
→ camry2009: 看完別人code 砍掉再自己重打一次這樣嗎? 10/12 11:38
推 mouse21: 其實也可以整個程式都抄下來一次,看著別人的程式自己也 10/12 11:50
→ mouse21: 打一次,大概打完一本書的量就好了 10/12 11:50
推 tbpfs: 資料結構這種東西一通百通,狂k書反而不見得有用,不如看一 10/12 11:53
→ camry2009: 謝謝mouse tb大 10/12 11:56
推 thethirdfoot: 我比較喜歡找高手repo去研究 10/12 12:03
→ regulator: 不懂你為什麼覺得不能問人。 10/12 12:06
→ camry2009: 因為一直問怕打擾到別人...寫程式一直問怕被當成沒在想 10/12 12:09
推 itoni: 如果只是怕別人觀感的話 學著自己找資料吧 google關鍵字怎 10/12 12:22
→ itoni: 麼下也是需要學的 10/12 12:22
推 GoalBased: 選資工可能八成都想做遊戲 畢業後做遊戲的大概只有5%吧 10/12 12:38
推 cplusplus426: 大部分的人也是先知道解答 才會解題和數學ㄧ樣 10/12 12:45
推 cplusplus426: 不是神人沒關係 至少要看得懂別人的解法 10/12 12:46
推 jerry840622: 你的心態要換一下,每個人資質不一樣,把前面的人當 10/12 14:38
→ jerry840622: 成目標,持續學習,一步一步跟上就好了 10/12 14:38
推 zuchang: 是資結不懂還是語言不熟 二個的努力方向不同 10/12 14:41
→ camry2009: 資結聽得懂 是轉換成語言都讓我想很久 10/12 14:53
推 newbout: 寫一些簡單的小應用提升自信,刷題我覺得倒是其次 10/12 15:45
→ newbout: 如果想要精進自己一些演算法/資結的是否內化再去寫也不遲 10/12 15:46
推 Vick753: 不懂為啥有人建議刷LC,先把課業搞定 不要害怕問人 10/12 17:33
→ Vick753: 課餘時間就自己寫看看小遊戲 這樣是最符合你自己的需求 10/12 17:33
→ Vick753: 不是嗎 10/12 17:33
→ camry2009: 所以刷不好嗎0.0 是因為實力不夠 刷題效果不好嗎哈哈 10/12 17:51
推 energyy1104: 你現在什麼都不懂 去刷題就像沒讀書直接去考指考一 10/12 18:05
→ energyy1104: 樣吧 10/12 18:05
推 aegisty: 轉生科 10/12 19:54
推 gamania0258: Primer推薦買 然後買中文 我現在本科在學生 時間很寶 10/12 20:24
→ gamania0258: 貴 然後推薦你一個YouTuber叫做小花解題 他有自己的 10/12 20:24
→ gamania0258: 網站 去上面看他的推薦題 分門別類都分好了 tree bfs 10/12 20:24
→ gamania0258: dfs graph dp 開始嘗試題目 他上面有跟你講要怎 10/12 20:24
→ gamania0258: 麼解題 重要的是心態 你想想這些經典的算法都是前人 10/12 20:24
→ gamania0258: 智慧 一個剛學的學生很難想出來啦 我一開始都想破頭 10/12 20:24
→ gamania0258: 要自己想出來 現在看20分鐘 沒想法直接看解答 晚上再 10/12 20:24
→ gamania0258: 來解 到目前練了兩三百題了看到大部分題目心裡都有底 10/12 20:24
→ gamania0258: 要用什麼算法了 10/12 20:24
→ gamania0258: 題外話 中文primer翻的其實沒有很好 但是速度還是快 10/12 20:27
→ gamania0258: 很多 練英文都是有時間的人 我金色看一頁中文都可以 10/12 20:27
→ gamania0258: 看三頁了 重複一次 時間寶貴 10/12 20:27
→ camry2009: 謝謝gamania 的推薦 晚上搞好數位邏輯再來看看 感謝! 10/12 20:27
推 gamania0258: 然後我筆誤 是花花醬 解題. 小花是高普考的 笑死XD 10/12 20:30
→ camry2009: 好XDD 10/12 20:41
推 tttkkk: 你現在的情況千萬不要看 C++ Primer 只會讓你更挫折 10/12 20:50
→ tttkkk: 你現在需要的是大量的練習 把程式思維內化成自己的 10/12 20:50
→ tttkkk: 寫程式本來就不是一件靠直覺的事情 別人的努力你沒看到 10/12 20:51
→ camry2009: 我只是想把他工具書 不知道這樣ok嗎哈哈..沒書總感覺 10/12 21:01
→ camry2009: 有點不太安心 還是有其他本呢...... 10/12 21:01
推 taffy128s: 我覺得你現在太焦慮了 不用想這麼多 10/12 21:08
→ taffy128s: 既然你說現在寫一般學校作業都要十天 10/12 21:08
→ taffy128s: 那就先一步一腳印想通再往下就好 10/12 21:08
→ taffy128s: 買不買書倒不是重點 10/12 21:08
推 luke72: 看工具書學程式沒用啦 書上就只是一堆語法而已 10/12 21:22
→ luke72: 要回歸程式的本質:解決問題 程式只是解決問題的方法 10/12 21:23
→ luke72: 先有問題 先在紙上想想你自己該怎麼解出來 該怎麼做到 10/12 21:25
→ luke72: 一開始你的解法一定很跳躍性思考 再一步一步往細部拆解 10/12 21:26
→ luke72: 拆解到你認為程式能做到了 再去查書/google 找合適語法 10/12 21:28
推 luke72: 資料結構就是 這些問題 資料要怎麼擺放 最適合你的解法 10/12 21:31
→ luke72: 舉個例子就是 全班的成績 取前三名 10/12 21:31
→ camry2009: 好 那我就先看課內的 10/12 21:33
→ luke72: 最高分幾分?最低幾分?是誰?全班平均多少?你幾分? 10/12 21:35
→ luke72: 列出需求之後 你的資料結構怎麼設計是不是就變清楚了 10/12 21:36
→ luke72: 所以怎麼從全班的列表內找到你的分數? 這就是search 10/12 21:36
推 greenx: 刷leetcode真的有用,但一定要搭配實做 10/12 21:39
→ camry2009: 謝謝Luke大...我這次作業還有一題 我試著照你的方式試 10/12 21:46
→ camry2009: 試看 10/12 21:46
→ camry2009: green的實作是學校的嗎 10/12 21:46
推 boy504052005: 同學交個朋友! 10/12 21:47
推 psychic: 除了演算法吃天分外,說真的其他幾乎都是碼農...多練習吧 10/12 21:50
→ camry2009: 所以大學的範疇都可以靠努力過去對嗎 10/12 22:08
推 alihue: 資工大學的東西沒什麼是努力都弄不會的,大多是老理論了 10/12 22:13
→ alihue: ,怕的是偷懶 10/12 22:13
推 freshlemon: 個人淺見:資料結構、演算法其實跟會不會寫程式是兩回 10/12 22:43
→ freshlemon: 事,對你剛進社會寫程式能力沒有太大幫助。現在要做的 10/12 22:43
→ freshlemon: 1.讀通所以程式語言基本概念,如果有概念不通或者有疑 10/12 22:43
→ freshlemon: 慮的,動手試試看2.學習使用程式語言操作資料庫3.學習 10/12 22:43
→ freshlemon: 並熟悉使用框架4.學好所有效能優化理論知識。基本上要 10/12 22:43
→ freshlemon: 找到第一份相關且有基礎成長性工作其實不難。資料結構 10/12 22:43
→ freshlemon: 是你工作之餘加強自己邏輯能力,加上衝刺英文未來跳槽 10/12 22:43
→ freshlemon: 用的手段。 10/12 22:43
推 tonytonyjan: 多看書、多實作、少參加社群、少錄實況或podcast 10/12 23:09
→ opencat: 多練習 厚臉皮多問 總有一天會開竅 10/12 23:16
推 strlen: 少錄實況和podcast是哪門子的建議?想害人也不是這樣 10/12 23:32
推 Ducatee: 我倒覺得看c++ reference也可以, 簡單明瞭 10/13 00:21
推 jerry771210: 多實作有挑戰性的題目,學習自己找方法解決。別無他 10/13 01:44
→ jerry771210: 法 10/13 01:44
推 goldflower: 不現在推刷題是因為學校有價值的地方不在這裡啊 10/13 11:01
→ goldflower: 對遊戲有興趣你直接去蹭台大遊戲設計研究社跟怪物交流 10/13 11:01
→ goldflower: 我覺得有用多了吧 消磨興趣不是好事R 10/13 11:02
推 c0758: 想當初我也以為資工系出來寫遊戲 10/13 12:56
→ c0758: 直到我膝蓋中了一箭 10/13 12:56
推 as134679258: 只要進賴老師或戴老師的實驗室 進去不會也得會 10/13 15:49
推 GoGoJoe: 好弱的轉系生,轉的不是要反殺原系生才對嗎? 10/13 23:31
→ GoGoJoe: 上課認真聽,作業每次都自己做,應付考試就差不多了。 10/13 23:32
推 zoo868e: 看MIT6.006 個人是覺得蠻有幫助的 10/14 00:50
推 NAMESTANLY: 肯學 持續花時間下去 一開始比較痛苦 最終會成功的 10/14 10:08
→ cphe: 要學資料結構就該看資料結構的書才對吧 習題做一做就差不 10/14 19:16
→ cphe: 多會了 10/14 19:16
推 cphe: 英文沒有特別好不用執著一定要看英文書,何況是入門書中文 10/14 19:18
→ cphe: 太多選擇,母語再怎麼樣都讀比英文快,除非你找的是品質不好 10/14 19:18
→ cphe: 的翻譯書 10/14 19:18
→ camry2009: 謝謝cp大的指點 禮拜五再來去買書 10/14 22:37
推 g9911761: 光有勇氣跳就贏一半了 加油 以後你會謝謝自己 10/15 18:50
→ camry2009: 謝謝g大的鼓勵 10/15 21:54
推 okd: 如果認真要走資工領域 建議盡量早訓練自己看原文書 10/15 23:10
→ okd: 就資料結構 是概念不懂 還是實作卡關 請去了解自己欠缺的 10/15 23:23
→ okd: 至於離夢想比較近的好方法是去補習 洗個台大交大碩士 10/15 23:33
推 ILYY: 哪來的想法會覺得問人是錯誤的?? 10/16 02:42
→ ILYY: 只要有自己想過覺得自己短期內解不了 就可以問人了 10/16 02:45
→ ILYY: 有些問題就是在沒有那個基礎下想破頭都想不到解法的 10/16 02:47
推 ILYY: 資料結構演算法很多題目是長年累積或研究很久才出來答案的 10/16 02:51
→ ILYY: 學習是多問人多認識人一起討論才會更有效率 10/16 02:52
推 ILYY: 重點是要了解別人學習的資源和方式是甚麼 10/16 02:55
→ ILYY: 像是甚麼課程是看MIT或交大線上課程 哪本書或網站寫的不錯 10/16 02:57
推 ILYY: 原文書看久就會快了 用字大概都那些 10/16 03:01
→ ILYY: 未來無論是看論文或說明文件或找stackoverflow都會用到 10/16 03:03
→ ILYY: 在台灣遊戲開發的環境很...應該跟你想的不一樣 10/16 03:10
→ ILYY: 如果想自己開發可以先從unity開始玩看看 做些簡單的遊戲試試 10/16 03:11
→ ILYY: 先去問一小時解的同學他解題的思路 你才知道你卡在哪 10/16 03:18
→ camry2009: 謝謝ILYY大 因為我之前問別人有問到讓人不耐煩...所以 10/16 11:25
→ camry2009: 我後來就比較害怕問問題.. 10/16 11:25
→ ken83715: 怕問人的話不如從現在開始大量用google 反正之後工作寫 10/16 12:34
→ ken83715: 程式基本上不會的大家也都是google 先練用google找答案 10/16 12:34
→ ken83715: 的能力 10/16 12:34
推 ILYY: 同樓上 練習google找答案的效率 10/16 18:46
→ ILYY: 另外就多認識點會互相討論的朋友 10/16 18:49
→ ILYY: 問的時候跟他說想破頭想不出來 也google過還是有點不懂 10/16 18:50
→ ILYY: 讓對方知道你不是沒做過功課 這樣就比較不會不耐煩 10/16 18:51
→ ILYY: 其實也可以問教授 教授跟圖書館是學校很好的資源 好好利用吧 10/16 18:58
→ camry2009: 教授說要自己谷歌哈哈 他說資工就是要學會自己找到答 10/16 22:39
→ camry2009: 案的能力 10/16 22:39
→ camry2009: 不過還是謝謝你們 10/16 22:39