高手:用什么方法可以不让仅当关闭正在使用的应用程序序使用虚拟内存


本回答由苏州碟科计算机服务有限公司提供

磁盘2113清理、补丁清理、将聊天文件清理或移动到5261其他4102

很多时候会忽1653略磁盘清理的功能,它可以帮助我们清理C盘上无用的文件以及日志文件之类

1、打开我的电脑右击C盘,选择属性进入

2、然后点击”磁盘清理“选项。

3、选择”清理系统文件“

4、要删除的文件勾选需要删除的然后点击确定。

5、根据文件大小等等清理完成

方法三:聊天文件清理或移动到其他盘

很多朋友发现QQ和微信聊天记录占鼡C盘空间非常大,那么我们可以清理没用的聊天记录或者把聊天文件夹移到其他磁盘或者是把不要的聊天记录特别是视频和图片删除也鈳以节约不少c盘内存。


该书在C盘根目为隐之统5261文隐之hiberfil.sys文大小4102适与己之物内存者也1653,当令电脑入休眠状时Windows7在闭统前将所有之内文书hiberfil.sys帖。洏后当更开电脑,


所统用hiberfil.sys尽信归内电脑复至关前也。可Windows7并不将此书删乃竟置硬盘上,会徒占一分磁盘间久之子之硬盘则食不消矣。


方法二:清除仅当关闭正在使用的应用程序序产生的临时文件

这类文件一般保存在windowstemp文件夹中和用户文件夹的temp文件夹中。(我的电脑-C盘-windowstemp攵件夹)

c盘为电脑之心,所统焉而其行,生甚多之灰书并有之软件默置c盘,多系新、补之自贮c盘,是故若电脑之c盘分区贮少者,易则c盘近存满也流行与诸电脑作。C盘间足当令汝之电脑应迟!

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你的手机镜頭里或许有别人想知道的答案

硬盘中有一个很宠大的数据交换攵件它是系统预留给虚拟内存作暂存的地方,很多仅当关闭正在使用的应用程序序都经常会使用到所以系统需要经常对主存储器作大量的数据存取,因此存取这个档案的速度便构成影响计算机快慢的非常重要因素!一般Windows预设的是由系统自行管理虚拟内存它会因应不同程序所需而自动调校交换档的大小,但这样的变大缩小会给系统带来额外的负担令系统运作变慢!有见及此,用户最好自定虚拟内存的朂小值和最大值避免经常变换大小。要设定虚拟内存在“我的电脑”上按右键选择“属性”,在“高级”选项里的“效能”的对话框Φ对“虚拟内存”进行设置。

3、检查应用软件或者驱动程序

有些程序在电脑系统启动会时使系统变慢如果要是否是这方面的原因,我們可以从“安全模式”启动因为这是原始启动,“安全模式”运行的要比正常运行时要慢但是,如果你用“安全模式”启动发现电脑啟动速度比正常启动时速度要快那可能某个程序是导致系统启动速度变慢的原因。

4、桌面图标太多会惹祸

桌面上有太多图标也会降低系統启动速度Windows每次启动并显示桌面时,都需要逐个查找桌面快捷方式的图标并加载它们图标越多,所花费的时间当然就越多同时有些殺毒软件提供了系统启动扫描功能,这将会耗费非常多的时间其实如果你已经打开了杀毒软件的实时监视功能,那么启动时扫描系统就顯得有些多余还是将这项功能禁止吧! 建议大家将不常用的桌面图标放到一个专门的文件夹中或者干脆删除!

5、ADSL导致的系统启动变慢

XP在啟动时会对网卡等网络设备进行自检,如果发现网卡的IP地址等未配置好就会对其进行设置这可能是导致系统启动变慢的真正原因。这时峩们可以打开“本地连接”属性菜单双击“常规”项中的“Internet协议”打开“TCP/IP属性”菜单。将网卡的IP地址配置为一个在公网(默认的网关是192.168.1.1)中尚未使用的数值如192.168.1.XX取介于2~255之间的值,子网掩码设置为255.255.255.0默认网关和DNS可取默认设置。

虽然 微软 声称Windows操作系统可以安装1000~1500种字体但实際上当你安装的字体超过500 种时,就会出现问题比如:字体从仅当关闭正在使用的应用程序序的字体列表中消失以及Windows的启动速度大幅下降。在此建议最好将用不到或者不常用的字体删除为避免删除后发生意外,可先进行必要的备份

何谓随机启动程序呢?随机启动程序就昰在开机时加载的程序随机启动程序不但拖慢开机时的速度,而且更快地消耗计算机资源以及内存一般来说,如果想删除随机启动程序可去“启动”清单中删除,但如果想详细些例如是QQ、popkiller 之类的软件,是不能在“启动”清单中删除的要去“附属仅当关闭正在使用嘚应用程序序”,然后去“系统工具”再去“系统信息”,进去后按上方工具列的“工具”,再按“系统组态编辑程序”进去后,茬“启动”的对话框中就会详细列出在启动电脑时加载的随机启动程序了!XP系统你也可以在“运行”是输入Msconfig调用“系统配置实用程序”財终止系统随机启动程序,2000系统需要从XP中复制msconfig程序

不知大家有否留意到,我们平时一直摆放在桌面上漂亮的背景其实是很浪费计算机資源的!不但如此,而且还拖慢计算机在执行仅当关闭正在使用的应用程序序时的速度!本想美化桌面但又拖慢计算机的速度,这样我們就需要不在使用背景了方法是:在桌面上按鼠标右键,再按内容然后在“背景”的对话框中,选“无”在“外观”的对话框中,茬桌面预设的青绿色改为黑色......至于关闭activedesktop,即是叫你关闭从桌面上的web画面例如在桌面上按鼠标右键,再按内容然后在“背景”的对话框中,有一幅背景名为Windows XX,那副就是web画面了!所以如何系统配置不高就不要开启

与DOS系统相比,Windows过于庞大而且随着你每天的操作,安装噺软件、加载运行库、添加新游戏等等使得它变得更加庞大而更为重要的是变大的不仅仅是它的目录,还有它的 注册表 和运行库因为即使删除了某个程序,可是它使用的DLL文件仍然会存在因而随着使用日久,Windows的启动和退出时需要加载的DLL动态链接库文件越来越大自然系統运行速度也就越来越慢了。这时我们就需要使用一些彻底删除DLL的程序它们可以使Windows恢复苗条的身材。建议极品玩家们最好每隔两个月就偅新安装一遍Windows这很有效。

11、更改系统开机时间

虽然你已知道了如何新增和删除一些随机启动程序但你又知不知道,在开机至到进入Windows的那段时间计算机在做着什么呢?又或者是执行着什么程序呢?那些程序必定要全部载完才开始进入Windows,你有否想过如果可删除一些鈈必要的开机时的程序,开机时的速度会否加快呢答案是会的!想要修改,可按"开始"选"执行",然后键入win.ini开启后,可以把以下各段落嘚内容删除是删内容,千万不要连标题也删除!它们包括:[compatibility]、[compatibility32]、[imecompatibility]、[compatibility95]、[modulecompatibility]和[embedding]

硬盘的DMA模式大家应该都知道吧,硬盘的PATA模式有DMA33、DMA66、DMA100和DMA133最新的SATA-150嘟出来了!一般来说现在大多数人用的还是PATA模式的硬盘,硬盘使用DMA模式相比以前的PIO模式传输的速度要快2~8倍DMA模式的起用对系统的性能起到叻实质的作用。但是你知道吗Windows 2000、XP、2003系统有时会自行关闭硬盘的DMA模式,自动改用PIO模式运行!这就造成在使用以上系统中硬盘性能突然下降其中最明显的现象有:系统起动速度明显变慢,一般来说正常Windows XP系统启动时那个由左向右运动的滑条最多走2~4次系统就能启动但这一问題发生时可能会走5~8次或更多!而且在运行系统时进行硬盘操作时明显感觉变慢,在运行一些大的软件时CPU占用率时常达到100%而产生停顿玩┅些大型3D游戏时画面时有明显停顿,出现以上问题时大家最好看看自己硬盘的DMA模式是不是被Windows 系统自行关闭了查看自己的系统是否打开DMA模式:

a. 双击“管理工具”,然后双击“计算机管理”;

b. 单击“系统工具”然后单击“设备管理器”;

d. 双击您的“主要IDE控制器”;

2、CPU 和风扇昰否正常运转并足够制冷

当CPU风扇转速变慢时,CPU本身的温度就会升高为了保护CPU的安全,CPU就会自动降低运行频率从而导致计算机运行速度變慢。有两个方法检测CPU的温度你可以用“手指测法”用手指试一下处理器的温度是否烫手,但是要注意的是采用这种方法必须先拔掉电源插头然后接一根接地线来防止身上带的静电击穿CPU以至损坏。另一个比较科学的方法是用带感温器的万用表来检测处理器的温度

因为處理器的种类和型号不同,合理温度也各不相同但是总的来说,温度应该低于 110 度如果你发现处理器的测试高于这处温度,检查一下机箱内的风扇是否正常运转

3、USB和扫描仪造成的影响

启动时会对各个驱动器(包括光驱)进行检测,因此如果光驱中放置了光盘也会延长電脑的启动时间。所以如果电脑安装了扫描仪等设备或在启动时已经连接了USB硬盘,那么不妨试试先将它们断开看看启动速度是不是有變化。一般来说由于USB接口速度较慢,因此相应设备会对电脑启动速度有较明显的影响应该尽量在启动后再连接USB设备。如果没有USB设备那么建议直接在BIOS设置中将USB功能关闭。

4、是否使用了磁盘压缩

因为“磁盘压缩”可能会使电脑性能急剧下降造成系统速度的变慢。所以这時你应该检测一下是否使用了“磁盘压缩”具体操作是在“我的电脑”上点击鼠标右键,从弹出的菜单选择“属性”选项来检查驱动器的属性。

只要设置不当网卡也会明显影响系统启动速度,你的电脑如果连接在局域网内安装好网卡驱动程序后,默认情况下系统会洎动通过DHCP来获得IP地址但大多数公司的局域网并没有DHCP服务器,因此如果用户设置成“自动获得IP地址”系统在启动时就会不断在网络中搜索DHCP 服务器,直到获得IP 地址或超时自然就影响了启动时间,因此局域网用户最好为自己的电脑指定固定IP地址

6、文件夹和打印机共享

安装叻Windows XP专业版的电脑也会出现启动非常慢的时候,有些时候系统似乎给人死机的感觉登录系统后,桌面也不出现电脑就像停止反应,1分钟後才能正常使用这是由于使用了Bootvis.exe 程序后,其中的Mrxsmb.dll文件为电脑启动添加了67秒的时间!

要解决这个问题只要停止共享文件夹和打印机即可:选择“开始→设置→网络和拨号连接”,右击“本地连接”选择“属性”,在打开的窗口中取消“此连接使用下列选定的组件”下的“ Microsoft 网络的文件和打印机共享”前的复选框重启电脑即可。

一些用户在组装机器时往往忽略一些小东西从而造成计算机整体配件搭配不當,存在着速度上的瓶颈比如有些朋友选的CPU档次很高,可声卡等却买了普通的便宜货其实这样做往往是得不偿失。因为这样一来计算機在运行游戏、播放影碟时由于声卡占用CPU资源较高且其数据传输速度较慢或者其根本无硬件解码而需要采用软件解码方式,常常会引起聲音的停顿甚至导致程序的运行断断续续。又如有些朋友的机器是升了级的过去老机器上的一些部件如内存条舍不得抛弃,装在新机器上照用可是由于老内存的速度限制,往往使新机器必须降低速度来迁就它从而降低了整机的性能,极大地影响了整体的运行速度

9、断开不用的网络驱动器

为了消除或减少 Windows 必须重新建立的网络连接数目,建议将一些不需要使用的网络驱动器断开也就是进入“我的电腦”,右击已经建立映射的网络驱动器选择“断开”即可。

Windows操作系统所带来的优点之一就是多线性、多任务系统可以利用CPU来进行分时操作,以便你同时做许多事情但事情有利自然有弊,多任务操作也会对你的机器提出更高的要求朋友们都知道即使是一个最常用的WORD软件也要求最好有16MB左右的内存,而运行如3D MAX等大型软件时64MB的内存也不够用。所以此时系统就会自动采用硬盘空间来虚拟主内存用于运行程序和储存交换文件以及各种临时文件。由于硬盘是机械结构而内存是电子结构,它们两者之间的速度相差好几个数量级因而使用硬盘來虚拟主内存将导致程序运行的速度大幅度降低。

使用Windows系统平台的缺点之一就是对文件的管理不清楚你有时根本就不知道这个文件对系統是否有用,因而Windows目录下的文件数目越来越多容量也越来越庞大,加之现在的软件都喜欢越做越大再加上一些系统产生的临时文件、茭换文件,所有这些都会使得硬盘可用空间变小当硬盘的可用空间小到一定程度时,就会造成系统的交换文件、临时文件缺乏可用空间降低了系统的运行效率。更为重要的是由于我们平时频繁在硬盘上储存、删除各种软件使得硬盘的可用空间变得支离破碎,因此系统茬存储文件时常常没有按连续的顺序存放这将导致系统存储和读取文件时频繁移动磁头,极大地降低了系统的运行速度

12、硬盘分区太哆也有错

如果你的Windows 2000没有升级到SP3或SP4,并且定义了太多的分区那么也会使启动变得很漫长,甚至挂起所以建议升级最新的SP4,同时最好不要為硬盘分太多的区因为Windows 在启动时必须装载每个分区,随着分区数量的增多完成此操作的时间总量也会不断增长。

如果你的计算机感染叻病毒那么系统的运行速度会大幅度变慢。病毒入侵后首先占领内存这个据点,然后便以此为根据地在内存中开始漫无休止地复制自巳随着它越来越庞大,很快就占用了系统大量的内存导致正常程序运行时因缺少主内存而变慢,甚至不能启动;同时病毒程序会迫使CPU轉而执行无用的垃圾程序使得系统始终处于忙碌状态,从而影响了正常程序的运行导致计算机速度变慢。下面我们就介绍几种能使系統变慢的病毒

1、使系统变慢的bride病毒


此病毒可以在Windows 2000、Windows XP等操作系统环境下正常运行。运行时会自动连接网站如果无法连接到此网站,则病蝳会休眠几分钟然后修改注册表将自己加入注册表自启动项,病毒会释放出四个病毒体和一个有漏洞的病毒邮件并通过邮件系统向外乱發邮件病毒还会释放出FUNLOVE病毒感染局域网计算机,最后病毒还会杀掉已知的几十家反病毒软件使这些反病毒软件失效。

如果用户发现计算机中有这些特征则很有可能中了此病毒。

·病毒运行后会自动连接网站。


·病毒运行时会释放出一个FUNLOVE病毒并将之执行而FUNLOVE病毒会在计算机中大量繁殖,造成系统变慢网络阻塞。
·病毒会寻找计算机中的邮件地址,然后按照地址向外大量发送标题为:<被感染的计算机机洺>(例:如果用户的计算机名为:张冬 则病毒邮件的标题为:张冬)的病毒邮件。
·病毒还会杀掉几十家国外著名的反病毒软件。

用户洳果在自己的计算机中发现以上全部或部分现象则很有可能中了Bride(Worm.bride)病毒,请用户立刻用手中的杀毒软件进行清除

2、使系统变慢的阿芙伦疒毒


此病毒可以在Windows 9X、Windows NT、Windows 2000、Windows XP等操作系统环境下正常运行。病毒运行时将自己复到到TEMP、SYSTEM、RECYCLED目录下并随机生成文件名。该病毒运行后会使消耗大量的系统资源,使系统明显变慢并且杀掉一些正在运行的反病毒软件,建立四个线程在局域网中疯狂传播

如果用户发现计算机中囿这些特征,则很有可能中了此病毒:

·病毒运行时会将自己复到到TEMP、SYSTEM、RECYCLED目录下文件名随机


·病毒运行时会使系统明显变慢
·病毒会杀掉一些正在运行的反病毒软件
·病毒会修改注册表的自启动项进行自启动
·病毒会建立四个线程在局域网中传播

用户如果在自己的计算机Φ发现以上全部或部分现象,则很有可能中了“阿芙伦(Worm.Avron)”病毒由于此病毒没有固定的病毒文件名,所以最好还是选用杀毒软件进荇清除。

·莫名其妙地死机或重新启动计算机;


·系统速度极慢,cpu占用100%;
·最重要的是,任务管理器里有一个叫"avserve.exe"的进程在运行!

·利用WINDOWS平囼的 Lsass 漏洞进行广泛传播开启上百个线程不停攻击其它网上其它系统,堵塞网络病毒的攻击行为可让系统不停的倒计时重启。


·和最近出现的大部分蠕虫病毒不同,该病毒并不通过邮件传播,而是通过命令易受感染的机器
下载特定文件并运行来达到感染的目的。

·请升级您的操作系统,免受攻击


·请打开个人防火墙屏蔽端口:445、5554和9996防止名为avserve.exe的程序访问网络

首先,若系统为WinMe/WinXP则请先关闭系统还原功能;

步骤一,使用进程程序管理器结束病毒进程

右键单击任务栏弹出菜单,选择“任务管理器”调出“Windows任务管理器”窗口。在任务管理器Φ单击“进程”标签,在例表栏内找到病毒进程“avserve.exe”单击“结束进程按钮”,点击“是”结束病毒进程,然后关闭“Windows任务管理器”;

步骤二查找并删除病毒程序

步骤三,清除病毒在注册表里添加的项

打开注册表编辑器: 点击开始——>运行 输入REGEDIT, 按Enter;

在左边的面板中 双击(按箭头顺序查找,找到后双击):

1、不要加载太多随机启动程序

不要在开机时载入太多不必要的随机启动程序选择“开始→程序→附件→系统工具→系统信息→系统信息对话框”,然后选择“工具→系统配置实用程序→启动”,只需要internat.exe前打上钩其他项都可以鈈需要,选中后确定重起即可

不要使用ActiveDesktop,否则系统运行速度会因此减慢(右击屏幕→寻显示器属性→Web标签→将其中关于“活动桌面”和“頻道”的选项全部取消)

自己设定虚拟内存为机器内存的3倍,例如:有32M的内存就设虚拟内存为96M且最大值和最小值都一样(此设定可通过“控制面板→系统→性能→虚拟内存”来设置)。

a、到控制面板中选择“系统→性能→ 文件系统”。将硬盘标签的“计算机主要用途”改为網络服务器“预读式优化"调到全速。

b、将“软盘”标签中“每次启动就搜寻新的软驱”取消

c、CD-ROM中的“追加高速缓存”调至最大,访问方式选四倍速或更快的CD-ROM

6、定期对系统进行整理

定期使用下列工具:磁盘扫描、磁盘清理、碎片整理、系统文件检查器(ASD)、Dr?Watson等。

a、如果你所鼡的操作系统是win 9x与win 2000双重启动的话建议文件系统格式都用FAT32格式,这样一来可以节省硬盘空间二来也可以9x与2000之间能实行资源共享。

提醒:偠实现这样的双重启动最好是先在纯DOS环境下安装完9x在C区,再在9x中或者用win 2000启动盘启动在DOS环境下安装2000在另一个区内并且此区起码要有800M的空間以上

b、如果阁下只使用win 2000的话,建议将文件系统格式转化为NTFS格式这样一来可节省硬盘空间,二来稳定性和运转速度更高并且此文件系統格式有很好的纠错性;但这样一来,DOS和win 9x系统就不能在这文件系统格式中运行这也是上面所说做双启动最好要用FAT32格式才能保证资源共享嘚原因。而且某些仅当关闭正在使用的应用程序序也不能在此文件系统格式中运行,大多是DOS下的游戏类

提醒:在win 2000下将文件系统升级为NTFS格式的方法是,点击“开始-程序-附件”选中“命令提示符”然后在打开的提示符窗口输入"convert drive_letter:/fs:ntfs",其中的"drive"是你所要升级的硬盘分区符号如C区;还需要说明的是,升级文件系统不会破坏所升级硬盘分区里的文件,无需要备份

· 再运行“添加-删除程序”,就会看见多出了个“添加/删除 Windows 组件”的选项;

b、打开“文件夹选项”在“查看”标签里选中“显示所有文件和文件夹”,此时在你安装win 2000下的区盘根目录下会絀现Autoexec.bat和Config.sys两个文件事实上这两个文件里面根本没有任何内容,可以将它们安全删除

c、右击“我的电脑”,选中“管理”在点“服务和僅当关闭正在使用的应用程序序”下的“服务”选项,会看见win 2000上加载的各个程序组见其中有许多是关于局域网设置或其它一些功能的,伱完全可以将你不使用的程序禁用;

如:Alertr如果你不是处于局域网中,完全可以它设置为禁用;还有Fax Service不发传真的设置成禁用;Print Spooler,没有打茚机的设置成制用;Uninterruptible power Supply没有UPS的也设置成禁用,这些加载程序你自己可以根据自己实际情况进行设置

各个加载程序后面都有说明,以及运荇状态;选中了要禁用的程序右击它,选“属性”然后单击停止,并将“启动类型”设置为“手动”或者“已禁用”就行了

运行drwtsn32把除了“转储全部线程上下文”之外的全都去掉。否则一旦有程序出错硬盘会响很久,而且会占用很多空间如果你以前遇到过这种情况,请查找user.dmp文件并删掉可能会省掉几十兆的空间。这是出错程序的现场对我们没用。另外蓝屏时出现的memory.dmp也可删掉可在我的电脑/属性中關掉

 
本书在笔者实习时就已经开始阅讀按照自己的所处阶段有间隔的分成了3次阅读,一直到现在终于完成了读者千万不要认为这本书真的只是“代码大全”,在我看来這本书就是软件工程师的心法,提升软件工程的认知、意识各种技术层出不穷,也有很多技术最终消失在时间里但这本书的精髓则适鼡于每一代软件开发者。
本身还提供了各方面的CheckList可以借助这部分CheckList培养自己的意识。
由于之前阅读的书籍中有些内容与本书有重合,或鍺比本书讲的更透彻这里只记录了书中的部分章节。
第一章:欢迎进入软件构建的世界
1、什么是软件构建
软件构建可以理解为软件开發中真正要动手做的那部分,主要活动包括详细设计、编码、调试、集成、开发测试(单元测试和集成测试)
2、软件构建为何如此重要?
软件构建是软件开发中的主要活动是软件开发的核心,占用了软件开发中的30~80%的时间是软件开发中唯一一个必须要完成的部分,源碼也是最新最精准的文档软件构建的质量直接关系着整个项目的质量,把注意力放在软件构建上能够大大提升程序员的开发效率
第二嶂:用隐喻更充分的理解软件开发
1、当将软件的构建过程比作房屋的构建过程时,可以发现仔细的准备是必要的,发生变动时最贵的成夲是人的时间而大型项目和小型项目之间也有差异。
2、软件开发实践中每位工程师都有许多工具,但不存在任何一个能适用于所有工莋的工具因地制宜德尔选择正确工具是成为能有效编程的程序员的关机。
第三章:三思而后行:前期准备
1、核对表(细节可参考文中描述的原则核对)
①是否辨明了自己所从事的软件的类型并对所用的开发方法做出相应的剪裁?(许多项目是高度迭代的某些则应该是序列式的)
②是否充分明确定义了需求?而且需求足够稳定能够开始构建了?(详见需求核对表)
③是否充分明确的定义了架构以便開始构建?(详见架构核对表)
④是否已经指出当前项目中独有的风险(以避免构建活动面临不必要的风险)
2、在项目初期关注质量、發现问题,远比后期发现解决成本更低
第五章:软件构建中的设计
1、软件的首要技术使命就是管理复杂度,以简单性作为努力目标的标記方案对此最有帮助
2、好的设计是迭代的,你尝试设计的越多你的最终方案就会约好。
3、隐藏实现、封装变化
第六章:可以工作的類
1、类的接口应该提供一致的抽象。很多问题都是由于违背该原则而引起的
2、类的接口应该隐藏一些信息,如某个系统接口、某项设计決策、或一些实现细节
3、包含(组合、聚合)往往比继承更可取,除非是要对一个“is a”的关系建模
4、限制继承的层次,继承是一种有鼡的工具但它却会增加复杂度,这有违软件的首要使命-管理负责度
5、类是管理复杂度的首先工具。要在设计类时给予足够的关注才能实现这一目标。
6、尽量减小类和类之间相互合作的范围让以下几个数字最小:
①所实例化的对象的种类;
②在被实例化对象上直接调鼡的不同子程序的数量;
③调用的“通过其他对象返回的”对象的子程序的数量;(A通过调用B的返回值C来调用C的方法,)
第七章:高质量嘚子程序
1、为什么要创建子程序
提高程序的可读性,减少以及隔离程序复杂度提高代码复用率,在代码变更时减少带来的影响(功能變更变更导致的测试),可移植性方便后期优化,隐藏复杂逻辑结构等的实现细节......
2、如何设计子程序
保证子程序功能的内聚性,既┅个子程序只完成一个功能避免其它的内聚性,比如逻辑上的内聚性顺序上的内聚性等。
3、什么是好的子程序名字
能够描述子程序所做的事情,使用动宾结构并且对返回值有所描述,比如checkOrderInfo使用对仗词(比如get/set,create/destroy),一般命名长度为9~15个在一个项目里最好给一些通用嘚操作确立命名规则(比如创建、更新记录时),避免模糊命名(比如detail);
4、子程序可以多长
考虑事项:子程序的功能的内聚性,嵌套嘚层次变量的数量,决策点的数量等;
研究表明应该一般不超过200行
5、如何使用子程序参数?
按照输入、修改、输出的顺序排列参数;
洳果几个程序都用了类似的一些参数应该让这些参数的排练顺序保持一致;
不要把子程序的输入参数用作工作变量,工作变量最好在子程序中创建保证参数尽量不被改变;
把子程序的参数个数限制在大约7个以内,且保证每一个参数都被用到;
为子程序传递用以维持其借ロ抽象的变量或对象传递给子程序什么类型的参数,应该为对子程序而言哪种方式对子程序更方便;
第八章:防御式编程
1、什么是防禦式编程?为什么需要
防御式编程不是指不让别人批评你的代码,而是指确保你要承担的责任保证你的方法不会因为传入错误数据而破坏,看似微小的防范收益可能大于你的想象,能够让错误更容易发现修改,并减少对已经编写代码的修改
2、如何使用防御式编程
茬开发阶段,建议不从产品角度考虑建议让错误暴露的越明显越好,能更快的排查错误;在产品上线时防御式编程的代码可能影响性能以及体验,需要适当修改但是需要根据场景考虑,比如银行设备以及普通网站不同产品,错误处理方式不一样;
隔离程序与参数即对参数进行验证,使之能包容错误造成的损害并进行适当处理;
3、如何对错误进行处理?处理的方式
需要根据实际场景程序是更需偠健壮性还是正确性,一般普通的消费产品更倾向于健壮性但和数据相关,则更倾向于正确性;建议在架构设计上就决定好如何处理错誤是异常还是其他的方式。
4、关于异常
避免在构造和析构函数中使用异常;考虑创建一个集中的方式处理异常能够为一些与异常有关嘚信息提供集中的存储;把项目中对异常的使用标准化,考虑创建抛出异常的基类这样就能把记录日志、报告错误等操作集中起来并标准化;不滥用异常,应该在异常和其他错误处理手段进行权衡如果某些错误能局部处理,那就局部处理它;
第十一章:变量名的力量
1、玳码的阅读次数远远大于编写的次数为了可读性,确保所取的名字更侧重于阅读而不是编写方便
2、命名时要足够具体,不要用模糊或鍺太通用能用于各种目的的名字名字需要能表达变量所代表的含义,需要让阅读者无需苦苦思索
3、命名规则应该能区分不同类型的数據,最好能够区分局部数据、类数据、全局数据还应当可以区分类型名、具名常量、枚举类型和变量名等,具体命名类型的建议参考代碼大全
4、无论哪种类型的项目,都应该采用某种命名规则所采用的规则的种类取决于程序的规模,以及项目成员的人数
5、慎用缩写,现代编程语言很少使用缩写如果真的要使用,最好维护一个项目字典或者标准前缀帮助理解并且缩写英国有自己的规则,具体细节鈳参考代码大全
第十四章:组织直线型代码
1、组织直线型代码的原则主要是按照依赖关系来排列。
2、可以用比较好的子程序名、参数列表、注释以及使用不同的变量让依赖关系看起来更明显。
3、如果代码之间没有顺序依赖关系则尽可能让相关的语句更接近。
第十九章:一般控制问题
1、布尔表达式(判断的条件)尽量可读有助于提升代码的质量。
2、深层次的嵌套使得代码可读性降低很少有人能理解超过3层的if嵌套,尽量避免使用超过3到4层的嵌套可采用如下方法减少嵌套层次:
①重复判断一部分条件;
②转换成if-then-else;
③转换成case语句;
④把罙层嵌套代码提取成单独的子程序;
⑤使用对象和多态。
3、衡量代码复杂度的方法可以采用McCabe方法。
第二十三章:调试
1、调试前要理清思蕗理解问题的根本。胡乱猜测错误的来源和随机修改将会让你的程序陷入比刚开始调试时更为糟糕的境地
2、检查出现问题的地方的最菦修改的代码,很可能修改引入了新的bug
3、解决问题要根本解决不能尝试着改变一个东西,发现结果正常就认为是解决了要发现产生问題的原因,是否根本解决
3、要反复检查解决问题的代码,确认解决问题时没有引入新的bug
4、更多可参考核对表
第三十一章:布局与风格
1、可视化布局的首要任务是指明代码的逻辑组织,可以通过注释、空格、空行、缩进等区分不同的逻辑块评估该任务是否实现的指标包括准确性、一致性、可读性和可维护性。
2、外表悦目比起其他指标是最不重要的然而,如果其他指标都达到了代码又质量好,那么布局效果看上去也不错
3、结构化代码有其自身目的。始终如一的沿用某个习惯而少来创新不能持久的布局规范只会损害可读性。
4、布局嘚很多方面涉及信仰问题应试着将客观需要和主观偏好区分开来。定出明确的目标在此基础上再讨论风格参数的选择。

1、程序员倾向於将管理者视为技术进化的低级层次制定标准的事情由一位受人尊敬的架构师来做更容易被人接纳。

  • 把你希望做什么的念头先藏起来收集起来,等着你的管理者组织一场有关你希望什么的头脑风暴/集体讨论(你的想法)
  • 把做事情的正确方法传授给你的管理者。这是一項需要持之以恒的工作因为管理人员经常会提升、调迁或者解聘。
  • 关注你的管理者的兴趣按照他的真正意图去做,而不是用一些不必偠的实现细节来分散注意力(把它设想成堆你工作的一种封装)
  • 拒绝按照你的管理者所说的去做,坚持用正确的方法做自己的事
 
第三┿二章:自说明代码
1、该不该注释是个需要认真对待的问题。差劲的注释只会浪费时间好的注释才有价值。注释的位置可以在:变量特萣的含义和限制、某个职责代码块的开始、一般控制结构的开始、子程序调用处、方法开始处描述功能、类开始处描述功能
2、源代码应當含有程序大部分的关键信息。只要程序依然在用源代码比其他资料都能保持更新,故而将重要信息融入代码是很有好处的
3、好代码夲身就是最好的说明。如果代码太糟需要大量注释,应先试着改进代码直至无须过多注释为止。
4、注释应说出代码无法说出的东西唎如概述或用意等信息。注释本身应该包含的是对代码的简洁的抽象概括而不是具体代码的实现细节。
5、注释风格也应该简洁易于维护有的注释风格需要许多重复性劳动,应舍弃之
第三十三章:个人性格
1、人的个性对其编程能力有直接影响。
2、最有关系的性格为:谦虛、求知欲、诚实、创造性和纪律以及高明的偷懒。
3、程序员高手的性格与天分无关而任何事都与个人发展相关。
4、出乎意料的是尛聪明、经验、坚持和疯狂(编程狂人)既有助也有害。
5、很多程序员不愿主动吸收新知识和技术只依靠工作时偶尔接触新的信息。如果能抽出少量时间阅读和学习编程知识要不了多久就鹤立鸡群。
6、软件技术一直在变做软件技术不仅要完成已有的战斗,还要迎接未來的战斗年轻人在对技术的探索欲上就会比老人强,就可能被淘汰
7、好性格与培养正确的习惯关系甚大。要成为杰出的程序员先要養成良好的习惯,其他自然水到渠成

我要回帖

更多关于 仅当关闭正在使用的应用程序 的文章

 

随机推荐