網站首頁 學習教育 IT科技 金融知識 旅遊規劃 生活小知識 家鄉美食 養生小知識 健身運動 美容百科 遊戲知識 綜合知識
當前位置:趣知科普吧 > IT科技 > 

如何開發一個程序

欄目: IT科技 / 發佈於: / 人氣:9.4K
目錄部分1:提出想法1、頭腦風暴,想出好點子。2、分析其他程序。3、編寫設計文檔。4、從最簡單的部分做起。部分2:學習一門語言1、下載一個好用的文字編輯器。2、學習一門編程語言。3、下載編譯器或解釋器。4、學習基本的編程概念。5、看一些編程語言相關的書籍。6、參加一些課程。7、多提問題。部分3:創建原型1、先寫一段簡單的程序,包含最基本的功能即可。2、建立一個團隊。3、必要時從零做起。4、多寫註釋。部分4:阿爾法測試1、在阿爾法測試階段(阿爾法測試階段是指軟件開發過程中最早的階段,這時產品還沒有發佈給用戶,由開發團隊內部進行測試並修復bug——譯者注),測試團隊可以很小。2、一遍又一遍的測試你的原型。3、按照重要性處理問題。4、增加更多功能。5、測試你添加的每個功能。6、阿爾法階段結束後不要再添加新功能。部分5:貝塔測試1、擴大測試人員的人數。2、連接性能測試。3、優化你的軟件。4、繼續找問題。部分6:發佈你的程序1、做好市場規劃。2、把你的程序放在你的網站上。3、創立支援服務。4、一直保持更新。從汽車到智能手機,再到幾乎所有的行業,都能看到計算機程序的身影。隨着數字化的浪潮席捲世界,人們對計算機程序的需求將會不斷增長。那麼,如果你有一個很棒的想法,幹嘛不自己動手把它變爲現實呢?這篇指南將教你如何學習編程語言,然後把你的想法變成試用版的產品,再透過不斷改進,最後發佈讓公衆使用。

部分1:提出想法

如何開發一個程序

1、頭腦風暴,想出好點子。 一個好的程序的目標是讓人們的生活更方便。可以看一下現在已有的幫你完成工作的程序,是否有可以簡化或優化的地方?一個成功的程序一定是能讓用戶感到非常實用的。檢查一下你每天用電腦完成的工作, 是否有一些任務是可以讓程序自動幫你完成的?

把每個想法都寫下來。即使這麼做會顯得有點傻。說不準哪天這些想法就變成了偉大的創新。

如何開發一個程序 第2張

2、分析其他程序。它們做了什麼事?怎樣才能做的更好?它們是否錯過了什麼?回答這些問題可以幫你更好的提出自己的想法。

如何開發一個程序 第3張

3、編寫設計文檔。設計文檔應當勾畫出產品的主要功能和你完成它的方式,而且它能使你在開發過程中保持專注並更有計劃。你可以查閱一些關於如何寫設計文檔的資料。此外設計文檔還能幫你找出最適合你的項目的編程語言。

如何開發一個程序 第4張

4、從最簡單的部分做起。如果你是剛開始接觸計算機編程的話, 你應該從最簡單的東西做起並不斷進步。如果你用一段簡單的程序實現一個具體的目標,你將會學到很多東西。

部分2:學習一門語言

如何開發一個程序 第5張

1、下載一個好用的文字編輯器。幾乎所有的程序都是在文字編輯器中寫好然後被編譯和執行的。你可以使用像是記事本、TextEdit這樣的程序來寫代碼,但我更建議你下載一個支援語法高亮的編輯器,比如Notepad++, JEdit或Sublime Text。這樣的編輯器會讓你的代碼看起來一目瞭然。有些語言,比如說Visual Basic,自己的安裝包中就帶有編輯器和編譯器。

如何開發一個程序 第6張

2、學習一門編程語言。 所有的程序都是透過編碼實現的。如果你想要開發自己的程序,那麼你必須熟悉至少一種編程語言。哪種語言更適合你取決於你想要實現的程序的類型,然而最常用和重要的語言有以下幾種:C語言 - C語言是一門低級語言,這意味着它和計算機硬件的交互更爲緊密。C語言已經有很長的歷史了,但它仍然被廣泛使用。

C++ - C語言最大的弊端是它不是面向對象的,因此產生了C++。 C++是現在世界上最流行的變成語言了。許多常用程序,比如Chrome,Firefox,Photoshop都是用C++開發的。在視頻遊戲領域C++也非常流行。

Java - Java可以說是C++的進化版, 同時它的可移植性極強。絕大部分計算機,不論安裝了什麼操作系統,都可以執行Java虛擬機,因此Java程序幾乎可以在所有計算機上執行。它在視頻遊戲和商務軟件中被廣泛使用,因此被很多人視爲必不可少的語言。

C# - C#是一門基於Windows平臺的語言,也是Windows程序開發中用到的主要語言之一。他和Java和C++的關係很緊密,如果你對Java已經很熟悉了那麼學習C#會很簡單。如果你要開發Windows或Windows Phone程序,你需要好好學習下這門語言。

Objective-C - 這是C語言家族中的又一成員, 它被專門設計用於蘋果系統的開發。如果你想要開發iPhone或iPad應用,學習這門語言就對了。

如何開發一個程序 第7張

3、下載編譯器或解釋器。 對於像C++和Java這樣的進階語言,你需要有一個編譯器來把你的代碼翻譯成計算機可以直接使用的格式。根據你使用的語言的不同,有許多不同的編譯器可供選擇。有一些語言是解釋性語言,它們不需要編譯器。作爲替代,它們需要計算機上安裝一個解釋器, 然後這樣的程序就可以直接執行了。Perl和Python都是解釋性語言的代表。

如何開發一個程序 第8張

4、學習基本的編程概念。 無論你選擇了哪種語言,你都需要了解一些基本和通用的變成規範。弄清楚語言的語法規範能幫助你創建更爲強大的程序。這些通用的概念包括:聲明變量 - 變量是用於存儲你程序中的數據的。這些數據可以被存儲,修改,操作和再被讀取。

使用條件語句(諸如if, else, when等) - 這些語句是程序的基本功能之一,他們決定了程序的邏輯。條件語句是以"true"和"false"爲中心的。

使用循環。 循環讓你可以一直重複一段過程直到收到結束指令爲止。

使用轉義符 - 這些指令可以讓你創建新行、空白、引號等。

添加註釋 - 註釋對於幫你記住代碼的功能、幫其他程序員理解你的代碼以及暫時屏蔽代碼片段都很有用。

理解正則表達式。

如何開發一個程序 第9張

5、看一些編程語言相關的書籍。無論你是編程新手還是大牛,總有適合你看的書。你可以在附近的實體書店或者網上書店找到這樣的書。手邊有一本書以便工作的時候翻一翻是非常有用的。除了實體書之外,別忘了網絡上還有數不清的指南和教程,那都是你的寶貴財富。你可以在51CTO, CSDN, 網易雲課堂等網站上找到許多有用的指南。

如何開發一個程序 第10張

6、參加一些課程。 雖說只要用心每個人都可以自學編程, 但如果能有老師和教室這種環境也是大有裨益的。一位計算機專家一對一的輔導將會大幅度加快你掌握編程基礎知識和概念的速度。這些課程還能幫你進一步學習數學和邏輯等只是,這對於複雜的程序來講也是很有必要的。上課是要花錢的,所以你要確保你上的課能讓你學到想學的東西。

如何開發一個程序 第11張

7、多提問題。 互聯網可以讓你很方便的和其他開發者去的聯繫。 如果你在項目中遇到了棘手的問題,不妨到諸如StackOverflow這樣的網站上去尋求幫助。不過請確保你在提問之前已經嘗試了一些解決方法,並且你的問題描述應當清晰明確。

部分3:創建原型

如何開發一個程序 第12張

1、先寫一段簡單的程序,包含最基本的功能即可。 這就是你的程序原型,它表明了你最終想要實現的程序的功能。原型應當快速迭代,直到你找到了有效的設計模型。比如說,如果你想要開發一個日曆程序,那麼你的原型應該是一個簡單的日曆(帶有正確的日期)並能向其添加事件。在開發過程中你的原型會經常變化,因爲你常會想到更好的解決問題的辦法或是想要添加新的功能。

原型不需要很完美。事實上,藝術和設計上的工作是你最不需要關心的。還拿日曆的例子來說,你的原型看起來就像是純文字的也沒關係。

如果你要做一款遊戲,你的原型一定要有趣。如果原型都不有趣的話,很可能最終的結果也不會有趣。

如果你的原型無法體現你真正的想法,那麼也許你需要重新設計一個了。

如何開發一個程序 第13張

2、建立一個團隊。 如果你只靠自己一人開發程序,你不妨用程序原型幫你組建一個團隊。團隊合作能幫你更快的追蹤bug,迭代功能,和設計視覺效果等。對於小項目來說團隊並沒有什麼必要,但也能顯著的減少開發耗時。

要管理好一個團隊是個複雜和困難的過程,需要有高超的管理技巧和合理的團隊架構。你可以查閱一些關於如何領導一個團隊的指南。

如何開發一個程序 第14張

3、必要時從零做起。 一旦你掌握了一門語言,你就可以在短短几天內建立你的原型並讓它執行起來了。 因爲原型是用於快速迭代的,所以如果你覺得它不能讓你滿意,就請大膽的推翻自己的想法重新開始吧。

如何開發一個程序 第15張

4、多寫註釋。 除了程序中最基本的部分都儘量寫上註釋吧!這能幫你在不得不把你的項目擱置一段時間之後想起來你寫了什麼,還能幫其他開發者理解你的代碼。當你在一個團隊中工作時這一點尤爲重要。在測試代碼時你還可以用註釋暫時屏蔽掉代碼中的一部分。只需簡單的在你想屏蔽的代碼周圍加上註釋符號它們就不會再被編譯了。當你把註釋符號刪除時他們馬上就恢復了。

部分4:阿爾法測試

如何開發一個程序 第16張

1、在阿爾法測試階段(阿爾法測試階段是指軟件開發過程中最早的階段,這時產品還沒有發佈給用戶,由開發團隊內部進行測試並修復bug——譯者注),測試團隊可以很小。一個小的團隊可以讓你獲得更有用的反饋,並讓你和測試人員一對一的交流。每次你對程序原型作出改進時,新的程序版本都要發送給阿爾法測試人員。測試人員會測試全部的功能並盡全力把程序搞崩潰,並記錄下所有的結果。如果你在開發商業軟件,你最好保證你的測試人員都簽署了保密協議。這能防止他們把你的程序泄露給其他人、用戶或媒體。

抽出時間建立一個良好的測試計劃。要確保你的測試人員能夠很方便的彙報問題和獲得最新的程序版本。GitHub或其他代碼倉庫都是好用而且簡單的處理這個問題的工具。

如何開發一個程序 第17張

2、一遍又一遍的測試你的原型。 Bug是所有開發者都會有的煩惱。錯誤的代碼和不正確的用法都會導致各式各樣的問題,即使你的產品已經快完成了。所以你應當繼續修改你的原型,一遍又一遍的測試它。嘗試各種可能的辦法把它搞崩潰,然後再想辦法修復,讓它在將來不會再崩潰。如果你的程序要處理日期,就嘗試輸入一些古怪的日期。因爲很久以前或很久以後的日期都可能讓程序出現奇怪的問題。

輸入錯誤類型的變量。比如說如果你有一個表格是讓用戶填寫年齡的,就填幾個字進去看看程序會如何處理。

如果你的程序有圖形介面,就把每個地方都點一遍。看看當你回退到上一個介面,或者點擊的順序錯誤時會發生什麼。

如何開發一個程序 第18張

3、按照重要性處理問題。 當修正一個阿爾法版本的程序時,你要花許多時間修改有問題的功能點。當你處理來自測試人員的問題報告時,它們應當按照兩個標準排序:嚴重性和優先級。問題的嚴重性是衡量一個問題所能造成的危害的大小的標準。那些能讓程序崩潰、寫入錯誤數據、讓程序終止執行的bug是阻礙性的,必須第一時間被修復。那些不能正常工作或返回了錯誤結果的功能點是很嚴重的問題,然後那些讓程序很難看或者很難用的問題也是重要問題。除此之外還有一般、小問題和微不足道的問題幾個標準,這些問題影響的是小模組或不重要的部分。

問題的優先級決定了當你解決bug時下手的順序。軟件開發中修復bug是很耗時的一個過程,會佔用你開發新功能和優化現有功能的時間。因此,你必須考慮bug的優先級以便在最後的截止時間前完工。所有阻礙性和嚴重級別的問題都必須是最高優先級的, 有時會被叫做P1級。 P2級的bug則是指已計劃要修復但不會阻礙產品發佈的重要問題。P3和P4級的bug不一定會被修復,屬於"如果有了會更好"的範疇。

如何開發一個程序 第19張

4、增加更多功能。 在阿爾法階段,你需要爲你的產品增加更多的功能以使它更加接近你的設計文檔描繪的樣子。阿爾法階段是你的程序原型不斷進化爲完整的程序的過程。當這一階段結束時,你的程序應當實現了所有的功能。不要偏離你最初的設計文檔太遠。軟件開發中的一個常見問題是"功能狂",就是說把太多新的想法加入到產品中,導致最開始的關注點已經丟失了,把開發時間浪費在太多不同的功能上。你的程序應該把它要做的事情做到最好,而不是變成一鍋大雜燴。

如何開發一個程序 第20張

5、測試你添加的每個功能。在阿爾法階段,每當你添加新功能時,都要把最新的程序版本發給測試人員。版本更新的頻率完全取決於你的團隊的規模以及功能完成的進度。

如何開發一個程序 第21張

6、阿爾法階段結束後不要再添加新功能。 一旦你完成了你程序所需的所有功能,你就可以結束阿爾法階段了。這時不應該再加入任何新的功能了,並且要保證已有的功能可以正常工作。然後你就可以進行進一步的測試和優化,或者叫貝塔階段。

部分5:貝塔測試

如何開發一個程序 第22張

1、擴大測試人員的人數。在貝塔階段,程序將被分發給更多的測試者。 有些開發者會將貝塔階段公開,或稱爲公開貝塔階段。這將允許任何人註冊和參加產品的測試。你可以採用公開貝塔測試,也可以不用,這取決於產品的需求。

如何開發一個程序 第23張

2、連接性能測試。隨着程序被越來越多的人使用,可能你的程序的性能將取決於到服務器的連接數。貝塔測試讓你可以確認你的程序在很大的負載下是否還能正常工作,從而確保程序發佈時是可用的。

如何開發一個程序 第24張

3、優化你的軟件。 在貝塔階段,也不應該增加新的功能。所以你應該把注意力放在提高程序的美感和可用性上。在這個階段, 用戶介面的設計變的十分重要。要保證用戶在瀏覽程序和使用各項功能時沒有障礙。用戶介面設計和功能的結合是非常困難和複雜的。有些人就是全職做用戶介面設計的。只要保證你自己的工程是簡單易用、看起來舒服就行了,畢竟專業的用戶介面是需要資金和團隊的支援的。

如果你有相應預算,還是有許多從事圖形設計的自由職業者可以爲你設計一個用戶介面的。如果你有一個很棒的項目並期待它取得巨大成功,那就找一個用戶介面設計師加入你的團隊吧!

如何開發一個程序 第25張

4、繼續找問題。 在整個貝塔階段,你都應該給用戶彙報的問題做歸類和定優先級。因爲有更多的測試者測試了產品,很可能會發現新的問題。牢記項目的最終截止日期,按照問題的重要性把他們幹掉吧。

部分6:發佈你的程序

如何開發一個程序 第26張

1、做好市場規劃。 如果你想要獲取用戶,你就得保證他們能知道你的程序的存在。就好像任何其他產品一樣,你需要做一點廣告,好讓人們知道有這回事。市場推廣活動的廣度和深度取決於你程序的功能(你的程序是專業性的還是大衆性的?)和你可用的預算。下面有一些簡便的提高你的程序的知名度的方法:在相關的論壇上發帖子。要保證你遵守了發帖的論壇的規定以防你的帖子被屏蔽。

給一些科技媒體發送你的程序樣例。找一些適合你的程序的博客或網站,給他們的編輯發一個樣例程序詳細介紹一下你的程序。別忘了帶上幾張截圖。

在視頻網站上上傳一些視頻。如果你的程序是用來完成某種特定工作的,就做一些視頻來演示一下它是怎麼工作的,上傳到視頻網站上,並把他們標記爲"如何做。。。"類的視頻。

在社交媒體上創建主頁。你可以在微信、人人網上免費創建一個賬號或主頁來介紹你的程序,也可以在微博上發佈一些跟你的程序或公司相關的新聞。

如何開發一個程序 第27張

2、把你的程序放在你的網站上。對於小的程序,你大可以把程序檔案放在你的個人網站上。如果你想要對用戶收費的話你還需要引入一個付費系統。如果你的程序開始流行,你可能需要把程序檔案放在服務器上以便讓更多用戶下載。

如何開發一個程序 第28張

3、創立支援服務。一旦你的程序公之於衆,你總是會收到來自用戶的各種技術性問題,比如不知道該如何使用你的程序等。你的網站應當有全面的文檔和某種形式的支援服務,比如說論壇、電子郵件、人工服務或它們的組合。當然了,你能提供的服務取決於你的預算。

如何開發一個程序 第29張

4、一直保持更新。幾乎所有的程序在最初發布一段時間之後都要打補丁和更新。這些更新可能會修復一些嚴重的或不嚴重的問題,升級安全協議,提高穩定性,或者添加新功能,甚至重製用戶介面。不斷更新你的程序能幫你提高競爭力。

樣例代碼

樣本C++程序,樣本MATLAB程序

Tags: