有人問我畢業(yè)設(shè)計怎么寫最簡單?
?最近老有同學(xué)咨詢我畢業(yè)設(shè)計怎么做事最簡單的,做什么類型最好做,最容易通過?其實(shí)每個學(xué)校要求真不一樣,985 211的院?;径荚谕惴ù髷?shù)據(jù)分析和人工智能和圖像識別前沿技術(shù)靠攏,而普通的院校對學(xué)生的要求就是能做出來,在自己做的基礎(chǔ)上融入創(chuàng)新,還有一定的工作量作為標(biāo)準(zhǔn)。所以我這里介紹下常用的幾個模式:(網(wǎng)頁)javaWeb、微信小程序、安卓開發(fā),讓大家了解下。

NO.1
畢業(yè)設(shè)計要求的都是學(xué)生能夠獨(dú)立開發(fā)一個項(xiàng)目,項(xiàng)目的復(fù)雜程度是根據(jù)學(xué)校的要求來的,大體要實(shí)現(xiàn)前后臺設(shè)計。前臺,后臺,指的是具體頁面。前臺,是用戶直接能看到的頁面,所有人都可以訪問。后臺,是有權(quán)限的運(yùn)營人員或特殊用戶(比如淘寶賣家)用權(quán)限登陸后才看得到的頁面,除了能看到其他人看不到的報表外,在后臺還能修改前臺顯示給用戶看的內(nèi)容。這里吐槽下XXX管理系統(tǒng)之類的設(shè)計很多不能通過的原因就是管理系統(tǒng)大部分都是后臺管理界面表格+增刪改查,目前B站、淘寶很多成品就是這一類的網(wǎng)頁大部分都是邏輯性較弱,添加數(shù)據(jù),修改數(shù)據(jù),刪除數(shù)據(jù),表格展示完事,除非你能設(shè)計一整套邏輯流程才具有特色,這里我認(rèn)識一個同學(xué)設(shè)計了一套進(jìn)銷存,分了幾類角色,每一類的角色之間數(shù)據(jù)是關(guān)聯(lián)的,采購、銷售、管理員每個人的操作對系統(tǒng)都是影響巨大,系統(tǒng)設(shè)計的挺用心的,參考了一些商業(yè)系統(tǒng)和現(xiàn)實(shí)中的操作模式,每一次進(jìn)銷入庫出庫對統(tǒng)計,對銷售,對庫存都有影響,所以管理系統(tǒng)你想做的前提是你要設(shè)計一套邏輯基于你的特色的。下面給大家稍微了解下各個技術(shù)的一些特色和特點(diǎn):
NO.2Java Web(網(wǎng)頁):Java Web,是用Java技術(shù)來解決相關(guān)web互聯(lián)網(wǎng)領(lǐng)域的技術(shù)總和。web包括: web服務(wù)器和web客戶端兩部分。技術(shù)常用:Java、HTML、CSS Js. Ajax.http等。前端常用樣式框架Bootstrap、layuiHTML?指的是超文本標(biāo)記語言 (Hyper?Text?Markup?Language)。
HTML 標(biāo)簽是由尖括號包圍的關(guān)鍵詞,比如 <html>
HTML 標(biāo)簽通常是成對出現(xiàn)的,比如 <b> 和 </b>
標(biāo)簽對中的第一個標(biāo)簽是開始標(biāo)簽,第二個標(biāo)簽是結(jié)束標(biāo)簽
開始和結(jié)束標(biāo)簽也被稱為開放標(biāo)簽和閉合標(biāo)簽

簡單的網(wǎng)頁結(jié)構(gòu)

實(shí)際項(xiàng)目中的網(wǎng)頁結(jié)構(gòu)
網(wǎng)頁項(xiàng)目前端核心展示的就是html頁面,作為mvc模式中的視圖展示,也就是眼睛看到的所有界面都是通過網(wǎng)頁來實(shí)現(xiàn)的而js作為動態(tài)腳本語言,它的作用是用來豐富網(wǎng)頁的行為,點(diǎn)擊事件算最常用的一個事件,也就是你網(wǎng)頁點(diǎn)擊一下觸發(fā)了一個什么動作,比如你點(diǎn)擊下跳出彈窗,通過js來控制這個事件,同時css層疊樣式表(英文全稱:Cascading Style Sheets),是來干什么的?美化頁面,也就是你打王者榮耀的皮膚!通過css來實(shí)現(xiàn)頁面的各種美輪美奐的樣子設(shè)計,通俗點(diǎn)就是女生的化妝技能...
這大體上就是網(wǎng)頁設(shè)計前端所用到核心,后臺不講,因?yàn)闊o論是選網(wǎng)頁、小程序、安卓都需要實(shí)現(xiàn)對應(yīng)的后臺支撐,也就是無論選啥,你都要有一個后臺來支撐你這些前端展示的數(shù)據(jù)來源!
NO.2
很多人跟我說不會小程序怎么辦?小程序難不難?
微信小程序,小程序的一種,英文名Wechat Mini Program,是一種不需要下載安裝即可使用的應(yīng)用,它實(shí)現(xiàn)了應(yīng)用“觸手可及”的夢想,用戶掃一掃或搜一下即可打開應(yīng)用。
小程序真的很難?我覺得有網(wǎng)頁基礎(chǔ)的同學(xué),基本在1-7天內(nèi)就能學(xué)習(xí)上手。
框架程序包含一個描述整體程序的 app 和多個描述各自頁面的 page。一個框架程序主體部分由三個文件組成,必須放在項(xiàng)目的根目錄。

一個框架頁面由四個文件組成

看表格就能看出來,小程序本質(zhì)核心是不是跟網(wǎng)頁的核心是類似的。
MINA(MINA IS NOT APP) 是在微信中開發(fā)小程序的框架。
MINA的目標(biāo)是通過盡可能簡單、高效的方式讓開發(fā)者可以在微信中開發(fā)具有原生APP體驗(yàn)的服務(wù)。
MINA提供了自己的視圖層描述語言WXML和WXSS,以及基于JavaScript的邏輯層框架,并在視圖層與邏輯層間提供了數(shù)據(jù)傳輸和事件系統(tǒng),可以讓開發(fā)者可以方便的聚焦于數(shù)據(jù)與邏輯上。
MINA的核心是一個響應(yīng)的數(shù)據(jù)綁定系統(tǒng)。
整個系統(tǒng)分為兩塊視圖層(View)和邏輯層(App Service)
MINA可以讓數(shù)據(jù)與視圖保持同步非常簡單。當(dāng)做數(shù)據(jù)修改的時候,只需要在邏輯層修改數(shù)據(jù),視圖層就會做相應(yīng)的更新
MINA是騰訊給微信小程序命名的框架,其實(shí)他實(shí)際上應(yīng)用的是目前IT界最被推崇的MVVM模式。(vue也是mvvm模式)
MVVM是Model-View-ViewModel的簡寫。它本質(zhì)上就是MVC 的改進(jìn)版。MVVM 就是將其中的View 的狀態(tài)和行為抽象化,讓我們將視圖 UI 和業(yè)務(wù)邏輯分開。當(dāng)然這些事 ViewModel 已經(jīng)幫我們做了,它可以取出 Model 的數(shù)據(jù)同時幫忙處理 View 中由于需要展示內(nèi)容而涉及的業(yè)務(wù)邏輯

上圖描述了MVVM一個基本結(jié)構(gòu),看到了什么,是不是發(fā)現(xiàn)比MVC架構(gòu)中多了一個ViewModel,沒錯,就是這個ViewModel,他是MVVM相對于MVC改進(jìn)的核心思想。把Controller的數(shù)據(jù)和邏輯處理部分從中抽離出來,用一個專門的對象去管理,這個對象就是ViewModel,是Model和Controller之間的一座橋梁。
這里核心是什么是小程序很難么?NONONO,我只是告訴你,它的底層設(shè)計的就是為了讓你更好的去操作,簡單上手!
頁面結(jié)構(gòu)層 看到了么用view 去替換了div模塊結(jié)構(gòu),class依舊是網(wǎng)頁時代的樣式
<view?class="cu-bar?bg-white?solid-bottom">
??<view?class='action'>
????<text?class='cuIcon-titles?text-orange?'></text>?案例類卡片
??</view>
??<view?class='action'>
<switch?class='sm'?checked='{{isCard}}'?bindchange='isCard'></switch>
??</view>
</view>
然后配合js進(jìn)行數(shù)據(jù)渲染,跟傳統(tǒng)網(wǎng)頁基本是一致的結(jié)構(gòu),也就是說我們學(xué)習(xí)了什么,學(xué)習(xí)怎么在小程序上寫網(wǎng)頁結(jié)構(gòu)。
NO.3
安卓其實(shí)我不是特長,是我合作伙伴的最喜歡的一個技術(shù),但是我這個科普貼,就是讓大家了解下技術(shù),然后根據(jù)自己能力做出一個選擇,或者是個人的收獲就行。
安卓一般指Android。安卓是一種基于Linux內(nèi)核(不包含GNU組件)的自由及開放源代碼的操作系統(tǒng)。
對于 Android 來說,對于頁面的描述基本上在 xml 中定義的,比如:

頁面結(jié)構(gòu):?一個 id 為 layout 的 FrameLayout, 它的內(nèi)部包含一個 id 為 textViewHello 的 TextView 。
頁面樣式:?FrameLayout 和 TextView 各自的屬性:width、height,TextView 還有字號、顏色、文字內(nèi)容等。
Android有四大基本組件:Activity、Service、Broadcast Receivet、Content Provider。其中Activity是四大組件中最基本的一個,但基礎(chǔ)并不等同于簡單、不重要。恰恰相反,Activity作為基礎(chǔ)組件,學(xué)好Activity就是我們開發(fā)者學(xué)好Android的前提。
安卓技術(shù)如果你沒有系統(tǒng)的學(xué)習(xí)過,就不要嘗試在短時間內(nèi)做一個很復(fù)雜的安卓項(xiàng)目,我查閱了下安卓的學(xué)習(xí)周期如果從0開始的要4個月最基礎(chǔ),如果你只想做普通的新聞類的可以做,但是如果你要做一個比較復(fù)雜的一個app我還是建議找個人指導(dǎo)下安卓的項(xiàng)目學(xué)習(xí),因?yàn)榘沧可婕包c(diǎn)非常多,需要系統(tǒng)的學(xué)習(xí)才能夠,所以我這里只有短短的說明下安卓技術(shù)的一些基礎(chǔ),涉及的點(diǎn)很多。
小白科普文花了1個小時寫的,大家看看了解下,心里一些概念有數(shù)就可以了,其他不用過于深究,部分資料來自網(wǎng)絡(luò)加工。