數(shù)據(jù)庫系統(tǒng)基礎(chǔ)知識學的是什么 程序員需要學什么科目?
程序員需要學什么科目?1.語言如果我們想成為一名程序員,我們會學習很多雜七雜八的東西,但我們必須從語言開始學習,而學習語言最重要的是選擇一本好書,即使學校的課本忘記了,也根本寫不好。我在此鄭重推薦《C
程序員需要學什么科目?
1.語言
如果我們想成為一名程序員,我們會學習很多雜七雜八的東西,但我們必須從語言開始學習,而學習語言最重要的是選擇一本好書,即使學校的課本忘記了,也根本寫不好。我在此鄭重推薦《C Primer》。這本書很厚,內(nèi)容豐富,對知識的講解也不僅僅是表面的。如果能耐心看完這本書,語言上基本不會有大問題,也能為以后的學習打下良好的基礎(chǔ)。
C里面有很多GUI庫,比如MFC,WTL,wxWidgets,QT。每個GUI庫都有自己的特點。其實我們只需要先了解其中一個。只要我們對一個GUI庫有深入的了解,必要的時候?qū)W習其他的就夠了?;径际且粯拥模芸炀湍苌鲜?。MFC設(shè)計雖然問題很多,但作為入門還是不錯的,學習資料也多,遇到問題很容易解決。
3.數(shù)據(jù)結(jié)構(gòu)和算法
很多人忽略了數(shù)據(jù)結(jié)構(gòu)和算法的知識,尤其是一些編程語言庫很好,幾乎不需要自己實現(xiàn)一些數(shù)據(jù)結(jié)構(gòu)和算法,導致現(xiàn)在很多程序員不重視甚至忽略這些知識。然而,當我們希望我們的程序運行得更快,占用更少的內(nèi)存時,這些知識是非常重要的。許多程序員不這樣做。;起初他們不會注意這些,但工作幾年后他們會回來補習這些知識。
一開始可能不需要學習太深,但是一定要知道基本的數(shù)據(jù)結(jié)構(gòu)和算法。
推薦《數(shù)據(jù)結(jié)構(gòu)(C語言版)》。在數(shù)據(jù)結(jié)構(gòu)和算法的學習中,最好使用C語言,而不是關(guān)注面向?qū)ο蟮募记?,這樣可以更關(guān)注算法本身的內(nèi)容。
4.數(shù)據(jù)庫?資料庫
學習數(shù)據(jù)庫的基礎(chǔ)知識,掌握一種數(shù)據(jù)庫的使用方法。建議用mysql,而且最好不要用一些封裝的接口,直接用mysql提供的數(shù)據(jù)庫api,可能會讓你對數(shù)據(jù)庫有更多的了解。
5.平行的
cpu的主頻不能再跟隨摩爾 s定律,而且現(xiàn)在cpu的發(fā)展趨勢是多核。無論是多線程還是多進程,都是為了更好的利用cpu的性能,提供更好的用戶體驗。這就要求我們要想寫出高效的應(yīng)用,就必須涉及到并行計算。多花點精力在并行計算上,一定會有回報的。
6.網(wǎng)絡(luò)編程
這里所說的網(wǎng)絡(luò)編程是指socket編程?,F(xiàn)在很多C的應(yīng)用都在做服務(wù)器開發(fā),那么如何開發(fā)一個高并發(fā)、高吞吐量、高穩(wěn)定性的服務(wù)器是我們要考慮的。
7.設(shè)計模式
設(shè)計模式不是一種特定的技術(shù),更多的是關(guān)于如何讓代碼更容易閱讀、擴展和使用。
8.圖書館的使用
c標準庫只提供一些非常基本的功能,所以我們經(jīng)常會引入一些第三方庫。最著名的可能就是被稱為準標準庫的boost庫了,它提供了我們編程中用到的各種技術(shù),比如文本處理、算法、網(wǎng)絡(luò)、多線程、圖像處理等等,幾乎包羅萬象。還有一些其他的庫是專門做某一方面的,比如網(wǎng)絡(luò)通訊的AC《windows核心編程》,linux上《深入理解linux內(nèi)核》的人應(yīng)該知道你應(yīng)該學什么。
大學計算機專業(yè)里的《數(shù)據(jù)庫》課程主要有什么內(nèi)容?
本課程主要介紹數(shù)據(jù)結(jié)構(gòu)的原理,包括:
1.簡介;
2.三種主要的數(shù)據(jù)模型;
3.關(guān)系數(shù)據(jù)庫、關(guān)系系統(tǒng)及其查詢優(yōu)化的標準語言;
4.關(guān)系數(shù)據(jù)理論;
5.數(shù)據(jù)庫設(shè)計;
6.數(shù)據(jù)庫維護;
7.數(shù)據(jù)庫管理系統(tǒng);
8.分布式數(shù)據(jù)庫系統(tǒng);
9.計算機網(wǎng)絡(luò)安全等。