我在前面文章中提到的ghs.google.com被封后的解决方案,现在终于也撞墙了,万里长城永不倒啊,高呼一声祖国万岁!
不过很奇怪,居然blogspot和appspot都可以访问,而且速度还行,可以看一下我搭建在Google Apps平台的东西,维基中文也能访问,但是一些敏感的词汇还是被盾的,更智能的是,如果你超过五次搜的都是敏感词,你将在十分钟之内都打不开中文维基百科,神奇吧,现在的墙是越来越智能了,总有一天会变成发送过来的都是“××主义万岁”的东西
2009-6-24更新:
72.14.232.215 可以使用
Monthly Archives: 十月 2008
ghs.google.com四个IP地址终于全部挂了
个人学习方法总结
本文内容来源于360DOC,版权属于原作者
关于学习的各种方法和理论的文章不少,这里想从个人角度来谈一下个人学习:
一,为什么要学?
1,大方面:我们都知道,学习能获得知识、见识、经验,能知道你不知道的东西,加深你知道的东西。用流行的话来说,现在是21世纪了,我们处在一个信息爆炸的社会,知识的更新已不是一般的快,信息的获取已不是问题,关键是如何从中取舍去学习。学历呢,只代表过去,能力代表现在,学习力就代表未来了。说得严重点,你不会学习,就没有未来。
2,实际:学习的目的是学了有用,可能马上就有用,也可能以后有用,这个用可能是物质上的也可能是精神上的,反正就是会对你有点用处。学,以致用,要不然绝对不要学,纯粹是浪费资源,包括时间,精力,财力,物力,人力!学以致用,不同的“用”决定学的深度和侧重,比如同样是学习管理知识,有的是为了简单了解下,看看是怎么个回事,有的是为了日常工作中实用,有的是为了做理论学术研究,还有的纯粹是为了和别人谈论可以说得上话或炫耀,这些人不同的“用”就决定了学的深度和侧重,从而会决定投入的资源。学,也是分情况的,为了你的“用”请选择正确的学习方式和方法。
二,学什么?
虽然不能准确分类,但大致可以分为:
1.必须学的,比如走路,拿筷子,用电脑等类似生存技能的知识;
2.没办法要学的,比如要考试的科目虽然你知道没用,如何交水电煤费用等;
3.感兴趣的主动要学的,这个方面就包含了很多,比如摄影,管理知识,围棋,职业知识,只要你感兴趣的都行。
大家通常谈论的学习方法,技巧等大多是指第三类的学习。
三,怎么学?
现在知识太多,可以学的东西也是多如牛毛,就以家园来说,好文章好贴好观点太多,是不是全部都要学呢?答案是不是,除非你时间充足,兴趣广泛。
1,原则方面
学以致用,没用的不学!学,也要少而精!对别人有用对自己没用的不学!
以下的内容都是在对自己有用知识的学习,而且主动想学的态度基础上探讨的。
2,方法
学习的方法很多,大多是技巧性的,比如学英语单词就有很多方法,有听说读写一起上的,有所谓联想法的,有死记硬背的,有思维导图法,有前缀后缀法等。
这些技巧性的方法大都比最基本的死记硬背好,但是谁优谁劣却不好判断,最适合自己的才是最好的。虽然无法穷举,但是有一个基本的东西在里面,就是学习的知识先是点,后是面,先由点到面,后由面到点,最后点面结合,想怎么用就怎么用。把握好这个基本规律,找一个最适用自己的方法,就是最好的学习方法。
3,具体方式
上面说的比较虚,那就来说说具体的方式。学习的途径一般有读书、辩、上论坛,实践,教。一个个来说:
1)读书
读书首先要注意读书环境,这个很重要,大家也都能理解就不多废话。
还要注意培养一个读书的习惯,每天固定抽取一定时间阅读,这个很重要。现在大家都习惯了网络,忽略了书本,还有也不管大家真的忙还是假的忙反正大家都感觉自己很忙没时间读书,这都是不可取的需要改变的,再忙也不耽误学习啊。
读书最好买书和借书。买书花了钱不读亏了,还可以逼自己读,既然是花了钱那就一定要买自认为值得的书,那么怎么保证买到这样的书,一是买之前网上看看这本书的书评,别人的看法,内容概括,这个至关重要,还有就是想想自己真的要买么,有的过段时间会出电子版或者扫描版。借书呢,书非借不能读也,是花了人情的,不过借时一定要说好什么时候还,给自己一定时间压力,这样就算不一定全读,至少也会翻翻知道大概。当然有些强人会借书借成自己的了,这个不在我说的范围,还有些牛人借了也没读实在太强,也当我没说过。
阅读方法有一目十行法,总结概括法,略读法,笔记法等,这个大家可以搜索查看参考相关文章,根据自己爱好选一个或结合应用。
2)辩
我常说,辩出真知,很多时候你本来没看明白的但是一讨论一辩论就明白了,没明白的明白,明白的可以更深更广,触类旁通。
3)上论坛
网络带来的好处在这里可以充分体现,在网上你既可以读到老的经典的文章,还可以看到最新的文章和观点,看不完还可以保存下载到电脑上以后读,还可以就一论题讨论发表自己看法,好处多多。
这里想说的是论坛学习法。我们要先找到相关板块感兴趣的文章,然后再点开读,觉得对自己有用的一定要回帖,这个比没回帖记忆深刻很多,还会引发你的思考,及时写下笔记心得感悟之类的,也便于以后查找。如果你觉得文章很好是不是看完就完了呢?不是,看完以后你要看看作者的信息,看看他还写过什么文章,然后再把文章标题或一段内容放到google或baidu里面去搜索,转载的可以找到作者信息或出处或者同类文章,观点类的你可以找到作者,再根据作者再搜出作者的很多文章(现在很多论坛会自己整理成一个集或者博客样的),都看看便于全面了解,看完了是不是完了呢?还不是,你还要看看反对者的文章,看看他们的观点,看完了完了?还没有,看完了趁热把自己看完后的感觉心得写下来(不一定发表),转化成自己的观点有自己的观点才算结束,这才叫上网上论坛学习!这个方法我就用过看论坛上不少名人的文章。
4)实践
学了是为了用,用了会有切身体会,用的过程可以发现问题分析问题解决问题,边学边用,可以很大程度上加深学习的效果。
5)教
自己会了还要教会别人,这个能做到那你是彻底学会了掌握了!很多人学会了就好,不愿教别人,这个时候可能有些问题你可能还没彻底掌握,只是你自己还没发觉,视觉盲点而已。教不一定是学生教老师一样,更多的是互相学习互相教。
与辩论不同的地方在于这是互相认同,互相学习,而辩论大多有输赢观念而偏执,而辩论的论题一般又没有所谓正确的答案,都是不同角度适用不同角度不适用,本身辩论就是个不合逻辑的东西,都试图说服对方,即使认为对方有理也未必并真学进去,二套同样都正确的东西人的本性都会偏认同自己的这套,人性弱点,辩论的唯一好处就是对自己观点方的观点认识更深更广,其他作用不是很大,对方的观点可能认为有理但没自己的有理(这点肯定会有人反对)。
本文其实早就想写,但种种原因没有完成,断断续续,还好是先用导图记录了大概,这次写完总算对自己有个交代,也算了却一个心愿。如能给大家一点帮助、思考和讨论,能起到一点抛砖引玉的效果,那将会是件非常开心的事情。
PHP实现URL路由
本例可以实现
1.符合规则定义的伪静态访问路径解析
对于”test.php/user/lists/normal/id/2.html” 可解析为
control = user,action = lists,filter = normal,order = id,curPage = 3
对于”test.php/users/lists.html” 可解析为
control = user,action = lists,filter = all,order = ”,curPage = 1 可取得规则定义中的默认值
2.不符合规则定义的伪静态路径解析
action,control 不符合规则
对于”test.php/users/lists/all/id1/1.html” 报错
试图访问不存在的页面
不符合匹配模式
对于”test.php/user/lists/all/id1/1.html” 可解析为
control = user,action = lists,filter = all,order = ”,curPage = 1
可取得不符合匹配模式项目的默认值
<?php
// url 路由规则定义
$urlRule = array(
‘user’ => array( // [...]
什么是回调函数
回调函数,就是由你自己写的。你需要调用另外一个函数,而这个函数的其中一个参数,就
是你的这个回调函数名。这样,系统在必要的时候,就会调用你写的回调函数,这样你就可
以在回调函数里完成你要做的事。
模块A有一个函数foo,它向模块B传递foo的地址,然后在B里面发生某种事件(event)时,通过从A里面传递过来的foo的地址调用foo,通知A发生了什么事情,让A作出相应反应。 那么我们就把foo称为回调函数。
例子:
回调函数是一个很有用,也很重要的概念。当发生某种事件时,系统或其他函数将会自动调用你定义的一段函数。回调函数在windows编程使用的场合很多,比如Hook回调函数:MouseProc,GetMsgProc以及EnumWindows,DrawState的回调函数等等,还有很多系统级的回调过程。本文不准备介绍这些函数和过程,而是谈谈实现自己的回调函数的一些经验。
之所以产生使用回调函数这个想法,是因为现在使用VC和Delphi混合编程,用VC写的一个DLL程序进行一些时间比较长的异步工作,工作完成之后,需要通知使用DLL的应用程序:某些事件已经完成,请处理事件的后续部分。开始想过使用同步对象,文件影射,消息等实现DLL函数到应用程序的通知,后来突然想到可不可以在应用程序端先写一个函数,等需要处理后续事宜的时候,在DLL里直接调用这个函数即可。
于是就动手,写了个回调函数的原形。在VC和 Delphi里都进行了测试
一:声明回调函数类型。
vc版
typedef int (WINAPI *PFCALLBACK)(int Param1,int Param2) ;
Delph版
PFCALLBACK = function(Param1:integer;Param2:integer):integer;stdcall;
实际上是声明了一个返回值为int,传入参数为两个int的指向函数的指针。
由于C++和PASCAL编译器对参数入栈和函数返回的处理有可能不一致,把函数类型用WINAPI(WINAPI宏展开就是__stdcall)或stdcall统一修饰。
二:声明回调函数原形
声明函数原形
vc版
int WINAPI CBFunc(int Param1,int Param2);
Delphi版
function CBFunc(Param1,Param2:integer):integer;stdcall;
以上函数为全局函数,如果要使用一个类里的函数作为回调函数原形,把该类函数声明为静态函数即可。
三: 回调函数调用调用者
调用回调函数的函数我把它放到了DLL里,这是一个很简单的VC生成的WIN32 DLL.并使用DEF文件输出其函数名 TestCallBack。实现如下:
PFCALLBACK gCallBack=0;
void WINAPI TestCallBack(PFCALLBACK Func)
{
if(Func==NULL)return;
gCallBack=Func;
DWORD ThreadID=0;
HANDLE hThread = CreateThread( NULL, NULL, Thread1, LPVOID(0), &ThreadID );
return;
}
此函数的工作把传入的 PFCALLBACK Func参数保存起来等待使用,并且启动一个线程。声明了一个函数指针PFCALLBACK gCallBack保存传入的函数地址。
博客大巴(Blogbus)新版正式上线,推出友邻和活动功能
经过全体同仁二十多天的努力,Blogbus的研发团队终于将SNS的框架搭建起来,加上国庆假期,一共十九天没有休息,今天就能上线,应该说速度还是非常的快的,毕竟没有这方面的经验,虽然在功能需求上已经有开心,校内这样的前辈,甚至有康盛的UChome这样的东西,但是BUS的所有的研发人员,没有在代码上借鉴过前面任何一位的做法,或许也不能借鉴,因为blogbus之前的系统是基于博客的系统,所有的认证都是围绕博客这个系统展开的,最后形成了一个同心圆的结构,这样的结构最大的隐患是内部系统一旦因为某种原因找工作或者工作不正常了,所有外围的应用都不能使用或者受到严重的影响。
学过面向对象编程的人都知道,我们在设计类的时候要降低耦合,增加内聚的原则,这也是最基本的原则之一,所以豆瓣和客齐集这种岛的结构是非常值得借鉴的,每个应用之间如果有必要联系,通过中间的API进行通信,这样貌似会增加应用层的负担,而实际的结果是,这样部署结构能够最大程度的提高应用之间的效率。向外的扩展性也非常高,了解Mysql的人肯定知道,其实一个完整的应用,跑一次,百分之八十的时间都在数据库方面,所以API同行对整个应用的影响是有限的,如果能因此降低链接数据库的次数,还是非常划算的。
之所以前面说是 应用框架,是因为一切才刚刚开始,之后肯定会有很多的应用将架在这个系统架构上,这个框架肯定也会越来越成熟,
下面是来自Blogbus新后台的截图,它能带来的功能上的惊喜是有限的,关键是对于Blogbus来说,等于是重新活了一次,至少从技术层面是这样的。