《Python 学习手册》笔记 1

今天看了 Udacity 的 iOS 学习路线介绍,作者的看法是,最好先学习 Swift,而不是 Objective-C,原因一方面是 Swift 要简单一些,另一方面是因为 Apple 打算用 Swift 作为将来的官方语言取代 OC。

大学里,编程语言课程就是 C 和 C++。我不知道这是谁定的,也许他们有足够充分的理由。但是对于大多数人来说,这两个语言——一个太底层,一个太复杂)其实不见得那么重要。还不如学学 Ruby 和 Python 这样的抽象度更高的解释性语言,易于使用,而且内置了强大的工具,让人更容易有成就感,同时也不影响掌握编程的方法,只不过牺牲一点底层知识而已——可以从计算机体系结构课程中补回来。

学了两个月的 Objective-C 之后,我觉得它实在是太麻烦了。Swift 倒是简单一些,但是只限定于 Apple 的平台,不适合作为自己的核心基础。核心基础无非两类:底层的 C,高层的 Python 和 Ruby 等。我相信从底层学起知识会更牢固,但是,从高层学起更符合人的认知规律。所以我决定从 Python 开始,从高层直觉逐步分解到机器层指令。

我实在是不知道该选择哪些书作为教材,不过因为不想用盗版书,同时又希望用 iPad 搞定一切,所以干脆就只买 Kindle 商店和多看商店里的书了。也就有了这本《Python 学习手册》。

作者一开始就讲了一堆 Python 的好处,仿佛知乎上的语言大战上演。不知道是不是老了,我开始想“这句话这个词到底特么什么意思呢?”,什么叫开发效率高?怎么衡量开发效率?Python 的程序质量高?程序质量你怎么量化?程序崩了怎么知道是 OS 的问题,用户的问题,硬件的问题,还是程序员的问题?…………

你看,好多事情本来很复杂,好多人把它往简单了说,下几个痛快的结论,然后这些事情看起来好像就简单了。就好像朱清时说物理学家登上山顶,发现佛学已经在那儿等着了……我去,谁找个佛学大师来讲讲量子力学,算算暗物质在太阳系的分布呗?反正您已经在山顶上等着了嘛……

说实话,我很讨厌定义模糊的概念——除了点和直线这样实在是没法儿定义的东西……

读这本书的第一章,我的脑子就自动生成了一堆问题,不信你看:

  1. 注重可读性(可读的标准或者模板是什么?)、一致性(这是什么意思?)、软件质量(如何衡量软件的质量?)、重用(如何重用?)
  2. 开发效率(相当于 C++/Java 的0.2~0.3)
  3. 可移植性(直接复制就可以?您确定?)
  4. 标准库(NumPy)
  5. 组件集成(与 C/C++互相调用,与 Java 集成)
  6. 乐趣(”易用“是什么意思?用来干啥?,”强大内置工具“,干什么很强大?)

我没救了。

不过作者的一句话倒是挺应景的:”20世纪90年代中后期互联网带来的信息爆炸,使有限的程序员难以应付繁多的软件开发项目,往往要求开发者以互联网演变一样的速度去开发系统。“

我的同学在 BAT 每天累得不行了都……

时间: 2024-11-07 18:17:13

《Python 学习手册》笔记 1的相关文章

深入解析Windows操作系统笔记——CH1概念和术语

1.概念和工具 本章主要介绍Windows操作系统的关键概念和术语 1.概念和工具... 1 1.1操作系统版本... 1 1.2基础概念和术语... 2 1.2.1Windows API2 1.2.2 服务.函数和例程... 3 1.2.3 进程.线程和作业... 4 1.2.3.1 进程... 4 1.2.3.2 线程... 4 1.2.3.3 虚拟地址描述符... 4 1.2.3.4 作业... 4 1.2.4 虚拟内存... 5 1.2.5 内核模式和用户模式... 5 1.2.6 终端

现代操作系统笔记

总结<现代操作系统>的一些概念知识. 1.进程上下文环境: 对进程执行活动全过程的静态描述 由进程的用户地址空间内容.硬件寄存器内容及与该进程相关的核心数据结构组成 用户级上下文:进程的用户地址空间(包括用户栈各层次),包括用户正文段.用户数据段和用户栈 寄存器级上下文:程序计数器.程序状态寄存器.栈指针.通用寄存器的值 系统级上下文:  静态部分(PCB和资源表格)   动态部分:核心栈(核心过程的栈结构,不同进程在调用相同核心过程时有不同核心栈) 2.构造服务器的三种方法: 进程中的线程是

[现代操作系统笔记][第四章文件系统]

第四章 文件系统 4.1 文件 从用户角度来考察文件.用户如何使用文件,文件有那些特性. 4.1.1 文件命名 文件一种抽象机制,提供了一种在磁盘上保留信息而且以后方便读取的方法. 有的文件系统区分大小写,有的则不区分 Unix是前者,MS-DOS是后者 FAT-16,FAT-32,NTFS. FAT-16(File Allocation Table,文件配置表) : Windows 95 FAT-32 : Windows 98 NTFS(New Technology File System,新

操作系统笔记

虚拟文件系统当时的设计目的是为了网络文件系统而设计的.虚拟文件系统,是一个抽象层.所以一个分区可以同时存在多个文件系统的原因就是,有个抽象层.. Windows没有这个,不需要这样子做.它靠盘符来确定文件系统网络文件系统的缺点:需要锁机制. 无状态性.客户端并没有记录打开的文件.为什么不记录打开项呢?其实是把服务端做为一个子目录来使用的. 现在终于明白为什么linux没有分区的概念了.window 之所以要进行分区.就是因为,它需要区分不同的文件系统.当你请求一个文件时,给出路径,操作系统就能知

【操作系统笔记】一、引论

操作系统引论 操作系统的目标 方便性 有效性 可扩充性 开发性 操作系统的作用 OS作为用户与计算机硬件系统之间的接口,即OS处于用户与计算机硬件之间,用户通过OS来使用计算机系统 注意,OS是一个系统软件 用户可以通过以下三种方式使用计算机 命令方式 系统调用方式 图形.窗口模式 OS作为计算机资源的管理者 计算机资源包括:处理器,存储器,I/O设备以及信息(数据和程序) OS的功能: 处理机管理:分配和控制处理机 存储器管理:负责内存的分配与回收 I/O设备管理:负责I/O设备的分配与操纵

操作系统笔记-操作系统结构

操作系统提供的服务 用户界面(UI)有两种基本方法:提供命令行界面或命令中断,允许用户直接输入操作系统完成的命令,如命令行界面(command-line interface, CLI).批界面:允许用户通过图形用户界面与操作系统交互多种形式,如图形用户界面(GUI)等. Shell:有的操作系统在内核中包含的命令解释程序,用于获取并执行用户执行的下一条命令. 操作系统的系统调用system call提供了有效的服务界面.一般应用程序开发人员选择根据API设计程序,组成API的函数通常为应用程序员

深入解析Windows操作系统笔记——CH3系统机制

3.系统机制 微软提供了一些基本组件让内核模式的组件使用: 1.陷阱分发,包括终端,延迟的过程调用(DPC),异步过程调用(APC),异常分发以及系统服务分发 2.执行体对象管理器 3.同步,包括自旋锁,内核分发器对象,以及等待是如何实现的. 4.系统辅助线程 5.其他的机制,比如Windows全局标记 6.本地过程调用 7.内核事件跟踪 8.Wow64 3.系统机制... 1 3.1陷阱分发... 3 3.1.1 中断分发... 4 3.1.1.1 硬件中断... 4 3.1.1.2 软中断请

操作系统笔记之进程与线程

背景 操作系统设计的7个主题:1. 进程描述和控制2. 内存管理3. 调度4. I/O和文件管理5. 并发和分布式系统6. 嵌入式系统7. 安全 操作系统利用一个或多个处理器的硬件资源,为系统用户提供一组服务,还代表用户来管理辅助存储器和I/O设备. CPU中断的分类:1. 程序中断2. 时钟中断3. I/O中断4. 硬件失效中断 DMA:直接内存存取 概述 典型计算机系统的三个重要接口:1. 指令系统体系结构ISA2. 应用程序二进制接口ABI3. 应用程序编程接口API 进程 三个部分:1.

操作系统笔记目录贴

一.绪论+操作系统用户界面 二.进程管理 三.10月14日 四.10月21日 五.10月28日 六.11月4日 七.11月11日 八.11月18日 九.11月25日 十.12月2日 参考<计算机操作系统教材>(第4版)张尧学,宋虹,张高编著. 参考<现代操作系统>AndrewS.Tenenbeum著. 参考<操作系统实用教程>仁爱华编著.

深入解析Windows操作系统笔记——CH2系统结构

2.系统结构 本章主要介绍系统的总体结构,关键部件之间的交互,以及运行在什么环境. 2.系统结构... 1 2.1 需求和设计目标... 1 2.2 操作系统模型... 2 2.3 总体结构... 2 2.3.1 可移植性... 3 2.3.2 对称多处理... 3 2.3.3 可伸缩性()5 2.3.4 客户和服务器版本的区别... 5 2.3.5 版本检查... 5 2.4 关键的系统组件... 5 2.4.1 环境子系统和子系统dll6 2.4.1.1 Windows子系统... 7 2.