《代码大全2》读书笔记 Week8】的更多相关文章

代码的未来读书笔记<二> 3.1语言的设计 对Ruby JavaScript Java Go 从服务端client以及静态动态这2个角度进行了对照. 这四种语言因为不同的设计方针,产生了不同的设计风格. Header client 服务端 动态 Html5 Ruby 静态 Java Go 静态动态 静态:无需实际执行,仅依据程序代码就能确定结果. 动态:仅仅有到了执行时才干确定结果.只是不管不论什么程序,或多或少都包括的动态的特性. 动态执行模式 执行中的程序能识别自身,并对自身进行操作.对程…
这一周博主阅读了<代码大全2>第11章至第13章,第三部分——"变量"就结束了,第四部分作者将转入语句的讨论. 第十一章作者详细阐述了变量名的有效命名规则,第十二和十三章则简略介绍了使用各种数据类型时的注意事项.在这篇博客中我主要会在变量名命名和全局变量的使用上谈谈自己的读书心得. 变量名的力量 我们先来谈谈命名规则的必要性.为什么要有命名规则?会破坏创造性和程序质量吗?这一点我在上一篇读书笔记中已经以最近结对编程为例提到过了.对程序质量的实质约束往往来自高层设计,有效的标…
在android开发中找出当前界面对应的Activity,步骤如下: 新建一个BaseActivity继承自Activity,然后在BaseActivity中重写onCreate()方法,通过getClass().getSimpleName()获取当前实例的类名,并通过Log打印出来.代码如下: public class BaseActivity extends Activity { protected void onCreate(Bundle savedInstanceState){ supe…
这本书买了好久了,除了刚到手的那几天翻看了一下以外,竟然到今天都没有看过.突然想要写一个shell脚本,发现什么也不会,是时候开始学习了,今天先把最简单的一章再看一遍顺便做一些笔记,明天继续后面的! man命令用来访问存储在Linux系统上的手册页面.在想要查找的工具的名称前面输入man命令,就可以找到那个工具相应的手册条目. 如果你是新接触bash shell,可能一开始会觉得手册页并不太有用.但是,如果养成了阅读手册的习惯,尤其是阅读第一段或是DESCRIPTION部分的前两段,最终你会学到…
ADT abstract data type 抽象数据类型 要理解面向对象编程,就要先理解ADT这个概念.不懂ADT的程序员开发出来的类只是名义上的"类"而已--只是单纯的把一些相关的数据和子程序堆砌在一起.然而要在深入理解ADT之后,程序员就能够写出在一开始很容易实现.日后也易于修改的类来 ADT指的仅仅是一个对象和其对应需要的操作这样的逻辑结构,这样的抽象思维,忽略底层实现.这样可以使得调用者更加的透明化且代码更加易于理解,注意,ADT抽象应该选择更加高级的概念进行抽象,这样才更加…
当用户登录终端的时候,通常会启动一个默认的交互式shell.系统究竟启动哪个shell,这取决于用户配置.一般这个shell都是/bin/shell.默认的系统shell(/bin/sh)用于系统shell脚本,如那些在系统启动时运行的脚本. 用于登录某个虚拟控制器终端或在GUI中运行终端仿真器时所启动的默认的交互shell,是一个父shell.在CLI提示符后输入/bin/bash命令或其他等效的bash命令时,会创建一个新的shell程序.这个shell程序被称为子shell. 使用$ps…
更多的bash shell命令 想检测进程,需要熟悉ps命令的用法.ps命令好比工具中的瑞士军刀,它能输出运行在系统上的所有程序的许多信息.默认情况下,ps命令只会显示运行在当前控制台下的属于当前用户的进程. $ps -ef 如果想查看系统上运行的所有进程,可用-ef参数组合.(-e:显示所有进程,-f:显示完整格式的输出) top命令能够实时显示进程的信息. 在Linux中,进程通过信号来通信.进程的信号就是预定义好的一个消息,进程能识别它并决定忽略还是做出反应.进程如何处理信号是由开发人员通…
第一章:初识Linux 1.linux可划分为四个部分:内核.GNU工具.图形化桌面环境.应用程序 2.内核主要负责:系统内存管理.软件程序管理.硬件设备管理.文件系统管理 3.内核的系统内存管理,有用到交换空间(虚拟内存) 4.内核的软件程序管理,有5个运行级数. 5.shell属于GNU工具 6.GUN是由开源组织贡献的开源程序 7.linux有完整的核心发行版.特定用途的发型版(ubuntu).liveCD测试发行版(U盘启动)三类…
很多好的编程做法都能减轻你的大脑灰质细胞(指脑力)的负担. 将系统"分解",是为了使之易于理解("设计的层次"). 进行审查.评审和测试正是为了减少人为失误.如果你从不犯错,就无须复审自己的软件.但要知道,人的智力是有限的,所以应和他人沟通,来提高软件质量. 将子程序编写得短小,以减轻大脑负荷. 基于问题而不是低层实现细节来编程,从而减少工作量. 通过各种各样的规范,将思路从相对繁琐的编程事务中解放出来. 编程生涯成熟的部分标志就是发展出一种不屈不挠的诚实感.通常表…
博主终于继续更<代码大全2>了 (*´・ω・`)⊃,课上老师一再强调读书笔记要写出自己的心得不能简单摘抄,所以我现在基本上只会写一下自己在阅读过程中印象深刻或者有发散思考的地方,字数可能会明显减少.其实之前按原文大段摘抄是考虑到也许真的有一些没办法看到原著的读者...... 本周我阅读了第九章“伪代码编程过程”和第十章“使用变量的一般事项”.第九章主要介绍了伪代码编程过程(Pseudocode Programming Process, PPP)如何减少设计和编写文档的工作量,以及提高这两项工…