读书笔记二——大道至简

编程的根本:顺序、分支和循环。 * 程序=算法+结构。 * 编程的第一要务是先把事情分析清楚,事件先后的逻辑关系和依赖关系搞清楚,然后再去代码实现。 * 积极工作和勤于思考都要占时间。 * 算法是对一个程序的逻辑实现的描述,而结构是逻辑实现所依附的数据实体。 * 在所有的算法描述中,有且仅有三种执行逻辑:顺序、分支和循环。简单若顺序表,复杂如树、图,他们的算法都是用上面这三种执行逻辑来描述的。 * 编程语言只有喜欢与不喜欢的问题,没有会不会的问题。任何的一门语言,你都可以在两周内掌握并开始熟练编程。 * 通常而言,语言的差别主要表现在适用范围上。一些语言适合做数值处理,一些语言适合做图形处理,还有一些语言则适合于网页。 * 人的精力终归是有极限的。提出新的“方法”,解决的将是影响做事成效的根本问题。 * 所谓“面向过程开发”,其实是对“结构化程序设计”在代码阶段的一个习惯性的说法。

时间: 2024-10-08 08:09:04

读书笔记二——大道至简的相关文章

读书笔记一——大道至简

一些好句子的摘抄... 1.积极工作和勤于思考都需要占用时间. 2.对于聪明的人来说,正确的结论通常只有一个.因此,如果出现了争执,那么讨论的一定不是同一个问题. 3.用尽可能少的人,在尽可能短的时间内做出决策,这是降低沟通成本的关键. 4.没有特质的团队很快会死掉. 5.经验,是源于对过去的思考,而不是对过去的复制. 6.你的团队无论如何都需要一个远期目标. 7.你的“认识”决定了问题,你的“选择”导致“了自己. 8.要想解决问题,要么改变你的期望,要么改变你的体验. 9.你看不到你做事的行为

读书笔记三——大道至简

面向过程开发中,“过程”是CPU提供的,“单元”则是编译器提供的.程序员不需要再造就什么方法,就可以进行愚公式的开发工作了. * 团队的基本特性:主从.监督和责任. * 从管理角度来看,项目失败与否与项目经理的经验直接有关. * 项目成功是两个方面的评估:项目完成质量和项目完成时间. * 经验丰富的工程师能尽可能接近的预估工期,但没有办法保障预估的工期市局对合理的. * 组织模式确定的同时,相应的制度也有随之建立. * 对于一个已经规范管理.体制健全的公司,但前提是制度的人性化和公平性. * 项

《卓有成效的程序员》----读书笔记二

六大方面对比Launchy和TypeAndRun(TAR) 对于快速启动工具,很多人都有自己的偏好,多次听到朋友介绍Launchy的好,虽然自己一直在使用着TAR,还是克制不住对于好软件的渴求,下载Launchy进行试用.很多软件都是有一个试用期的,也许新的软件确实不错,但是你习惯了以前使用的那个软件.今天就比较客观的将Launchy和TAR进行一下对比,从界面.上手速度到功能.自定义,以及软件的稳定性.占用资源进行详细的比较. [界面美观]Launchy:毫无疑问这是它的强项.1.0正式版自带

《Programming in Lua 3》读书笔记(二十二)

日期:2014.8.6 PartⅣ The C API 26 Extending Your Application 使用Lua很重要的一点是用来做配置语言.配合主语言做一些功能的配置. 26.1 The Basics 有的时候程序需要配置一些功能信息,很多时候可能有许多别的方法比用lua做配置要更简单:如使用环境变量或者读取文件,读取文件涉及到文件的解析.如果使用Lua进行配置的话,相当于用lua文件替代了要读取的如csv.txt文件等. 使用Lua进行配置的时候,就需要使用Lua API去控制

《R实战》读书笔记二

第一章 R简介 本章概要 1安装R 2理解R语言 3运行R程序 本章所介绍的内容概括如下. 一个典型的数据分析步骤如图1所示. 图1:典型数据分析步骤 简而言之,现今的数据分析要求我们从多种数据源中获取数据.数据合并.标注.清洗和分析,并且把分析的结果进行展示,形成报告或者系统,辅助决策.R能够满足现今数据分析的要求. 为什么用R? R是一个适合统计分析和绘图的环境与语言.它是开源.免费的,获得世界范围社区支持.统计分析和绘图工具已经很多了,例如:SPSS,SAS,Excel,Stata和Min

《学会提问》读书笔记二

<学会提问>读书笔记二 因为书中的小点知识和思考太多,我从这篇笔记开始就只记我害怕会遗忘的知识,思考过程就不提及了. 弱势批判性思维和强势批判性思维 弱势批判性思维的目的是用批判性思维来反驳.抵制那些和你意见不同的论述最终就是为了看到那些与你主张不一致的人服服帖帖的甘心认输,但是这样就意味着,你对于是否接近真理和发扬美德漠不关心,实际上也摧毁了批判性思维潜在的人性的一面和不断发展进步的特征.而且我认为,弱势批判性思维的出发点是自私的,他们盲目地认为自己的观点就是正确的,用批判性思维来批判其他人

《大型网站技术架构》读书笔记二:大型网站架构模式

一.分层 最常见的架构模式,将系统在横向维度上切分成几个部分,每个部分单一职责.网站一般分为三个层次:应用层.服务层和数据层,其具体结构如下图所示: 通过分层,一个庞大系统切分成不同部分,便于分工合作和维护. 但是,分层架构也有一些挑战:①必须合理规划层次边界和接口:②禁止跨层次的调用及逆向调用. 二.分割 分割是在纵向方面对软件进行切分->将不同的功能和服务分割开来,包装成高内聚低耦合的模块单元,有助于软件开发和维护,还便于不同模块的分布式部署,提高网站的并发处理能力和功能扩展能力. 三.分布

《How Tomcat Works》读书笔记(二)

<How Tomcat Works>读书笔记(二) 这是<How Tomcat Works>第一二章的读书笔记.第一张主要写了一个静态资源处理的web服务器,第二章加了对servlet的处理. 1. 概述 1.1 架构 HttpServer:表示Http服务器,与客户端通信,处理Http请求. StaticResourceProcessor:对静态资源请求进行处理. ServletProcessor:对Servlet资源请求进行处理. Request:表示Http请求,实现了Ser

代码的未来读书笔记&lt;二&gt;

代码的未来读书笔记<二> 3.1语言的设计 对Ruby JavaScript Java Go 从服务端客户端以及静态动态这2个角度进行了对比. 这四种语言由于不同的设计方针,产生了不同的设计风格. Header 客户端 服务端 动态 Html5 Ruby 静态 Java Go 静态动态 静态:无需实际运行,仅根据程序代码就能确定结果. 动态:只有到了运行时才能确定结果.不过无论任何程序,或多或少都包含的动态的特性. 动态运行模式 运行中的程序能识别自身,并对自身进行操作.对程序自身进行操作的编