大體分爲兩部分
第一部分
一.要把實際問題提取爲數學問題(至關於數學中的建模→抽象問題具體化);
二.把其分解爲若干個小的函數,並明白每一個小函數怎樣實現其功能,同時注意功能函數與主函數間的數據交互問題;
三.做出流程圖,總體把握,從而爲軟件構建良好的結構,但也應該注意其細節問題;
四.優化其算法(強調數學能力),並結合其算法選擇恰當的數據結構,算法和數據結構是軟件的靈魂;
五.編譯軟件,在編譯時要養成良好的書寫習慣,加強其可讀性;
六.調試軟件,能夠函數爲單元進行糾錯.
注意:你的思路不清晰,寫出來的東西沒有目的性,是由於
你沒有很好的總體結構分析,從而沒法總體把握.
第二部分
一,總體要實現什麼功能
二,功能細化(模塊化),先幹什麼,再幹什麼,最後幹什麼
三,畫初步流程圖(把幾個模塊畫出來便可)
四,模塊之間的分析:一個模塊到另外一個模塊之間的,怎樣變換,怎樣鏈接(優化流程圖)
五,單個模塊分析:每一個模塊要作什麼(流程圖細化)
六,全部模塊結合鏈接,細化全部流程圖
七,分析單個模塊每步要用到的方法或者指令
八,總流程圖定型
九,紙上寫流程,對照流程圖分析其可行性,若不可行則返回
十,上機調試,加註釋
切記:流程圖很重要,需反覆修改
大忌:拿到任務,不仔細分析就寫軟件。即便是小軟件,咱們也要養好良好的編程習慣,不要一味地追求結果。寫小軟件時可能比別人快,如果大軟件,一旦出現思惟混亂,或者出現軟件調試不出來結果,那麼你花在調試的時間,要比別人的多。磨刀不誤砍柴工。
軟件的優化:屬於後期工做,只有調試出來後,才能夠去優化。在通過不斷調試優化的過程以後,一款軟件和程序纔算真正現世。
本人也只是一個剛剛加入代碼世界的人,有什麼問題你們踊躍提出,我會一一回答。java