师去白

      我的程序人生

  博客园  :: 首页  ::  :: 联系 :: 订阅 订阅  :: 管理

2019年4月9日

摘要: 六年过去了,终于下定决心,不论如何都要抽出点时间总结和反思了。 一直往前走固然速度很快,但是没有停下来思考,就仿佛一阵风一样,什么痕迹都没有留下。 是时候回来了 阅读全文
posted @ 2019-04-09 01:14 liuchen 阅读(144) 评论(0) 推荐(0) 编辑

2013年1月21日

摘要: 《全景探秘设计游戏设计艺术》这本书之前看过,不过当时是抱着翻阅和崇拜的目的,看过也就是看过了。毕竟自己的本质是程序,能够执行和实现才是最重要的工作。 后来思想提升了些,项目是所有人的项目,抱着批判的态度去看策划案, 为啥这么设计, 为什么不能那么设计,但是也说不出所以然来。 再后来,想着自己去设计游戏,发现这更是一个胡子眉毛一把抓的工作,林林总总的游戏设计理论也看了好多,但是总感觉是盲人摸象, 无法提纲挈领的去把握全局,一款游戏为什么能够吸引人,怎样才能设计一款好游戏, 之前看的都感觉不够全面。 直到我再次重读《全景探秘游戏设计艺术》。 强烈推荐这本书,读完之后,对游戏有更加深刻而... 阅读全文
posted @ 2013-01-21 10:42 liuchen 阅读(780) 评论(0) 推荐(0) 编辑

2013年1月13日

摘要: 做了这么久的网络游戏, 总结下长连接和短连接概念 长连接是建立socket之后,一直不关闭该socket, 一般是tcp协议,我们知道tcp是双工的, 能够保证cs两端可以互发数据。 短连接建立socket之后,做一次很短的交互(只发不收,或者发了就收)之后,就关闭该socket,一般都是基于http(在tcp之上)优缺点 长连接的优点:节省建立连接的时间;服务器能够感知客户端,可以向客户端主动推送消息 长连接的缺点:占用服务器的fd资源;使逻辑变复杂,需要关注断线等各种异常处理;负载均衡比较复杂 短连接的优点:简单,容易进行负载均衡,节省服务器的fd 短连接的缺点:每次都要建立连... 阅读全文
posted @ 2013-01-13 23:04 liuchen 阅读(2740) 评论(0) 推荐(0) 编辑

2013年1月5日

摘要: 这是一本很薄的书,我一开始就被它的标题迷惑, 以为这是讨论生命意义之类形而上的话题, 后来才知道是软件工程上的名著,简单通俗的说,死亡之旅就是无法完成的项目。 《死亡之旅》, 就是讲述这种无法完成项目的一本书, 它告诉我们怎样去识别这种项目,这种项目是如何产生的, 以及如何去应对这种项目。 “这不科学!在现有的人力时间条件下,根本不可能达成项目的目标!” 当你拥有这样的念头的时候, 这个项目已经开始弥漫死亡的气息了。如果你仔细规划下来, 为了完成项目,至少要把现有资源(人力、时间)扩充一倍以上的时候,那么这就是死亡之旅! 死亡之旅产生的原因很多, 但大多都是人的原因, 有个体的因素, 也... 阅读全文
posted @ 2013-01-05 23:41 liuchen 阅读(361) 评论(1) 推荐(0) 编辑

2012年3月29日

摘要: 环境vs2008, win64下载lua源码执行vcvarsall.exe x64etc\luavc.bat下载luajava源码修改config.win, 修改cl, 取消DWin32执行nmake -f Makefile.win最后mt.exe -manifest luajava-1.1.dll.manifest -outputresource:luajava-1.1.dll;2 把清单干到dll中, 拷贝两个dll到system32一切清净了 阅读全文
posted @ 2012-03-29 23:37 liuchen 阅读(1153) 评论(0) 推荐(0) 编辑

2009年10月22日

摘要: Item45 -- 清楚知道C++编译器默默为我们完成和调用哪些函数构造函数、拷贝构造、析构、赋值、取地址Item46 -- 宁愿编译和连接时出错,也不要执行时才错举了个把月份抽象成类,通过类的机制使得在编译和连接的时候能够发现错误。这个有点太高深了,一般用不到。忽略。Item47 -- 使用non-local static objects之前先确定它已有初值可以使用单键模式解决,在使用的函数声明... 阅读全文
posted @ 2009-10-22 22:38 liuchen 阅读(317) 评论(0) 推荐(0) 编辑

2009年10月21日

摘要: Item35 -- 确定你的public继承,模拟出is-a关系public继承是is-a关系,潜在含义就是基类的所有函数在子类中都能用。举个范例,所有鸟都会飞,但是鸭子不会,所以鸭子不能从鸟public继承而来。如果一定要用,也要讲鸟划分成会飞的鸟和不会飞的鸟,鸭子从不会飞的鸟公开继承。Item36 -- 区分接口继承和实现继承声明一个纯虚函数的目的是让子类只继承其接口声明一般(非纯)虚函数的目... 阅读全文
posted @ 2009-10-21 09:38 liuchen 阅读(451) 评论(0) 推荐(0) 编辑

2009年10月19日

摘要: Item29 -- 避免传回内部数据的handles传回handle之后,打破了抽象性,所以要避免对于non-const member functions而言,传回内部handle也会导致麻烦,当涉及暂时对象,Handle可能变成悬空的(dangling)Item30 -- 避免写出member function,传回一个non-const的指针或引用并指向较低存取层级的members同条款30,... 阅读全文
posted @ 2009-10-19 23:14 liuchen 阅读(391) 评论(0) 推荐(0) 编辑

2009年10月18日

摘要: 类与函数的设计和声明看看作者思考问题的角度:对象如何产生和销毁: 构造析构、new和delete的重载对象的初始化和赋值:构造、拷贝构造、赋值重载新型别转换相关:合法值的规范检验、继承体系、是否隐式转换访问权限:public、protected、private如何设计 Item18 -- 努力让接口完满且最小化1,KISS原则;2,头文件的重要性; Item19 -- 区分member funct... 阅读全文
posted @ 2009-10-18 23:09 liuchen 阅读(348) 评论(0) 推荐(0) 编辑

2009年10月14日

摘要: Item11--如果class内动态置有内存,请为此class声明一个copy constructor和一个assignment运算符也就是说,class内有一个指针,使用new来动态申请内存的情况下,默认的copy constructor和assignment运算符是浅拷贝(bitwise copy),也即直接拷贝指针的值,可能会有内存泄露的危险String a("hello");{String... 阅读全文
posted @ 2009-10-14 00:07 liuchen 阅读(348) 评论(0) 推荐(0) 编辑