当前位置: 首页 > 后端技术 > Node.js

零基础前端入门的真正难点在哪里?简说编程思维和逻辑思维

时间:2023-04-03 20:16:13 Node.js

很多同学跟我说,前端学习很迷茫。就这样,问他为什么糊涂,他也说不上具体的。连自己都学到了很多东西,在前端开发工作中也确实用到了。但仍然不知道前进的方向。这里是一道“前端入门标准”的题。什么是真正的前端入口?1.是否学习了很多前端开发技术?2、你做了几个不同大小前端的例子吗?3、你是否从事过一两年的前端开发工作?不要惊讶我还列出了第三项。有的人工作两三年了,还是没有开始做前端开发。我个人认为,判断一个人是否开始前端开发有两个标准。1、学习了很多前端开发技术,基本上是大大小小的培训机构都在做的;2、掌握并理解“程序思维与逻辑思维”;我个人更喜欢第二种,也就是掌握“编程思维和开发逻辑”的人。什么是编程思维?很简单,其实就是提炼特征。例如,让我们提取一篮子苹果并提取其特征。这样,Apple_Color:Red_Shape:Round_Size:200mm_Weight:100g_Quality:100%_Quantity:100然后用JavaScript表示,就这样,var_appleObj={color:'#f00',shape:circular,size:200,weight:100,quality:100%,number:100}这是什么流程?对具体事物的抽象,在这个过程中,只提取目标对象中我们需要的特征。然后用代码表达出来。这里的关键是理解Apple的[color]和_appleObj中[color]的对应关系。再比如,在下面的京东购物车里,我只是加了几个商品进去,就是下面的截图。我从哪说起呢?很多新同学可能没有想法。如果用刚才抽象苹果的思路,就是这样,购物车_增减商品按钮_输入商品数量_删除按钮_单选按钮_全选按钮_结算按钮_其他相关的调用、回调等都用JavaScript表示。这样var_cartObj={addFn:addfn,minsFn:minsfn,singleBtn:singlefn,allselect:allselectfn,payBtn:paybtn}然后继续定义addfn,minsfn,singlefn,allselectfn,paybtn等函数,其中就是从UI设计图中抽象出功能点,然后用编程范式表达出来。此时,我们已经有了购物车模块的JavaScript模型。这种抽象的编程思维方式是超越任何编程语言的,它是对现实世界的提炼和抽象。不管你是用原生的JavaScript,vue,还是react,都是一样的,只是写法不同而已。我有这样的想法,所以我可以在第一天学会php,写一个简单的留言板,登录注册,然后第二天或者第三天就完全忘掉php了。不是为了显示我有多好,而是说这种思维方式是超越特定语言的。如果你不能理解真实的东西和抽象的对应关系,那么不管你学了多少css、html、js、jq、vue、h5、小程序……等等,这些都是[死东西]你。因为你不知道如何用它来解决问题和需求。有点啰嗦,但真心希望同学们能够理解他们的关系。接下来说说开发中的逻辑思维。逻辑思维要严谨清晰,强调环环相扣。不同于日常交流中的口头描述,“今天早上去那里,给我拿点东西,你要去哪里?就在你家附近。”这种基于生活经验的直觉描述是混乱的、不明确的。一个经典的例子,口头描述,“让程序员去买6个苹果回来,路上看到西瓜就买一个”。问,如果程序员在路上看到一个西瓜,他会买回多少个苹果?答案是,一个苹果。为什么?因为,if(seewatermelon){apple=1}else{apple=6}你看到了吗?这是用日常思维写代码的结果。因此,生活的思维方式不能用于编程开发??。您必须相互链接以形成逻辑链。任何一个环节不清晰,都会导致整个逻辑链条的崩溃。因为编程需要抽象具体的东西,所以它从不同的角度看待现实世界。你看到一匹白马说“一匹又大又白的马”,我看到的是,varwhitehorse={legs:4,color:#fff,gender:male,weight:200KG,..}这是另一种形式白马不是马?实际工作中,PM会提出产品需求,一定是口语化的描述。说这个产品有abcd等功能。然后前端开发等程序员会从它的特性中抽象出来,设计一个模型。然后根据它的交互过程、前置后置条件等,一步步实现。这个一步一步的实现就是开发逻辑的链条。缺少任何一个环节,开发任务就无法完成。比如你回家吃饭,如果用程序的逻辑思维方式去思考,是这样的,1.你回家;2、家里一定要有米饭。如果你没有大米,就买大米。买不到米,就不会做饭;3、家里一定要有电,没有电就不能做饭;4、家里一定要有水,没有水就不能做饭;必须考虑到所有条件和情况。当您编写代码时,很多事情实际上并没有发生。所以有人说,编程是为了未来的人。未来人们将如何使用您开发的应用程序?你不知道,所以你要竭尽全力,无限穷尽各种可能。编程思维是抽象特征,逻辑思维环环相扣。这两件事结合起来就是解决问题的方法和步骤。前端开发只是一个利用html、css、js实现编程思维和逻辑思维提供的解决问题的方法和步骤的工作。所以,学习前端开发其实是在学习如何运用编程思维和逻辑思维来解决问题,而不是学习html、css、js语言本身。这就是很多同学,学了html、css、js,还是不知道怎么操作的根本原因。那么回到本文的标题,《零基础前端入门,真正难在哪里?》的难点在于如何建立自己的编程思维和开发逻辑。由于篇幅所限,本文到此基本告一段落。如果大家还有这方面的问题,可以加我vx:blazeloulan,或者在文末给我留言。对不起,但我可以提供一些建议。