郑州北大青鸟老师,程序员的哲学之我见
“程序员的哲学”这样的命题,对于老资历的程序员似乎都有点大了,何况初出茅庐的我呢。但做为北大青鸟郑州校区的一员,这里我只想对正在和希望从事程序开发工作的朋友分享我对程序开发的理解。这是我的哲学,我所理解的程序员的哲学。
首先跟大家分享这样一段话:
“我们剖析事物的本质,从中形成概念,并根据需要赋于它重要性。这一切很大程度上是源于我们所使用的语言已经在其形式中包含了一套为它的使用者所完全接受的规范,而我们正属于接受这一规范的那群人。如果我们拒不接受语言在数据的组织与分类方面的原则的话,那我们根本就没法说话。”
——Benjamin Lee Whorf(1897-1941)
无论你是有数年开发经验的程序高手,还是初识编程的青涩小生。我都希望你能将这段话多读上几遍,细细的品味其中的内蕴。它会为你揭秘程序开发的本质。
那么什么是程序呢?
不同的教科书对它的解释不尽一致,让我们来一起看下它的百度名片:
程序(program)是为实现特定目标或解决特定问题而用计算机语言编写的命令序列的集合;为实现预期目的而进行操作的一系列语句和指令……
从以上定义,我们不难发现这样的关系图:

通过对上图的感知,朋友们对程序的认知是否清晰了些许呢?原来程序就是一段话,一段语言描述,只是其中的句读,在程序员和计算机的世界里被称为命令、指令。对计算机工作原理不太了解的朋友可能会问,“计算机为什么不自己去解决问题和实现目的呢,计算机不是自动化和智能化的产物吗?”关于这个问题我们可以在《Thinking In Java》这本书中找到如下描述:
“计算机革命的推动力在于机器。于是机器的发展也左右了编程语言的发展。然而真正被用作延伸智力的工具的计算机(就像Steve Jobs喜欢说的,‘思想的自行车’)并不很多,它们更多的是被用来表达思想。”
不知道上面的描述,能否起到抛砖引玉的效果。我只是想告诉朋友们,计算机虽然随着科技的发展结构日趋复杂,功能日趋强大,但它更多的仍被用来表达思想。什么思想呢?解决问题的思想,实现目的的思想——让计算机实现一个预期结果的算法。
在我看来归根到底所有程序都是算法,都是从问题空间指向解决空间的一个映射(示图如下)。

什么是问题空间(问题模型)呢?说白了它就是需求,对于小的程序它是预期的结果,对于大的项目它是项目需求。什么是解决空间呢?它是工具,包含硬件(计算机或其它各种设备),也包含软件(前辈们为我们留下的开发平台,高级语言,编程思想)。
而程序员的工作就在于算法,在于通过算法将问题空间和解决空间关联在一起,从而达到解决问题的目的。无论是使用哪种语言的程序员,其哲学都是相通的,甚至是相同的。区别仅在于使用的工具不同罢了。个人心得,仅供参考,卑之无甚高论。郑州北大青鸟老师,真诚的欢迎与每一位爱好程序,喜欢程序的人共同交流,共同成长!
更多相关北大青鸟郑州校区的相关文章可访问:http://www.hnbenet.com
本文由站河南北大青鸟校区整编而成,如需了解更多IT资讯类的文章、新闻、课程和学习技巧、就业案例、招生详情等问题,可以对在线咨询老师进行一对一问答!
推荐资讯
- 郑州北大青鸟学电脑更专业,值得... 2013-02-24
- 河南北大青岛学校怎么样?... 2019-04-30
- 郑州技校都有什么专业适合男孩... 2021-02-20
- 河南北大青鸟关注郑州煤气管道断... 2012-04-01
- 郑州北大青鸟与您关注互联网企业... 2012-04-08
热点资讯
- 郑州北大青鸟翔天信鸽校区的学员... 2023-11-14
- 郑州北大青鸟校区创意与趣味的游... 2023-11-07
- 郑州北大青鸟学子们的项目成果展... 2023-10-18
- 郑州北大青鸟校区让学习不在枯燥... 2023-09-19
- 在郑州北大青鸟翔天信鸽校区零基... 2023-09-01