當前位置:工程項目OA系統(tǒng) > 領域應用 > 倉庫進銷存管理系統(tǒng) > 入庫出庫管理軟件
如何使用搜索技巧來成為一名高效的程序員
沒有人是完全獨立的孤島,每個人都是整體的一部分?!s翰·多恩
對于缺乏編程知識的人來說,完全有可能編寫一個網(wǎng)頁或小程序。如果在用Google搜索相關示例時幸運的話,可以搜到現(xiàn)成的代碼。即使是經(jīng)驗豐富的程序員,通常也會為了節(jié)省時間和精力而在網(wǎng)上搜索解決方案。
如果不借助搜索技術、網(wǎng)絡及集體智慧,現(xiàn)代化高效編程是難以想象的。因此,搜索技巧對高效程序員變得愈發(fā)重要。
現(xiàn)在,我們不需要了解和記住如何解決眾多的編程問題,可以采用搜索技術。我們正變得更加高效、高生產(chǎn)力,并能夠解決更多的問題。但這是否意味著在構(gòu)建軟件時,擁有好的搜索技巧就足夠了呢?本文將討論,搜索技巧在程序員知識的形成過程中的作用,以及如何高效使用搜索技巧。知識的類型及它在程序員大腦中如何成長。
有三類知識:
概念知識
(為什么、是什么、如果—— 語義上的)——理解軟件系統(tǒng)構(gòu)建過程中的概念、原理、關系及主要方法。根據(jù)這類知識,能夠找出體系結(jié)構(gòu)或代碼必須按特定方式設計的原因,以及從中選擇最佳 設計方案的備選方案和邏輯是什么。概念知識,不是指用特定編程語言解決特定問題,而是對問題的長遠看法和理解。
用途:對復雜的開放式問題尋找新的解決方案,并創(chuàng)建穩(wěn)健的軟件系統(tǒng)。
收獲:學習計算機科學、體系結(jié)構(gòu)以及編程概念,在實際實現(xiàn)和經(jīng)驗的基礎上,構(gòu)建自己的理論。
實踐性知識
(如何做 —— 過程中的)—— 關于如何解決特定編程問題的知識。這類知識不需要深入理解實現(xiàn)方法選擇過程中隱含的概念及基本原理。搜索技術在這里最重要,因為對有限的編程語言問題所采取的特定解決方案,搜索能相對容易的加以共享并說明。
用途:用已證實的和已知的解決方案快速解決問題,而不是每次都重新發(fā)明一種新的方法。
收獲:搜索現(xiàn)有的解決方案,通過例子學習或提出自己的解決方案并以后對其重利用。
隱性知識
(專業(yè)知識、經(jīng)驗及直覺)——基于軟件系統(tǒng)實現(xiàn)過程中所積累的個人經(jīng)驗,在大腦中形成的內(nèi)在知識。通過強大的 大腦功能,隱性知識可以綜合并協(xié)調(diào)其他兩種知識。這類知識很難傳授,因為它的大部分都存儲在我們的潛意識中。在特定環(huán)境下,它和直覺一同發(fā)揮作用,能夠在 經(jīng)驗、對概念性和實踐性知識的反饋和評估的基礎上,制定最佳決策。
用途:利用自己的專長、經(jīng)驗及直覺來實現(xiàn)最佳解決方案。
收獲:構(gòu)建軟件并從結(jié)果中學習知識。
設計模式(還有架構(gòu)、領域及其他)是不同類型知識相結(jié)合的有趣的例子:“如何做”的例子,這些例子中隱含的概念及實現(xiàn)過程中積累的經(jīng)驗。這種知識的表現(xiàn)方式是模式成功及廣泛應用的原因之一。
隨著越來越多的可供使用的實踐性解決方案和示例出現(xiàn)在網(wǎng)絡上,人們大腦中的實踐性知識的價值越來越小。我們不需要記住實踐性知識?,F(xiàn)在我們能夠處理軟 件構(gòu)建過程中幾乎所有可能遇到的常見編程問題。然而,除能夠解決問題的示例或從哪搜索這些示例以外,一名大師級的程序員還知道更多的知識。他能夠提出自己 的解決方案,制定大部分最佳決策,并采用最好的方式應用它們。此外,很難在網(wǎng)上找到新的、復雜的、領域性的及特定環(huán)境下的問題的解決方案。而且,對所有重 要的軟件工程,在制定優(yōu)秀解決方案的過程中,都需要高水平的軟件開發(fā)理論、這些理論的應用經(jīng)驗、對系統(tǒng)的深入了解、問題空間及環(huán)境等相關知識。
因此,在軟件開發(fā)過程中,概念知識和隱性知識仍然是非常重要的。在使用搜索技術時,我們應當努力擴充各種知識,而不是僅僅解決特定問題。隨著解決更高級問題的能力的提高,你會取得成功,成為更高效的程序員。
可解決實際問題的高效搜索
A. 查找
1. 定義——弄清楚要解決什么問題,并以要查找的內(nèi)容為焦點。網(wǎng)絡上有如此多的有趣的材料,以至于搜索過程能輕易地占掉你全部的工作時間(和個人時間)。
2. 檢索(使用標準的Google、代碼搜索或其他的檢索引擎)—有很多關于如何高效的使用檢索引擎的建議。
3. 瀏覽結(jié)果(內(nèi)容的質(zhì)量、可信度及專業(yè)技術的水平;如果資料的可信度過低,無須再看)-> 閱讀 -> 評估(人力物力、所需工具及函數(shù)庫)
B. 使用
1. 復制代碼 - 單獨復制(針對這一目的,帶有長釘技術的顯式單元測試最適合)
2. 清除代碼 - 僅保留最小限度、相關性代碼,清除解決方案中的其它代碼。
3. 在系統(tǒng)中應用代碼。
C. 學習
1. 理解——你做了什么及你為什么那樣做——從代碼和實現(xiàn)中學習。
2. 擴充知識——
a. 實踐性知識:解決問題的特定方法、技巧及風格;
b. 概念知識:學習新概念、提煉現(xiàn)有的并構(gòu)建自己的概念;
c. 隱性知識:明智地使用并學習搜索到的解決方案,經(jīng)驗會自然而然地得到增長。
3. 收集(鏈接、意見、參考文獻、閱讀清單)—任何對你今后搜索、發(fā)現(xiàn)及學習有用的有趣信息。為這些目標積累知識。
你還有其他高效搜索代碼的訣竅嗎?歡迎在評論或微博中和大家分享。
- 1施工管理軟件
- 2網(wǎng)店管理軟件
- 3服務行業(yè)美容院管理軟件
- 4印刷管理軟件
- 5出入庫管理軟件
- 6預算管理軟件
- 7員工管理軟件
- 8工作日程管理軟件
- 9商務管理軟件
- 10企業(yè)管理軟件
- 11目標管理軟件
- 12運輸管理軟件
- 1Windows XP 常見的進程列表
- 2操作系統(tǒng)與系統(tǒng)配置
- 3雙系統(tǒng)安裝方法
- 4iPhone操作隊列 VS Java線程池
- 5at命令的用法
- 6入庫出庫管理軟件防火篇:如何防火及倉庫防火安全管理規(guī)則
- 7IP地址沖突問題的解決方法
- 8破解網(wǎng)頁禁用鼠標右鍵
- 9 WINXP優(yōu)化精髓,如何加快開機與關機的速度
- 10加快右鍵菜單的響應速度
- 11如何使用Tasklist命令
- 12我QQ聊天記錄怎么沒了??! 怎么辦?
- 13無法升級更新
- 14IE瀏覽器常見經(jīng)典故障
- 15禁止WinXP文件夾自動展開
- 16EXE文件關聯(lián)丟失的解決方法
- 17磁盤格式的問題
- 18如何多系統(tǒng)安裝
- 19破解IE分級密碼
- 20兩臺電腦已連接起來,但無法看到對方
- 21雙系統(tǒng)的安全卸載
- 22設置開始菜單中的用戶名
- 23命令設計模式
- 24實用的端口大全(中文版)
- 25解決“添加刪除程序”里面隱藏問題
- 26編程總結(jié)之關于編程的淺學習與深學習
- 27found.000文件夾的問題
- 28打開硬盤分區(qū)出錯
- 29如何訪問有密碼的空間相冊??
- 30更改IE的默認搜索引擎
成都公司:成都市成華區(qū)建設南路160號1層9號
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務大廈18樓