- 博客(25)
- 资源 (13)
- 收藏
- 关注
转载 《架构整洁之道》摘要与心得
对于架构师来说,面向对象编程就是以多态为手段来对源代码中的依赖关系进行控制的能力,这种能力让架构师可以构建出某种插件式架构,让高层策略性组件与低层实现性组件分离,低层组件可以编译成插件,实现独立于高层组件的开发和部署。用例并不描述系统与用户之间的接口,它只描述该应用在某些特定情景下的业务逻辑,这些业务逻辑所规范的是用户与业务实体之间的交互方式,它与数据流入 / 流出系统的方式无关。架构设计良好的应用软件应该将状态修改的部分和不需要修改状态的部分隔离成单独的组件,然后用合适的机制来保护可变量。
2023-09-14 22:25:09
176
1
转载 《查理·芒格的100个思维模型》
查理芒格的100个思维模型查理芒格认为,每个学科都是从一个独特的角度去切入了解这个世界,都是盲人摸象。要对世界有真实的了解,就必须学习掌握多个学科的核心思维方式。这是多元思维方法的本质,是个人要发展出超常思维能力的必要条件。研究方向主要涉及两个维度:思维模型本身,以及对各种学习策略的使用 – 这份汇总不仅是一份纲领性认知思维方法的教材,也是一份(深度理解、认知阶梯等)学习策略的教材。1. 机会成本指为了得到某种东西而所要放弃另一些东西的最大价值;或指在面临多方案择一决策时,被舍弃选项中的最高价值者;
2021-07-17 10:52:45
13605
2
原创 《Google工作整理术》读书笔记
第1章 有序组织有条不紊组织生活,最小化大脑压力1让信息尽可能快地离开大脑1 – 移除无用信息,短期记忆最多记住5~9件多重任务通常会降低效率1利用故事去记忆1,故事为信息提供了上下文语境 – 想到以后为什么或怎么样去回忆,能更好的编码信息面对多项抉择时展望结果,在最渴求的选择上仔细斟酌 – 风格迥然的人或意见十分重要,多样性更易出类拔萃目标清晰,过滤次要因素,避免墨守成规 – 过多的选择让大脑疲于应对,容易做惯性选择第2章 分享知识查验时间安排是否合适,不合适就应有所改变 –
2020-08-27 13:03:33
641
原创 [转]需牢记的编程智慧
不成熟的优化是万恶之源优化的规则:不要做!再等等……时机未到优化之前先剖析(测量)永远不要低估 – 程序员的你为简单问题,提出异常复杂解决方案的"能力"先设计出正确的数据结构,余下的会自然而然地显露出来如果已经选择了正确的数据结构并把数据组织得很好,算法几乎总是不言自明的数据为王 – 数据结构是编程的核心,算法不是分布式计算第一法则 – 不要让你的计算分布!至少在你还...
2020-03-26 11:27:49
250
转载 [转]性能分析笔记
转至:BOTManJL指标崩溃率:崩溃机器数/启动机器数,崩溃次数/启动次数假死率/卡顿率:超过 10s/2s 不响应心跳消息(机器数,次数)白屏率:页面区域持续 10s 白屏(机器数,次数)主界面/首页 加载完成时间/CPU 时间Log -> 旭日图Trace -> 火焰图主界面/首页 首屏绘制完成时间:用户感知加载总时间用户触发启动 到...
2019-11-21 18:59:45
232
原创 TrinityCore AuthServer时序图
学习了下AuthServer源码,根据关键步骤梳理了一份时序图,便于理清登录相关流程。使用PlantUML作图,原md格式文件放在了我的GitHub仓库里,有兴趣的可以去看看...
2019-08-25 19:02:27
288
原创 TrinityCore 编译安装指南
通过研究TrinityCore(魔兽世界服务端模拟器),学习大型MMORPG游戏服务端的框架结构与编程思想,从中汲取营养来提升或编写我们自己的游戏...
2019-08-08 18:34:56
7132
1
原创 《代码大全2》读书笔记
第7章 高质量的子程序7.1 创建子程序的正当理由降低/隔离复杂度,隐藏实现细节,引入中间的、易懂的抽象避免代码重复,支持子类化提高可移植性,限制变化所带来的影响简化复杂的逻辑判断,改善性能7.2 在子程序层上设计功能的内聚性:只做了一件事并把它做得很好,操作与名称相符顺序上的内聚性:包含需按特定顺序执行的操作,它们共享数据且只有全部执行完功能才完整通信上的内聚性:不同操作...
2019-07-18 18:33:52
1608
原创 《重构-改善既有代码的设计》读书笔记
重构,第一个案例1.1 起点如果发现现有的代码结构使你无法很方便地添加新特性,那就先重构,使特性的添加比较容易进行后,再添加特性; 1.2 重构的第一步为即将修改的代码建立可靠的测试环境 – 是人就会犯错,所以需要可靠的测试;测试结果能够自我检验 – 成功”OK”,失败列出失败清单并打印行号 (自动化对比测试结果是提高效率的前提);1.3 分解并重组”巨型
2017-04-12 11:33:38
1462
1
原创 《大型多人在线游戏开发》读书笔记
原作名:《Massively Multiplayer Game Development》 – Thor Alexander一、MMP设计技术【卡通城OL:面向大众的MMO】游戏设计问题: ①孩子家长也必须是销售对象 – a.儿童成人都喜欢; b.借助信赖的品牌; c.角色共通; d.可与家人分享;②允许有冲突但是须禁止暴力 – a.取消玩家对战; b.工作和娱乐的冲突
2017-03-28 18:57:36
8842
1
原创 《网络游戏核心技术与实战》读书笔记
零、快速入门【套接字API】 1. socket():因为还不会生成新的TCP连接,所以不存在TCP连接状态; 2. connect():SYN→SYN/ACK→ACK(三次握手); - 主动打开 – 客户端调用发起连接; - 被动打开 – 服务器被动建立连接; 3. bind():不会生成新的TCP连接,只是设置本地生成的套接字的监听端口号; 4. listen():“被动打开
2017-02-22 15:54:17
6200
原创 《游戏之旅-我的编程感悟》读书笔记
第10章.调试【开发期】使用Assert(断言)令程序崩溃以提前发现错误;对断言分级,并可选择关掉部分非常影响效率的部分;将释放的指针置为空,空指针更容易把错误表现出来; 加入录像模块(记录输入数据到文件中),出错时便于重现;使用分级log日志,并跟踪代码运行流程,便于定位。【已发行】打开可以打开的Assert;使用第三方调试器。第13章.开发方法【失败经验】过多的工作压在同一人身
2017-02-21 10:42:07
1151
转载 编程算法录
原地址算法一:快速排序算法快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来。快速排序使用分治法(Divide and co
2016-08-25 11:02:56
444
翻译 Delphi数据库编程新手指南(11)
使用ADO将Paradox数据导入Access (From Paradox to Accesswith ADO) 本章将着重于运用TADOCommand组件以及SQL DDL语言,将BDE/ Paradox中的数据导入至ADO/Access中。数据定义语言(Data definitionlanguage)通过编程创建一个数据库并不是大多数开发人员每天都在做的事情 - 大家都使用某种可
2013-05-17 16:34:41
1284
1
翻译 Delphi数据库编程新手指南(10)
ADO游标(ADO Cursors) 我们已经了解了如何使用几个数据访问组件来连接Access数据库并检索数据。有一项可以肯定:ADOExpress组件非常适用于基于ADO数据访问和元数据对象映射。ADO的核心是记录集对象(Recordset)。 Recordset对象(又称为DataSet数据集)是查询命令执行后的结果(例如,TADOQuery组件的SELECT语句)。当一个基于ADO
2013-05-16 15:43:41
1249
翻译 Delphi数据库编程新手指南(09)
数据检索 数据库应用程序最常见的任务,是根据某些规则来搜索特定的记录。在Delphi中,ADOExpress组件实现检索记录的方法与BDE中的方法类似。本章将引导你学习运用各种方法来搜索和定位数据。 注:本章涉及到的MS Access数据库—aboutdelphi.mdb,以及核心组件(数据访问和数据感知)的相关设置,请参考课程前些章节。下述示例将假定你的应用程序中,已有一个指向数据库
2012-10-12 16:53:08
970
翻译 Delphi数据库编程新手指南(08)
数据过滤 如前所述,无论TADOQuery还是TADODatSet(作为数据集组件),都是共用一组通用的方法和事件。这些数据集公开的功能中,拥有可以缩小呈现给用户数据范围的能力。试想一下,你可能拥有一个存有数千条记录的数据库表,但用户只对表中的一小部分数据感兴趣。接下来,按照前面章节所描述的方法在数据窗体中放置核心组件(数据访问和数据感知)。下面的代码示例,假定你已将ADOTable组件
2012-10-11 10:23:24
1435
翻译 Delphi数据库编程新手指南(07)
用AOD查询SQL with TADOQueryTADOQuery组件通过调用SQL语句,来获取ADO数据库中一个或多个表的数据。 这些SQL语句可以是DDL(数据定义语言)语句,如CREATE TABLE、ALTER INDEX等等;也可以是DML(数据操纵语言)语句,如SELECT、UPDATE和DELETE。不过,最常用的还是SELECT语句——生成一个类似使用Table组件
2012-10-09 15:25:32
1327
翻译 Delphi数据库编程新手指南(06)
数据修改 本章内容为增加、删除、修改数据库表中的记录。 开发数据库应用程序的主要目的,就是提供一种修改数据的方法。在第5章,课程展示了如何连接到一个Access数据库,如何显示数据库表中的数据,以及如何遍历浏览表中的记录。在本章中,将会学习如何增加、删除和修改数据——通过db-aware/enabled组件对象中的某些属性、事件和方法。首先,我们需要创建一个类似于前面章节中所创
2012-08-23 09:04:54
1775
翻译 Delphi数据库编程新手指南(05)
深入数据集里的数据数据的状态 用Delphi和ADO开发数据库应用程序时,大部分工作需要数据集(dataset )组件的协助。为了创建一个基于ADO的程序,Delphi提供了一些数据集组件:TAdoTable、TAdoQuery等等用于检索、显示和修改数据库内的表或查询到的数据。 在本教程的第五章,我们将了解怎样来显示、浏览和读取数据——通过数据集组件一些有趣的属性、事件和方
2012-08-20 16:41:47
1308
翻译 Delphi数据库编程新手指南(04)
第四章 数据浏览与导航数据访问所需组件 目前为止,本教程提供了如何连接到Access数据库,以及显示数据库表中图形数据的方法。上一章,我们讨论了一些“高级”的数据库编程技巧(译者加:相对于初学者而言)——现在让我们回到更适合“初学者”水平的课题。 这次,你将学会如何建立一个可用于浏览数据库表中记录的窗体。 前几章例子涉及到的数据感知组件(ADOTab
2012-08-14 16:22:27
1885
翻译 Delphi数据库编程新手指南(03)
第三章 数据库中的图片 第一节处理BLOBs(很大的二进制数据块),在Access中存储图片现在的数据库应用程序不仅仅只需要处理文本或数字数据。例如,基于Interner/Intranet或多媒体的应用开发,就需要频繁的显示数据库中的文字以及图片。在这一章中,我们将了解怎样通过ADO取出并显示Access数据库中的图形数据(图像)。不用担心,即使它所需的数据库编程技巧已远超前面课程所学。
2012-07-06 16:16:38
1442
翻译 Delphi数据库编程新手指南(02)
连接数据库,用BDE还是ADO?一、Delphi数据库连接如上一章所述,以一定的结构格式存储数据的一个或多个表的集合,称之为一个数据库。表内的数据以行和字段的形式表现。当数据库由两个或两个以上的表构成时,这些表通常储存着分散但相关的数据。MS Access、Interbase或SQL Server使用单个文件表示完整的数据库(如Access的.mdb文件)。而Paradox和dBase
2012-06-13 13:56:18
2300
翻译 Delphi数据库编程新手指南(01)
组件概述、创建新数据库1.数据库编程相关组件面板概述: 【Data Access】:用于连接数据源。 【Data Controls】:数据感知组件(前提是已连接某个数据库)——查询检索、以及向数据库写入数据。 【ADO】:ADO(用以实现访问关系或非关系数据库中数据的应用程序接口(API),在其他数据库和Microsoft的OLE数据库间提供了一个“桥”的作用).用于访问O
2012-06-10 20:04:36
1301
翻译 Delphi数据库编程新手指南(目录)
先列出自我学习以及翻译目标:说明:这些简单的就不翻译出来了,还是直接进入正题吧。(现在发现翻译真不是一般人能干得下来的事情啊,尤其是要翻译的流畅、易懂这种地步....)About the Course:This free online course is perfect for Delphi database beginners as well as for those who w
2012-06-07 23:51:38
1061
敏捷软件开发:原则、模式与实践(中文版)
2010-07-17
Delphi开发经验技巧宝典【Pdf】part4
2010-07-17
Delphi开发经验技巧宝典【Pdf】part3
2010-07-17
Delphi开发经验技巧宝典【Pdf】part2
2010-07-17
Delphi开发经验技巧宝典【Pdf】part1
2010-07-17
Delphi开发经验技巧宝典【光盘】part4
2010-07-17
Delphi开发经验技巧宝典【光盘】part3
2010-07-17
Delphi开发经验技巧宝典【光盘】part2
2010-07-17
Delphi开发经验技巧宝典【光盘】part1
2010-07-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人