《Programming from the Ground Up》阅读笔记:p217-p238

news2024/11/24 3:50:34

《Programming from the Ground Up》学习第11天,p217-p238总结,总计22页。

一、技术总结

1.C compiling

p216, C compiling is split into two stages - the preprocessor and the main compiler。

注:感觉这个写法不好,因为preprocessor和compiler都是对象,这里应该指动作。应该是:C compiling is split into two stages - the preprocessing and compilation。

(1)preprocessing

p216, The preprocessor is responsible for putting together the text of the program.

从代码上来说,通过#include <stdio.h>指令实现。

(2)compilation

#include <stdio.h>:尖括号(angle bracket)包含的内容一般会到/usr/include或者/usr/local/include路径下寻找(如:stdio.h)。

#include “stdio.h”:引号(quote)包含的内容一般会到当前目录(current directory)下寻找。

2.Perl

Perl是一种解释型语言。

#!/usr/bin/perl
 
print("Hello Perl!\n");

Perl语言的优点是“ In fact, one of Perl’s main strengths is it’s ability and speed at manipulating text.”。

3.Python

Python是一种解释型语言。

#!/usr/bin/python
# filename: helloworld.py

print("Hello Python!")

以前总是不理解 #!/usr/bin/python的作用是什么,看到这里终于理解了。

当我们以 ./helloworld.py 的方式执行helloworld.py程序的时候, #!告诉电脑这是一个interpreted program, 使用/usr/bin/python(即/usr/bin目录下的python)这个interpretor来interprete helloworld.py程序。

当我们以 python helloworld.py 方式来执行helloworld.py程序时,已经显示指定了interpretor,此时#!/usr/bin/python会被忽略掉。

以前对这句话总是不理解,大概是因为头脑中没有interpretor这个概念,其实/usr/bin/下的python就是一个interpretor。

4.optimization(代码优化)

代码优化可以细分为speed, memory space usage, disk space usage等优化。书中讲的主要是speed优化。

(1)when

p234, Therefore, the time to optimize is toward the end of development, when you have determined that your correct code actually has performance problems.

因此,我们往往在开发即将结束时进行优化,这时已经确定代码的正确性,也确定了代码确实存在性能问题。

(2)where

p234, A profiler(性能分析器) is a program that will let you run you program, and it will tell you how much time is spent in each function, and how many times they are run.

a.local

b.global

二、英语总结

1.stick

p217, This includes sticking different files together, running macros on your program text, etc.

vt. to cause sth to become fixed, for example with glue or another similar substance.

2.legwork

p219, You can see that interpreted languages are often focused on letting you get working code as quickly as possible, withou having to do a lot of extra legwork.

也写作leg-work,u.the boring work that need to be done。Originally news reporter slang for an assignment that promised(这里不是“承诺”的意思,而是“很可能(to seem likely)”) more walking than copy.

3.evident

p219, One thing about Perl that isn’t so evident from this example is that Perl treats strings as a single value.

刚开始看到evident的时候以为是“证据”,但用在这里意思不符合,查了下“证据”的英文单词是“evidence”。evident: ex-(“fully”) + *eid-(“to see”), adj. easily seen or understood(显而易见的)。

三、其它

耗时11天,终于完结了,明天出读后感。

四、参考资料

1. 编程

(1)Jonathan Bartlett,《Programming From The Ground Up》:https://book.douban.com/subject/1787855/

2. 英语

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

(2) Cambridge Dictionary:https://dictionary.cambridge.org

在这里插入图片描述

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2202774.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

开源AI智能名片链动2+1模式S2B2C商城小程序源码与工业4.0的融合发展:机遇与挑战

摘要&#xff1a;本文探讨了工业4.0的三大主题&#xff0c;即智能工厂、智能生产和智能物流&#xff0c;分析在各主题下开源AI智能名片链动21模式S2B2C商城小程序源码与之融合的可能性、带来的机遇以及面临的挑战&#xff0c;旨在为相关产业的协同发展提供理论参考。 一、引言 …

计算机网络:计算机网络概述 —— 描述计算机网络的参数

文章目录 数据量性能指标速率带宽数据传输速率 吞吐量时延分析时延问题 时延带宽积往返时间利用率丢包率丢包的情况 抖动可用性可靠性安全性 计算机网络是现代信息社会的基础设施&#xff0c;其性能和可靠性对各类应用至关重要。为了理解和优化计算机网络&#xff0c;我们需要深…

uniapp学习(004-1 组件 Part.2生命周期)

零基础入门uniapp Vue3组合式API版本到咸虾米壁纸项目实战&#xff0c;开发打包微信小程序、抖音小程序、H5、安卓APP客户端等 总时长 23:40:00 共116P 此文章包含第31p-第p35的内容 文章目录 组件生命周期我们主要使用的三种生命周期setup(创建组件时执行)不可以操作dom节点…

手撕数据结构 —— 单链表(C语言讲解)

目录 1.为什么要有链表 2.什么是链表 3.链表的分类 4.无头单向非循环链表的实现 SList.h中接口总览 具体实现 链表节点的定义 打印链表 申请结点 尾插 头插 尾删 头删 查找 在pos位置之前插入 在pos位置之后插入 删除pos位置 删除pos位置之后的值 5.完整代码…

把自己的代码安装到系统环境中/conda环境

1. 安装setuptools库 2. 创建一个如下的setup.py程序 # codingutf-8 from setuptools import setupsetup(author"zata",description"This is a nir analyse api, writen by zata", ### 一句话概括一下name"nirapi", ### 给你的包取一个名字…

小熊猫C/C++的安装使用及配置教程

文章目录 软件介绍小熊猫C下载地址安装下载完得到可执行文件选择语言阅读协议接受条款组件默认即可最好不要占用系统盘 配置-使用打开会选择主题和默认语言创建项目创建源文件编译及运行 软件介绍 小熊猫C是一个简单易用的集成开发环境(IDE)。 学校里几乎用的都是Dev C这种轻量…

【数学分析笔记】第5章第1节 微分中值定理(1)

5. 微分中值定理及其应用 5.1 微分中值定理 5.1.1 极值与极值点 【定义5.1.1】 f ( x ) f(x) f(x)定义域为 ( a , b ) (a,b) (a,b)&#xff0c; x 0 ∈ ( a , b ) x_0\in(a,b) x0​∈(a,b)&#xff0c;若 ∃ O ( x 0 , ρ ) ⊂ ( a , b ) \exists O(x_0,\rho)\subset(a,b) ∃…

自动猫砂盆“智商税”还是“真香”?2024自动猫砂盆保姆级干货

平时忙着上班&#xff0c;或者一遇到出差就要离家四五天&#xff0c;没办法给毛孩子的猫砂盆铲屎&#xff0c;导致粪便堆积太久。很多铲屎官也了解到有自动猫砂盆这种东西&#xff0c;但是生怕是智商税&#xff0c;总觉得忍忍手铲也可以&#xff0c;要知道&#xff0c;猫咪的便…

众数信科 AI智能体政务服务解决方案——寻知智能笔录系统

政务服务解决方案 寻知智能笔录方案 融合民警口供录入与笔录生成需求 2分钟内生成笔录并提醒错漏 助办案人员二次询问 提升笔录质量和效率 寻知智能笔录系统 众数信科AI智能体 产品亮点 分析、理解行业知识和校验规则 AI实时提醒用户文书需注意部分 全文校验格式、内容…

无人机之穿越机飞行注意事项

一、选择合适的场地 1、寻找空旷、无障碍物的区域&#xff0c;如大型公园的空旷草坪、专门的无人飞行场地等。这样可以减少碰撞的风险&#xff0c;确保飞行安全。 2、避免在人群密集的地方飞行&#xff0c;防止对他人造成伤害。例如&#xff0c;不要在商场、学校、体育场等人…

ESP32芯片物联网技术,咖啡机智能化升级方案,实现个性化咖啡体验

随着物联网技术的飞速发展&#xff0c;我们的日常生活正在变得越来越智能化。从智能音箱到智能家居&#xff0c;现在连我们每天早晨的咖啡也能享受到智能科技的便利。 今天&#xff0c;我们就来聊聊如何通过ESP32芯片&#xff0c;将传统的咖啡机转变为一台能够远程控制、个性化…

实际开发中,java开发的准备工作

实际开发中&#xff0c;java开发的准备工作 一、IDEA工具环境设置 1、编码设置

如何在阿里云一键部署FlowiseAI

什么是FlowiseAI FlowiseAI 是一个开源的低代码开发工具&#xff0c;专为开发者构建定制的语言学习模型&#xff08;LLM&#xff09;应用而设计。 通过其拖放式界面&#xff0c;用户可以轻松创建和管理AI驱动的交互式应用&#xff0c;如聊天机器人和数据分析工具。 它基于Lang…

zotero主页面显示的标签名与信息处的标签名不一致

问题描述&#xff1a;我在网页导入了论文之后&#xff0c;自动匹配了一些该论文的信息&#xff0c;但是很多都是空的&#xff0c;最大的问题就是找不到出版物的信息&#xff1b; 解决&#xff1a;最后发现在信息中是叫刊名&#xff0c;其中年对应的是在日期部分&#xff1b; 极…

显卡的HDMI和DP接口的区别,如何给显卡选择最佳效果的显示器

1、HDMI和DisplayPort&#xff08;DP&#xff09;的区别 在显卡接口的选择上&#xff0c;HDMI和DisplayPort&#xff08;DP&#xff09;是两种常见的连接方式。它们在兼容性、性能以及分辨率等方面存在区别。具体分析如下&#xff1a; 兼容性 HDMI&#xff1a;广泛兼容多种设备…

VScode连接服务器配置c、c++编程环境

在 VS Code 中配置远程服务器的 C/C 编程环境&#xff0c;可以使用 VS Code 的 Remote-SSH 扩展来通过 SSH 连接到远程服务器&#xff0c;并在服务器上编写、编译和调试 C/C 代码。 以下是详细的配置步骤&#xff1a; 1. 在本地机器上安装 VS Code 和扩展 安装 VS Code&#…

【测试】——测试管理工具禅道 介绍与使用

&#x1f4d6; 前言&#xff1a;测试管理工具是一种并没有占据明显份额的工具。创业公司可能根本没有测试管理工具&#xff0c;而依赖Excel来管理。中小企业可能会在开源的基础上进行定制。大厂则会自研工具或者使用商业软件。本期以国产开源工具禅道为例来进行讲解。 目录 &am…

通用文件I/O模型之open

前面介绍了linux系统一切皆文件的概念&#xff0c;系统使用一套系统调用函数open()、read()、write()、close()等可以对所有文件执行I/O操作。应用程序发起的I/O请求&#xff0c;内核会将其转化为相应的文件系统操作&#xff0c;或者设备驱动程序操作。接下来我们一起了解一下o…

gitee开源商城diygw-mall

DIYGW可视化开源商城系统。所的界面布局显示都通过低代码可视化开发工具生成源码实现。支持集成微信小程序支付。 DIYGW可视化开源商城系统是一款基于thinkphp8 framework、 element plus admin、uniapp开发而成的前后端分离系统。 开源商城项目源码地址&#xff1a;diygw商城…

funasr: 报错 CUDA error: invalid device ordinal

问题描述 使用案例中的代码加载模型的时候&#xff0c;会报错 CUDA error: invalid device ordinal 运行的代码是 model AutoModel(modelmodel_dir,vad_model"fsmn-vad",vad_kwargs{"max_single_segment_time": 30000},device"cuda:0", ) 解…