小程序開發(fā)需要后臺(tái)嗎(小程序要后端嗎)
本篇文章給大家談?wù)勑〕绦蜷_發(fā)需要后臺(tái)嗎,以及小程序要后端嗎對(duì)應(yīng)的知識(shí)點(diǎn),希望對(duì)各位有所幫助,不要忘了收藏本站喔。
本文目錄一覽:
- 1、寫一個(gè)小程序項(xiàng)目,那小程序和后臺(tái)需要聯(lián)動(dòng)嗎
- 2、小程序開發(fā)需要后端嗎
- 3、一個(gè)小程序的后臺(tái)是web端
- 4、小程序開發(fā)了模版商城后臺(tái)從哪獲取
寫一個(gè)小程序項(xiàng)目,那小程序和后臺(tái)需要聯(lián)動(dòng)嗎
寫一個(gè)小程序項(xiàng)目那小程序和后臺(tái)需要聯(lián)動(dòng)嗎?你好,很高興接到你的回答,寫一個(gè)小程序項(xiàng)目那小程序和后臺(tái)不需要聯(lián)動(dòng)
小程序開發(fā)需要后端嗎
看您的小程序需不需要后臺(tái)管理,如果像那些展示類的小程序,數(shù)據(jù)如果是死的話,就不需要后端,如果想定時(shí)更新數(shù)據(jù)的話,那就得后端開發(fā)一個(gè)后臺(tái)管理
一個(gè)小程序的后臺(tái)是web端
小程序
第一個(gè)web項(xiàng)目-微信小程序后端開發(fā)
?
第一個(gè)web項(xiàng)目-微信小程序后端開發(fā)
前言
需求分析
團(tuán)隊(duì)分工
總體設(shè)計(jì)
開發(fā)工具及編碼實(shí)現(xiàn)
小程序前端
后端
數(shù)據(jù)庫(kù)
接口代碼
管理系統(tǒng)前端1.0
管理系統(tǒng)前端2.0
測(cè)試
后端本地測(cè)試
前后端聯(lián)合測(cè)試
部署
總結(jié)
第一個(gè)web項(xiàng)目-微信小程序后端開發(fā)
前言
去年暑假一個(gè)偶然的機(jī)會(huì)我和幾位同學(xué)加入了學(xué)院一位老師主持的教改項(xiàng)目,需求是開發(fā)一個(gè)基于SPOC與翻轉(zhuǎn)課堂的計(jì)算機(jī)組成原理課程的學(xué)習(xí)app(類似慕課、知到),后來經(jīng)過討論決定降低難度,先做一個(gè)微信小程序,附帶一個(gè)后臺(tái)管理系統(tǒng),于是我的第一個(gè)web項(xiàng)目就開始了~
需求分析
這里簡(jiǎn)單介紹下SPOC和翻轉(zhuǎn)課堂的意思
翻轉(zhuǎn)課堂
“翻轉(zhuǎn)課堂”(Flipping Classroom)是一種顛覆傳統(tǒng)教學(xué)由“課堂授課聽講 + 課后作業(yè)練習(xí)”轉(zhuǎn)變?yōu)椤罢n前自主學(xué)習(xí) + 課堂協(xié)作探究”的新型教學(xué)模式。
SPOC
SPOC(Small Private Online Course)一般被譯為小規(guī)模限制性在線課程或者小規(guī)模私有型網(wǎng)絡(luò)課程,音譯為“私播課”。
這次項(xiàng)目的需求是開發(fā)一個(gè)學(xué)習(xí)類型的小程序,用戶分為學(xué)生和教師,其中學(xué)生可以觀看視頻、課件、動(dòng)畫,完成作業(yè)、考試以及發(fā)布評(píng)論、點(diǎn)贊、回復(fù),而教師可以上傳教學(xué)視頻、課件、動(dòng)畫和發(fā)布作業(yè)、考試、通知,以及查看學(xué)生的學(xué)習(xí)情況,也可以查看評(píng)論回復(fù),及時(shí)解答學(xué)生的疑惑。
團(tuán)隊(duì)分工
團(tuán)隊(duì)一共有四個(gè)人,總體工作分為產(chǎn)品設(shè)計(jì)、前端開發(fā)、后端開發(fā)三部分,然后每部分由兩人負(fù)責(zé)。其中我是負(fù)責(zé)后端開發(fā)的,同時(shí)兼任項(xiàng)目負(fù)責(zé)人(其實(shí)也沒有聽上去那么高大上,只是需要承擔(dān)更多決策、協(xié)調(diào)、溝通的角色)。
總體設(shè)計(jì)
這里分為小程序和管理系統(tǒng)
首先是小程序,放幾張使用墨刀制作的原型圖,這里多說兩句,市面上的小程序基本都是微信授權(quán)直接登錄,最多綁定手機(jī)號(hào),我們這個(gè)由于要統(tǒng)計(jì)學(xué)生的學(xué)習(xí)情況才設(shè)置了注冊(cè)和登錄功能
至于管理系統(tǒng),由于是10月份才開始做的,而且是我和另一位做后端的同學(xué)負(fù)責(zé)的,時(shí)間比較緊,我們作為前端小白沒有十分系統(tǒng)的方法去做開發(fā),只是大概確定了需要做哪些模塊,每個(gè)模塊對(duì)哪些表的增刪改查,這里原型圖就不放了(較簡(jiǎn)陋)
開發(fā)工具及編碼實(shí)現(xiàn)
小程序前端
據(jù)我了解,做前端的同學(xué)先去微信公眾平臺(tái)注冊(cè)賬號(hào),然后做一些開發(fā)設(shè)置,具體步驟自行百度。前端用的是微信開發(fā)者工具,有不會(huì)的基本上在微信開放文檔都可以找到,包括許多實(shí)用的API。
后端
這里分為數(shù)據(jù)庫(kù)、接口代碼兩部分
數(shù)據(jù)庫(kù)
用的是mysql數(shù)據(jù)庫(kù),之前是跟著學(xué)堂在線的一個(gè)小程序入門教程做的,它推薦的本地開發(fā)環(huán)境是phpstudy,里面集成了php、mysql、apache、FTP、Nginx以及數(shù)據(jù)庫(kù)管理工具phpMyAdmin,關(guān)于phpMyAdmin使用請(qǐng)看
原本的數(shù)據(jù)庫(kù)設(shè)計(jì)得不好,存在較多冗余數(shù)據(jù),后來學(xué)習(xí)了數(shù)據(jù)庫(kù)系統(tǒng)這門課,我進(jìn)行了大改,先確定有哪些實(shí)體以及實(shí)體之間的聯(lián)系,然后畫er圖,最后再建模,通過外碼約束大量減少了冗余,也減少了表的數(shù)量。
接口代碼
教程使用的是php語言,框架是thinkphp5,開發(fā)手冊(cè)看,我當(dāng)時(shí)是去b站找視頻學(xué)了下php基礎(chǔ)語法,然后就去學(xué)原生php以及框架如何操作數(shù)據(jù)庫(kù)。然后根據(jù)業(yè)務(wù)邏輯開始編碼,其實(shí)每個(gè)接口(或者叫類里面的一個(gè)函數(shù))結(jié)構(gòu)都差不多,主要是三部分:接收前端傳來的數(shù)據(jù)、增/刪/改/查、返回結(jié)果給前端。
順便說下代碼編輯用的是sublime text3,教程看,這個(gè)不是ide,沒有那么多的功能比如調(diào)試、運(yùn)行,單純是只有編輯、加注釋、格式化等等,這里吐槽下自帶的格式化代碼功能(先選擇代碼,再Edit - Line - Reindent),有點(diǎn)辣雞。而且如果有語法錯(cuò)誤不會(huì)像eclipse那樣自動(dòng)檢測(cè)出來,之前被坑了幾次,肉眼找不到的話只能用postman去測(cè)試了。
管理系統(tǒng)前端1.0
一開始我們是不知道還要做個(gè)管理系統(tǒng)的,以為所有功能都放在小程序,后來老師跟我們討論聊到這個(gè)問題,我們才知道原來還有這回事,其實(shí)就是管理系統(tǒng)應(yīng)該具有一切功能,即對(duì)數(shù)據(jù)庫(kù)所有表的增刪改查,而小程序只需要有些輕量的功能即可,至于上傳大容量文件、查看學(xué)習(xí)情況這些不夠輕量的功能全部放在管理系統(tǒng)。好吧,凡事總有第一次,我們就開始學(xué)習(xí)基本的前端三件套html,css,javascript。
開始做的時(shí)候我們希望先實(shí)現(xiàn)功能,界面難看點(diǎn)沒有太多關(guān)系,于是學(xué)了部分三件套的基礎(chǔ)后又學(xué)了ajax技術(shù)(因?yàn)橐c后端通信),這里最開始用的是創(chuàng)建XMLHttpRequest 對(duì)象,用open()方法設(shè)置請(qǐng)求類型和url,用send()方法發(fā)送數(shù)據(jù)到后端,直到遇到了jquery,后面的請(qǐng)求統(tǒng)一都用$.ajax()了。
接下來又遇到了一個(gè)難點(diǎn),因?yàn)榛径加帽砀駚碚故緮?shù)據(jù),那獲取數(shù)據(jù)后如何動(dòng)態(tài)地加入表格呢?查找資料后用每一條數(shù)據(jù)拼接成由tr標(biāo)簽包含的字符串,然后用jquery獲取表格標(biāo)簽后調(diào)用append()方法加入表格中。
除此之外,我們想在每行末尾設(shè)置按鈕進(jìn)行事件處理,于是我們append數(shù)據(jù)的同時(shí)也把button標(biāo)簽放入剛才的字符串中,然后給每個(gè)button設(shè)置id屬性,比如用于修改數(shù)據(jù)的就叫fixi,最后這個(gè)i是代表表格第幾行,然后添加事件監(jiān)聽,點(diǎn)擊button時(shí)獲取id,然后查看最后一位是多少?gòu)亩_定是第幾行。
這些做法實(shí)現(xiàn)起來是挺繁瑣的,而且感覺在重復(fù)造輪子,我們也做得有點(diǎn)郁悶,因?yàn)槊總€(gè)頁(yè)面基本都要這樣做,但是當(dāng)時(shí)沒有那么多的時(shí)間精力去學(xué)習(xí)框架,只是想先實(shí)現(xiàn)功能(u1s1,上學(xué)期的課多到我快吐了)。
放兩張界面圖
管理系統(tǒng)前端2.0
之前放假,總算有較多空余時(shí)間了,我們決定要改下界面,但畢竟自身水平不高,因此需要用一點(diǎn)第三方的東西了。
在跟小程序前端測(cè)試了部分功能后,有一天后端同學(xué)找到了一個(gè)開源的框架然后我們一起看了下說明文檔,最后決定:就用它了。
有請(qǐng)layui登場(chǎng),經(jīng)典模塊化前端框架、低門檻開箱即用。
真正使用之前可以先看看文檔,個(gè)人感覺上手還是挺快的。layui提供了許多實(shí)用的組件包括彈出層、表格、表單、文件上傳、流加載等等。
就拿表格來說,之前我們用append動(dòng)態(tài)添加數(shù)據(jù),現(xiàn)在直接table.render(),設(shè)置好參數(shù)就行了;之前我們給button設(shè)置id進(jìn)行事件處理,現(xiàn)在綁定工具條,直接table.on()就行了;而且之前我們沒實(shí)現(xiàn)的分頁(yè),現(xiàn)在設(shè)置分頁(yè)參數(shù)就行了,然后查詢數(shù)據(jù)庫(kù)時(shí)分頁(yè)讀取。
另外,layui提供了一個(gè)頁(yè)面布局的模板,包括logo、用戶名、退出按鈕、導(dǎo)航欄以及一些css動(dòng)畫。我們要做的就是按照它的模板來,頁(yè)面元素的樣式也參考它提供的。
有了layui的助攻,我們可以將更多注意力放在業(yè)務(wù)邏輯上,更多關(guān)注用戶體驗(yàn)。
測(cè)試
后端本地測(cè)試
工具:postman
使用:打開一個(gè)新窗口,選擇請(qǐng)求類型,輸入url,設(shè)置參數(shù),點(diǎn)擊send
這種測(cè)試我認(rèn)為是模擬前端發(fā)送數(shù)據(jù)然后運(yùn)行后端代碼,看結(jié)果是否正確,屬于白盒測(cè)試,但是我們不是專業(yè)測(cè)試人員,目前這樣測(cè)試不是做得很規(guī)范,只能盡可能想到不同的測(cè)試用例。
前后端聯(lián)合測(cè)試
由于放假回家了沒辦法面對(duì)面,只能借助騰訊會(huì)議線上測(cè)了。
在部署工作完成之后,一般是我們寫好接口代碼,然后把url和需要的參數(shù)告訴前端同學(xué)(這里注意下,微信小程序的請(qǐng)求api只允許https開頭的url,而且前端必須在微信公眾平臺(tái)配置好合法域名,不然會(huì)報(bào)錯(cuò)),前端把這些東西填入那個(gè)wx.request的api然后運(yùn)行,他們會(huì)查看返回的數(shù)據(jù)是否正確,我們會(huì)查看數(shù)據(jù)庫(kù)的情況,如果沒問題會(huì)測(cè)試多幾個(gè)數(shù)據(jù),都可以的話就到下一個(gè)功能,這種方式應(yīng)該是屬于軟工講到的V模型的單元測(cè)試。
部署
用的是新浪云,實(shí)名認(rèn)證、學(xué)生認(rèn)證后會(huì)送一些云豆(新浪云的計(jì)費(fèi)單位,1RMB=100云豆)
跟著之前說的教程把整個(gè)thinkphp項(xiàng)目部署到新浪云,具體步驟看
代碼
在代碼管理那里可上傳壓縮包,或者在線編輯(跟記事本差不多),改動(dòng)大的最好在本地寫好再貼上去
數(shù)據(jù)庫(kù)
開啟共享型mysql服務(wù),目前用了phpmyadmin4.9版本,然后建表或?qū)雜ql文件
緩存
開啟memcached服務(wù),設(shè)置容量16MB(省點(diǎn)錢),其實(shí)這個(gè)服務(wù)我不是很清楚干什么的,但如果不打開訪問接口時(shí)會(huì)報(bào)致命錯(cuò)誤?
文件存儲(chǔ)
我們需要保存許多類型的文件包括視頻、課件、動(dòng)畫、作業(yè)、考試、頭像,因此需要存放在服務(wù)端。這里開啟storage服務(wù),使用方法看,普通用戶配額5個(gè)bucket,每個(gè)容量10G,然后直接當(dāng)作本地磁盤那樣用就行了,控制臺(tái)或?qū)懘a都可上傳文件,上傳后獲得url,然后就可以通過網(wǎng)絡(luò)訪問,關(guān)于新浪云環(huán)境下php如何操作看官方文檔。
域名
應(yīng)用信息可查看二級(jí)域名,獨(dú)立域名需要購(gòu)買且備案
日志
日志中心可查看每次請(qǐng)求的接口、時(shí)間、請(qǐng)求方設(shè)備等信息
其它
控制臺(tái)還可以實(shí)時(shí)查看流量統(tǒng)計(jì)、資源使用情況,以及消費(fèi)情況
總結(jié)
這個(gè)項(xiàng)目我也算前后端都做了一遍,感覺前端不太適合自己,可能是對(duì)頁(yè)面元素樣式、用戶體驗(yàn)不夠敏感,不過必須承認(rèn)前端是挺有意思的。至于后端是更加注重邏輯,目前我對(duì)后端的了解只停留在數(shù)據(jù)庫(kù)、網(wǎng)絡(luò)、部署層面,其實(shí)如果用戶數(shù)量非常多還要考慮高并發(fā)的問題,也就要使用多線程、負(fù)載均衡、消息隊(duì)列等技術(shù)了,所以還有很多技術(shù)需要學(xué)習(xí)
小程序開發(fā)了模版商城后臺(tái)從哪獲取
小程序開發(fā)了模版商城沒有后臺(tái)。根據(jù)查詢相關(guān)資料顯示初始化后有個(gè)model文件里面模擬的數(shù)據(jù),是沒有后臺(tái)的。小程序可以理解為APP程序中的子程序,小程序在主程序允許的規(guī)范下進(jìn)行開發(fā)所需要的功能。
小程序開發(fā)需要后臺(tái)嗎的介紹就聊到這里吧,感謝你花時(shí)間閱讀本站內(nèi)容,更多關(guān)于小程序要后端嗎、小程序開發(fā)需要后臺(tái)嗎的信息別忘了在本站進(jìn)行查找喔。