大致分為兩部分
第一部分
一.要把實際問題提取為數(shù)學(xué)問題(相當(dāng)于數(shù)學(xué)中的建?!橄髥栴}具體化);
二.把其分解為若干個小的函數(shù),并明白每個小函數(shù)怎樣實現(xiàn)其功能,同時注意功能函數(shù)與主函數(shù)間的數(shù)據(jù)交互問題;
三.作出流程圖,整體把握,從而為軟件構(gòu)建良好的結(jié)構(gòu),但也應(yīng)該注意其細節(jié)問題;
四.優(yōu)化其算法(強調(diào)數(shù)學(xué)能力),并結(jié)合其算法選擇恰當(dāng)?shù)臄?shù)據(jù)結(jié)構(gòu),算法和數(shù)據(jù)結(jié)構(gòu)是軟件的靈魂;
五.編譯軟件,在編譯時要養(yǎng)成良好的書寫習(xí)慣,增強其可讀性;
六.調(diào)試軟件,可以函數(shù)為單元進行糾錯.
注意:你的思路不清晰,寫出來的東西沒有目的性,是因為
你沒有很好的整體結(jié)構(gòu)分析,從而無法整體把握.
第二部分
一,整體要實現(xiàn)什么功能
二,功能細化(模塊化),先干什么,再干什么,最后干什么
三,畫初步流程圖(把幾個模塊畫出來即可)
四,模塊之間的分析:一個模塊到另一個模塊之間的,怎樣變換,怎樣連接(優(yōu)化流程圖)
五,單個模塊分析:每個模塊要做什么(流程圖細化)
六,所有模塊結(jié)合連接,細化所有流程圖
七,分析單個模塊每步要用到的方法或者指令
八,總流程圖定型
九,紙上寫流程,對照流程圖分析其可行性,若不可行則返回
十,上機調(diào)試,加注釋
切記:流程圖很重要,需反復(fù)修改
大忌:拿到任務(wù),不仔細分析就寫軟件。即使是小軟件,我們也要養(yǎng)好良好的編程習(xí)慣,不要一味地追求結(jié)果。寫小軟件時可能比別人快,若是大軟件,一旦出現(xiàn)思維混亂,或者出現(xiàn)軟件調(diào)試不出來結(jié)果,那么你花在調(diào)試的時間,要比別人的多。磨刀不誤砍柴工。
軟件的優(yōu)化:屬于后期工作,只有調(diào)試出來后,才可以去優(yōu)化。在經(jīng)過不斷調(diào)試優(yōu)化的過程之后,一款軟件和程序才算真正現(xiàn)世。
本人也只是一個剛剛加入代碼世界的人,有什么問題大家踴躍提出,我會一一回答。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。