当前位置:C++技术网 > 资讯 > 程序是什么,逻辑是什么?

程序是什么,逻辑是什么?

更新时间:2015-06-23 16:02:21浏览次数:1+次

    程序中逻辑,或许有些朋友却是理解得不够清楚,在此,我稍微说一下我的见解,作为大家的一个参考,如有不合适之处,请指出。
    说的抽象些,或者上升到哲学的层次来说,所谓逻辑,是宇宙运行的根本基础。逻辑可以简化理解为佛教的“因果循环”。因果循环,指的是万事的发生都是有原因的,结果又会对起因一个反馈。这样就不断的促进这个因果循环。当然,我们这里探讨的是宇宙哲学的一点,佛教的只不过是一个引用,请勿陷入理解误区。
    当然,我们探讨的是一个事物的逻辑,不受个人情感的影响,更不是宗教学派的说法,而是一种自然规律。下面来具体讨论一下程序中的逻辑。
    所谓“一花一世界”,说的是,即使是一个微小的个体,也能体现一个世界的全貌。正如“麻雀虽小,五脏俱全”道理相似。原因在于,每一个在同一个宇宙这种存在的事物,都是受同一个规律而存在的,所以观察一个事物就可以看到隐藏在事物后面的规律。而这个规律正是所有事物遵从的一个准则。
    回到程序,细想一下程序。什么是程序?我想各位第一反应必然是教科书上说的解释吧。但是发散你的思维,想想生活中的点滴,你有什么启发。我们去看病走的流程,办理各种手续走的过程,做一件事(分解成每一步直到完成),等等,你想到了什么?知道什么样的编程水平叫高吗?为什么大师和普通人编程的代码不一样?如果你没有想清楚,接着往下看。
    就我的个人认为,程序是一个逻辑的过程。不管是线性执行还是非线性执行,都是逻辑的结果。甚至在未来的人工智能程序,同样是在逻辑规律的运作下执行。不要以为逻辑是线性的,非线性的就不是逻辑。逻辑是一种规律,是宇宙的自然规律。宇宙形成,规律就已经成型,逻辑是所有规律的统称。自然规律是不可能认为改变的,我们所做的只是利用规律来应用。比如说我们利用数学的奇偶数可以实现间隔的应用,比如颜色间隔背景显示。那么,简单来说,程序就是逻辑,是一个完成特定功能的完整的逻辑体系。所以说,只要程序有问题,不能完美的完成特定功能,那就是逻辑问题。或许这样说你还是迷糊,那我们来具体探讨程序里的逻辑。
    程序是一个逻辑题,我想这个你肯定认同,但是为什么一句话的错误也会是逻辑错误呢?那么我问一下,程序中什么叫做逻辑?
    某一句话出错不是逻辑,漏写(或多写)某一句话,调用顺序错误,函数、宏的参数引入错误等不是逻辑的话,那什么是逻辑?那函数里的每一条语句也不是逻辑吧。这个问题我以前思考了无数遍,到底程序中什么是逻辑呢?1+1=2就是逻辑吗?程序语句一句句执行不是逻辑吗?所有语句执行完成一个功能就是逻辑吗?我想,是不是那些高深的算法才叫逻辑呢?事实上,大多数的程序员都把那些高深的算法称作逻辑,而把自己写的代码函数称作非逻辑,认为只是几句语句而已。但是这样的话,我越来越觉得逻辑就没道理了。那把高深算法细分的化,内部还是简单的语句,这样说不和我们平常写的简单语句一样吗?然后我觉得可能是实现算法的思想吧。但是回过头来想,代码不就是实现思想的吗,不就是实现逻辑的东西吗?那只要完成了功能的不就是逻辑吗,只不过简单的功能逻辑简答罢了。
    再后来,恍然大悟。生活中处处都是逻辑。不管是程序逻辑,还是说话逻辑,还是业务逻辑,还是各种逻辑。存在即逻辑。所以说,错误必然是逻辑错误。那么,漏一句多一句都会导致逻辑过程中断或者跑偏而完成不了特定功能,调用顺序错乱,那这不是更加明显。程序里的逻辑,就是语句的语法、语句顺序,语句分支等,而函数只是程序的一个执行路径而已,同样也是逻辑里的组成,其他的都是。而语法问题,表面上来说是编译不通过,其实在底层一点就是编译器检测到逻辑不通,只不过这种错误是能够检测到的简单的逻辑错误,而用户在满足语法规则出错的是业务逻辑错误。所以,以后出现错误,千万不要说没有逻辑错误,如果程序没有逻辑错误,那就没有错误了。认真细致对待程序中的每一个错误,即使是一个分号,都可以让程序无法运行,不要对这些掉以轻心。一个合格的程序员,必然是逻辑思维很强的,逻辑严密的,绝不是认为某些错误无关紧要的。而逻辑思维就是在每一个编程中慢慢锻炼出来的,对每一个错误认真对待,解决,总结,然后多了就能够提升。程序员是一个专门跟逻辑打交道的职业,这些必须深刻认识,方可让自己水平有大幅度的提升,而不是具体纠结语法等,重点在于思想的培养。而大师的厉害之处就是在于思想。这点应该很容易理解。为什么有的人能够写出大框架,有的能够开发新语言,那是因为思想达到一定高度,这些就不是问题了。
    选择程序员,就是选择了逻辑,请认真对待逻辑。相信看着这些之后,你的认识会有所变化,祝你好运。