微信小程序 談談在大學初次寫項目的體驗


說明:筆者重新規划了博客方向,想更詳細的講解微信小程序的所有技術內容,本文於2020年5月24日已做修改。

同時筆者也歡迎一起合作共贏,願意寫雜志,寫書,貢獻自己的一份微薄之力!

作為第零篇的講解,本文主要談談在大學初次寫項目的體驗


原文鏈接 https://blog.csdn.net/qq_41464123/article/details/104982019 ,轉載請帶上本段內容,謝謝配合。


 

已經近三周沒寫博客了,最近一直在忙着寫一個項目,趁現在項目所用的服務器申請還在審核備案,寫一篇博客,談談我在大學第一次寫正規付費項目的體驗哈哈。

 

一:寫項目的前提 

1.有良好的java基礎


    一般來說,寫項目都是在大三才開始的,大一大二都是在打基礎,那些基礎課程,比如專業課《C語言程序設計》、《C++程序設計》、《JAVA程序設計》、《數據結構》、《網頁制作技術》、《數據庫基礎》、《移動應用開發》(Android開發),甚至是《辦公自動化》;公共課比如《高等數學》、《離散數學》、《線性代數》......

    不說別的,寫項目最最常用的《JAVA程序設計》、《數據庫基礎》總要會把,Java要理解類和對象、繼承、多態、封裝等等,如果沒有這些基礎,相信沒有老師願意給你寫項目的機會;數據庫是99.9%的項目必備的模塊,可以說,一個項目沒有連數據庫,根本就不叫項目,對數據庫的基本sql語句,觸發器,存儲過程、游標總要會的吧?

 

2.熟悉前端的html+css+JavaScript基礎


    寫項目前后端都要會,現在流行前后端分離,但是在大學里老師接的項目,以及我們未來工作時寫的項目,難道真的會讓我們只單獨寫前端,或者只單獨寫后端嗎?我想,在廣大中小公司,恐怕沒人敢保證,而html+css+JavaScript正式前端界公認的基礎知識,無論是Ext,或者最近很火的Vue,或者JQuery模板,以及其他的前端框架,html+css+JavaScript都是基礎,這個會在《網頁制作技術》這門課中詳細學習。

 

二:尋找老師

 

    注重時機,有機會則抓住機會,無機會則創造機會。一般來說很多計算機老師會去校外接項目,一方面給自己的學生創造機會,鍛煉學生的實踐能力,另一方面也可增加自己的經濟來源。

    俗話說得好,是金子總會發光的,只要你是真的大佬,老師自然看的出來,當然也自然會同意你加入他的項目組,如果你特別厲害,老師們還會主動聯系你。這個時候你就要好好考慮,自己未來想要哪個方向發展,是做軟件開發?還是從事游戲開發?還是考研?還有是做嵌入式轉硬件?這個要結合你自己的學習經歷,想想自己會什么?對什么東西不熟練?對什么東西感興趣?對什么東西不感興趣?以及未來是去哪里發展?是北上廣深的大城市,還是回家就業?如果回家就業,自己家鄉的城市,哪些崗位比較多,哪方面工資比較高......這些都是你需要考慮的問題,想好了,再做選擇,比如我,我綜合考慮,決定從事軟件開發,找到了我心儀的項目導師。

 

三 : 老師能幫到你什么

 

1.給你提供寫項目的機會


    寫項目也有一個不約而同的流程,比如需求分析,什么物理、邏輯、概念設計等等,可能你沒寫過項目,在課堂上做這些過程的時候,會覺得很煩,可能回想,我要這個E-R圖有什么用?數據庫設計不是很簡單的嗎?其實這些流程是非常重要的,因為這直接決定了,你接下來項目的代碼編寫的高效性(時效性)。具體的會在后面詳細講解。

    作為初入項目組的萌新,你可能會一點java編寫,可能聽說過spring,但是基本上所有的人,都不可能把所有的流程都做的完美,老師可以根據你的能力和興趣,給你分配到合適的位置,比如讓你寫代碼,讓你做設計,甚至是圖片的美工。聞道有先后,術業有專攻,老師會挖掘你的閃光點。

    如果你只是在課堂上,自己會寫一個 Hello World!  ,或者是那種老掉牙的師生請假系統,或者是說那些課程設計的課堂中,拿了老師的代碼,改了幾個字,就沾沾自喜,那你就out了。知其然,不如知其所以然,你要徹底搞懂老師給的代碼中,那些功能是如何 實現的,不懂得一定要找老師答疑。寫項目和課堂中的不一樣,你要面對客戶難纏的需求,還有時間的約束,最重要的,你還會用到那些最近流行的框架,比如Vue、SSM、Spring boot,這對你的開發事半功倍。

 

2.給你答疑解難


    當你在寫項目的時候遇到不能實現的點,可以找老師求助,一方面作為老師,另一方面也為了趕項目時間,大多數情況會給學生答疑解難。這會讓你的學習生涯上,少走很多彎路。比如我之前再寫SSM的時候,一個BUG可能要卡一天,網上䙳資料,也不一定找到某個能用的解決方法。但是老師經驗會比你豐富的多,一般來說會短時間內看出你的錯誤,給你相應的解決方案,或者給你實現該功能的另外一個思路。雖然說自己思考,能鍛煉自己的思維能力,但是我們花大量時間在配置環境,安裝破解軟件上,你憑心自問,划算嗎?可以看看下面這個段子:

    今天一同學遠程面試移動端開發崗。

    HR問:請介紹一下你掌握的具體技能?


    同學說:本人擅長Ai、Fw、Fl、Ae、Pr、Id、Ps等軟件的安裝與卸載,精通CSS、JavaScript、PHP、ASP、C、C++、C#、Java、Ruby、Perl、Lisp、Python、Objective-C、ActionScript、Pascal等單詞的拼寫,熟悉Windows、Linux、Mac、Android、Ios、WP8等系統的開關機

如果你是HR,你會如何認為?

我們要學的東西有很多,大學時間很寶貴!要花時間在后續用得到的技術上!

我們要學的東西有很多,大學時間很寶貴!要花時間在后續用得到的技術上!

我們要學的東西有很多,大學時間很寶貴!要花時間在后續用得到的技術上!

 

 

四:項目需求分析


    下面給一個真實的項目的客戶需求

    房東掃描二維碼或點擊進入某個頁面,可以提交某些數據(比如姓名、手機號(短信驗證碼)、身份證號碼、出租房地址(45個村社供選擇后填寫詳細,比如選擇長街村后自己填寫5弄5號)、出租房地圖上定位、房屋信息(有幾間,面積)等信息),如房東有多套房子,可在同一界面進行多套房子的提交。提交后,后台或者村管理員點擊進行驗證通過。

    然后還可以提交自己的各個租戶(比如甲(里面又能包含姓名、手機號、身份證號、戶籍、工作單位、住在哪一間房間、開始入住、結束入住等信息),還有乙、丙、丁很多人),提交后能夠返回一個二維碼。每個出租房一個二維碼。我們這里做出來后貼在房子外面。

    對外公開后,只有房東和管理員掃描此二維碼能顯示里面(房東和此租戶)的所有內容。別人看不到里面的信息。

    同時房東能對里面信息進行編輯(比如誰什么時候退租了,誰新來租了),二維碼能顯示目前的租戶,

    管理員能看到二維碼里面信息(比如房東是誰,租戶誰什么時候退租了,誰什么時候新來租了),並進行編輯,后台(包括管理員)能看到這間房屋的歷史所有租戶的信息。

    然后比如公司宿舍,能大批量進行數據導入。EXCEL類型。

    我們后台也能對目前的所有在租戶進行統計和管理。比如刷選某個省份的租戶比較多,在戶籍處輸入河南,能顯示全部河南戶籍的租戶,(目前在租的和已退租的),然后刷選某個公司的,能顯示在某個公司上班的所有租戶。然后在地圖界面,能顯示鎮上,各個出租房的分布區域狀況。同時能導出EXCEL,里面包括房東、租戶的信息。

    這是一個微信小程序的項目,針對最近的新型冠狀病毒,XX市XX縣需要一套出租房登記系統,對外來的租戶進行登記。

    他分為房東用戶端(小程序)和管理員端,老師把小程序(包括前后端)交給了我,自己寫了管理員部分。

    首先可以看出,功能大致分為5個部分:登入注冊、房屋登記、租客登記、查詢房屋、查詢租客,所以我在主界面分為了這五塊

 

 

 

    然后點擊某個模塊,能實現該模塊的功能:

 

 

    具體實現技術,我會在后續專門寫一篇博客,現在不予討論。

 

五:數據庫設計

 

    我們的幾乎所有的項目,都需要和數據庫打交道。比如上面這個項目,房東用戶新增房屋,我們就要在數據庫插入一條房屋記錄,如果用戶要修改房屋數據,我們就要在數據庫更新這條記錄,刪除同理。比如房屋表,房屋需要用到哪些數據段?房屋ID?房屋名稱?房屋地址?房屋面積?這些都是我們需要考慮的,以及如何把房屋和房東、房東和租客關聯起來,都要事先想好,不要等到項目寫了一半了,再想起數據庫少個字段,這樣會反復在原有代碼上打補丁,造成不理想的后果。

    比如我首次寫這個項目,老師看了我的代碼,想說:

 

 

    其實說實話,我也想哭....

 

 

六:前后端開發

 

    有了上面的這些設計准備,我們就可以開始進行軟件開發了。我們先要學習一些知識,比如微信小程序的基本語法、如何發起請求,如何實現前后端交互,如何實現圖片上傳,如何實現地圖定位,如何實現頁面跳轉傳值,這些基本功都是我們需要的。

    而我首次寫項目的時候,因為時間緊,我是需要什么,就去學什么,而不是先學完再去做,比如某個功能需要實現定位,那么我就去網上查找相關資料,一個一個去嘗試,直到成功為止。

    這節的技術部分,我會在后續專門寫一篇博客,現在不予討論。

 

七:軟件測試

 

    軟件開發基本完成后,就進入測試階段。老師會把項目放在服務器上部署,並且會讓我們配合,一起前后端聯合調試,確保軟件功能萬無一失,滿足客戶的需求。這個時候就是反復調BUG,直到BUG被消滅。前期的代碼可讀性高,數據庫設計合理,需求分析到位,那么這個流程就會進展的很順利,否則是真的痛苦啊。

 

八:項目交付

    就是我們把項目給客戶,客戶把資金給我們,物物交換,那么,我們也可以拿到老師的分紅啦。

    大學寫項目大致就是這樣的流程,寫項目會給我們帶來很多好處。現在想想,以前寫的那些所謂的“項目”是多么膚淺,我們要做真正客戶需要的項目,而不是自己想當然的寫。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM