初學(xué)者要看懂代碼首先從要需求分析了解,然后是系統(tǒng)分析,最后是塊的理解。看懂代碼其實(shí)不難,大抵不過是選擇,分支,循環(huán)。語法如果看不懂,那就需要補(bǔ)補(bǔ)基礎(chǔ),先弄清楚這段代碼要做什么,有說明最好,可以幫助理解,沒有說明就試著過一下代碼流程。
1、選定方向
編程的世界是多元紛繁的,大的方向就分前端開發(fā)、后端開發(fā)、移動開發(fā)、云計(jì)算、數(shù)據(jù)處理、智能硬件、物聯(lián)網(wǎng)、虛擬現(xiàn)實(shí)等等,光編程語言都幾十種。如果沒有做過功課,貿(mào)然進(jìn)入只會分分鐘懵逼。所以最好是根據(jù)自己的興趣愛好再結(jié)合市場前景,先選定一個方向,再選擇一門語言,然后頭也不回的深深扎進(jìn)去。
2、優(yōu)化學(xué)習(xí)方式
做好筆記,記錄經(jīng)驗(yàn),我們大多數(shù)人并沒有過目不忘的神技,很多時候我們學(xué)了也不一定馬上掌握,需要過后花時間慢慢領(lǐng)悟,而且還有忘掉的風(fēng)險,所以對于重要的知識點(diǎn)都要做好筆記。
3、多看官方文檔,外文資料互聯(lián)網(wǎng)是一個更新迭代很快的行業(yè),所有編程語言都會不斷的更新新功能和修復(fù)舊Bug,網(wǎng)上查的資料很有可能是舊的解決方案,現(xiàn)在已經(jīng)不適用了。所以最好最快的方法就是查看官方文檔。
4、動手做項(xiàng)目學(xué)習(xí)編程的最終目的就是用所學(xué)的做出具有一定功能的項(xiàng)目,而做項(xiàng)目又是最好的學(xué)習(xí)和鞏固知識的方式。如果前期能力不足就先做一些簡單的功能模塊,一步一步慢慢來,不要一開始就要實(shí)現(xiàn)各種酷炫炸天功能,遇到不會的就在網(wǎng)上查,現(xiàn)在互聯(lián)網(wǎng)這么發(fā)達(dá),獲取資源也極其方便。
邏輯架構(gòu):邏輯架構(gòu)關(guān)注的是功能,包含用戶直接可見的功能,還有系統(tǒng)中隱含的功能。或者更加通俗來描述,邏輯架構(gòu)更偏向我們?nèi)粘K斫獾摹胺謱印保岩粋€項(xiàng)目分為“表示層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問層”這樣經(jīng)典的“三層架構(gòu)”。
開發(fā)架構(gòu):開發(fā)架構(gòu)則更關(guān)注程序包,不僅僅是我們自己寫的程序,還包括應(yīng)用程序依賴的SDK、第三方類庫、中間價等。尤其是像目前主流的Java、.NET等依靠虛擬機(jī)的語言和平臺,以及主流的基于數(shù)據(jù)庫的應(yīng)用,都會比較關(guān)注。和邏輯架構(gòu)有緊密的關(guān)聯(lián)。
運(yùn)行架構(gòu):顧名思義,更關(guān)注的是應(yīng)用程序運(yùn)行中可能出現(xiàn)的一些問題。例如并發(fā)帶來的問題,比較常見的“線程同步”問題、死鎖問題、對象創(chuàng)建和銷毀(生命周期管理)問題等等。開發(fā)架構(gòu),更關(guān)注的是飛機(jī)起飛之前的一些準(zhǔn)備工作,在靜止?fàn)顟B(tài)下就能規(guī)劃好做好的,而運(yùn)行架構(gòu),更多考慮的是飛機(jī)起飛之后可能發(fā)生的一些問題。
物理架構(gòu):物理架構(gòu),更關(guān)注的系統(tǒng)、網(wǎng)絡(luò)、服務(wù)器等基礎(chǔ)設(shè)施。例如:如何通過服務(wù)器部署和配置網(wǎng)絡(luò)環(huán)境,來實(shí)現(xiàn)應(yīng)用程序的“可伸縮性、高可用性”。或者舉一個實(shí)際的例子,如何通過設(shè)計(jì)基礎(chǔ)設(shè)施的架構(gòu),來保障網(wǎng)站能支持同時10W人在線、7*24小時提供服務(wù),當(dāng)超過10W人或者低于10W人在線時,可以很方便的調(diào)整部署架構(gòu)來支撐。
數(shù)據(jù)架構(gòu):數(shù)據(jù)架構(gòu),更關(guān)注的是數(shù)據(jù)持久化和存儲層面的問題,也可能會包括數(shù)據(jù)的分布、復(fù)制、同步等問題。更貼切來講,如何選擇需要的關(guān)系型數(shù)據(jù)庫、流行的NOSQL,如何保障數(shù)據(jù)存儲層面的性能、高可用性、災(zāi)備等等。很多時候,和物理架構(gòu)是有緊密聯(lián)系的,但它更關(guān)注數(shù)據(jù)存儲層面的,物理架構(gòu)更關(guān)注整個基礎(chǔ)設(shè)施部署層面。
1、機(jī)器語言
是最低級的語言,是由二進(jìn)制碼組成,是最早期的一種程序語言。
2、技術(shù)功能代碼
這種代碼與業(yè)務(wù),與要實(shí)現(xiàn)的系統(tǒng)完全沒有依賴,各個編程語言標(biāo)準(zhǔn)庫,框架都屬于此類,這類代碼盡量按不同技術(shù)進(jìn)行獨(dú)立,保證代碼的正確性。如實(shí)在需要大量類型組合出需要的功能,如Web框架,設(shè)計(jì)的功能很多,則應(yīng)該使用接口,盡量隔離不同的功能,技術(shù)。
3、業(yè)務(wù)中功能的實(shí)現(xiàn)代碼
這種代碼需要實(shí)現(xiàn)業(yè)務(wù)邏輯,一般會存取業(yè)務(wù)數(shù)據(jù),轉(zhuǎn)換數(shù)據(jù)結(jié)構(gòu),檢查數(shù)據(jù)是否符合要求,調(diào)用功能類庫等,這類代碼關(guān)聯(lián)的東西很多,需要做到盡量簡單,等分離出去的盡量分離出去,簡單一來不容易出問題,二來只需要少量測試即可保證這部分代碼的正確性。
4、針對業(yè)務(wù)邏輯對功能類庫進(jìn)行封裝的類庫的代碼
有的業(yè)務(wù)邏輯中一個功能,可能需要某種類庫做大量動作。然而這些代碼實(shí)現(xiàn)的功能,在業(yè)務(wù)邏輯中是不可分割的一個步驟,因此可以獨(dú)立出來,作為包裝類庫,也需要編寫一定量的測試代碼,保證正確性。
5、業(yè)務(wù)邏輯組合代碼
一個系統(tǒng)會有多個業(yè)務(wù)邏輯,其組合規(guī)則也可以被獨(dú)立出來,以方便擴(kuò)展和修改業(yè)務(wù)邏輯。
零基礎(chǔ)學(xué)cad可以通過自學(xué)、參加培訓(xùn)班來學(xué)習(xí),自學(xué)可以通過網(wǎng)絡(luò)教程、書籍、視頻等方式進(jìn)行,如果有條件的話,最好是買幾本教材來看,這樣可以更快...
視頻剪輯是當(dāng)今數(shù)字媒體領(lǐng)域中不可或缺的一部分,越來越多的人開始學(xué)習(xí)視頻剪輯,以提高自己的個人或職業(yè)技能。以下是一些適合初學(xué)者學(xué)習(xí)的視頻剪輯入...
這期給大家安利口才培養(yǎng)的書單,不過發(fā)選擇適合自己的書比較好,所以這份書單僅供參考,大家看看選擇一本感興趣的來學(xué)習(xí)吧。
零基礎(chǔ)學(xué)美工,可以從設(shè)計(jì)基礎(chǔ)和軟件基礎(chǔ)開始,一般來說,設(shè)計(jì)基礎(chǔ)方面可以先學(xué)三大構(gòu)成,軟件基礎(chǔ)方面則可以先從PS的基礎(chǔ)操作開始。有了設(shè)計(jì)和軟件...
可以提高語言表達(dá)能力的書籍有《溝通心理學(xué)》、《溝通與說服必讀12篇》、《影響力》、《思考,快與慢》、《關(guān)鍵對話:如何高效能溝通》、《回話的技...
如今的社會,電商運(yùn)營已成為一種非常流行的商業(yè)模式。越來越多的人開始關(guān)注和投身于網(wǎng)絡(luò)電商行業(yè)。因此,本文將介紹一些適合電商運(yùn)營新手的入門書籍,...
普通話考試內(nèi)容包括讀單音節(jié)字詞、讀雙音節(jié)詞語、短文朗讀、命題說話四個部分,學(xué)習(xí)的時候推薦使用《普通話水平測試專用教材》、《普通話訓(xùn)練手冊》等...
現(xiàn)在網(wǎng)上能看到的電商經(jīng)驗(yàn),大多是碎片化知識,零散不成體系,其實(shí)很難系統(tǒng)地給賣家提供幫助,建議買一本專門的書來看,形成整體的思維,比較推薦的書...
自學(xué)畫畫自然應(yīng)該從基礎(chǔ)開始學(xué)起,不過繪畫美術(shù)基礎(chǔ)包含的知識點(diǎn)很多,可以從看書入手,比較好的繪畫類書籍有《結(jié)構(gòu)素描基礎(chǔ)教程》、《30天學(xué)會繪畫...
電商運(yùn)營自學(xué)可以看的書有《用戶畫像與運(yùn)營》、《淘寶、天貓電商運(yùn)營百科全書》等等,深度講解運(yùn)營流程,內(nèi)容環(huán)環(huán)相扣,并配有操作演示截圖,非常有利...
今天為大家?guī)沓鯇W(xué)者的書法書籍推薦,經(jīng)供參考哦!有些初學(xué)書法的朋友很疑惑不知道看什么書能對自己有幫助,確實(shí)如果看對書籍是會對書法有些好處。以...
電商是一個低進(jìn)高出的領(lǐng)域,剛畢業(yè)的大學(xué)生也能輕松進(jìn)入場,但拉開人與人之間距離往往需要3-5年甚至更長的時間。這是一個人綜合實(shí)力的較量,除了平...
新手學(xué)習(xí)Python光看網(wǎng)上教程是不夠,書籍也是必備之一,沒有書籍就沒有可以參考的東西,假如不會代碼,參考書籍會提供給你,因此我們也需要一些...
Python是一種了不起的編程語言。它可以應(yīng)用于幾乎任何編程任務(wù),允許快速開發(fā)和調(diào)試,并帶來可以說是最受歡迎的用戶社區(qū)的支持。下面為大家推薦...
CAD(計(jì)算機(jī)輔助設(shè)計(jì))是一種廣泛應(yīng)用于工程設(shè)計(jì)和制圖的工具。下面是一個簡要的CAD制圖初學(xué)入門教程,以幫助您開始學(xué)習(xí)制圖的基礎(chǔ)知識和技巧。