我的职业倾向
您的工作中的优势:
◆ 办事精确,希望第一次就能把工作做好
◆ 乐意遵循确定的日常安排和传统的方针政策
◆ 每次都能十分专注地把注意力集中在一个项目或者任务上
◆ 能够独立工作
◆ 灵敏地组织能力
◆ 一丝不苟,认真专注地对待具体问题,事实和细节
◆ 相信传统地可取之处,并且能够遵循传统模式
◆ 非常强的责任意识,别人可以信任你实现自己的诺言
◆ 明白清晰的工作伦理,认为高效率和多成果是很重要的
◆ 对实现目标有毅力和决心
◆ 通情达理,视角现实
您工作中可能存在的不足:
◆ 不愿意尝试新的、没有经过考验的观点和想法
◆ 对变动感到不安,排斥变革
◆ 对需要很长时间才能完成的项目和任务缺乏耐心
◆ 有时会因为近期目标而忽略长远需要
◆ 办事死板,必要的时候难以事情新情况
◆ 难以看到问题的整体以及行为的长远影响
◆ 对于方针或者决定对别人造成的影响缺乏敏感性
◆ 需要的时候不愿意改变努力的方向或者调整投入的多少
◆ 不愿意促成必要的改变,也不愿意支持经过仔细考虑的风险行为
这是我在MBTI职业倾向测验上测得。比较符合我哦。
阅读(502 次)
又发现Google的新服务Google Video Search
Google的新服务,影像搜索,能根据关键词找出符合的影像。由于还在测试阶段,所以搜索出来的影像还不能回放。
http://video.google.com/
这是Google涉足影像行业的标志。
今天在BetaNews上看到Google将涉足电视行业,好像是要把电视节目也做成能搜索的。输入一个关键字,能找到相符的视频截图,还带有文字。
Google真强啊。
阅读(394 次)
委托和事件浅解
一、委托
委托实际上就是C++里面的函数指针,你可以让这个指针指向委托定义时所声名的那种类型的函数。举个例子:
public delegate void 连接数据库委托();
表示:声名一个委托类型,这个委托叫“连接数据库委托”,它所能指向的函数都是返回值为void型,没有参数的函数。比如:
private void 连接Oracle数据库();
private void 连接SqlServer数据库();
我们现在的程序里面要根据用户设定的数据库类型,自动连接数据库。
程序里面可以这么写:
连接数据库委托 委托实例 = null;
switch(目标数据库类型)
{
case 数据库类型.Oracle数据库:
委托实例 += new 连接数据库委托(连接Oracle数据库);
break;
case 数据库类型.SqlServer数据库:
委托实例 += new 连接数据库委托(连接SqlServer数据库);
break;
}
委托实例(); //运行委托所指向的函数
这里就能根据上面的switch来执行相应的连接数据库函数了。
委托是种类型,所以跟其他类型一样,可以当参数传递。
委托还有一个重要特性就是多播(Multicasting)
就是说执行一个委托实例的时候,可以同时执行一个以上的函数。
比如说我的程序要连接Oracle数据库,同时还要连接SqlServer数据库,可以这么写:
委托实例 += new 连接数据库委托(连接Oracle数据库);
委托实例 += new 连接数据库委托(连接SqlServer数据库);
委托实例(); //运行委托所指向的函数
这样就同时执行了两个函数
二、委托例子的完整代码
//DelegateTest.cs
using System;
using System.Threading;
namespace ConsoleApp_CS
{
public class AppClass
{
public delegate void 连接数据库委托();
private static void 连接Oracle数据库()
{
Console.WriteLine("已经连接到Oracle数据库\n");
}
private static void 连接SqlServer数据库()
{
Console.WriteLine("已经连接到连接SqlServer数据库数据库\n");
}
public static void Main()
{
连接数据库委托 数据库连接;
数据库连接 = new 连接数据库委托(连接Oracle数据库);
Console.WriteLine("<<仅连接到Oracle数据库");
数据库连接(); //仅连接到Oracle数据库
数据库连接 = new 连接数据库委托(连接SqlServer数据库);
Console.WriteLine("<<仅连接到SqlServer数据库");
数据库连接(); //仅连接到SqlServer数据库
数据库连接 = null;
数据库连接 += new 连接数据库委托(连接Oracle数据库);
数据库连接 += new 连接数据库委托(连接SqlServer数据库);
Console.WriteLine("<<同时连接到两个数据库");
数据库连接();
Console.Read();
}
}
}
三、事件
可以这么理解:当某件事发生的时候,会有一个广播信号,告诉大家什么事情发生了。某些人可能不关心股票事件,有些人不关心其他国家发洪水事件。这样事件就需要订阅,你只订阅你感兴趣的事件。当事件发生时,那些订阅该事件的订阅者就会收到一个信号,告诉你这个事件发生了。你可以对这个事件不闻不问,这个跟没订阅该事件一样,有些人会对这个事件进行一些处理,比如:
公司饮水机在我旁边,我关心饮水机是否没水了,所以我订阅一个“饮水机没水了”这个事件。
公司饮水机.饮水机没水了 += new 公司饮水机.饮水机没水了委托(我.换水);
这样,当饮水机没水了事件触发时,我就被通知要换水,执行的是“我”这个实例的“换水”方法。
饮水机Class 看起来大概是这样的:
public class 饮水机
{
private int 水量 = 10;
public delegate void 饮水机没水了委托();
public event 饮水机没水了委托 饮水机没水了;
public void 出水(int 出水量)
{
Console.WriteLine("有人接水……");
水量 -= 出水量;
Console.WriteLine("桶里还剩{0}升水", 水量);
if(水量 == 0)
{
当饮水机没水了();
}
}
public void 当饮水机没水了()
{
if(饮水机没水了 != null)
{
Console.WriteLine("饮水机没水了,快来换水……");
饮水机没水了(); //触发这个事件
}
}
}
而公司员工Class 看起来大概是这样的:
public class 公司员工
{
public void 换水()
{
Console.WriteLine("我去换水,真累啊……");
}
}
Main函数里应该这样
饮水机 公司饮水机 = new 饮水机();
公司员工 我 = new 公司员工();
公司饮水机.饮水机没水了 += new 饮水机.饮水机没水了委托(我.换水);
for(int i=0; i<10; i++)
{
公司饮水机.出水(1);
Thread.Sleep(1000);
}
Console.Read();
要注意的一点是:在“当饮水机没水了”函数内,应该判断“饮水机没水了”是否为null,否则就不要执行“饮水机没水了();”
四、事件例子的完整代码
//EventTest.cs
using System;
using System.Threading;
namespace ConsoleApp_CS
{
public class 饮水机
{
private int 水量 = 10;
public delegate void 饮水机没水了委托();
public event 饮水机没水了委托 饮水机没水了;
public void 出水(int 出水量)
{
Console.WriteLine("有人接水……");
水量 -= 出水量;
Console.WriteLine("桶里还剩{0}升水", 水量);
if(水量 == 0)
{
当饮水机没水了();
}
}
public void 当饮水机没水了()
{
if(饮水机没水了 != null)
{
Console.WriteLine("饮水机没水了,快来换水……");
饮水机没水了(); //触发这个事件
}
}
}
public class 公司员工
{
public void 换水()
{
Console.WriteLine("我去换水,真累啊……");
}
}
public class AppClass
{
public static void Main()
{
饮水机 公司饮水机 = new 饮水机();
公司员工 我 = new 公司员工();
公司饮水机.饮水机没水了 += new 饮水机.饮水机没水了委托(我.换水);
for(int i=0; i<10; i++)
{
公司饮水机.出水(1);
Thread.Sleep(1000);
}
Console.Read();
}
}
}
参考:
Delegates and Events in C# / .NET
[整理]近段了解一些委托事件的工作原理.找到两个很不错的例子,所以特拿出与大家分享!
阅读(423 次)
Google Suggest
http://www.google.com/webhp?complete=1&hl=en
Google使用Ajax的测试版。
当你在搜索框中输入一个字母,会跳出来Google提出的搜索关键词建议的列表。很强。
阅读(577 次)
上海订票网站汇总(更新中…)
今天看到MSN广告上有“上海嘉年华”活动,点击进去看看。这个活动老早就听大李说过。
除了看到活动本身外,最大的收获就是找到了一些上海订票的网站。
贴出来大家分享:
1、东方票务网,服务内容:演唱会、音乐会、话剧、戏剧、舞蹈芭蕾、主题活动、木偶剧、马戏杂技、歌剧、童话剧、电影、竞技竞标、休闲健身、热门赛事、极限运动、休闲游园、火车、长途客运
2、上海文化信息-上海文化演出网上订票,服务内容:音乐会、演唱会、歌舞芭蕾、戏剧歌剧、杂技魔术、戏曲曲艺、少儿剧场、体育竞技、电影娱乐、秀场展览、派对旅游、会议讲座
3、大众票务,服务内容:演唱会 曲艺杂技、歌剧戏剧 音乐会、芭蕾舞蹈 体育赛事、火车票 各类卡证、会展会务 娱乐休闲
4、上海旅游网,服务内容:旅游预订、旅馆预订、宾馆预订、演出票务、申城漫游、节庆活动、交通指南、休闲娱乐、旅游时报
5、一票通,可以提供上海、北京、杭州、苏州四地的服务。服务内容:电影、音乐会、演唱歌舞、戏剧曲艺、马戏杂技魔术、主题旅游、体育、展览、生活服务
6、票务通,可以提供北京、上海、杭州、广州四地的票务。服务内容:音乐会、演唱会、话剧歌剧、戏剧曲艺、舞蹈芭蕾、魔术马戏、体育、展览、亲子儿童、其他
7、上海磁浮票务网,可以订上海磁悬浮列车票和F1票。
以下是订火车票的网站:
中国火车票门户网站
以下是订机票的网站:
上海神马旅游咨询有限公司
上海吉翔星旅行网
上海不夜城旅行社票务中心
上海天马旅游航空服务有限公司
上海骏升旅游咨询有限公司
上海阳光航空票务中心
上海星云旅游咨询服务有限公司
上海星云旅游咨询服务有限公司
阅读(481 次)
Google 推出Blog搜索
Google推出本地搜索
Google推出了本地搜索,可以搜索很多东西,比如你家附近有几个银行、菜市场等。还能搜索公交线路。
http://bendi.google.com
Google的东西,自然就不用多说了
阅读(477 次)
Google Talk不能添加联系人的Bug解决
Google推出了及时通讯软件Google Talk,这个测试版本的程序总体上来说还是很弱。连最基本的文件传输都不支持,但是它可以监视我的Gmail信箱。这个功能跟Gmail Notifer一样,不过更好用。我现在把Talk的通讯功能只当作一种附属品,主要还是用来监视Gmail的。
上个月在添加好友的时候,出现了一个问题:添加了好友之后,好友就立刻消失了。接受好友的邀请也是这样。这个问题仅出在一个好友身上,其他好友都是正常的。百思不得其解。
昨天,我的另一个好友也出现了类似的问题。我仔细看了一下,Gmail通讯录里有这个好友的Gmail地址,但是这个地址是放在其他Email地址栏里的。主要地址栏里是他的126信箱的地址。我把他的Gmail地址放在主要地址栏里,这个好友就自动出现在我的Talk联系人里了。
不知道这是Talk的Bug还是人家就是这么考虑的。
阅读(415 次)
Blog换主机了
终于换主机了。
原来的主机实在是太慢了,打开静态的页面都要登上半分钟。实在忍受不了了。
这次的主机是和别人合租的,速度还可以,空间也挺大,但是不知道主机安全性怎么样。
阅读(411 次)
当时做的网站(多图)
下面这个网站,是我98年制作的。当时在电子市场买了张包含很多网址的光盘,然后用了点小手段,将这些网址存放到了Access中,然后在万网买了个域名,在中国频道买了个虚拟主机,就做起了这个“万维网址数据库”网站。这个网站当时搜集了将近6万条网址,分为20大类248小类。浏览者还可以自己添加网址。
后来,又在分类网址的基础上新增了软件精品栏目,可以让网友添加自己喜欢的软件。如果当时加入用户注册,再加入订阅之类的功能,估计就是最早的Web2.0了。哈哈
这个就是留言板,可以供网友文字交流的地方,现在已经不多见了。
为了能统计出来真实的访客信息,我自己编写了一个统计系统。这个系统可以输出一个假的访客数量,同时把真实的访客数量记录到数据库中。当时该网站的日访问人数在700左右(每IP24小时只计一次),而页面访问量比较低,仅为人数的114%,可见该网站的内容并不是很吸引人,大多数客源都是来自搜索引擎。
为了能让同学、网友更好的交流,我自己写了一个社区。这个社区基本上采用网易社区为原形制作。全部代码都是我一个人写的,我爸负责给我做测试。这个社区还有子斑竹和总版主,总的来说还算是比较像样的。呵呵
阅读(466 次)

点击看大图
点击看大图
点击看大图
点击看大图
点击看大图
点击看大图