在學習寫程式的過程中,大家是否遇過一個狀況是:前期基礎都能快速理解,但到了某個階段突然驟變,難度大幅提升,接著就是一連串的挫折與懷疑自己是否不適合寫程式......
比如我在剛開始學基礎語法時,學到if、迴圈、陣列等內容都能當下理解,雖然還不熟但至少看得懂在幹嘛。但進入第二階段C#進階語法課程後,就逐漸冒出很多疑惑和困難,例如上課講解到以下Code,我是整個傻掉完全聽不懂老師在說啥的...
public class FileInfoAccess
{
public static void ReadFile()
{
string filepath = Path.Combine(@"C:\Users\User\Documents", "Demo.txt");
FileInfo myfile = new FileInfo(filepath);
using (StreamReader sr= myfile.OpenText())
{
var str = string.Empty;
while ((str=sr.ReadLine())!=null)
{
Console.WriteLine(str);
}
}
}
}
回頭來看這不是很難的內容,但爾後的每堂課我總是沒辦法當下聽懂,腦袋都是在被轟炸的感覺,只能跟著先把Code照打字一遍,回家再自行想想來龍去脈和search網路資源解釋。進入ASP.NET MVC的課程後更是充滿如此感受,真的令人很想半途而廢了......
後來我看到了下面這篇文章與曲線圖,才了解這是必經的足跡。
為何學習寫程式他X的難
簡單來說,寫程式剛開始有蜜月期,基礎不難網路教學資源也多,很容易能學起來,這時候會有種成就感「原來寫程式也沒很難嘛」。但隨著更深入的學習,面臨更多不懂的知識與理解困難,自信心開始逐漸下降而痛苦增加,好像困進了一個「絕望沙漠」裡面走不出來。但當突破了這段過程,逐漸發現自己融會貫通了,信心也增強了,接著就直到面試通過後正式成為一個可以上工的程式開發人員。
完整文章值得一讀,但這段歷程不是一周、一個月或一階段的課程就可以走完,需要時間與練習累積,在還沒看到沙漠的盡頭前抱持信念走下去,最終將會得到它的!不過通常轉職者如我面臨的壓力卻也是時間,該如何高效學習快速成功轉職,下篇繼續分享~