面壁篇并不是面壁思过,而是总结,我们做任何事情都不能盲目,需要有所思考和总结,这些往往会带给我们意外的启发,在后续的系列文章中,将会延续这种模式。这里的内容可能并非严格与上次内容完全相关,但是不代表无关紧要。
有些我认为跟编程有关但以前没有提及的内容,我会在这里慢慢的渗透进来。上次提到但没有深入的内容,在这里会有进一步的说明。总之,面壁篇旨在对编程领域相关知识的普及,以及针对实操内容的补充,当然毕竟对于小朋友我们不可以操之过急,而且受限篇幅不可以面面俱到,在这里也会有所克制。
我们的工具是Scratch,中文有挠痒痒的意思,这也就暗示了Scratch只是编程入门级的工具,当然对于小朋友们需要这样一款工具帮助他们跨出第一步。不得不提对于软件的命名还真是个很有意思的学问,这关系到软件的推广,毕竟我们很关心我们的产品有更多的人使用,对编程有一定了解的朋友就会知道“动物园”这个梗了,这对我们以后自己的产品推广是个重要的启示。
言归正传,上次的分享我们了解了四个核心主题:角色、背景、属性、控制 。
如果大家真的做完了上次的练习,一定会发现Scratch在选取角色、选取背景、选取音频的流程以及标示、UI(用户界面)、布局是极相似的。它们的按钮都是内部填充的圆环,图标分别为小猫、相册、小喇叭,图标说明的这些按钮的作用,鼠标浮上去之后会弹出一组二级按钮,从上至下功能依次是上传、随机选择、临时制作、从库中选择,声音选择的第三个二级按钮图标是小喇叭,而角色、背景的是笔刷。三个素材选择按钮都处于父级组件的右下角,不同的是声音按钮的弹出文案向右,而角色、背景是向左,共性就是向中间弹出,保证能够展示全部文案。
学习编程最好的办法就是学习优秀的软件是如何设计的。上面提到的问题,大家可能觉得理所当然,习以为常,但是不总结这些规律,你做出来的产品完全可能是反人类的,哪怕你的代码再优雅,算法再优秀也无济于事。
我们前面提到的都是UI,尽管极有可能你的软件没有UI,就是一个守护进程(就是那些没有界面,默默地在后台执行任务的程序)。但是了解那些依然会给我们带来诸多益处,比如代码命名,要求见名知意,除非你在做框架或者工具库的底层开发。另外一个问题是重用,很明显角色、背景、声音选择的二级菜单是有做重用的,在代码上我们叫做复用,体现在公共功能和结构的复用,减少了冗余代码,减少了软件包的大小,这些是提升软件工程质量必须要关注的重点问题。
我们花了很大篇幅谈到了重用,那么大家GET到多少呢?如果让大家在一个舞台中模拟Scratch中角色、背景和声音选择菜单的交互效果,不要求做到二级按钮的点击交互,UI也不必追求神似,大家可以实现么?其实并不复杂,大家可以尝试一下,毕竟光说不练并没有什么用,希望大家每次都能有所收获。
技术服务于社会,让世界变得更美好。如果您或者您的小孩对编程有兴趣,请关注我,我是小码哥哥,我将尽我所能帮助你们,有任何问题可以帖下留言或者关注私信,共同探讨,共同进步,成就彼此。
领取专属 10元无门槛券
私享最新 技术干货