03.02 如何開發一個軟件?

ciaoshuang


這裡以Windows桌面軟件開發為例,簡單介紹3個非常好用的開發工具或者編程語言,只需要簡單的拖拽控件,編輯屬性,就可快速設計一個GUI界面或軟件,感興趣的朋友可以嘗試一下:

01

Delphi

這是Windows平臺下一個非常不錯的桌面軟件開發工具,在早期的Windows GUI開發中,一直有著較高的使用率和影響力,好學易懂,非常容易入門,對於桌面軟件開發來說,不需要太多的編程基礎,只需要簡單的拖拽控件,設計屬性,就可快速創建一個可視化界面,所見即所得,如果你需要開發一個小型桌面軟件,可以考慮使用一下這個工具,效率非常不錯:

02

C#

這是微軟主推的一個編程語言,在Windows平臺下有著廣泛的使用率,目前也是Windows桌面軟件開發的主力,對於初學者來說,只要你有一定的編程基礎,非常容易入門,自帶有可視化設計界面和眾多控件,只需要簡單拖拽就可創建一個GUI界面,支持各種主流數據庫開發,包括SQL Server、MySQL等,如果你需要快速開發一個應用或者管理軟件,可以使用一下這個語言,非常不錯:

03

Qt

這也是一個非常不錯的應用程序開發框架,基於C++語言開發而來,相比較C#來說,在跨平臺性和運行效率上能更勝一籌,自帶有可視化設計工具,控件種類繁多,只需簡單拖拽,編輯屬性,就可快速創建一個GUI界面,支持CSS美化,如果你需要開發一個跨平臺的桌面應用,可以考慮使用一下這個框架,非常不錯:

目前,就分享這3個非常不錯的桌面軟件開發工具或編程語言吧,對於日常桌面軟件開發來說,完全夠用了,當然,還有許多其他工具和語言也支持桌面開發,像PB,VB,Electron等也都非常不錯,在實際開發中,根據需求選擇合適的一種或幾種就行,網上也有相關教程和資料,介紹的非常詳細,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言進行補充。


小小猿愛嘻嘻


1、確定下需要學習做軟件的編程語言,做手機端的app的話建議java,做windows的桌面應用建議學C#,C#比較容易上手,而且,你如果學會java的話,C#也就差不多了,因為C#和java非常相似。

2、編輯器的選擇,編輯器這樣東西是非常重要的,有很多編輯器都是綜合性的,能同時開發好幾種語言,但是如果想要設計一個安卓的app的話,建議使用android studio,這是谷歌官方推出的款專門開發安卓app的軟件,基本上所有的安卓工程師都是使用這個軟件的,同時選擇好編輯器在遇到bug的時候可以在百度上找到非常多的答案,因為有些編輯器報告的錯誤可能是不一樣的。而做windows桌面開發的話,使用vs studio,這是微軟官方推出的專門用來開發C或C#,C++的編輯器。

3、構件軟件的基本框架,你想要開發的這個軟件的應用場景,準備用這個軟件幹什麼,以及開發這個軟件的功能有哪些,理清楚軟件的設計流程,建議用word或者是Axure畫個流程圖,把軟件設計的邏輯條理清楚。

4、進行詳細的設計,比如說才開始的登錄註冊頁面,用戶在註冊的時候是使用什麼方式註冊,是手機號註冊?或者是其他什麼方式,註冊完肯定是直接登錄的,登錄是否要記住密碼,登進去的主頁有哪些功能,而每個功能點進去的時候有以什麼樣的方式呈現給用戶等等。

5、進行代碼的開發工作,我需要學習編程語言的哪些知識才能實現用戶的註冊,當用戶註冊完成之後自動跳到登錄界面,這時候的登錄界面想要記錄下你剛才註冊的用戶名和密碼,點擊登錄之後,跳轉到主頁上,這個過程需要用到哪些技術。

6、測試階段,當開發完成後就要測試一下你的軟件是否存在bug,比如在這臺電腦可以使用,但是換臺電腦就不行了。這就是兼容性的問題。多測試一下,或者多找幾個人幫忙測試,都是可以的。

7、公佈階段,這個時候你就可以把做的軟件上線到網上或者應用商店,讓別人都可以使用你的軟件,當然,如果僅限自己使用,就不用這麼麻煩了。


愛編程,愛生活


  1. 1、使用APICloud開發app,首先電腦打開網站;

  2. 2、然後進行註冊賬號,通過手機激活之後可以正常操作了。

  3. 3、註冊成功之後登陸網站。左邊是大按鈕是創建應用了。右上角是一些控制檯,文檔等內容。


  4. 4、點擊創建應用,彈出對話框,選擇Native,即創建客戶端軟件。輸入一些基本信息點擊創建。


  5. 5、在操作預覽中。點擊左側進行一些基本設置,如端設置,模塊的添加等操作。


  6. 6、設置完之後,回到到首頁,導航上找到開發,看到客戶端下載,這個就是開發工具了,下載和安裝。


  7. 7、安裝後點擊打開,出現登陸框,用剛註冊的賬號進行登陸。


  8. 8、登陸後,在雲端資源庫中看到剛才新建的項目,其實也就是svn了,也可以在這裡新建項目的。



  9. 9、可以看到這個目錄結構,原來都是寫html頁面,確實主要是h5開發的,通過調用封裝的js,以及添加模塊等進行開發。


  10. 10、等開發完後,可以手機連接電腦進行真機測試。


  11. 11

    11、測試完畢後,登陸網站進行雲編譯了,兩個版本的App就可以完成生成。


勤奮的紅雨


首先,這個問題太籠統,軟件開發有很多種,比如是C/S 還是B/S,是PC端,APP端,還是小程序,H5的,都是不一樣的,並且一個軟件也是由多種角色共同協作完成。這裡說一些比較常用的軟件開發。

基礎知識

不管是做什麼軟件開發都會涉及計算機基礎知識。操作系統,計算機網絡,數據結構,算法等。
①操作系統,是管理計算機硬件和軟件資源的應用程序。我們開發的任何軟件都需要運行在操作系統之上,都需要使用操作系統管理的硬件和軟件資源。
②計算機網絡,是實現不同計算機間資源共享和信息傳遞的計算機系統。因為我們開發的軟件不可能只是自嗨,還需要與其他系統進行通信,特別是分佈式系統。
③數據結構,是計算機存儲和組織數據的方式,良好的數據結構可以提高軟件運行和存儲數據的效率,也就是軟件運行的更快。

④算法,是處理問題的方案,也就是軟件所解決的業務問題,良好的算法可以通過軟件處理問題的質量和效率。

問題分析

任何一個軟件都是要為一定的用戶解決一定的問題或提供一定的服務。在軟件開發之前,要對軟件的用戶群體和功能有清晰的目標。並且作為軟件的產品經理或者發起人能夠畫出軟件的原型,用於指導後期的的開發。能夠回答以下幾個問題?
①軟件的受眾群體是誰?小學生,中學生還是大學生,還是?
②軟件提供的服務是什麼?也就是軟件的功能是什麼?
③軟件需要多久能夠開發完成?
④軟件形式是什麼樣的?PC web端,APP端,還是小程序?

⑤軟件開發團隊需要多少人開發?

技術選型

根據上面問題⑤對軟件進行技術選型,選型的因素有幾個:技術框架的穩定性和社區活躍度,人員和時間成本,團隊成員的技術棧。
①PC端,分為前端和後端,前端比較常用的就是React、Vue等,後端有spring boot/cloud,nodejs等,數據庫mysql。
②APP端,又分為Android和IOS,也可以是混合式開發或者H5開發。

③小程序,現在有微信小程序,百度小程序,阿里小程序,頭條小程序,現在應該一套代碼多端發佈的平臺。

團隊組織

從軟件開發的角色上可以分為:產品經理,UI/UE設計,後端開發,前端開發,移動端開發,最好還有一個架構師能夠總體把握軟件的架構設計。根據軟件的不同,一般一個團隊規模在4-5個人左右即可。

計劃實施

之前的工作都做好後,就開始實施開發了。為了保證軟件開發的進度,要制定軟件開發計劃,可以採用敏捷軟件開發,以MVP粒度迭代交付軟件功能,儘快交付用戶使用,儘快反饋問題,持續改進。迭代週期一般以周為單位,可根據團隊大小和功能複雜度調整。在實施過程中,可以使用DevOps平臺,能夠可視化軟件需求的流動情況以及自動化軟件的構建和部署,加速軟件的交付速度。

以上是自己的一些見解,希望對大家有幫助。個人介紹:10年軟件開發經驗,3年DevOps開發設計經驗,目前在互聯網金融公司任DevOps架構師,歡迎DevOps領域的小夥伴關注交流。

DevOps亮哥


一,設計框架,流程。

1.程序啟動運行界面。直接進入,還是驗證用戶。

2.主界面。佈置哪些菜單,功能。

3.公共模塊功能,接口,參數。

4.各模塊協調運作。

二,寫代碼。

工具:Delphi,VB,C#,其他。

構思代碼。

運行調試。

三,測試試用,修改。

四,編寫文檔,小軟件可省略。





月眠雲中


開發一個軟件是一個很複雜的事情,在實際開發中要考慮到很多問題,比如開發框架的選擇,開發語言的選擇,以及開發的成本問題,開發框架是否具有可擴展性,如果未來業務迅速增長,能否應對未來的高併發問題等等。

先拋開這些問題不說,單說開發流程吧,首先要進行要根據你的需求確定業務流程,然後進行技術選型,當架構師把框架搭好,配置好相應的服務器後組織開發人員進行開發,開發完成還要進行測試,測試通過後把項目部署到服務器上就可以運行了,別人下載了你的軟件後,打開你的軟件就可以使用你的軟件了,剩下的就是軟件的維護了,大概的流程就是這樣的。

如果想要深入瞭解軟件開發的流程,建議買些書來看,或是進行系統的學習下,因為如果你是外行的話,你很難明白我說的是什麼意思,你也可以去找一份軟件開發的工作實習下,瞭解完了再辭職就是了,不親身經歷下,怎麼會有收穫呢?


JAVA異世界


都這個年代了還有人再推delphi


muyangrenjie


確定自己想要啥樣的軟件,找有能力的開發公司和個人,搞的。

類似的問題:

如何做一枚核彈?

如何創造一個地球?

如何入學霍格沃茨魔法學校?

...


虛擬宇宙實感開發者一


人來開發


分享到:


相關文章: