大家好,今天小编关注到一个比较有意思的话题,就是关于学习编程的思维的问题,于是小编就整理了1个相关介绍学习编程的思维的解答,让我们一起看看吧。
编程思维到底是什么?
在我看来,编程思想体现了一个最简单的结论:程序中你的代码就反应了自己的思想。
1. 什么是编程思想?
编程思想体现了代码的艺术,它会把个人的想法完全体现在代码上。例如要实现一个功能,要使用面向对象开发还是面向过程呢还是面向函数开发?需要用到设计模式吗?要实现一个排序的功能,要进行时间和空间的平衡,这些在开发之前就应该想到,并且始终贯穿到代码开发结束。
2. 如何培养
很多初学者刚开始学习编程的时候,可能只是为了完成功能就得绞尽脑汁,更别提使用什么编程思想了。我刚开始的时候也是这样,到后来做项目多了之后,业务代码很快就能实现。这个时候,你就会发现,自己开始有一点编程思想的概念了,然后再配合着读一些优秀的开源产品的源代码,读一些编程思想或者设计模式的书,慢慢的编程思想就有了。
最后,一定要记得,多动手,多编码,多思考。
编程思维,从本质上说就是高效通过编程来提高效率,解决实际问题,提高生产力。这个思维我可以举几个例子:
1.自动化。比如说自动喂食器,本来需要人一段时间去反复查看的事情用计算机编程代替了。
2.串行化。多个自动化变成了串行化。比如原来一个小偷进来是响铃,我们还需要去处理。现在变成了小偷进来自动通知附近的保安,全程不需要店主出现,这就是串行化。
3.统一化。家里插座有2叉还有3叉的,买家电还要注意这个口。购买转接口解决插座问题,这样买家电就可以随便买了。转接口就是一个统一化的结果。
4.并行化。我先洗衣服再煮饭要花1小时。如果我煮饭开始的时候同时洗衣服,等饭差不多了再回来看看,那么整体时间就变短了。同时做2件事情来产生"并行"。
5.优化。某博主需要增加粉丝,每一个关注他的粉丝给2块钱。后来他发现,他做个抽奖活动花了50元,来了100粉丝,平均每个粉丝只需要5毛钱。这是一种对于事情的优化。
6.简化。去地铁站走路需要10分钟,改用自行车就只需要5分钟。这是简化。
7.基础逻辑学,比如男子A比男子B高,男子B比男子C高,那么男子A比男子C高。类似的例子很多。
8.抽象认知。在古代有人发明了某个符号A表示3个苹果,符号B表示6个西瓜。再到后面有人测定把对象和数字进行了分离,而不是把它们捆绑成一个整体看待。原来我们表示这些物品需要使用符号的数目是 M个数字 * N个种类。现在我们只需要用 M + N个符号来表示这些东西,这就是一种抽象认知的进步。
编程思维可分成两个部分,一是算法,一是机械运算。一些程序员精于机械运算却疏于算法,他们给人的感觉比较呆板,人们喜欢用IT男称呼他们。
先说说算法这一块。所谓程序实际上是对现实世界的模拟。而算法可以看成是给各种运算赋予实际的意义。
- 举个例子,程序员熟知的冒泡算法,实际上是指挥孩子们按大小个排队的窍门:先让孩子们排成一排,从第一个孩子开始比,遇到个高的就往前站。
- 再举个例子,二叉树算法,实际上是学生查字典的窍门:先翻开字典中间页,如果排列靠前,就再翻前半部分的中间页,如此反复几次就能查到答案。
- 再比如TCP协议,可以理解成在一间大屋子里,很多人在同时聊天。如何才能分辨出哪句话是对自己说的呢?
再说说机械运算这一块。机械运算相当于如何用算盘按照算法的要求算出结果。由于算盘一次只能做一种运算,您需要计划好计算的顺序,让计算步骤最少。
小孩子学编程一般都从机械运算开始,因为小孩子的数学知识不太够,理解不了算法的精妙,一上来就学算法就成了揠苗助长了。我个人认为算法才是编程技术的精华,它可以训练思维能力。小孩子学习编程开始的时候不会对他的学习有多大帮助,就当是学习了一个技能吧。孩子掌握了编程技术之后,一定要学习算法,否则就半途而废了。
到此,以上就是小编对于学习编程的思维的问题就介绍到这了,希望介绍关于学习编程的思维的1点解答对大家有用。