PTT推薦

[請益] 如何增進自己程式的實力?

看板Soft_Job標題[請益] 如何增進自己程式的實力?作者
camry2009
(camry)
時間推噓63 推:64 噓:1 →:165

我是台科的資工系 (原本是高中生)
大一剛從機械轉過來,在一下有修過C#
目前直接銜接資工大二的課程
現在學的東西的確讓我比較有興趣,但一方面也覺得有點挫折
現在學到的資料結構 ,數位邏輯等課程的功課都花費我大量的時間...
我暑假因為怕跟不上大家,有先去台大暑假開設的C語言設計課程,希望至少不要差的這麼多
但我資料結構想了10天...別人一個小時就輕鬆解決..還是讓我有點對自己失望,
甚至會有點害怕打code...
大一的課程---C語言程式設計目前都還可以,但資結有點讓我失去信心的感覺
我想讓自己趕快跟上大家...想要趕快進步
有先去爬過tinlans大大的文章了...要先搞清楚自己要幹嘛,我原本想說想成為寫遊戲的工程師,但感覺離夢好像越來越遠了,也不確定會不會繼續這個想法
這樣會有礙我的進步嗎?
然後我想問一下,程式不會的話是不是不要問人比較好?
我想很久之後,越靠近繳交期限,就會很想把作業交出去...就會去請教別人,這樣是不是錯誤的學習方式?

還有一點是我現在身邊的用書是:absolutely c++,是原文的
最近在想要不要買C++ primer 因為好像大家都推這一本
然後我朋友跟我說買中文就好了...看比較快,學程式知道他講甚麼就好了。可是我看ptt大家好像還是推原文,因為意思比較不會跑掉? 請問該怎麼選擇?

然後我該怎麼增進自己實力比較好? 一直刷題嗎?如果要,題目該刷哪一種的?
有點迷惘的感覺...希望前輩們可以給我一點方向 感謝!



--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.118.135.139 (臺灣)
PTT 網址

james73210/12 01:11看書,多練習,要實作

leo0821091710/12 01:27怕甚麼 沒有人從一開始就全都會的

taffy128s10/12 01:28就業方向先有個大概就好

taffy128s10/12 01:28多練習 先靠自己研究 真的不會再問別人

taffy128s10/12 01:28c++ primer 我大學時候有買 但是沒看過幾次

taffy128s10/12 01:28通常用到什麼概念上網查一查就好

taffy128s10/12 01:28刷題可以用uva online judge, code force等

taffy128s10/12 01:28或者是leetcode 依你來說可能先寫一些easy

taffy128s10/12 01:28建立一下信心 然後不要心急心慌 慢慢來才大二

xxtuoo10/12 01:30浪費時間擔心 還不如多練兩題Zzz

camry200910/12 01:38謝謝taffy大...明天就開始 另外請問primer是中文嗎

yoche200010/12 01:46貴校資工用C++上嗎 那先從c++基本程設開始吧

yoche200010/12 01:47喔看到了 有C#

taffy128s10/12 01:48computer science的東西建議還是看原文比較好

taffy128s10/12 01:48因為之後看paper或公司文件都會是英文

taffy128s10/12 01:48如果英文不好還是趁早練習 至少閱讀要ok

sherees10/12 01:53中文書滿常有奇怪的翻譯問題 可以挑大家推薦的中文書 比

sherees10/12 01:53較不會那麼嚴重

mercurycgt6810/12 01:54leetcode 先刷200題 不要多不要少 刷完會看到新世界

sherees10/12 01:54但新技術終究得看英文的document

camry200910/12 01:54回yoche大 資工本系是一上c一下c++ 我是轉過去的

CaptPlanet10/12 01:55刷起來!

sherees10/12 01:56真的想不出來就看討論或問人吧 有思考過看多問久就會比

sherees10/12 01:56較有sense 了

camry200910/12 01:57我自己覺得英文還算ok 但就中文看比較快...

camry200910/12 01:57leetcode一題大概要給自己多久時間呢?有點不會拿捏問

camry200910/12 01:57別人之前大概要想多久..

mercurycgt6810/12 01:58刷題法請以「兔系」優先 (對比龜系,自行 google)

mercurycgt6810/12 01:58每種題型都要做到 重點是二元樹 遞迴 回溯還有資料

mercurycgt6810/12 01:58結構題 DP做五題內就好

mercurycgt6810/12 01:59lc剛開始時間多久不是重點 抄答案都沒關係但要完整

mercurycgt6810/12 01:59看懂 最終任何 medium 題難度限定20分

CaptPlanet10/12 02:01基本科目用心讀作業好好寫 找出自己喜歡的領域挑個語

CaptPlanet10/12 02:01言去練習 語法熟悉後做點簡單的小 project 這都是需要

CaptPlanet10/12 02:01時間的 一步步來 會漸漸看到效果 還有 英文跟刷題還是

CaptPlanet10/12 02:01非常重要的要持之以恆

DarkIllusion10/12 02:03其實你可以中英文都買

dmeiki10/12 02:04C++ primer可以買,當作工具書不錯。

CaptPlanet10/12 02:04刷題真的想不出來可以看 discussion 了解別人是如何

CaptPlanet10/12 02:04思考 但一定要標記起來過一段時間再自己解一次

DarkIllusion10/12 02:06在116時不少同學為了增加讀書效率兩種語言都會買

mouse2110/12 02:34為什麼會因為資結害怕寫程式....如果沒辦法理解的東西就

mouse2110/12 02:34嘗試土法煉鋼,題目的要求先不管,用你目前會的東西寫出

mouse2110/12 02:34來,在想辦法填回去合理化答案。

mouse2110/12 02:34這個辦法很萬用,出社會還能一直用。

mouse2110/12 02:35然後寫出來在回頭看看資結是什麼,怎麼把你的答案合理成

mouse2110/12 02:35資結就好了,這也是資結的起源

mouse2110/12 02:39別人寫的快是因為他們曾經用過土方法,想過質疑過為什麼

mouse2110/12 02:39,所以一碰到資結就像發現答案,就好比有些人能夠一秒理

mouse2110/12 02:39解陣列指標,有些人卻要花時間理解,其實多半只是因為快

mouse2110/12 02:39速理解的人有類似的學習經驗,所以不用氣餒,多看多學就

mouse2110/12 02:39多懂了,往後很多都是觸類旁通的東西

enthos10/12 03:40多閱讀,看不懂是教材不適合,換一套教材。

flyawayla10/12 04:27寫code就像學書法, 一開始都是多看多臨摹

flyawayla10/12 04:29等你練的量夠多, 才有可能融會貫通有自己的風格

alihue10/12 07:01想十天正常啊,我以前找分號找了八小時。此外學生時代不

alihue10/12 07:01要跟最強的比,強的太強了。但絕大多數時候比的是誰最用

alihue10/12 07:01

alihue10/12 07:03剛學程式,作業自己寫的話,連印星星寫個十幾小時都正常

jobintan10/12 07:17看自己未來想往哪方向走,firmware與硬體有關,C與C++學

jobintan10/12 07:18好學滿,web或app學c#之外,還要再學java、js、python。

jobintan10/12 07:18語法基礎建立起來先,之後再去玩framework。

camry200910/12 07:31感謝大家的回覆 我就先跟學校進度 如果有課餘時間 我在

camry200910/12 07:31去LC刷題 這樣ok嗎

longlyeagle10/12 08:15想做遊戲直接 unity godot 打開開始寫就好了

longlyeagle10/12 08:15想那麼多做啥?

dream112410/12 08:16推 mouse21 alihue flyawayla 的回覆,很溫暖。

dream112410/12 08:17@longlyeagle 我想他只是覺得現實與業界現況落差太大吧

dream112410/12 08:18現實做遊戲不可能完全不用引擎從零開始刻

dream112410/12 08:19他只是覺得連資結都卡一陣是否意謂自己並不行

rain4510/12 08:39我覺得應該還不用到某些刷題網站刷 先把不懂的科目的題目

rain4510/12 08:39寫完吧 不懂就問甚至看別人的也很正常 學習一開始都這樣

ken8371510/12 09:05我資工 老實說剛開始學寫程式的時候沒翻幾次書 上課聽

ken8371510/12 09:05懂比較重要 買中文英文都可 至於寫code不會當然要去問人

ken8371510/12 09:05啊 剛開始都是去問人 看答案 重點是要能看懂怎麼寫 之

ken8371510/12 09:05後就可以自己寫了

ken8371510/12 09:07去網站刷題我覺得還太早 可以先把資結的幾個經典東西寫

ken8371510/12 09:07出來 課程的內容寫成code就夠你想破頭了

Csongs10/12 09:08資結 演算法 我建議做電子筆記,方便之後複習

springfeel10/12 09:17如果博弈也算遊戲業的話 你不用擔心找不到工作的

x246libra10/12 09:26有前途,棄機械,轉電子

BlacksPig10/12 09:36推原文是因為最新版都只有原文,但是你還在練基礎,看

BlacksPig10/12 09:36中文就好,有多餘時間再用英文看一遍。就算你現在看最

BlacksPig10/12 09:36新最潮的寫法,等你畢業後這寫法就可能已經落伍了

mizhao10/12 09:39要多去 GitHub 讀別人寫的 code,比較別人寫法優劣。

mizhao10/12 09:39新手大多都是寫 dirty code,自己練寫久了還是 dirty.

mizhao10/12 09:41等比較有空一點就去讀 clean code, 才不會被自己卡關

x246libra10/12 09:59在學校學的都是基礎,不會變動的重要觀念,真的很在意

x246libra10/12 09:59學習速度,買中文我覺得可以接受,但要知道相對應的英

x246libra10/12 09:59

alihue10/12 10:11可以先看中文對於學習有效率。英文可以先試著 google 解

alihue10/12 10:11答時,一率用英文查看

camry200910/12 10:20好的 謝謝你們的建議

Lhmstu10/12 11:09其實問完人之後,要理解的是自己缺少什麼點導致沒辦法完

Lhmstu10/12 11:09成。把思考流程實體化寫下來或是畫下來都會幫助你未來解

Lhmstu10/12 11:09決演算法問題。看了別人的想法後再來比對自己是中間缺少

Lhmstu10/12 11:09關鍵知識卡住還是想錯方向。

Lhmstu10/12 11:17當然你看到別人演算法的程式要學會拆解別人的想法,一步

Lhmstu10/12 11:17一步寫下來,而不是”哦!!好厲害天才”就過了這樣...

camry200910/12 11:38看完別人code 砍掉再自己重打一次這樣嗎?

mouse2110/12 11:50其實也可以整個程式都抄下來一次,看著別人的程式自己也

mouse2110/12 11:50打一次,大概打完一本書的量就好了

tbpfs10/12 11:53資料結構這種東西一通百通,狂k書反而不見得有用,不如看一

tbpfs10/12 11:53些簡單的教學http://l.ovoy.click/dataStructure

camry200910/12 11:56謝謝mouse tb大

thethirdfoot10/12 12:03我比較喜歡找高手repo去研究

regulator10/12 12:06不懂你為什麼覺得不能問人。

camry200910/12 12:09因為一直問怕打擾到別人...寫程式一直問怕被當成沒在想

itoni10/12 12:22如果只是怕別人觀感的話 學著自己找資料吧 google關鍵字怎

itoni10/12 12:22麼下也是需要學的

GoalBased10/12 12:38選資工可能八成都想做遊戲 畢業後做遊戲的大概只有5%吧

cplusplus42610/12 12:45大部分的人也是先知道解答 才會解題和數學ㄧ樣

cplusplus42610/12 12:46不是神人沒關係 至少要看得懂別人的解法

jerry84062210/12 14:38你的心態要換一下,每個人資質不一樣,把前面的人當

jerry84062210/12 14:38成目標,持續學習,一步一步跟上就好了

zuchang10/12 14:41是資結不懂還是語言不熟 二個的努力方向不同

camry200910/12 14:53資結聽得懂 是轉換成語言都讓我想很久

newbout10/12 15:45寫一些簡單的小應用提升自信,刷題我覺得倒是其次

newbout10/12 15:46如果想要精進自己一些演算法/資結的是否內化再去寫也不遲

Vick75310/12 17:33不懂為啥有人建議刷LC,先把課業搞定 不要害怕問人

Vick75310/12 17:33課餘時間就自己寫看看小遊戲 這樣是最符合你自己的需求

Vick75310/12 17:33不是嗎

camry200910/12 17:51所以刷不好嗎0.0 是因為實力不夠 刷題效果不好嗎哈哈

energyy110410/12 18:05你現在什麼都不懂 去刷題就像沒讀書直接去考指考一

energyy110410/12 18:05樣吧

aegisty10/12 19:54轉生科

gamania025810/12 20:24Primer推薦買 然後買中文 我現在本科在學生 時間很寶

gamania025810/12 20:24貴 然後推薦你一個YouTuber叫做小花解題 他有自己的

gamania025810/12 20:24網站 去上面看他的推薦題 分門別類都分好了 tree bfs

gamania025810/12 20:24 dfs graph dp 開始嘗試題目 他上面有跟你講要怎

gamania025810/12 20:24麼解題 重要的是心態 你想想這些經典的算法都是前人

gamania025810/12 20:24智慧 一個剛學的學生很難想出來啦 我一開始都想破頭

gamania025810/12 20:24要自己想出來 現在看20分鐘 沒想法直接看解答 晚上再

gamania025810/12 20:24來解 到目前練了兩三百題了看到大部分題目心裡都有底

gamania025810/12 20:24要用什麼算法了

gamania025810/12 20:27題外話 中文primer翻的其實沒有很好 但是速度還是快

gamania025810/12 20:27很多 練英文都是有時間的人 我金色看一頁中文都可以

gamania025810/12 20:27看三頁了 重複一次 時間寶貴

camry200910/12 20:27謝謝gamania 的推薦 晚上搞好數位邏輯再來看看 感謝!

gamania025810/12 20:30然後我筆誤 是花花醬 解題. 小花是高普考的 笑死XD

camry200910/12 20:41好XDD

tttkkk10/12 20:50你現在的情況千萬不要看 C++ Primer 只會讓你更挫折

tttkkk10/12 20:50你現在需要的是大量的練習 把程式思維內化成自己的

tttkkk10/12 20:51寫程式本來就不是一件靠直覺的事情 別人的努力你沒看到

camry200910/12 21:01我只是想把他工具書 不知道這樣ok嗎哈哈..沒書總感覺

camry200910/12 21:01有點不太安心 還是有其他本呢......

taffy128s10/12 21:08我覺得你現在太焦慮了 不用想這麼多

taffy128s10/12 21:08既然你說現在寫一般學校作業都要十天

taffy128s10/12 21:08那就先一步一腳印想通再往下就好

taffy128s10/12 21:08買不買書倒不是重點

luke7210/12 21:22看工具書學程式沒用啦 書上就只是一堆語法而已

luke7210/12 21:23要回歸程式的本質:解決問題 程式只是解決問題的方法

luke7210/12 21:25先有問題 先在紙上想想你自己該怎麼解出來 該怎麼做到

luke7210/12 21:26一開始你的解法一定很跳躍性思考 再一步一步往細部拆解

luke7210/12 21:28拆解到你認為程式能做到了 再去查書/google 找合適語法

luke7210/12 21:31資料結構就是 這些問題 資料要怎麼擺放 最適合你的解法

luke7210/12 21:31舉個例子就是 全班的成績 取前三名

camry200910/12 21:33好 那我就先看課內的

luke7210/12 21:35最高分幾分?最低幾分?是誰?全班平均多少?你幾分?

luke7210/12 21:36列出需求之後 你的資料結構怎麼設計是不是就變清楚了

luke7210/12 21:36所以怎麼從全班的列表內找到你的分數? 這就是search

greenx10/12 21:39刷leetcode真的有用,但一定要搭配實做

camry200910/12 21:46謝謝Luke大...我這次作業還有一題 我試著照你的方式試

camry200910/12 21:46試看

camry200910/12 21:46green的實作是學校的嗎

boy50405200510/12 21:47同學交個朋友!

psychic10/12 21:50除了演算法吃天分外,說真的其他幾乎都是碼農...多練習吧

camry200910/12 22:08所以大學的範疇都可以靠努力過去對嗎

alihue10/12 22:13資工大學的東西沒什麼是努力都弄不會的,大多是老理論了

alihue10/12 22:13,怕的是偷懶

freshlemon10/12 22:43個人淺見:資料結構、演算法其實跟會不會寫程式是兩回

freshlemon10/12 22:43事,對你剛進社會寫程式能力沒有太大幫助。現在要做的

freshlemon10/12 22:431.讀通所以程式語言基本概念,如果有概念不通或者有疑

freshlemon10/12 22:43慮的,動手試試看2.學習使用程式語言操作資料庫3.學習

freshlemon10/12 22:43並熟悉使用框架4.學好所有效能優化理論知識。基本上要

freshlemon10/12 22:43找到第一份相關且有基礎成長性工作其實不難。資料結構

freshlemon10/12 22:43是你工作之餘加強自己邏輯能力,加上衝刺英文未來跳槽

freshlemon10/12 22:43用的手段。

tonytonyjan10/12 23:09多看書、多實作、少參加社群、少錄實況或podcast

opencat10/12 23:16多練習 厚臉皮多問 總有一天會開竅

strlen10/12 23:32少錄實況和podcast是哪門子的建議?想害人也不是這樣

Ducatee10/13 00:21我倒覺得看c++ reference也可以, 簡單明瞭

jerry77121010/13 01:44多實作有挑戰性的題目,學習自己找方法解決。別無他

jerry77121010/13 01:44

goldflower10/13 11:01不現在推刷題是因為學校有價值的地方不在這裡啊

goldflower10/13 11:01對遊戲有興趣你直接去蹭台大遊戲設計研究社跟怪物交流

goldflower10/13 11:02我覺得有用多了吧 消磨興趣不是好事R

c075810/13 12:56想當初我也以為資工系出來寫遊戲

c075810/13 12:56直到我膝蓋中了一箭

as13467925810/13 15:49只要進賴老師或戴老師的實驗室 進去不會也得會

GoGoJoe10/13 23:31好弱的轉系生,轉的不是要反殺原系生才對嗎?

GoGoJoe10/13 23:32上課認真聽,作業每次都自己做,應付考試就差不多了。

zoo868e10/14 00:50看MIT6.006 個人是覺得蠻有幫助的

NAMESTANLY10/14 10:08肯學 持續花時間下去 一開始比較痛苦 最終會成功的

cphe10/14 19:16要學資料結構就該看資料結構的書才對吧 習題做一做就差不

cphe10/14 19:16多會了

cphe10/14 19:18英文沒有特別好不用執著一定要看英文書,何況是入門書中文

cphe10/14 19:18太多選擇,母語再怎麼樣都讀比英文快,除非你找的是品質不好

cphe10/14 19:18的翻譯書

camry200910/14 22:37謝謝cp大的指點 禮拜五再來去買書

g991176110/15 18:50光有勇氣跳就贏一半了 加油 以後你會謝謝自己

camry200910/15 21:54謝謝g大的鼓勵

okd10/15 23:10如果認真要走資工領域 建議盡量早訓練自己看原文書

okd10/15 23:23就資料結構 是概念不懂 還是實作卡關 請去了解自己欠缺的

okd10/15 23:33至於離夢想比較近的好方法是去補習 洗個台大交大碩士

ILYY10/16 02:42哪來的想法會覺得問人是錯誤的??

ILYY10/16 02:45只要有自己想過覺得自己短期內解不了 就可以問人了

ILYY10/16 02:47有些問題就是在沒有那個基礎下想破頭都想不到解法的

ILYY10/16 02:51資料結構演算法很多題目是長年累積或研究很久才出來答案的

ILYY10/16 02:52學習是多問人多認識人一起討論才會更有效率

ILYY10/16 02:55重點是要了解別人學習的資源和方式是甚麼

ILYY10/16 02:57像是甚麼課程是看MIT或交大線上課程 哪本書或網站寫的不錯

ILYY10/16 03:01原文書看久就會快了 用字大概都那些

ILYY10/16 03:03未來無論是看論文或說明文件或找stackoverflow都會用到

ILYY10/16 03:10在台灣遊戲開發的環境很...應該跟你想的不一樣

ILYY10/16 03:11如果想自己開發可以先從unity開始玩看看 做些簡單的遊戲試試

ILYY10/16 03:18先去問一小時解的同學他解題的思路 你才知道你卡在哪

camry200910/16 11:25謝謝ILYY大 因為我之前問別人有問到讓人不耐煩...所以

camry200910/16 11:25我後來就比較害怕問問題..

ken8371510/16 12:34怕問人的話不如從現在開始大量用google 反正之後工作寫

ken8371510/16 12:34程式基本上不會的大家也都是google 先練用google找答案

ken8371510/16 12:34的能力

ILYY10/16 18:46同樓上 練習google找答案的效率

ILYY10/16 18:49另外就多認識點會互相討論的朋友

ILYY10/16 18:50問的時候跟他說想破頭想不出來 也google過還是有點不懂

ILYY10/16 18:51讓對方知道你不是沒做過功課 這樣就比較不會不耐煩

ILYY10/16 18:58其實也可以問教授 教授跟圖書館是學校很好的資源 好好利用吧

camry200910/16 22:39教授說要自己谷歌哈哈 他說資工就是要學會自己找到答

camry200910/16 22:39案的能力

camry200910/16 22:39不過還是謝謝你們