你的位置:藏宝图 > 藏宝图 > 正文

开发小程序05 后程序员直呼“太简单”?

更新时间:2019-09-11

  在今年 Stack Overflow 的开发者调查报告里,我们发现一项有趣的数据:调查的 9 万名开发者中,70.8% 的开发者早在 18 岁前便写下第一行代码。

  结合今年教育部新公布的《 2019 年教育信息化和网络安全工作要点》,推广编程教育,并对 2 万名中小学生信息素养评测。我们可以看到,全民编程时代即将来临,愈来愈多的小程序员立志加入到 IT 队伍中来:

  “虽然我没有获得很多荣誉,也没有那位小哥哥长得帅,但我的头发更加浓密,具有更多的发展空间!”

  在刚过去的暑假里,100 多位平均年龄只有 13 岁的“小小程序员”参加微信主办的 2019 全国青少年微信小程序编程创意营,并自信地发出以上的宣言。

  在首届微信小程序编程创意营中,这些“小小程序员”们的创意无限,“编程力”十足:

  创意营里年纪最小的是赖宥诚,别看他只有11岁,却已是具有 4 年编程经验的“老司机”。

  他 7 岁时,接过爸爸丢过来的编程书,开始踏上编程之路。随后他自学 Python、HTML 等语言,并用 Scratch 编写一些小游戏和学习乐高机器人编程。在 2018 年的 WRO 比赛(国际奥林匹克机器人大赛),他所在的团队获得了季军。

  但对于微信小程序,赖宥诚还是从此次的创意营首次“触电”,他零基础学习微信小程序开发,不到一周便写出自己的第一个小程序——LYC计算器小程序。

  谈到设计初衷,赖宥诚观察到同学们做数学题时经常记不住计算公式,于是他想设计出一款方便计算的小程序来代替麻烦的人工计算。

  这个计算机小程序包含有面积、体积、表面结合勾股定律、二元一次方程组、一元二次方程、求最大公因数和最小公倍数等囊括中小学的数学公式及方程,可谓是公式“百宝箱”。

  在开发的过程中,赖宥诚也曾陷入思维惯性:在求最大公因数时,赖宥诚一开始想的算法是:找出两个数的因数全找出来,再一个个比对。但他很快发现这是行不通的,在数据很大的时候这个算法很慢,因数太多了,最后他找到欧几里德算法来解决。

  毕竟赖宥诚是单枪匹马开发这小程序的,负责逻辑设计、UI、发布整个小程序的所有工作。

  笔者现场发现,在创意营众多的小小程序员中,赖宥诚年纪虽小,可表现沉稳、表达清晰、动手能力强,其他同学很自然地围绕在他身边观看其编程操作。

  在大家开始学习开发一款小游戏时,有些同学还在问老师,赖宥诚已打开编辑器,慢悠悠地开始动手设计了。

  赖宥诚说自己很喜欢编程,平常学习任务重,他会在周末自发地学习编程。谈及未来,他表示“未来我会继续努力学习,成为一个厉害的程序员,设计很多优秀的软件!”

  13 岁的张哲涵是一个“码二代”:父母均从事编程工作,耳濡目染下,他在小学四五年级开始学习编程,有 C++ 编程背景。张哲涵还是个“历史迷”,今晚六彩现场开奖结果资料,喜欢看《上下五千年》《明朝那些事》《中国通史》等历史书籍。

  从 2021 年开始历史将列入广州中考,历史将成初中生们的“必修课”。传统学习历史的方法是枯燥地死记硬背,如何能帮忙同学们更灵活、有趣地学习历史呢?

  对编程和历史均热衷的张哲涵和其他两位同学一同开发了一款学习历史小程序——“知史乎”。

  这个小程序中功能很丰富:设有 “中国古代朝代排序游戏”“教材知识点梳理”、“易错题和难题答题游戏”、“答题方法分析”、“历史笑话”等功能,集知识干货与趣味学习于一体。

  需要开发这么多的功能,他们在开发过程中遇到不少问题,处理方式也很“程序员”:

  1、需学习新的编程语言,JavaScript、WXML、WXSS,他们参考微信开发文档,边做边学。

  3、在上传历史资料时,需要上传的文字和图片太多了,文件太大会导致上传卡机。最终利用小程序后台的分包功能,成功将初中历史知识点、答题方法解析等众多知识点全部上传成功。

  目前,“知史乎”小程序仅包括七年级的历史,谈及未来,张哲涵表示它“不是昙花一现的产品”,后续将会加入更多的历史课程内容。

  8 月 29 日,笔者在腾讯滨海大厦观看小小程序员的一节编程课:在三个小时内开发一款美食地图小程序。

  在辅助代码和辅导员的指导下,小小程序员们按照操作步骤完成环境部署、查询、刷新、列表、查看、新增等功能体验,并调试与运行。

  可能会有人发出疑问:三个小时可能连服务都还没部署好?为什么他们能这么快能开发出一个小程序?

  为了让大家专注前端业务功能,这次课程借助小程序·云开发来负责后端处理。云开发是由微信团队和腾讯云联合打造的Serverless 云服务,是一个支持小程序、Web 等多端的应用开发平台。提供云数据库、云存储、云函数、日志和监控等开发运维能力。开发者可使用云开发平台,调用小程序的开放服务,来提升开发效率,快速试错和落地产品。

  云开发还提供一个便捷的技术是“免鉴权”。为了保护用户数据安全,小程序开发者每次调用小程序开放平台的能力前都需要微信鉴权获取,而原有的鉴权流程较复杂,有些场景下还需要额外部署缓存服务,对开发者来说成本较高。

  使用云开发后,只需要调用一个接口,就可以获取用户登录态(OpenID),节省开发者的时间,提高效率。

  在去年 11 月第五届世界互联网大会上,小程序获选“世界互联网领先科技成果”。马化腾曾表示,小程序打破了过去受限的开发环境,构建出一个新的开发环境和开发者生态,为“跨系统开发”这个世界难题给出了中国的解决方案。

  小程序简单、易上手,这是微信从平均年龄只有 13 岁的初中生开展创意营的前提。

  腾讯集团市场与公关部副总经理张军表示,过去我们的语言体系太复杂,没有一个高层次的数学知识,非常好的逻辑体系,你可能都没有办法真正的编程,即使你学 C++,刚学的时候也只是浅显地知道语言,能够做模拟式的程序运营,但不能跟自己的真实生活联系起来。

  而小程序所见即所得,编完之后马上被身边的人使用,给中小学生的成就感很大。

  张军还表示:我希望小学生、初中生能在自己的正常学习之外能有一些兴趣,如果这些兴趣还能反哺到对学习,这是很好的促进模式。

  所以我们希望创造这样的环境,这里面有很多新的编程模式、编程体验,都能让他们体验,这对他们来讲是最大的乐趣。

  在培养小程序员的编程能力时,为什么此次采用创意营的方式来让学生学习小程序编程,而不是采用传统方式,大家坐在课堂上,看着教材,听老师讲课?

  比如(小程序)编程,这样的语言很好,由浅到深,(让学生)先接触,先入门,再慢慢深入,这是很好的(学习方式)。所以我们现在也提出信息课的改革,结合现在的需要开设课程。

  从本次微信小程序编程创意营中,我们看到这些小小程序员对编程的热爱与创意,相信在不久的将来,会为 IT 界注入年轻新力量。

  与此同时,作为专业程序员的我们亦有危机感,不断学习。因为时代不断在变化,学习编程的门槛将越来越低,正如 AI 界的大牛吴恩达所说:

  “现在人机交流正在变得越来越重要,可以预见,编程能力将会成为未来最深层次的人机交流的基础。所以我不认同那些认为世界上只需要几百万程序员的观点,在我看来,(几乎)每个人都应该学习编程,就像每个人都应该学习阅读和写作一样。”