社区/活动福利/Web云开发训练营

Web云开发训练营

活动时间:2020-07-292020-08-12

一、训练营概述

云开发Cloudbase训练营面向所有开发者用户,高效交流学习云开发基本知识以及实战训练。

如果你对云开发感兴趣,希望快速上手并轻松应用到实际开发中,可以来这里速成。每天几个小时,就可以在10天左右完成云开发的入门。

如果你具备云开发的基础能力,希望锻炼开发水平,进一步提升自己,也可以来这里挑战,有专门为你准备的实战任务,还有专家在线指导。

训练营一个月举办1次,每次持续15天。官方会指定最新的学习资料用来学习云开发相关知识,然后会指定本期的实战任务。

在每一期训练营中,均会有初阶实战任务、高阶实战任务和彩蛋实战任务3种;初阶实战任务是训练营必选任务,每一位学习者必须完成初阶任务,才可给予有效结项。

如果学习者在之前训练期中完成过初阶任务,则可以直接完成本期的高阶实战任务和彩蛋实战任务。

初阶实战任务分为4-7个阶段,学习者只有从第一个阶段开始,依次向后完成。不可中途跨越。每一次阶段完成后,按照阶段描述提交成果;当得到指导讲师的评阅并通过后,才可以继续执行下一个任务。

高阶实战任务和彩蛋实战任务分别是WEB和小程序版本的不同实现,用来锻炼检验学习者的云开发理解能力和熟悉程度。此两种实战任务无需分阶段提交指导讲师,直接在完成所有任务后提交相应成果即可。

二、训练营结项

当学习者在任意一期完成初阶实战任务,并完成腾讯云CloudLite认证-云开发CloudBase,即可给予结项奖励。

结项奖励:云开发官方技术书(非卖品)、云开发50元代金券一张

每一位学习者都只有一次训练营结项,重复多期参与结项任务算做无效。为了对完成结项并有一定云开发基础的学习者打造一个持续锻炼提升的环境,在每一期实战任务中可以选择完成高阶实战任务和彩蛋版本的任务,完成后提交,官方判断有效后,即可发放奖励。

提升奖励:云开发100元代金券一张、云开发布道师资格、训练营指导者资格

三、腾讯云CloudLite认证-云开发CloudBase

CloudLite认证介绍:

腾讯云CloudLite认证,英文缩写TCLC(Tencent CloudLite Certificate)是腾讯云推出的线上轻量级技能认证;该认证围绕云计算IaaS,PaaS及SaaS产品及服务展开,旨在帮助致力于从事云计算相关岗位工作的人才快速掌握某个云计算产品的基本功能特性和应用场景,并通过动手实验掌握该产品的使用与操作方式,帮助IT人才循序渐进的实现在云计算、小程序云开发、大数据及人工智能技能转型,提升职场竞争力。

获取证书方式:

点击进入认证页面,完成认证页面在线测试:腾讯云CloudLite认证-云开发 CloudBase考试,考试通过(70分以上)即可获取腾讯云CloudLite认证-云开发 CloudBase证书。

注意:请先完成腾讯云账号实名认证,再进行考试;考试通过后您将会在3个工作日内通过站内信获取考试结果,请在站内信中回复姓名信息;正式电子证书将会在5个工作日以后通过站内信发放。

持证收益:

持有CloudLite认证者可享有以下权益:新产品体验馆优先资格、行业会议或行业考试优先资格、持证用户专属优惠、渠道代理商优先入选权益、云+沙龙、TVP闭门会门票。o:p

四、训练营官方课程

五、本期初阶任务(2020年7月)

(1)阶段一:静态网站托管

要求描述:

创建一个简单的html页面,放到云开发的静态网站托管中,页面中包含如下信息

欢迎访问「你的名字」的网站

「一句积极向上的话」

你是访问的第1人,共1人访问

原型图如下所示,样式设计可以自由发挥。

参考指导:

了解腾讯云控制台静态网站部署怎么玩阶段一视频教程查看1.1和1.2

成果提交:

将静态托管中此页面的URL地址发到训练群内,并@zirali


(2)阶段二:云接入的使用

要求描述:

创建一个云函数,使用http触发,集成响应返回html页面。云函数用环境变量设置ip白名单,只有白名单内ip才可以正常返回网页,否则返回404

页面中包含一个文字输入框input再加一个保存的按钮、一个列表增删组,分别用于设置任务一中的名字和积极向上的话。原型图如下:

按钮的逻辑无需实现!

参考指导

通过HTTP云接入访问云函数阶段二视频教程查看2.1和2.2

为云函数添加环境变量的示意:


exports.main = async (event, context) => {//云函数入参包含环境变量

  let ip = JSON.parse(context.environment).ip;

}

环境变量设置:

成果提交

配置ip(175.24.119.147)到白名单中。

将录屏和云接入的url地址发到训练群内,并@zirali


(3)阶段三:数据库的使用

要求描述:

创建集合,名称分别为name,title,user,三个集合分别是如下结构,在开始任务前请建立数据集合并填充数据:

name集合,有一个id为name的文档,value为值,time为更新时间

title集合,有多个文档,id系统生成,value为页面中显示的积极的话,time为更新时间

user集合,有多个文档,id是云开发用户id,indue为第一次访问的时间。

在任务一的页面中,匿名登录并调用数据库api,将name和title的数据展示到页面中,其中title有多个,在取出时只取一个,完全随机(请完全使用数据库api完成,随机取出)

在匿名访问时,判断是否为新用户,可通过user集合用户id来判断,如果存在则返回加入时间从早到晚的排名为第几个用户,整个集合文档数量为共几人。

如果用户不存在,则将用户id和时间添加到user集合,并返回数据。

参考指导:

数据库 CRUD数据库官方文档阶段三视频教程查看3.1和3.2

成果提交:

将静态托管中此页面的URL地址发到训练群内,并@zirali


(4)阶段四:数据库监听的使用

要求描述:

任务三的页面,需要时刻监听用户的新增,并同步给所有打开页面的用户,请使用数据库watch配置监听。当有新增用户访问时,总用户数应在所有打开的页面中更新。

参考指导:

实时数据推送文档阶段四视频教程查看4.1和4.2

成果提交:

将静态托管中此页面的URL地址发到训练群内,并@zirali


(5)阶段五:云函数的使用

要求描述:

在任务二的界面中,编写相关代码。实现点击提交则更新name值和处理新增和删除title列表,更新操作请用云函数实现完毕。

参考指导:

云函数快速入门阶段五视频教程查看5.1

成果提交:

配置ip(175.24.119.147)到云接入白名单

请将页面功能进行演示,录屏发到训练群内,附带URL地址并@zirali

如果有其他验证策略请私聊zira告知


(6)阶段六:云存储的使用

要求描述:

请在任务一页面中添加一个logo图片,使用云开发云存储来存放图片。需要注意使用gettempurl来获取http路径,图片的fileId在集合name文档中以logo命名。

在任务二页面中,添加一个file输入框,并附带一个上传按钮,实现logo图片的更新。在上传时,需要有展示实时上传进度。

参考指导:

云存储文档阶段六视频教程查看5.2

成果提交:

请将任务二页面功能进行演示,录屏,附带URL地址和任务一页面的URL地址发到训练群内,并@zirali

六、本期高阶任务(2020年7月)

任务背景:

有一个现场比赛,有若干选手;赛制形式为每位选手依次上场,并比赛展示;每位展示完毕后,观众给选手投票,投票可以选择支持和反对。

现在依照此场景开发一个现场投票页面,观众通过该投票页面完成选手的投票,要求如下:

  • 在选手投票阶段,页面需要展示当前选手的基本信息,并给出支持和反对两个按钮供投票操作,每次投票开启时长为45秒。

  • 页面应能根据现场实时情况展示当前选手信息,观众打开的页面应能自动更新

  • 现场选手在比赛时,不应该展示投票按钮,所以按钮应能够实时控制。

  • 现场无选手时,不应该展示任何选手信息,页面显示提示。

  • 每位观众只能对一个选手投一次票

任务详情:

可以按照如下思路来完成整个任务,也可以自己按照背景构建,只需提交最终成果即可

1. 阶段一

根据页面要求搭建WEB页面,要求包含选手名称,介绍,展示图片,两个投票按钮(无需触发函数,展示即可)。

根据要求搭建数据库,通过匿名登录在前台完成数据库的数据读取和展示(展示当前选手)。数据库设计需要保证合理,并能有明确表示当前选手的标志。而且还要有整体控制投票开闭的变量。

2. 阶段二

创建管理员页面,页面是为管理员操作当前选手以及开启投票使用。页面显示如下示意,在变更当前选手时,一定同时将投票通道设为关闭,另外每位选手的投票信息也在页面中显示。

管理员页面可自行添加账号体系,保证一定的安全性。

3. 阶段三

为投票页面添加监听,使用云开发数据库watch来监听,数据库当前选手变化时,可以立刻变更展示。

4. 阶段四

实现投票页面的投票操作,当支持时需要变更选手的投票数量,并更新投票支持列表。当反对时无需新增投票数量,但要更新投票反对列表。当一个用户投出票后,不能变更投票,也不能重复投票,所以在页面刷新时,需要监测投票的状态,用来显示投票操作按钮。

5.阶段五

在实现完成的投票应用中,任何人都能够在中场进入并投票,造成投票的不公平性。所以应用添加一个用户验证开关,实现如下:每次投票时,用户id被记录在一个数据表中。当开关打开时,应用只允许已经投票(在数据表中的)用户参与投票,其他用户将失去投票资格。

成果提交:

请将功能完整录屏,将录屏视频、作品源码地址(含部署文档)私发提交群内zirali。

七、本期彩蛋任务(2020年7月)

任务详情:

此为高阶任务的孪生任务,即请用微信小程序实现完成整个投票应用,详情在高阶任务中已描述。

你可以选择两者其中一个实现,也可以全部实现,不限制框架技术。如果实现完成两个,则给予双倍代金券奖励。

成果提交:

请将功能完整录屏,将录屏视频、作品源码地址(含部署文档)私发提交群内zirali。