1.軟體工程的學生需要學除了C語言基礎,C++基礎,java語言外,計算機作業系統、計算機網路、計算機組成原理、編譯原理、資料庫這幾門課也是一定要學的,我著重提一下是因為很多人覺得麻煩,不願意認真去學。但是學好的好處是非常大的,畢竟我們學習程式語言不能只是為了寫計算器這樣的小程式,更深入的學習和理解,都需要設計、硬體、原理的知識。
2.同時,不要忽略英語,英語不一定要多麼優秀,但是一定不能就拋棄它。要知道很多非常好的資料書籍都是用英文寫成的,即使是有翻譯版的,但是看原版的有時候會更加深刻的理解知識。而且,程式都是用英文寫的,相信寫過程式的人都瞭解,寫程式的過程中會碰到為很多變數、函式、物件等等命名,而命名需要的就是‘望名而知其意’,所以學好英語,能為你帶來很多便利,而且也是幫助你能更加容易的看懂別人的程式。
3.面向物件程式設計(OOP),並會透過具體的程式語言(建議Java和C#二選一)實現。如果要入門,推薦網易雲課堂北京大學唐大仕老師的《C#程式設計(上)》。
《C#程式設計(下)》這個課程比較基礎,需要進階的,可以學習北京理工大學 @金旭亮 老師的《面向物件軟體開發實踐之基本技能訓練》和《面向物件軟體開發實踐之專業技能訓練》。不過真的有難度。Java的話可以考慮浙江大學 @翁愷 老師的《程式設計入門—Java語言》與《Java語言程式設計進階》。當然,順帶掌握語言相對應的 IDE,如 Visual Studio 或者 MyEclipse。
4.基本的資料結構與演算法。可以看網易雲課堂上浙江大學 陳越 老師 和 何欽銘 老師的《資料結構》。也可以看 學堂線上 上清華大學鄧俊輝老師的《資料結構》。資料庫,至少掌握SQL以及一個主流的DBMS(MySQL,SQL Server,Oracle等)的使用,具體種類取決於你打算主要發展的技術路線,如你選擇C#,那麼可以考慮SQL Server。如果需要更進一步的提高,如如何設計較好的資料庫,可以學習王珊《資料庫系統概論(第5版)》中關於資料庫設計規範(主要是正規化)方面的章節。
1.軟體工程的學生需要學除了C語言基礎,C++基礎,java語言外,計算機作業系統、計算機網路、計算機組成原理、編譯原理、資料庫這幾門課也是一定要學的,我著重提一下是因為很多人覺得麻煩,不願意認真去學。但是學好的好處是非常大的,畢竟我們學習程式語言不能只是為了寫計算器這樣的小程式,更深入的學習和理解,都需要設計、硬體、原理的知識。
2.同時,不要忽略英語,英語不一定要多麼優秀,但是一定不能就拋棄它。要知道很多非常好的資料書籍都是用英文寫成的,即使是有翻譯版的,但是看原版的有時候會更加深刻的理解知識。而且,程式都是用英文寫的,相信寫過程式的人都瞭解,寫程式的過程中會碰到為很多變數、函式、物件等等命名,而命名需要的就是‘望名而知其意’,所以學好英語,能為你帶來很多便利,而且也是幫助你能更加容易的看懂別人的程式。
3.面向物件程式設計(OOP),並會透過具體的程式語言(建議Java和C#二選一)實現。如果要入門,推薦網易雲課堂北京大學唐大仕老師的《C#程式設計(上)》。
《C#程式設計(下)》這個課程比較基礎,需要進階的,可以學習北京理工大學 @金旭亮 老師的《面向物件軟體開發實踐之基本技能訓練》和《面向物件軟體開發實踐之專業技能訓練》。不過真的有難度。Java的話可以考慮浙江大學 @翁愷 老師的《程式設計入門—Java語言》與《Java語言程式設計進階》。當然,順帶掌握語言相對應的 IDE,如 Visual Studio 或者 MyEclipse。
4.基本的資料結構與演算法。可以看網易雲課堂上浙江大學 陳越 老師 和 何欽銘 老師的《資料結構》。也可以看 學堂線上 上清華大學鄧俊輝老師的《資料結構》。資料庫,至少掌握SQL以及一個主流的DBMS(MySQL,SQL Server,Oracle等)的使用,具體種類取決於你打算主要發展的技術路線,如你選擇C#,那麼可以考慮SQL Server。如果需要更進一步的提高,如如何設計較好的資料庫,可以學習王珊《資料庫系統概論(第5版)》中關於資料庫設計規範(主要是正規化)方面的章節。