The Link Your Class | https://bbs.csdn.net/forums/MUEE308FZ |
The Link of Requirement of This Assignment | https://bbs.csdn.net/topics/603608738 |
The Name of Team | 牛码宝宝 |
The Goal of This Assignment | Alpha Sprint |
Leader's MU STU ID and Name | 王奕凯831902215_19103123 |
Teammate 1's MU STU ID and Name | 程宇浩831902218_19103891 |
Teammate 2's MU STU ID and Name | 叶宇桓831902213_19104537 |
Teammate 3's MU STU ID and Name | 兰龙睿831902205_19104553 |
Teammate 4's MU STU ID and Name | 张智洋831902203_19103328 |
Group number | 1 - A |
Prototype link | 前端代码 |
Demand specification link | 腾讯文档 |
目录
About the Problem
1. Our back-end function is not perfect enough to connect to the database, we can only write data in the background, so we need to constantly find and update some relevant learning materials.
2. Our download resource function and sharing function have not been successfully developed due to personal ability problems, after much trial and learning, the problem was still unsolvable,so we have to choose to delete these functions.
3. After our first demonstration of the applet, we weren't very satisfied with the interactive page we had designed, so we looked at a lot of other applet examples and started to modify the front interface.
4. Due to our weak knowledge of the development of small programs in wechat, we made slow progress in the Alpha sprint. We had to learn first and then apply what we learned, which consumed a large part of the time, and it was difficult for us to achieve 100 percent of the UI design, and we were forced to give up some functions.
5. The function of our small program is relatively simple, without very bright advantages. Compared with other open source software, it is particularly simple. In a word, we should keep learning and strengthen our ability.
UML For Miniprogram
Class diagram:
Activity diagram:
State diagram:
Use case diagram:
Sequence diagram:
Progress We Have
After the alpha sprint, we made many small adjustments to the applet, such as modifying the problem of disorderly layout of the article, improving the beauty of the page, etc. the biggest improvement is the improvement and addition of the following two functions.
(1)
In the previous version, we have not yet implemented the counting function of the number of articles. Only an arbitrary number can be placed in the number of articles in each category on the classification page. In this improvement, we add the corresponding algorithm to calculate the number of classified articles. It realizes the dynamic display of the number of articles on the article classification page.
Corresponding code:
onLoad: function (options) {
wx.request({
url: 'http://127.0.0.1:8000/api/article/',
success:(result)=>{
console.log(result);
for (var index in result.data) {
if(result.data[index].category===5){
var s=this.data.jsnum;
s++;
this.setData({
jsnum:s
})
}
if(result.data[index].category===4){
var s=this.data.jnum;
s++;
this.setData({
jnum:s
})
}
if(result.data[index].category===6){
var s=this.data.vnum;
s++;
this.setData({
vnum:s
})
}
if(result.data[index].category===7){
var s=this.data.cnum;
s++;
this.setData({
cnum:s
})
}
if(result.data[index].category===8){
var s=this.data.ccnum;
s++;
this.setData({
ccnum:s
})
}
if(result.data[index].category===9){
var s=this.data.hnum;
s++;
this.setData({
hnum:s
})
}
if(result.data[index].category===10){
var s=this.data.pnum;
s++;
this.setData({
pnum:s
})
}
if(result.data[index].category===11){
var s=this.data.lnum;
s++;
this.setData({
lnum:s
})
}
if(result.data[index].category===12){
var s=this.data.qnum;
s++;
this.setData({
qnum:s
})
}
if(result.data[index].category===13){
var s=this.data.mnum;
s++;
this.setData({
mnum:s
})
}
}
console.log(this.data.vnum);
}
})
},
(2)
In the previous version, our search page has recommended keywords, but in the previous version, we can only use fixed recommendations. After improvement, we can randomly select articles for recommendation every time we enter the page, and click to jump to the article page normally.
Corresponding code:
onShow: function () {
wx.request({
url: 'http://127.0.0.1:8000/api/article/',
success:(result)=>{
var q=Math.ceil(Math.random()*(result.data.length-1));
var w= Math.ceil(Math.random()*(result.data.length-1));
this.setData({
a:result.data[q].title,
b:result.data[w].title,
c:result.data[q].id,
d:result.data[w].id
})
}
})
},
Github Repository Link
Experience and Harvest
Generally feel that the practice project is very smooth, through this course we learned for the front had the further understanding and mastering of knowledge, make us further realize the textbook knowledge and practical application is different, you need to in the practical application in view of the specific problem to deal with the flexible alternative, and is not always the same as the textbook knowledge. At the same time, we feel that only through the practice of specific projects, can we better grasp the knowledge learned, and further understanding. This course design makes us deeply realize that the realization of a project is the most important requirement analysis rather than the realization of code. The key to the realization of a system is not the writing of the code, but the analysis and design, only the analysis and design is reasonable, in the process of the implementation of the code will not encounter problems. This course design makes us realize the importance of teamwork once again. After all, the ability of one person is limited, and the strength of everyone is infinite. Sometimes a small problem can not be seen by oneself, but it can be solved immediately by asking others to help. During this period, I realized the joy of working together to do one thing. I also realized that people engaged in software development should have this extensive knowledge and have some understanding of various industries. However, with the help of my classmates, I have successfully solved the problem. I would like to thank them.
Of course, through this time, we also know that our relevant professional knowledge is not enough, and our understanding of business needs is not in place. In general, this course design makes us have a further understanding of software development, learn a lot of knowledge. This will be of great significance to our future work and study!