我是去年畢業的,軟體工程專業,學校給的畢設題目是實現一個電影院訂票系統,如圖。
先說個大前提:我們學校評比優秀畢業生的硬性條件之一是畢設必須拿到良以上。
從題目分析來看其實語言的選擇上來看是要使用JSP或者.net技術,但是作為一個迫切想要拿到優秀畢業生的人來說【其實想裝xヾ(≧O≦)〃嗷~】,自然不能使用這些比較古老的技術了,雖然我自身是一個Java系的支持者,但是為了最後在畢設答辯的時候可以在技術相關的選擇上給評委一種眼前一亮的感覺,最終我選定了以下的技術方案。
當然了,這裡如果是對某種技術沒那麼熟悉的話還是不建議選擇較新技術的,畢竟這是畢設。哦,這裡要說一點,去年我們那一屆,對於docker容器技術、進程管理、redis緩存和go語言和微服務這種概念有相關瞭解和應用的還是比較少的,大多是使用Java的三大框架,我個人是因為本身在學校便有不錯的技術基礎,並且算是熟悉這幾個技術的搭配使用,所以纔敢鋌而走險,當然了,最終的結果也證明瞭我的選擇是對的。
搭建基礎框架
技術方案選型好了,那麼接下來就是先搭好基礎框架了,搭建基礎框架相當於打地基,地基打好了後面寫業務就相當於添磚加瓦了,簡單分為以下幾步:
前面幾種環境的搭建大家可以自行谷歌百度,一搜一大把的那種,此處便不多描述了。關於模塊劃分,當年的我【嗯,現在老了(;′??Д??`)】是這樣劃分的
關於模塊劃分這一點,一定要注意的是劃分完一定要對照下畢設需求,大部分畢設上都有寫需要實現的功能有哪些,因此如果少了就翻車了,到時候會被評委屌飛︿( ̄︶ ̄)︿,寧可做多不可做少。
之後便是做服務劃分了,最終劃分結果如下
這裡的劃分思想我是基於平常做項目的時候劃分controller的思想進行劃分的,說實話,草根思想哈哈哈,不過在大學算是做了比較多的項目,也拿了比較多的獎項,所以對於這種劃分的話算是還是有一定的實操依據。
基礎框架搭建好了,接下來其實就是實現具體代碼的時候了,業務上的具體實現便不細說了,大體流程是這樣的,先定義介面,然後補充介面,服務端的大致流程跑通後,我再搭建前端,並且實現前端業務,再進行聯調,一邊聯調一邊修改介面。
最終為了給評委更加直觀的感受,可以直接通過域名打開,我將前端後端代碼都放到了我的騰訊雲伺服器上,這裡使用docker容器技術的好處就體現出來了,我直接將代碼提交到github上,然後再騰訊雲伺服器的ubuntu系統上直接clone下來,並且直接使用shell腳本打包發布部署,一鍵搞定,如果不使用docker的話,還要自己在ubuntu系統上重新搭建一份新的和本地一樣的環境,你還要求神拜佛不要出現依賴衝突或者其他亂七八糟的問題,不然你還要在上雲這一步花費不少的精力。
做了那麼多裝x的操作,目的就是為了那個優秀畢業生,我容易嗎我???
標題那麼裝x是怎麼回事呢?其實就是我從一開始做畢設開始,就開源了,地址:
作者:飯談編程
鏈接:http://www.imooc.com/article/287476
來源:慕課網
本文首次發佈於慕課網 ,轉載請註明出處,謝謝合作