❶ 談一下你對計算機網路技術專業的認識
計算機網路技術專業就業方向與就業前景分析
1、計算機網路技術專業簡介
計算機網路技術專業培養具備扎實的電子技術、計算機技術、網路技術等方面的基本理論知識與技能,具有計算機網路實際組建、管理、維護等基本能力,能在各企事業單位進行網路設計、安裝、調試和管理等工作的應用型技術人才。
2、計算機網路技術專業就業方向
本專業面向各企事業單位計算機網路應用技術崗位群,能進行計算機操作維護,計算機區域網的設計、安裝、調試;計算機網路通信產品的系統集成;廣域網的管理、維護;網路管理信息系統的設計、開發及應用、網站設計與開發等工作。可在軟體園、高新技術園區、各大電腦公司、網路公司、網站、高新技術企業、公司、企事業單位和信息部門中從事網路管理、網站維護、網頁設計與創意和電子商務等工作。
從事行業:
畢業後主要在計算機軟體、新能源、互聯網等行業工作,大致如下:
1 計算機軟體
2 新能源
3 互聯網/電子商務
4 計算機服務(系統、數據服務、維修)
5 通信/電信/網路設備
從事崗位:
畢業後主要從事網路工程師、運維工程師、技術支持工程師等工作,大致如下:
1 網路工程師
2 運維工程師
3 技術支持工程師
4 售前工程師
5 網路技術員
工作城市:
畢業後,上海、南京、北京等城市就業機會比較多,大致如下:
1 北京
2 上海
3 深圳
4 廣州
5 杭州
3、計算機網路技術專業就業前景
從目前的情況看,企業的IT技術管理崗位一般設置為企業信息主管、總監等; 工程技術崗位設置為網路工程師、 軟體工程師和資料庫工程師等;運行維護崗位設置為資料庫管理員、 系統管理員、 網路管理員、 設備管理員等; 操作崗位則設置為辦公文員、CAD設計員、網頁製作員、多媒體製作員等。 與軟體技術人員相比,網路技術人員的從業范圍更廣,知識體系更復雜,職業技能要求更高,目前網路工程師成為實施國內信息化的巨大瓶頸。
就網路工程師的學習方面來說,網路工程師學習過程中注重實踐,對於基礎相對薄弱的人來說較為容易學習,對自身將來就業也大有幫助. 網路產業作為21世紀的朝陽產業,有很大的市場需求。網路工程師是通過學習和訓練,掌握網路技術的理論知識和操作技能的網路技術人員。網路工程師能夠從事計算機信息系統的設計、建設、運行和維護工作。規模較小的企業,一個崗位可能涵蓋幾個崗位的內容
❷ 計算機網路技術專業的介紹
能不能具體介紹下計算機網路技術專業?
計算機網路技術專業:主要培養計算機網路安裝、測試、維護、管理和應用技術人員。掌握計算機電路、計算機操作與計算機網路組成的基礎知識;具有網路操作系統與應用程序安裝、設置的基本技能,具有網路硬體規劃、安裝施工、調試與維護的能力;掌握計算機多媒體技術的基礎知識,具有一定的網頁製作能力。
❸ 計算機專業的學生應具備怎樣的能力
計算機專業是計算機硬體與軟體相結合、面向系統、側重應用的寬口徑專業。通過基礎教學與專業訓練,培養基礎知識扎實、知識面寬、工程實踐能力強,具有開拓創新意識,在計算機科學與技術領域從事科學研究、教育、開發和應用的高級人才。本專業開設的主要課程有:電子技術、離散數學、程序設計、數據結構、操作系統、計算機組成原理、微機系統、計算機系統結構、編譯原理、計算機網路、資料庫系統、軟體工程、人工智慧、計算機圖形學、數字圖像處理、計算機通訊原理、多媒體信息處理技術、數字信號處理、計算機控制、網路計算、演算法設計與分析、信息安全、應用密碼學基礎、信息對抗、移動計算、數論與有限域基礎、人機界面設計、面向對象程序設計等。
本專業畢業生應獲得以下幾個方面的知識和能力:
1.掌握電子技術和計算機組成與體系結構的基本原理、分析方法和實驗技能,能從事計算機硬體系統開發與設計。
2.掌握程序設計語言、演算法與數據結構、操作系統以及軟體設計方法和工程的基本理論、基本知識與基本技能,具有較強的程序設計能力,能從事系統軟體和大型應用軟體的開發與研製。
3.掌握並行處理、分布式系統、網路與通信、多媒體信息處理、計算機安全、圖形圖象處理以及計算機輔助設計等方面的基本理論、分析方法和工程實踐技能,具有計算機應用和開發的能力。
4.掌握計算機科學的基本理論,具有從事計算機科學研究的堅實基礎。
計算機應用基礎、應用文寫作、數學、英語、德育、電工與電子技術、計算機網路技術、C語言、計算機組裝與維修、企業網安全高級技術、企業網綜合管理、windows server 2008操作系統、區域網組建、Linux伺服器操作系統、網路設備與網路技術(主要學習思科、華為公司設備的配置、管理、調試)、SQL Server、網路綜合布線技術、CAD繪圖等。
就業方向:
市區及周邊地區的黨政機關、企事業、社會團體從事網站美工、網頁設計、企業網路維護、電腦銷售及從事相關專業等崗位。
電子商務(職業資格證書:電子商務員、助理電子商務師)
主要課程:
電子商務設備與工具安全操作與維護、電子商務流程、電子商務網站設計與製作、網路營銷實務、電子商務數據安全實務、條碼編制實務等。
就業方向:
擔任電子商務等專業公司項目策劃與管理、技術管理;從事電子商務網站管理和維護、安全防範;機關、企事業的相關單位。
❹ 計算機網路技術專業特點
網路技術專業的特點是計算機網路技術他應用的計算機技術加上網路技術至兩個技術相結合。
❺ 計算機網路有什麼特點最大的特點是什麼
資源共享和信息傳輸;
數據通信、資源共享、分布處理;
信息 [information]∶有目的地標記在通訊系統或計算機的輸入上面的信號……(如電話號碼的一個數字)
信息技術(InformationTechnology簡稱IT)特指與計算機、網路和通信相關的技術。信息技術教育不是單純技術教育,也不是以信息技術研究和開發為目標的教育信息技術教育的內函由信息技術課程和信息技術與其他學科的整合兩大部分組成。信息技術教育是素質教育的重要組成部分。要培養學生的創新精神和實踐能力,促進人的發展。;
❻ 女生學計算機網路技術專業可以嗎
男女各有自己的優勢,不用在乎別人的看法。
男生專業課強點,女生應該是創新思維強一點。
市場分析
①畢業生主要從事崗位
在調查中,計算機網路技術專業畢業生就業在硬體維護崗位的約占
18%,網路建設及管理約佔31%,技術服務18%,軟體編程約佔12%,從事網頁製作佔9%行政管理佔9%。有3%做普通技術工人。
②急需人才
目前企業急需的人才主要是(按先後順序):軟體編程,網路建設及管理管理,技術服務,硬體維護和產品開發。調研的這個結果對於我們以後開展教研教學,培養學生專業知識與指導學生就業都有了明確的導向。
折疊編輯本段人才需求
隨著我國互聯網行業的全面發展以及網路應用在更高層次上的大規模展開,我國的網路人才需求也在全新的層面上逐步呈現了出來。我國網路人才缺口主要在以下幾個方面:
1、政府機關上網工程的實施,造就了對網路人才的巨大需求。
2、現代社會處於全球信息化時代,企業上網需求量猛增。企業網路工程的建設、網路設備的配置、網路安全維護等方面都增加了對網路方面的相關人才的需求。
3、現有的媒體網站、商業網站和專業性質的網站對專業人才的渴求迫不及待,網站今後的長遠發展需要更加專業的人才來開拓。
❼ 談談對計算機網路技術的理解,以及就業方向至少4種(急用)
培養目標:計算機網路技術(網路安全方向)是我校與美國VCampus公司合作建立的CIW(Certified Internet Webmaster)網路安全專業,主要面向我國各類企事業單位、IT行業和其它需要進行信息保護的公司培養專業的網路安全技術人才及高級管理人才,保證企業計算機網路信息系統穩定高效的運行。通過本專業的學習使學生掌握必需的科學文化知識,培養具有良好的職業素養、計算機網路管理的理論和實踐知識、計算機信息管理和數據恢復、伺服器配置和保護、網站和資料庫維護、計算機網路安全的設計與實施,防範和監控等能力的應用型高技能型人才。主要課程:計算機語言C、數據結構、計算機網路基礎、交換與路由技術、資料庫概論、計算機語言Java、計算機語言Java、Linux網路管理、網路安全基礎與防火牆、實用網路程序設計、操作系統安全、安全審核與風險分析、數據加密與PKI技術、數據備份與災難恢復、下一代互聯網技術、網路協議分析等。相關證書:通過參加CIW網路安全認證課程的學習和認證,成績合格者可以獲得相應證書,如CIW 網路安全操作能手、網路安全高級工程師、CIW網路安全專家以及CIW網路安全大師等專業證書。還可以參加職業技術認證培訓,獲得Linux網路管理員、網路管理專家(MCP70-290/291/293)、RCNA和CCNA網路工程師等證書。專業特色:(1)中立廠商背景:CIW網路安全專業秉承了中立認證的特點,強調技術與應用技能,開放性與通用性;網路安全專業不以廠商技術作為課程主線,保證了技術適用於最廣泛的行業與領域; (2)以職業發展為導向的課程思想:CIW網路安全專業課程根據中國IT人才教育的新模式:職業為導向進行設置;強調人才培養的目標是職業發展,與學生的職業生涯緊密聯系; (3)強大完善的課程整體解決方案:CIW將向教師及學生提供最強大完善的課程整體解決方案,解決方案包括:標準的教師教學時所使用的教案與PPT,考試提綱及練習、復習資料,標准認證教材,多媒體實驗光碟和教學輔助資料;(4)重視實操培養:以網路安全課程著稱的CIW認證體系,在課程中融合大量網路安全實驗,讓學生學習網路安全前沿理論知識的同時掌握實際操作能力,培養應用型人才,彌補了當前中國大陸地區網路安全教育領域中的空缺。職業前景:本專業畢業生可在中小企業、金融、證券、政府部門、學校、醫院等單位進行信息安全的設計、管理和維護,或在計算機信息相關公司的工程部、技術服務部、市場部等工作。通過2-5年的鍛煉、提高和深造,可以成為信息安全工程師或更高層次的技能型應用人才。可適應崗位:安全集成公司和安全咨詢服務公司的網路安全技術工程師,各企事業單位IT部門的信息安全工程師;各企事業單位IT部門的信息安全管理策略工程師和策略推廣工程師;各企事業單位的計算機網路維護和管理人員;銀行系統及保密機構、財務稅控單位等安全系統維護及管理人員。 培養目標:計算機網路技術(系統集成方向)主要培養從事計算機網路建設、管理和應用的技術人才。側重掌握計算機網路建設工程中規劃與設計、系統部署與實施、智能樓宇安防監控與設備調試以及網路運行服務管理等知識和技能。專業培養德、智、體、美全面發展,具有良好的職業素養、創新與創業意識,熟悉國家信息產業的政策和法規,能勝任計算機網路以及樓宇智能化工程設計、建設、測試、驗收與維護等相關工作的高級技術應用性人才。主要課程:計算機語言C、數據結構、計算機網路基礎、交換與路由技術、實用網路程序設計、區域網技術與組網工程、無線區域網組網技術、網路系統工程集成、網路管理與設備維護、廣域網互聯技術、智能卡技術與門禁系統、樓宇智能化技術等。主要實踐環節,網路構建技術訓練、網路管理與維護訓練、網路工程集成訓練、網路應用系統構建與項目開發以及智能建築弱電設備安裝與調試,在企、事業單位或計算機網路部門的工作實習及崗位實踐。相關證書:可以參加網路技術的職業資格認證考試,獲得相應證書,如網路測試CCTT認證、RCNA和CCNA網路工程師、網路安全專家等。職業前景:網路系統集成公司的網路工程設計、規劃、營銷和維護工程師,網路系統設計與施工技術員、網路工程監理員、智能建築技術員、網路應用軟體的開發與維護技術員、網路安全防範技術員、網路管理與維護人員、網路設備銷售與技術支持人員。 培養目標:計算機網路技術專業是校級品牌專業,主要面向蘇州地區信息產業的製造、服務類企業、以及與信息化有關領域的一線崗位,培養德、智、體、美全面發展,具有良好的職業素養、創新與創業意識,熟悉國家信息產業的政策和法規,掌握一定的網路技術基本理論,具有較強的實踐能力,能勝任與網路系統管理及維護、計算機網路工程設計、網路編程等相關工作的高級技術應用性人才。主要課程:計算機語言C、計算機網路基礎、交換與路由技術、網路安全、Windows安裝與配置、Linux基礎、區域網技術與組網工程、無線區域網組網技術、網路系統工程集成、網路測試與故障診斷、SQL Server資料庫程序設計(網路工程方向)、Windows網路管理、Linux網路管理、JSP商務網站設計、網路管理與設備維護、基於.NET的Web應用程序設計。相關證書:可以參加網路技術的職業資格認證考試,獲得相應證書,如網路管理員、CIW網路安全專家、RCNA和CCNA網路工程師、微軟認證專家MCP、Linux網路管理員等。職業前景:可在各類信息化部門、IT企業、通信設備營運商從事計算機網路維護與管理,參與計算機網路建設的分析、設計和實施,計算機技術服務和網路軟體開發等工作。
</SPAN> </SPAN></SPAN></SPAN>
❽ 計算機網路技術是怎樣的一門技術
計算機網路技術是指培養適應生產、建設、管理、服務第一線需要的德、智、體、美全面發展,掌握計算機網路技術基礎知識,培養具有一定計算機網路基本理論和開發技術,具備從事程序設計、Web的軟體開發、計算機網路的組建、網路設備配置、網路管理和安全維護能力的網路高技術應用型人才。
主要課程:
資料庫原理與SQLSERVER,Oracle資料庫管理、面向對象程序設計,網路安全管理與維護技術,HTML與JavaScript,網路後期維護與運營,網路規劃、設計方向:Linux系統及網路管理、網路伺服器配置與管理、路由器交換機配置與管理、構建企業網路、網路綜合布線技術、網路測試與故障診斷、網路入侵的檢測與防範;網站設計方向:ASP動態網站建設、JAVA網路程序開發,php伺服器端腳本語言,Dreamwearver firework Flash網頁設計,div+css網頁布局。
❾ 計算機科學與技術專業的特色怎樣
計算機學科定期組織教學改革大討論,結合美國ACM-IEEE計算機分會提出的示範性教學計劃,修訂本專業教學計劃和課程大綱,使計算機專業教學接近國際水平,2002、2005、2010 年三奪ACM國際大學生程序設計競賽全球總冠軍。 隨著我國信息化規模不斷擴大,計算機人才結構性矛盾日益顯得突出,全國計算機應用專業人才的需求每年將增加百萬,但國內學歷教育目前只能提供5-6萬人。為此,上海交通大學在繼續辦好全日制的計算機科學與工程專業基礎上,面向計算機行業從業人員,由上海交通大學繼續教育學院開辦計算機科學與技術專業網路教育,培養在計算機行業第一線工作的高級技術與管理人才。 本專業旨在培養計算機軟體開發、網路應用開發的高級復合型人才,注重培養全面掌握計算機科學與技術基礎理論、方法與技能,不僅具有計算機軟、硬體系統的開發、設計能力,還具有一定計算機網路系統規劃、設計、建設和維護的能力,能夠在計算機及相關領域中從事各種應用系統開發、設計的應用型技術與管理人才,使其具有良好的系統設計與工程實踐能力、組織能力和協作能力,能夠很好地適應現代社會對計算機軟體及網路系統開發人才的需求。 【教學特色】 面授和網路相結合的多樣化學習途徑 所有專業課程均提供業余時間面授課程,同時現場錄制所有課程內容,課後上傳至學習系統,以供學生反復學習。課堂面授、網路點播均計入考勤,學生可根據自身需求在兩種模式之間隨意切換。 多種考核手段相結合 按照課程性質的不同,期末考試有大作業、開卷、閉卷等多種考核形式。課程成績中考勤佔百分之十五,平時作業佔百分之十五,期末考試成績佔百分之七十。課程考核強調學習過程,而不僅是單次考試成績。總體成績按照正態分布調整,保證科學的考試合格率。 注重學生反饋 每學期由學生對任課教師及其授課進行網路評價,得分低於標準的教師將不再被續聘,整個教學過程強調互動、學生滿意度以及適合在職人員的需求。 提供高端講座 充分利用上海交通大學優勢教學資源,定期向學生開放免費高端講座,邀請企業家、專業資深人士或交大知名教授開設各類專業講座,豐富學生知識面,拓展專業視野。 共享交大資源 學生入學後可辦理上海交通大學學生證、圖書證、校園消費卡,同時可作為在校大學生報考全國英語四六級考試、專業英語等級考試,可享受由甲骨文公司、微軟公司面向交通大學提供的經典培訓課程學生優惠價。 【專業課程體系主要包括】 <程序設計 旨在使學生掌握C語言的基本語法、基本語句、基本控制結構以及自頂向下結構化程序設計的基本方法,使學生認識到演算法、良好的程序設計風格以及實踐在本課程學習中的重要性,培養學生熟練使用C語言編程分析和解決實際問題的能力。該課程為學生進一步學習其他專業課程和今後從事軟體開發工作打下堅實的基礎。 <計算機網路 在描述計算機網路體系結構及Internet協議集的基礎上,著重討論數據鏈路層的差錯控制、流量控制和介質訪問技術,網路層的路由技術和擁塞控制,以及傳輸層的連接管理和網路編程介面,使學生不僅了解計算機網路的全貌,而且掌握基本的網路原理和網路應用開發技術,為進一步深入學習相關網路課程及開發基於網路的分布式應用打下良好的基礎。 <計算機組成與系統結構 以介紹計算機組成和系統結構的基本概念和原理為主要內容,重點介紹新型多核計算機系統的CPU、存儲器、匯流排和I/O系統的硬體組成與工作原理,同時介紹並行計算機系統的發展趨勢。通過對內在原理、本質特點的深入淺出的介紹,幫助學生建立新型計算機系統的完整概念,學習計算機系統各組成部件的新技術、新型設計思想和未來發展趨勢,了解計算機系統的最新研究成果。 <數據結構 數據結構是介於數學、計算機硬體和計算機軟體之間的一門計算機科學與技術專業的核心課程,是操作系統、資料庫系統等課程的基礎,同時,數據結構技術也廣泛應用於信息科學、系統工程、應用數學以及各種工程技術領域。通過學習,使學生初步具備分析問題、解決問題的能力,養成良好的程序設計風格,提高基本的分析設計能力,為後續課程的學習打下堅實的基礎。 <操作系統 操作系統管理和控制著計算機系統中的所有軟、硬體資源,可以說操作系統是計算機系統的靈魂。本課程使學生掌握現代計算機操作系統的基本原理、基本設計方法及實現技術,具有分析現行操作系統和設計、開發實際操作系統的基本能力。 <資料庫原理與應用 系統地介紹資料庫的原理知識,並結合具體的資料庫管理系統軟體來介紹原理的應用過程。通過這門課程的學習,使學生在資料庫軟體開發的過程中能夠選擇正確的開發平台,正確地、合理地進行資料庫設計,從而提高軟體開發的整體質量。 <面向對象程序設計(Java) 在講授Java語言編程技術的同時,介紹面向對象技術的基礎理論,包括抽象、類、對象、合成、關聯、聚集、概化、多態性、繼承、重載、覆蓋等,提出面向對象設計的主要原則和思維方法。 <嵌入式系統及應用 使學生從理論和實踐上了解或掌握嵌入式系統的體系架構、工作原理與特點、程序設計與應用開發初步等相關知識點,最終建立起嵌入式系統的整體概念,達到嵌入式系統應用、設計和開發的初步能力。相關了解:
❿ 結合計算機專業特點,談談在學習和生活中如何做到以實際出發
一、廣泛了解,從科普書籍開始
選擇計算機專業的同學,也許是因為原先有一定的基礎,也許是因為一時的激情,但更多的人,可能對自己的選擇沒有深刻的認識,或多或少對計算機專業有一些神秘的感覺。自己究竟是否喜歡這個學科?才華能夠在哪個分支領域有所施展?抑或是真的不適合這個專業?諸多疑問,解決的方法首先便是了解和認識我們的學科。濃厚的興趣是學好任何學科的源泉;而廣泛的了解則是獲得興趣的途徑。當今我們對於信息的獲取已非難事,其中「閱讀」是一個簡潔而有效的方法。
也許你認為閱讀專業書籍對於剛剛步入大學的自己來說有點困難,也很枯燥,那麼不妨先從科普書籍看起。科普書籍是了解理論、獲得應用知識最好的途徑。相信不少理工科的同學被量子物理和相對論搞得頭昏腦脹過。究其原因,是我們的現實生活與抽象的數學模型之間存在思想意識上的鴻溝。然而要是讀讀斯蒂芬·霍金的《時間簡史》,你就會被書中有趣的故事和例證所吸引,從而對抽象的理論有了感性的認識——即使仍然沒有讀懂,你也至少了解了這個學科研究的領域和目標是什麼,也必然有所收獲。所有理工學科都有這樣的性質,計算機專業也不例外。
我們知道,計算機理論是建立在數學基礎之上的。大學計算機專業對數學的要求較高,其重要性不必多言。數學令不少同學頭痛,除了其「繁」與「難」 外,很大程度上是因為他們沒有理解這些抽象理論的實際應用方向。與本科數學專業的課程設置相比,計算機專業的數學課程大都偏重實用性。比如我們的離散數學課程中涉及到的邏輯代數奠定了計算機一切運算的基礎,形式語言構成了計算機程序編譯的模型,代數系統則是當前各類資料庫系統的理論依據等等。因此,如果能夠提前地了解到並簡單地學習一下這些數學知識的具體應用,對理解理論是很有益處的。此外,電子學、信號與系統、控制理論等也是計算機專業學生必修的公共課,然而不少同學往往認為它們與計算機專業的關系不大,從而放鬆了學習。事實上這些學科是計算機硬體與網路通信的基礎,學好這方面知識的前提是認識它們的現實應用及其與計算機的密切聯系。
也許你將來學習圖論的時候,對「歐拉路」的概念會很清晰,這是因為你在小時候的圖畫書上玩過「一筆畫」的游戲;然而「二分圖」、「生成樹」這些概念又是怎麼回事呢?你的理解可能就不是那麼深刻了——因為你一時難以找到一些生活中的實例,並從中抽取出特性。在這種情況下,翻閱一些涉及這些知識的科普書籍就十分有必要了。我曾讀過一套《數學游戲》(《科學美國人》雜志匯編,中文版:科學技術文獻出版社),它將圖論、邏輯代數、自動機理論等領域的抽象的概念具體化為一個個有趣的故事,引導讀者了解這些知識的現實應用,啟發讀者將抽象思維與感性生活有機結合。我還讀過一本《編碼的奧秘》(《CODE》中文版,機械工業出版社),它則將邏輯代數、數字電路、匯編語言等知識以實物和簡單電路的形式進行類比,揭示其中的原理,並引導讀者動手實踐。事實上這類與計算機專業相關的科普書籍還有很多,在學習課本的間隙閱讀一下,絕對能起到催化劑的作用。
談到科普書籍,相關的另一個問題便是計算機科學與計算機技術之間的關系。也許不少同學選擇計算機專業,是源於對計算機令人眼花繚亂的應用的認識。所謂計算機技術,一般是指包括文字處理、信息管理、多媒體、網站建設等在內的計算機應用技術;而所謂計算機科學,一般指數據結構、組成原理、操作系統、編譯原理等計算機內部實現機制。前者是計算機在各行各業提高生產力的體現,屬於各類職業教育和專科教育的范疇;而後者是研究是計算機本身的理論,是本科計算機教學的重點。市面上大多數計算機書籍與雜志是計算機應用技術方面的,屬「技術普及型」,從受眾角度來看與科普書籍有著類似的性質。適當地涉獵一些自己感興趣的應用技術,對培養學習興趣、增強實踐能力、了解業界行情是很有好處的。不過如果確實想在計算機行業長期做下去,仍然應當將主要精力放在對計算機科學的學習方面。畢竟用科學的理論指導實踐是大學教育的意義所在。
總之,廣泛了解計算機學科基礎科普知識,在今後學習具體理論的時候才會少一些盲目,多一些頓悟。
二、把握全局,學習計算機導論
當你對計算機學科涉及的領域有所了解後,就應該著手展開專業學習了。初讀本專業的教學計劃與課程設置,你或許會被諸如離散數學、編譯原理、介面技術等生疏的課程名稱弄得一頭霧水。這些課程都是研究什麼的?它們各自與我們面前的計算機有哪方面的聯系?要回答這類問題,首先需要把握全局,從整體上認識計算機科學。
國內高等院校一般都為大一學生開設計算機基礎課程。這類課程的受眾面廣,主要涉及計算機基礎應用知識。各種版本的計算機基礎教程幾乎都以計算機科學導論作為開篇。對於把計算機作為應用工具的其他專業的學生而言,導論只算是「內容概要」,他們往往更注重後面的應用型知識;而對於把計算機作為研究對象的我們,則決不能忽略這類指導性的內容。專門地、有意識地學好計算機科學導論,能夠使你對計算機科學有一個大局觀,清楚地認識到每一個分支學科的研究領域與重要意義,從而在今後的具體學習中明確方向,加深理解。
依我個人的學習經驗,建議初學者閱讀一些國外優秀計算機基礎與導論教材。與國內大多數講解軟硬體具體使用的同類教材相比,國外教材更偏重以應用為切入點,深入淺出地闡述計算機科學原理。諸如《計算機文化(第8版)》(《New Perspectives on Computer Concepts》中文版,機械工業出版社)、《計算機科學導論》(《Foundations of Computer Science: From Data Manipulation to Theory of Computation》中文版,機械工業出版社):前者適合於各種信息類專業的學生或計算機愛好者閱讀。該書圖文並茂,語言生動,從應用角度出發,廣泛涉及計算機軟體、硬體、網路的基本原理,同時概述了計算機學科的歷史背景與行業現狀。隨書的光碟中給出了不少影音材料,在學習的同時還可以提高計算機專業英語聽說能力。後者在風格上與前者類似,但內容更適合計算機專業學生閱讀,被美國不少高校定為計算機專業學生的入門課。它以實例作為出發點,系統地講解了計算機組成、計算機網路、操作系統、數據結構、演算法設計等分支學科的研究領域、基本原理和應用方向,而幾乎不涉及晦澀的數學模型與實現細節。閱讀此類書籍,可以在潛移默化中理清初學者對於計算機科學學習的思路。
計算機科學是一個有機聯系的整體,每個分支都或多或少地與其它分支存在依賴關系。如果死板地依照教學計劃線性地進行學習,往往會遇到知識理解上的問題。例如演算法分析課程與程序設計課程分屬理論與實踐;組成原理課程與體系結構課程是對計算機系統不同層面的剖析。我們不能簡單地找出它們的先修、後修關系,這樣難以建立完整的知識體系。因此在把握大局之後,我們仍有必要簡單了解一下每個分支學科的基礎知識。在這方面,推薦大家閱讀《編程卓越之道(第一卷):深入理解計算機》(《WRITE GREAT CODE: Volume 1:Understanding the Machine》中文版,電子工業出版社)這本書。分開來看每一章節,其內容編排結構與國內高校計算機課程體制相近,涵蓋了邏輯代數、數字電路、機器指令、體系結構、存儲器管理等方面的基礎知識和實現方法,特別是闡明了各個分支學科之間的本質聯系。有了這些基礎之後,在遇到更高階的問題時,你至少會明白這個問題應該在哪個分支學科中尋找答案了。
當你有了一定的計算機理論基礎,尤其是程序設計基礎後,想更加深入地把握計算機科學的脈絡,不妨看看這本書:《深入理解計算機系統(修訂版)》 (《Computer Systems A Programmer's Perspective》中文版,中國電力出版社)。它與《編程卓越之道》系列的共同特點是從程序員的視角觀察計算機系統。而這本書作為國外數十所高校的計算機系統導論教材,其組織更加嚴密,風格更加嚴謹。它以「程序在計算機中如何執行」為主線,全面闡述計算機系統內部實現的諸多細節。當你在學習數據結構、組成原理和體系結構等課程和時候,翻閱一下此書的相應章節,同時編程實現其中的例子,一定會對課本上單純的文字型理論有更加感性的認識——原來它們是這樣活生生地存在於我的計算機里的!
正所謂「會當凌絕頂,一覽眾山小」,從計算機科學全局的高度整體把握其分支學科,在頭腦中率先構建計算機科學的整體框架並為其夯實最基層的結構,就能夠為你在未來每一步的學習中掃清迷霧,指明方向。
三、運籌帷幄,掌握編程的思想
程序設計與開發是計算機學習的一個關鍵環節,編程能力是衡量一名計算機專業人員素質的重要考核點。這是因為程序是連接理論與實踐的紐帶,是計算機科學與計算機技術相交融的領域。作為一名計算機專業學生,我們一方面有別於其它專業將計算機作為工具的應用型人才,不能僅僅利用計算機,而要為他人利用計算機提供平台;另一方面我們暫時達不到計算機科學家的水平,不能做出理論研究成果,但能為理論學習鋪墊實踐基礎。因此,只有具備足夠的程序設計與開發能力,才能真正體現我們的智慧,同時充分發揮計算機的潛力。
學習編程,首先應掌握至少一門程序設計語言。C語言作為一種語法清晰、功能強大、應用廣泛的高級語言,長期以來被國內大多數高校的定為程序設計必修課。全面理解和掌握C語言的脈絡的重要意義這里毋庸多言。市面上C語言的教程多如牛毛,但最經典的當數C語言的設計者Kernighan與 Ritchie 合著的權威白皮書——《C程序設計語言(第2版)》(《The C Programming Language》中文版,機械工業出版社)。書雖不厚,但絕對全面而准確。其語言簡潔,例證通俗,實用性強。相比之下國內的一些C語言教材在學習曲線可能比前者平滑,但它們往往以考試為導向,過多地糾纏語法死角,同時大都未遵從ANSI標准。對於計算機專業學生來說,前者能夠讓我們看到更加嚴謹與實務的態度。當你的語言功底達到一定程度後,就需要從一個更高的視角來探察語言的本質,不妨看看這本:《計算機程序的構造和解釋(第2版)》 (《Structure and Interpretation of Computer Programs》中文版,機械工業出版社)。它闡述了編程語言本身的機制與實現,同時引入了一門對於大多數中國學生來說不甚了解的語言——LISP。 LISP是很多美國高校計算機專業的入門語言,也是一種結構上與C、Pascal、Java、Basic等完全不同的非馮·諾依曼語言。研讀SICP,體味LISP,給你耳目一新的感覺之後更多地可以加深對編程思想本質的理解。
大學的各類程序設計與開發課程旨在培養我們兩方面的能力——演算法設計能力與應用開發能力。前者偏重計算機科學,後者偏重計算機技術。演算法是用計算機思維解決現實問題的理論,具有較強的數學性。演算法學的曠世巨著應數Knuth的《計算機程序設計藝術》(《The Art of Computer Programming》中文版,清華、機工、國防等出版社皆有授權),不過要徹底讀懂這個大部頭需要相當的數學理論基礎與編程實踐經驗積累。對於初學者,建議首先培養使用常規演算法解決小規模問題的能力,並行地提高駕馭語言的水平與抽象問題的思維。針對這個目的,結合程序設計實踐一類的課程,可以讀讀這幾本書:《編程珠璣(第2版)》(《Programming Pearls》中文版,中國電力出版社)、《程序設計實踐》(《The Practice of Programming》中文版,機械工業出版社)、《代碼閱讀方法與實踐》(《Code Reading: The Open Source Perspective》中文版,清華大學出版社)、《C專家編程》(《Expert C Programming》中文版,人民郵電出版社)。它們的側重點各有不同,但對於通過實踐來學習演算法與數據結構都是很有益處的。
應用開發方面,實踐是第一要務,然而高效的實踐是建立在科學的程序設計方法之上的。以C語言為代表的結構化程序設計方法是規范的程序邏輯的基礎,目前主要使用在系統級開發中,前面所提到的諸多書籍都或多或少有所涉及。而以Java、C++為代表的面向對象程序設計方法廣泛應用於實用項目開發, 這方面的經典之作中,推薦閱讀Bruce Eckel的《Java編程思想(第3版)》(《Thinking in Java》中文版,機械工業出版社)與《C++編程思想(第2版)》(《Thinking in C++》中文版,機械工業出版社)。此外軟體架構設計、編碼規范與風格、代碼除錯與質量管理以及軟體工程的各類原則在實際項目開發中都是及其重要的,在具備了一定的編程經驗、准備投入一些實際項目開發的時候務必要了解。建議閱讀《代碼大全(第2版)》(《Code Complete》中文版,電子工業出版社)這本大而全的軟體構建綜合性寶典,它在從總體上指導軟體開發的各個環節的同時也引入了一些細節問題(諸如 goto的使用)的討論,引導我們對一些司空見慣的程序設計理念不但要知其然,而且要知所以然。
有一位熱衷於游戲的同學告訴我,游戲給予他滿足控制欲的空間。但是請放眼看看,游戲的控制范圍不外乎一個特定進程中他人預先設定好的一系列數據,並以有限的圖像與聲音形式體現出來。然而如果你掌握了編程這一強大的武器,就能夠面對眼前的計算機游刃有餘,在硬體條件允許的情況下盡你所能將控制欲升華為創造力,方便自己的同時造福他人。運籌帷幄,掌握編程的思想,無論走向科學研究或是應用開發,這都將為你奠定堅實的基礎!
四、理性思辨,體味計算機哲學
Bill Gates對計算機事業充滿激情——「每天早晨醒來,一想到所從事的工作和所開發的技術將會給人類生活帶來的巨大影響和變化,我就會無比興奮和激動。」自由軟體運動的精神領袖Richard Stallman幾十年如一日,將打破知識壟斷、共享人類智慧作為己任,帶領著數以萬計的軟體志願者推動著開源世界的發展。但並非每個計算機業者都能有Gates那樣豪邁的氣度和Stallman那種堅定的信仰,計算機及其相關技術對於大多數業者來說僅僅是興趣愛好或者謀生的工具。計算機行業半個多世紀以來形成了其獨有的文化氛圍,作為一名計算機專業學生,了解專業文化,體味專業哲學,對於學習和從業都是具有指導意義的。
首先必須承認,計算機世界中存在著形形色色的意識理念差異。諸如微軟帝國與開源世界的明爭暗鬥,不僅僅是一場商戰,更多的是兩種哲學的搏擊。當代大學生多數是在微軟Windows光環照耀下認識計算機的。在這種環境下,多接觸一些開源世界的事物,對於理解計算機的本質不無裨益。《共創未來:打造自由軟體神話》(《Free for All: How Linux and the Free Software Movement Undercut the High-Tech Titans》中文版,上海科技教育出版社)是一本講述開源世界發展史的書,你可以從中了解自由軟體運動及其領袖人物的傳奇故事,從而對GNU、 Linux、OpenSource這些概念蘊生人性化的理解。清華大學王垠的《完全用GNU/Linux工作,擯棄Windows——你我共勉》、蘭州大學黃平的《自由,你忘記了嗎?》等長篇文章則是國人對開源運動的慷慨陳辭。盡管這些文章常常被指為「偏激」,但沒有調查就沒有發言權,無論支持還是反對, 客觀的認識是第一位的。
其次,我們應該用平和的心態對待知識與技術,衡准專業學習在生活中的位置。一些同學出於種種原因,成為了「先進技術」的追隨者:通曉各類流行的編程語言,一有新版本的工具推出立即安裝學習,一有新的技術論戰立即關注其走向。還有一些同學成為了某些技術的忠實信徒:看準了Java就對.NET的東西置之不理。這些追隨者和信徒們往往為突飛猛進的技術所累,以至於有感於學習的空虛。過分追捧技術可謂捨本逐末,死扣某一知識也顯得目光短淺。一方面百變的技術離不開計算機科學的本源,在實踐過程中深入理解基礎知識是關鍵;另一方面任何技術都有統領其實現細節的思想精髓,觀其形不如知其神。我們不妨甩開冗繁的技術,換個角度靜下心來讀幾部計算機文化與哲學作品:
程序人生方面:《編程之道》(《The Tao of Programming》雙語版,電子工業出版社)一書出自一位對東方道家與禪宗思想有著獨特理解的美國軟體工程師之手,全書由一則則短小而富有哲理故事組成,以類似寓言的形式生動地反映了程序員群體的生活以及計算機文明的演進。閑暇時隨手翻閱,即使不能立刻體會到每個故事的真諦,但隨著自身閱歷的增長,相信你會領悟程序人生的「道法自然」。
設計理念方面:開源軟體界的「鬥士」級元老Eric Raymond所著的《Unix編程藝術》(《The Art of Unix Programming》中文版,電子工業出版社)一書,以Unix系統的設計原則為主線,展示了Unix所開啟的「KISS」(Keep It Simple, Stupid!)編程文化與思維方式。對於很多干啃千篇一律的課本、禁錮於Windows開發的計算機專業學生來說,這本書一定能夠使你眼界大開——「結構化」並非真理,「面向對象」也不是王道;而對於有一定Unix/Linux使用或開發經驗的同學,這本書也一定會使你豁然明朗——原來一個程序的設計竟可以如此精巧!
管理哲學方面:對於有志於軟體工程,想涉足項目管理的同學,《人月神話》(《The Mythical Man-Month》中文版,清華大學出版社)這本書就有必要讀一讀了。它拿真實案例說事,彷彿一部實例化的軟體工程課本。如果你在團隊開發的道路上陷入了困境,不如參考一下前輩們是如何處理「人」與「月」二者之矛盾的吧。事實上不僅是軟體工程,任何事業的成功,往往技術不是關鍵,社會科學的因素才是埋 頭技術的朋友們更應當關注的。
歸根結底,計算機的哲學依舊是人的哲學。拋開理念之爭議,超越技術的形式,以人為本地認識我們的行業與自身的地位,或許會使將來的發展道路走得更舒心一些。
