今天想写一些不一样的内容,前三週的内的文章大都是课堂笔记的整理+複习。
今天想好好思考一下如何训练程式逻辑
什么叫做程式思考?
我定义为:有逻辑、有层次的思考。
就像写程式一样,我们会一步一步写下解决问题的方法,透过组合语法、组合函数来达到想做的目的,每一步都清清楚楚的。
程式思考的好处是:我们可以跳出问题,思考整个大问题,然后逐步击破小问题,实作的时候更专心在解决问题上。
该如何练习?
以程式思考贯通全部:
1.清楚问题
首先确认问题为何,当下有什么问题,或者要达成什么目的,并能清楚地描述出来。
2.拆解问题
下午在查资料的时候看到网友提到,利用MECE的原则拆解问题。
MECE意指「相互独立、完全穷尽」,亦可翻译「不重複、不遗漏」。
3.把问题简化
例如:这週有一题练习题是要让一堆马可以长出来,且可以四面八方的移动(不能重複移动)并且不会撞到墙或是障碍物。
可以先从做一匹马开始,然后再设定不会碰撞的条件,再做第二匹马出来确认他们移动的状态是否重複,最后就可以建立一堆马。
4.构思
这里可能需要收集很多资料来回答某个自己缺乏的知识。
比如不懂语法,就需要去查该怎么做。
这个时代我们需要建立第二个大脑,知道该怎么搜集资讯、想要的资料在哪里,掌握了这点就能够面对未知的问题。
5.组合解法
把拆解的问题一一击破之后,就重组在一起回答完整的答案。