对很多初学者来说,编码就是编写ifelse的语句,试图弄清楚如何运行代码的过程。在这一过程中,编码就变成了一个令人费解的庞然大物,其出人意料的曲折情节堪比《权力的游戏》。
代码越多并不意味着代码越好。当然,在写代码的时候还是很有意义的——直到回过头来,解开无意中创造的神秘小说,才发现不明确的方向、结构和主要情节的漏洞阻碍着线性发展。
当开发人员不了解某些知识时,就会出现错误,这些错误主要是源于不了解代码中高效的模式。哪怕生成的代码已经运行了,结构遗忘的喜悦仍在持续。但随着时间的推移,事情过于混乱带来的挫折感也就随之而来。
以下问题有助于你构建逻辑,了解软件开发中的重要模式。
函数式编程如何?
大家非常喜欢面向对象模式的理念,但函数也存在于类和方法中。函数式编程基于给定情况处理数据,强烈厌恶依赖性。
依赖关系并不是坏事,但太多的依赖关系会导致不必要的蜘蛛网。
依赖项引入所导致的连锁效应会降低代码的模块性。依赖前一项正常工作,创建一个串联电路效果。
函数式编程模式可将代码转换为独立存在的一系列并行状态,增加了模块化——这是隔离和构建清晰逻辑域的方法。代码模块化时,崩溃不会频繁出现。
依赖关系也可存在于函数本身,创建了逻辑隔离,也仍会产生冗余,通常以不同名称下的重复值、循环中的循环或嵌套逻辑的形式出现。如果出现这种情况,快的修复方法是压缩逻辑并将其抽象出来。