《C语言接口与实现:创建可重用软件的技术》,原名《CInterfacesandImplementations:TechniquesforCreatingReusableSoftware》,作者:【美】DavidR.Hanson,翻译:傅蓉周鹏张昆琪权威,出版社:机械工业出版社,ISBN:7111130057,PDF格式,大小10MB。
内容简介:本书概念清晰、内容新颖、实例详尽,是一本有关设计、实现和有效使用c语言库函数,掌握创建可重用c语言软件模块技术的参考指南。
本书倡导基于接口的c语言设计理念及其实现技术,深入详细地描述了24个c语言接口及其实现。
  本书通过叙述如何用一种与语言无关的方法将接口的设计与实现独立开来,从而形成一种基于接口的设计途径来创建可重用的api,本书是一本针对c语言程序员的不可多得的好书,也是值得所有希望掌握可重用软件模块技术的读者阅读的参考书籍。
  关于如何设计、实现和有效使用库函数的指南少之又少(如果说还有的话)。
这本力作填补了这个空白。
它可以作为下一代软件的工具书.所有的c语言程序员都应该阅读。
  ——w.richardstevens  “我向每位专业c语言程序员推荐这本书。
c语言程序员们忽视书中所描述的各种技术已经太长时间了。
”  ——normanramsey,贝尔实验室研究员每一位程序员和软件项目经理必须掌握创建可重用软件模块的技术:可重用软件模块是构建大规模、可靠应用的基石。
与当前某些面向对象语言不同,c语言为创建可重用应用程序接口(applicationprogramminginterface,api)提供的语言和功能支持非常少。
尽管大多数c语言程序员在自己所编写的每一个应用程序中都使用api和实现api的库.但只有相当少的程序员可以创建和发布新的、可广泛使用的api。
本书阐述了如何用一种与语言无关的方法将接口的设计与实现独立开来,从而形成一种基于接口的设计途径来创建可重用的api。
书中提供大量实例具体说明这种方法。
作者详细描述了24个接口和它们的实现细节,有助于读者对这种设计方法的透彻理解。
本书具有如下特色:简洁明了的接口描述。
为对接口设计感兴趣的程序员提供了一个参考手册每一章接口的代码实现分析将帮助读者修改、扩充一个接口,或者设计相关接口深入探讨了“算法工程”:阐述如何将数据结构以及相关算法打包到可重用模块中24个api和8个实例程序的源代码都经过测试检查,每个程序都是按照”literate程序”的形式构成。
为源代码提供了全面完整的解释提供了非常少见的有关c语言编程技巧的文档记录可以方便地在http://www.cs.princeton.edu/software/cii/访问本书的所有源码目录:出版者的话专家指导委员会译者序前言第1章简介11.1literate程序21.2编程风格61.3效率7参考书目浅析9练习9第2章接口与实现112.1接口112.2实现132.3抽象数据类型152.4客户调用程序的责任172.5效率21参考书目浅析21练习22第3章原子253.1接口25.3.2实现26参考书目浅析31练习31第4章异常与断言334.1接口344.2实现384.3断言43参考书目浅析46练习46第5章内存管理495.1接口505.2产品级实现535.3校验实现55参考书目浅析62练习62第6章进一步内存管理656.1接口656.2实现67参考书目浅析72练习73第7章链表757.1接口757.2实现78参考书目浅析83练习83第8章表格858.1接口858.2例子:单词频率878.3实现92参考书目浅析98练习98第9章集合1019.1接口1019.2实例:交叉引用列表1039.3实现1099.3.1成员操作1109.3.2集合操作113参考书目浅析116练习116第10章动态数组11910.1接口11910.2实现122参考书目浅析124练习125第11章序列12711.1接口12711.2实现128参考书目浅析133练习133第12章环13512.1接口13512.2实现1
1
近年来,在高性能全数字控制的电气传动系统中,作为电力电子逆变技术的关键,pwm技术从最初追求电压波形正弦,到电流波形正弦,再到磁通的正弦,取得了突飞猛进的发展[1]。
在众多正弦脉宽调制技术中,空间电压矢量pwm(或称svpwm)是一种优化的pwm技术,能明显减小逆变器输出电流的谐波成分及电机的谐波损耗,降低脉动转矩,且其控制简单,数字化实现方便,电压利用率高,已有取代传统spwm的趋势。
本文对空间电压矢量pwm的原理进行了深入分析,重点推导了每一扇区开关矢量的导通时间,并在ti公司生产的dsp上实现三相逆变器的控制,证明了分析的正确和可行性。
2023/7/12 18:50:25 424KB svpwm程序
1
这是用专业眼观,剖析“铱星计划”的失败原因
2023/7/12 9:07:11 44KB 铱星计划 失败案例 卫星通信 商业
1
Delphi是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。
它使用了MicrosoftWindows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(Object-OrientedLanguage)、当今世界上最快的编辑器、最为领先的数据库技术。
对于广大的程序开发人员来讲,使用Delphi开发应用软件,无疑会大大地提高编程效率,而且随着应用的深入,您将会发现编程不再是枯燥无味的工作——Delphi的每一个设计细节,都将带给您一份欣喜。
 1.1Delphi基本概念介绍 1.1.1Delphi的基本形式 Delphi实际上是Pascal语言的一种版本,但它与传统的Pascal语言有天壤之别。
一个Delphi程序首先是应用程序框架,而这一框架正是应用程序的“骨架”。
在骨架上即使没有附着任何东西,仍可以严格地按照设计运行。
您的工作只是在“骨架”中加入您的程序。
缺省的应用程序是一个空白的窗体(Form),您可以运行它,结果得到一个空白的窗口。
这个窗口具有Windows窗口的全部性质:可以被放大缩小、移动、最大最小化等,但您却没有编写一行程序。
因此,可以说应用程序框架通过提供所有应用程序共有的东西,为用户应用程序的开发打下了良好的基础。
Delphi已经为您做好了一切基础工作——程序框架就是一个已经完成的可运行应用程序,只是不处理任何事情。
您所需要做的,只是在程序中加入完成您所需功能的代码而已。
在空白窗口的背后,应用程序的框架正在等待用户的输入。
由于您并未告诉它接收到用户输入后作何反应,窗口除了响应Windows的基本操作(移动、缩放等)外,它只是接受用户的输入,然后再忽略。
Delphi把Windows编程的回调、句柄处理等繁复过程都放在一个不可见的Romulam覆盖物下面,这样您可以不为它们所困扰,轻松从容地对可视部件进行编程。
1.1.2面向对象编程的概念 面向对象的程序设计(Object-OrientedProgramming,简记为OOP)是Delphi诞生的基础。
OOP立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。
它通过给程序中加入扩展语句,把函数“封装”进Windows编程所必需的“对象”中。
面向对象的编程语言使得复杂的工作条理清晰、编写容易。
说它是一场革命,不是对对象本身而言,而是对它们处理工作的能力而言。
对象并不与传统程序设计和编程方法兼容,只是部分面向对象反而会使情形更糟。
除非整个开发环境都是面向对象的,否则对象产生的好处还没有带来的麻烦多。
而Delphi是完全面向对象的,这就使得Delphi成为一种触手可及的促进软件重用的开发工具,从而具有强大的吸引力。
一些早期的具有OOP性能的程序语言如C++,Pascal,Smalltalk等,虽然具有面向对象的特征,但不能轻松地画出可视化对象,与用户交互能力较差,程序员仍然要编写大量的代码。
Delphi的推出,填补了这项空白。
您不必自己建立对象,只要在提供的程序框架中加入完成功能的代码,其余的都交给Delphi去做。
欲生成漂亮的界面和结构良好的程序丝毫不必绞尽脑汁,Delphi将帮助您轻松地完成。
它允许在一个具有真正OOP扩展的可视化编程环境中,使用它的ObjectPascal语言。
这种革命性的组合,使得可视化编程与面向对象的开发框架紧密地结合起来。
1.2Delphi快速入门 在这一节中,我们来开发一个小程序。
随着开发的过程,逐步介绍Delphi的主要部件及其操作方法。
建议读者按照本书介绍的过程,在您的电脑上直接操作。
您将对Delphi的可视化编程有一个直观、快捷的了解,必将起到事半功倍的效果。
 1.2.1进入Delphi的可视化编程环境1.2.1.1安装Delphi Delphi的安装与其它应用软件并无不同。
2.0版必须在Windows95以上的操作系统中使用。
启动Windows95或WindowsNT后,将Delphi的光盘放入光驱(CD-ROM)中,运行光盘上的\INSTALL\SETUP.EXE文件,它的安装程序会提示您正确地装入Delphi。
如果您是在微软中文Windows环境中安装Delphi,请参照附录A来设置您的BDE环境,以便于处理中文数据。
 1.2.1.2进入Delphi环境为避免隐藏在Delphi后的ProgramManager和曾经运行过的其它程序扰乱版面,分散您的注意力,不妨在启动Delphi前关掉其它应用程序;
启动Delphi后,再最小化隐藏在后面的Delphi2.0程序组。
这样屏幕上就只留下Delphi窗口可见了。
首次加载Delphi,屏
2023/7/11 10:41:17 433KB delphi 编程 入门
1
国内数据包络分析的大牛魏权龄的dea教程,可做入门与深入研究。
2023/7/10 21:02:35 10.14MB dea 数据包络分析 魏权龄
1
小甲鱼汇编语言全套课程,共77讲(百度云下载地址)。
小甲鱼的课程生动幽默,配有很多动画,深入了解计算机内部的工作过程,对汇编语言的学习受益匪浅,适合初学者学习,学习以后会有很大的进步。
非常值得学习。
2023/7/9 6:33:51 102B 小甲鱼 汇编语言 零基础入门
1
Nunit2.4.8的源码,对开源感兴趣的人可以看看,希望对想更深入了解Nunit的人有帮助。
2023/7/5 0:02:51 1.69MB Nunit 测试工具 源码
1
Redis从入门到精通高清,迅雷播放器组件可顺利播放
2023/7/4 22:27:33 145.66MB Redis
1
(CSAPP.pdf)深入理解计算机系统
2023/7/3 11:24:29 6.75MB CSAPP
1
我关注了这个系列的书有一段时间了,本来是不想买这本书的,动画相关的部分目前对我来说没用。
但是,前一段时间我们的项目需要做到活动的人体与衣服做碰撞,模拟组调研了一些资料,如实时体素化之类的,但是貌似开销很大,我这段时间想弄明白跟人体动画相关的知识,看看这个部分大致有哪些基础工作和难点,就弄了一本。
 入门的好书,覆盖了动画效果中的大部分内容。
插值计算部分还是有一些深度的,这部分要求还记得微积分和数值计算;
也讲明了前向动力学、逆向动力学各自的优劣;
隐式方程与levelset,这部分在实时布料模拟方面也有应用;
流体模拟方面讲解的不是很深入,而这方面更多是模拟方向,而且可以做的很深入,基本上不算动画了;
关于动作捕获技术,这部分本应该是重点的,但是,本书只讲了传统的CV实现技术,个人基本上使用不了,而没有提到最新的传感器fusion技术,深度摄像头技术,像Noitom的高性价比动作捕捉设备,Kinect/XtionPro通过简单的算法直接获取简单的骨骼信息,这些都是可以个人实现的。
12年出版的书,还是有点落后了。
总体来说,还是入门时必备。
希望作者尽快更新。
 我现在依然在学习渲染和物理引擎,等这两个主要部分学习完成了,就可以在整个系统中加入人物,动画效果。
还是挺爽的。
最近想到了在VR游戏中,动画部分还是很有用处的。
以前在表现效果较好的端游中,人物的动作还是没有达到令人舒服的连贯与流畅,在VR游戏中,两个虚拟的人彼此可见,动作效果不好会很容易观察出来的。
所以,这一块儿还是需要做一些工作的。
---------------------作者:knowthyselfcn来源:CSDN原文:https://blog.csdn.net/cloudqiu/article/details/54969965版权声明:本文为博主原创文章,转载请附上博文链接!
2023/7/2 11:09:27 14.82MB 计算机动画
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡