`
hlzhao
  • 浏览: 26524 次
  • 性别: Icon_minigender_1
  • 来自: 常州
最近访客 更多访客>>
社区版块
存档分类
最新评论

一个物理学家学习windows编程的感受

阅读更多

最近学习用Visual C++ 作为平台的windows 编程,感觉到学习这种编程技术的过程与学习物理的思维差异非常大。最明显的,比如对于物理课本,在学习的时候值得一个字一个词的认真去读,有时候需要读上好几遍。但在学习编程的时候,即使是号称世界级的教科书,也最好是不懂的地方就跳过去,不需要的地方跳过去,不求甚解,以能够动手上机操作为目的。我现在明白了这种差异来自于一个是面对的是自然世界,一个面对的是人工系统。


物理学以理解自然为最高目标,物理课本是经过浓缩的一代代物理学家所得到的知识。阅读大自然并非易事,比如当年英国物理学家焦耳花了二十年的时间,测定了热功当量的值1卡=4.2焦耳。这件工作确立了热力学第一定律的基础,可是在物理课本中也就几句话。物理课本上的内容是几百年以来的知识的结晶,然后用了精巧的数学把它包裹了起来。在这样层层的包裹下,其实也许核心就是那么一点点,如果真的学懂了,感受很像华罗庚教授所说的“由厚到薄”,厚厚一本书籍变成了少量一些key points。我现在正在教授本科生的大学物理课程,在第一学期,要花掉大约3个月的时间讲授力学,大概物理系的本科生学习力学要花掉一个学期的时间。其实,转过头想一下,力学(不算狭义相对论)的内容,不就是牛顿三定律吗。当然,在这个基础上,发展出了能量,动量,角动量这些非常重要的概念。但是,平均到每节课,也就那么一点点的核心概念,而其它的是“越来越多的x”。我常劝我的学生认真读课本,而且多读几遍,在课堂上我也会做一下演示实验,并且鼓励他们互相讨论。这一些努力,就是希望他们能够知道哪些知识点是最重要的,哪些是不重要的。


物理学的难懂,也不仅仅是知识经过了浓缩,因为大自然的本性有时候难以琢磨(不知道她是否“邪恶”),所以我们只能花费多的时间去“琢磨”。对于我来说,狭义相对论就是这样一个例子。学习的时候,让我有数不清的晚上失眠,在两年前,也亲自教了一遍,但直到现在,这里面的一些概念还是让会让我头疼一会儿。狭义相对论难懂的原因是因为里面的概念违反了直觉,最有名的例子是“同时的相对性”。在日常生活中,几乎无法想象,如果你对你的朋友说“我1年前在重庆爱上了我的女朋友”,另一个在飞船上得家伙大声说“你是一年半前爱上的”,你想你该有多么愤怒。而狭义相对论说这两种说法都对。正是因为违背了直觉,所以当有时思考狭义相对论的问题时,你需要不停的问自己一些愚蠢的问题“这个时间是站台的人的还是火车上人的”。著名物理学家海森堡大概也碰到了这样的麻烦,他说狭义相对论中的物理因为违反直觉而理解起来很费力。


而最近学习的Windows编程的这套系统是人工的系统,是由很多的微软的技术专家堆砌的系统。所以你需要的是了解他们的一些想法。这些想法当然“不邪恶”,很多时候倒是很繁琐。你需要的是知道他们的一些设计,从而弄懂这个系统如何运作。在这个过程中,常常会碰到一些生僻的名词,这是我劝我的学生要在表述物理问题时尽量避免的,我不会对这些名词像物理学中碰到的一样去努力弄清楚含义,太费事了就跳过去(可能心中也不屑于花太多的时间去弄懂它)。有时候,甚至不懂它的原理,但是会操作了,也就ok了,这对于习惯于物理思维的我来说,确实是一个挑战。


希望能在几个月后,能够用程序画出一些好看的图线来,我的目的也就达到了。

 


 胡锋 2011-12-3

 

From: 科学网 http://bbs.sciencenet.cn/home.php?mod=space&uid=43547&do=blog&id=514490

Author: 胡锋

 

分享到:
评论

相关推荐

    原子物理学学习指导(pdf)

    本PDF文件《原子物理学学习指导》是为学习原子物理学课程的学生准备的学习材料,内容涵盖了原子物理学的各个章节,并对经典例题进行了详细解析。下面将详细介绍文件中提及的知识点,包括原子核式模型、碱金属原子、...

    Windows游戏编程大师

    《Windows游戏编程大师》是一本深受游戏开发爱好者欢迎的电子书,它专为初学者设计,旨在引导读者踏入Windows平台的游戏编程世界。本书详细讲解了从基础到高级的游戏开发技术,帮助读者掌握创建动态、交互式游戏所需...

    Windows游戏编程大师技巧(CHM)

    第一部分为Windows编程基础,包括概述、 Windows编程、GDI、控件等知识,第二部分为DirectX和2D基础,接触了用DirectX进行各种控制及二维平面中变换的知识,第三部分编程核心则重点介绍了相关的数学、物理原理及如何...

    windows驱动编程大全

    《Windows驱动编程大全》涵盖了Windows操作系统中驱动程序开发的核心知识,包括Windows 2000/XP的WDM(Windows Driver Model)设备驱动程序、Windows 2000内部机制以及Microsoft Windows驱动程序模型(WDM)的设计...

    Windows游戏编程.rar

    这个"Windows游戏编程.rar"可能包含了以上各个领域的教程、代码示例或参考资料,对于想要学习Windows游戏开发的人来说,这是一个宝贵的资源。学习游戏编程不仅需要理论知识,还需要大量的实践,通过编写游戏来理解和...

    Windows内核安全编程

    - Windows的安全模型基于访问控制列表(ACL),每个对象都有一个描述其访问权限的列表。 - 用户、组和权限的组合决定了对象能否被访问及如何访问。 7. **内核模式编程** - 内核模式编程涉及驱动程序开发,需要...

    windows内核编程

    在Windows操作系统中,内核是系统的核心,它管理着硬件资源,提供了系统服务,并为应用程序提供了一个执行环境。理解并掌握Windows内核编程对于开发高效、稳定的系统级软件以及进行高级信息安全防护至关重要。 一、...

    Windows游戏编程大师技巧(第二版)完整版光盘文件04

    《Windows游戏编程大师技巧(第二版)》是一本深度探讨Windows平台上游戏开发的权威书籍,其完整版光盘文件包含了丰富的资源,旨在辅助读者更好地理解和实践书中的理论知识。光盘内容共分为九个主要部分,分别是:...

    从汇编语言到Windows内核编程_Kernel_win32asm_Asm_

    《从汇编语言到Windows内核编程》是深入理解计算机系统底层运作机制的重要参考资料,尤其对想要探索操作系统核心奥秘的IT专业人士极具价值。...因此,《从汇编语言到Windows内核编程》是一本值得深入研读的技术宝典。

    windows游戏编程 pdf格式

    《Windows游戏编程》是一本专为游戏开发初学者编写的指南,它涵盖了在Windows平台上创建游戏所需的基础知识和技能。这本书以PDF格式提供,章节分明,且为高清非扫描版本,确保了阅读体验的优质性。以下是根据标题和...

    Windows游戏编程大师技巧(第二版)源码及美术素材

    《Windows游戏编程大师技巧(第二版)》是一本深度探讨Windows平台上游戏开发的专业书籍,它提供了丰富的源码和美术素材,旨在帮助读者深入理解游戏开发的各个环节。此资源包包括了作者精心编写的源代码以及用于游戏...

    天书夜读从汇编语言到windows内核编程

    - WinDbg:一个功能强大的调试工具,可以用来调试用户模式和内核模式代码。 由于文档中的部分内容是通过OCR扫描得到,可能存在一些乱码和不完整的句子,所以在学习过程中,应当以官方文档和教科书为准确参考,以此...

    《Windows图形编程》 源码

    通过学习和实践《Windows图形编程》一书的源码,读者不仅可以掌握Windows图形编程的基础知识,还能了解到实际开发中的技巧和优化策略。袁峰先生的著作以其易懂性和实用性,为初学者和有经验的开发者提供了宝贵的参考...

    Windows游戏编程大师技巧——2D和3D游戏编程基础.zip

    在Windows平台上进行游戏编程是一项富有挑战性和...总的来说,掌握Windows游戏编程不仅需要扎实的编程基础,还需要对图形学、物理、音频和网络等多个领域的理解。通过不断学习和实践,你将能创造出自己的精彩游戏世界。

    Windows游戏编程大师技巧(第二版) 源码

    《Windows游戏编程大师技巧(第二版) 源码》是一个专为Windows平台游戏开发人员设计的资源,其中包含了丰富的代码示例和实践项目,帮助读者深入理解游戏开发的各个环节。这个压缩包很可能是书籍配套的实践教程,通过...

    calc-code.zip_Windows编程_物理实验

    在本项目中,"calc-code.zip" 是一个包含Windows编程和物理实验相关代码的压缩包。...对于学习Windows编程和物理实验的学生来说,这是一个很好的实践案例,可以帮助他们巩固理论知识,提升编程技能。

    Windows操作系统内核深入编程

    《Windows操作系统内核深入编程》一书是针对对Windows系统底层机制有浓厚兴趣的开发者和研究者的重要参考资料。这本书深入探讨了Windows操作系统的核心组件、工作原理以及如何进行系统级编程。书中涵盖了C++语言在...

    windows游戏编程大师技巧源码

    总之,《Windows游戏编程大师技巧》是一本全面介绍Windows游戏开发的教程,通过学习和实践书中的内容,你将能够构建自己的游戏引擎,创作出高质量的Windows平台游戏。而源码文件则提供了丰富的实践素材,帮助你将...

    Microsoft Windows网络编程(第二版,有书签)

    《Microsoft Windows网络编程》第二版是一本深入探讨Windows平台下网络编程的专业书籍,它为开发者提供了全面而详尽的指导,旨在帮助读者理解和构建高效、可靠的网络应用程序。书中的内容覆盖了从基本的网络概念到...

    半导体物理学学习辅导与典型题解

    《半导体物理学学习辅导与典型题解》一书旨在为学习半导体物理学的学生提供全面而深入的知识指导,以及通过解决典型问题来加深对理论的理解。本书基于刘恩科、罗晋生、朱秉升编著的经典教材《半导体物理学》,针对...

Global site tag (gtag.js) - Google Analytics