《Programming Abstractions In C》学习第46天,p107-p110,3.1小节——“The concept of interface”,总结如下:

一、技术总结

1.client

p108,调用library的program称为client。

2.interface

p108,"To do so, the chapter focuses on the boundary between a library and its clients, which is called interface."。

p108,“In English, the word interface means a common boundry between two distinct entities.”

在C语言中,interface就是一个的“xxx.h”文件,如stdio.h。

3.package

p109,"If you are assigned to develop a libray, part of your job consists of producing a .h file to serve as the library interface and a corresponding .c file that provides the underlying implementation. Those file constitute the package."根据这句话,.a 和 .h和在一起称为package。示例:stdio就是一个package。

4.approach

p110,“The two libraries embody different approaches...”。根据该句,approach指的就是函数,例如:getchar()。

二、英语总结

1."Interfaces are central to a modern treatement of libraries,"一句中treatement什么意思?

答:treatment:n. the way you deal with or behave towards to sb or sth.(对待,处理),“treatment of sth”意为“对sth的处理”,注意介词用的是of。

2.counterpart什么意思?

答:counter(词根contra,"facing, opposite") + part(词根partie,“copy of a person or thing”)。counterpart的意思是“n. a person or thing that has the same purpose as another one”(相对应的东西)。作为对比,opposite含有“相反”之意,corresponding是形容词。

3.an amount of /amounts of语法

答:单独的使用an mount of/amounts of指表示数量,未表面数量的多少,所以,amount前面经常放置用于修饰数量的形容词,例如:enormous,large,regular等。

4.the designer of an interface must exercise special care to get it right一句中exercise什么意思?

答:vt. use sth。所以exerciese care 等同于use caution 或者be careful。

三、参考资料

1.编程

1)Eric S.Roberts,《Programming Abstractions in C》:https://book.douban.com/subject/2003414

2.英语

1)Etymology Dictionary:https://www.etymonline.com

2)Cambridage Dictionary:https://dictionary.cambridge.org

欢迎搜索及关注:编程人(a_codists)

Programming abstractions in C阅读笔记:p107-p110的更多相关文章

  1. Mongodb Manual阅读笔记:CH3 数据模型(Data Models)

    3数据模型(Data Models) Mongodb Manual阅读笔记:CH2 Mongodb CRUD 操作Mongodb Manual阅读笔记:CH3 数据模型(Data Models)Mon ...

  2. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十三章:角色动画

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二十三章:角色动画 学习目标 熟悉蒙皮动画的术语: 学习网格层级变换 ...

  3. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十一章:模板测试

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十一章:模板测试 代码工程地址: https://github.co ...

  4. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第六章:在Direct3D中绘制

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第六章:在Direct3D中绘制 代码工程地址: https://gi ...

  5. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第四章:Direct 3D初始化

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第四章:Direct 3D初始化 学习目标 对Direct 3D编程在 ...

  6. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二章:矩阵代数

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第二章:矩阵代数 学习目标: 理解矩阵和与它相关的运算: 理解矩阵的乘 ...

  7. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第一章:向量代数

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第一章:向量代数 学习目标: 学习如何使用几何学和数字描述 Vecto ...

  8. 阅读笔记 1 火球 UML大战需求分析

    伴随着七天国庆的结束,紧张的学习生活也开始了,首先声明,阅读笔记随着我不断地阅读进度会慢慢更新,而不是一次性的写完,所以会重复的编辑.对于我选的这本   <火球 UML大战需求分析>,首先 ...

  9. [阅读笔记]Software optimization resources

    http://www.agner.org/optimize/#manuals 阅读笔记Optimizing software in C++   7. The efficiency of differe ...

  10. 《uml大战需求分析》阅读笔记05

    <uml大战需求分析>阅读笔记05 这次我主要阅读了这本书的第九十章,通过看这章的知识了解了不少的知识开发某系统的重要前提是:这个系统有谁在用?这些人通过这个系统能做什么事? 一般搞清楚这 ...

随机推荐

  1. 2022-08-19:以下go语言代码输出什么?A:equal;B:not equal;C:不确定。 package main import ( “fmt“ “reflect“ )

    2022-08-19:以下go语言代码输出什么?A:equal:B:not equal:C:不确定. package main import ( "fmt" "refle ...

  2. 2021-04-05:给两个长度分别为M和N的整型数组nums1和nums2,其中每个值都不大于9,再给定一个正数K。 你可以在nums1和nums2中挑选数字,要求一共挑选K个,并且要从左到右挑。返回所有可能的结果中,代表最大数字的结果。

    2021-04-05:给两个长度分别为M和N的整型数组nums1和nums2,其中每个值都不大于9,再给定一个正数K. 你可以在nums1和nums2中挑选数字,要求一共挑选K个,并且要从左到右挑.返 ...

  3. Jenkins - 安装部署

    Jenkins安装部署 简介 Jenkins是一个开源的软件项目,是基于java开发的一种持续集成工具,用于监控持续重复的工作,提供一个开放易用的软件平台,使软件的持续集成变成可能. 主要用于: 持续 ...

  4. Djnago常用命令

    pip: bundle,创建包含多个包的pybundles:freeze,显示所有已安装的包:help,显示可用命令:install,安装包:search,搜索PyPi:uninstall,卸载包:u ...

  5. SICP:惰性求值、流和尾递归(Python实现)

    求值器完整实现代码我已经上传到了GitHub仓库:TinySCM,感兴趣的童鞋可以前往查看.这里顺便强烈推荐UC Berkeley的同名课程CS 61A. 即使在变化中,它也丝毫未变. --赫拉克利特 ...

  6. 解读与用户一起“跳动”的开源实时监控工具 HertzBeat

    摘要:开源项目遇上华为云,会擦出怎样的火花? 在本期<开源实时监控工具HertzBeat如何与用户一起"跳动?>的主题直播中,HertzBeat & TanCloud 创 ...

  7. Weblogic反序列化(CVE-2023-21839)漏洞复现

    前言 序列化(Serialization):将对象的状态信息转换为可以存储或传输的形式的过程,一般将对象转换为字节流.序列化时,对象的当前状态被写入到临时或持久性存储区(文件.内存.数据库等). 反序 ...

  8. 解决github无法打开问题

    在国内访问国外服务器(如github)会有卡顿.无法加载等问题,提供两种解决方案: 1.查看github的IP地址并修改Hosts windows键+R,打开cmd(或windows键+X,打开Win ...

  9. Python Joblib库使用学习总结

    实践环境 python 3.6.2 Joblib 简介 Joblib是一组在Python中提供轻量级流水线的工具.特别是: 函数的透明磁盘缓存和延迟重新计算(记忆模式) 简单易用的并行计算 Jobli ...

  10. JDBC详解(韩顺平教程)

    JDBC 一.原理示意图 二.前提步骤 IDEA导入MySQL的jdbc驱动,并操作数据库 - 打点 - 博客园 (cnblogs.com) 三.JDBC编写步骤: 用法1: package Hsp. ...