| Mountain's profile蓝色山峰PhotosBlogLists | Help |
|
December 11 转载:中国房地产市场的危机有可能化解吗?
最近数年来,房价暴涨,政府调控了再调控,结果是越调越高了。基本的事实是:面对中国一路高歌的房价,市场调节是失灵的,政府调控也是失灵的。 (作者: 李昌平 河北大学中国乡村建设研究中心学者) [稿源:上海证券报] April 17 缩水年代心跳加速,无力,发冷,手指哆嗦。很明显的低血糖,Fred那边要了两块饼干,根本就没有效果。没有办法,餐厅的油饼又变小了,中午吃饭的时候就注意到了,吃饭的时候还在想,要不要来三块油饼。以前两块油饼是可以支撑到下班的,想想那么油腻的东西我都吃不饱,但是为什么体重不增加呢?下次不知道该吃什么了,玉米面的馒头看上去倒是很大,可是觉得颜色不对,应该是加了很多人工色素了。白面馒头粘粘的,很难吃,米饭,根本就吃不饱的。
什么东西都开始变小,开始涨价,房价,生活费,年龄都在涨。唯一不涨得就是薪水了。
快下班了,等着,赶紧回去吃东西~~~~~~~~
March 23 随便写写昨晚大学的死党打来电话,聊了很长时间,死党在一个南方的城市买了套房子,工作也非常清闲,重要的是死党很快要结婚了。要结婚的死党突然间感悟很多,我揶揄她是由生活的人,电话中一些精辟不绝,摘录下来,以供我以后参考
1。你知道那种感受么,两个人完完全全生活在一起,任何缺点都暴露无余,那是一种什么样的感觉你根本就没有经历过,你(这里指我)都没有和别人共同生活过一个月……
2。男人是以男人的观点来看女人,女人用女人的观点来找男人,男人和女人根本就不可能了解。
3。不要因为寂寞而寻求一份爱情,这样只会让你更寂寞。
…………………… 还有很多,有时间就在做整理,现在先写一点,免得忘了 February 09 My precious memoryMy precious memory
My English teacher, a little beauty, Basin, asked me to write an article about ethics to practise my English. I think it is more difficult to discuss than to tell a story about ethics. The reason is that people defines it in various ways. Here I decide to tell a story to show my previous memories instead.
When I was in my high school, I had two holidays every year, one is summer holiday and the other is winter one. I was 15 yeas old, a big, tall and young man and just like others that are in the same age, I slept very well every night. In summer holiday, it was very hot and often rained, I always slept with the windows opened. Every raining evening, I heard my father came into my bedroom and closed the windows for my brother and me lightly. In winter, it became very cold. To keep our lives, my father had to wake up very early to work. Every morning, I heard my father came into my bedroom and enswathed the quilt for my brother and me, and then touched our heads kindly. Before long, I heard the sound of motor bike, which means he has set out for work as usual.
My father has few words, but does a lot for us. My brother and I are very lucky and proud of having such a father. January 23 撷葩II相信未来 食指 撷葩很多都是高中时候读过的东西,可惜都找不到了,google都找不到,在这里mark一下--------另: 有一本绿色封面的朦胧诗集,谁有收藏可否一阅
红 豆
李小雨 在天与海的尽头 January 03 NameValueCollection怎么了?很早的时候就开始写一个configuration,但是发现net自带的configuration有些地方让人搞不明白
看下面的代码 app.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration> <configSections> <section name="myCustomerSectionA" type="System.Configuration.NameValueSectionHandler"/> <section name="myCustomerSectionB" type="ConfigurationDemoII.CustomerSectionHandlers,ConfigurationDemoII" /> </configSections> <myCustomerSectionA>
<add key="myKeyA" value="myKeyAValueA" /> <add key="myKeyA" value="myKeyAValueB" /> <add key="myKeyB" value="myKeyBValueA" /> <add key="myKeyB" value="myKeyBValueB" /> </myCustomerSectionA> <myCustomerSectionB>
<add key="myKeyA" value="myKeyAValueA" /> <add key="myKeyA" value="myKeyAValueB" /> <add key="myKeyB" value="myKeyBValueA" /> <add key="myKeyB" value="myKeyBValueB" /> </myCustomerSectionB> </configuration>
app.cs
using System;
using System.Collections; using System.Collections.Generic; using System.Collections.Specialized; using System.Text; using System.Xml; using System.Configuration; namespace ConfigurationDemoII
{ class Program { static void Main( string[] args ) { try { TestSysNameValueCollection(); Console.WriteLine( "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" ); TestMyNameValueCollection(); } catch( Exception ex ) { Console.WriteLine( ex.Message ); Console.WriteLine( ex.StackTrace ); } } private static void TestSysNameValueCollection()
{ NameValueCollection nvc = (NameValueCollection)ConfigurationManager.GetSection( "myCustomerSectionA" ); foreach( string key in nvc.AllKeys ) { Console.WriteLine( key ); Console.WriteLine( nvc[key] ); } } private static void TestMyNameValueCollection()
{ NameValueCollection nvc = (NameValueCollection)ConfigurationManager.GetSection( "myCustomerSectionB" ); foreach( string key in nvc.AllKeys ) { Console.WriteLine( key ); Console.WriteLine( nvc[key] ); } } } class CustomerSectionHandlers : IConfigurationSectionHandler
{ #region IConfigurationSectionHandler 成员
object System.Configuration.IConfigurationSectionHandler.Create( object parent, object configContext, System.Xml.XmlNode section )
{ NameValueCollection col = new NameValueCollection(); foreach( XmlNode childNode in section.ChildNodes )
{ XmlElement root = (XmlElement)childNode; if( root.Name == "add" ) { string key = root.GetAttribute( "key" ); string value = root.GetAttribute( "value" ); col.Add( key, value ); } else if( root.Name == "remove" ) { } else if( root.Name == "clear" ) { } } return col;
} #endregion
} } 运行的结果
myKeyA
myKeyAValueB myKeyB myKeyBValueB ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ myKeyA myKeyAValueA,myKeyAValueB myKeyB myKeyBValueA,myKeyBValueB Press any key to continue . . . 能看到什么不同么, Sys自带的namevaluecollection好像把后面新加入的同一个key的信息冲掉了,如果是configuration本身就是这么设计的,那么为何要用NameValueCollection这个容器呢?
我在cnblog的几篇介绍configuration的文章中并没有找到相关的信息 http://msdn.microsoft.com/msdn-online/shared/components/ratings/ratings.aspx?ContentID=_978498&HideDiscuss=1里面也没有这一块类似的介绍
OK, 打开Refelect看看吧 哦,
internal static object CreateStatic(object parent, XmlNode section, string keyAttriuteName, string valueAttributeName)
{ ReadOnlyNameValueCollection collection1; if (parent == null) { collection1 = new ReadOnlyNameValueCollection(new CaseInsensitiveHashCodeProvider(CultureInfo.InvariantCulture), new CaseInsensitiveComparer(CultureInfo.InvariantCulture)); } else { ReadOnlyNameValueCollection collection2 = (ReadOnlyNameValueCollection) parent; collection1 = new ReadOnlyNameValueCollection(collection2); } HandlerBase.CheckForUnrecognizedAttributes(section); foreach (XmlNode node1 in section.ChildNodes) { if (!HandlerBase.IsIgnorableAlsoCheckForNonElement(node1)) { if (node1.Name == "add") { string text1 = HandlerBase.RemoveRequiredAttribute(node1, keyAttriuteName); string text2 = HandlerBase.RemoveRequiredAttribute(node1, valueAttributeName, true); HandlerBase.CheckForUnrecognizedAttributes(node1); collection1[text1] = text2; } else { if (node1.Name == "remove") { string text3 = HandlerBase.RemoveRequiredAttribute(node1, keyAttriuteName); HandlerBase.CheckForUnrecognizedAttributes(node1); collection1.Remove(text3); continue; } if (node1.Name.Equals("clear")) { HandlerBase.CheckForUnrecognizedAttributes(node1);
还是偷懒一下,等着牛人来回答吧
过往的牛人, 请留下高见
September 21 又见GC前段时间偶尔在msn上被人问起GC,自己也是不明白,整理了一下不明白的问题。为以后学习做准备
using System;
using System.Collections.Generic; using System.Text; namespace GCDemo
{ class Program { static void Main( string[] args ) { MyClassTemp temp= new MyClassTemp(); //MyClassAdapter temp = new MyClassAdapter(); GCCall();
} private static void GCCall()
{ Console.ReadLine(); Console.WriteLine( "GC START" );
GC.Collect(); Console.WriteLine( "GC END" ); Console.ReadLine();
} } class MyClassTemp
{ public MyClassTemp( ) { Console.WriteLine( "MyClassTemp is Creating" ); } ~MyClassTemp( )
{ Console.WriteLine( "MyClassTemp is Destroying" ); } } class MyClassAdapter
{ public MyClassAdapter( ) { MyClassTemp temp = new MyClassTemp(); } } } -----------------------------------------------------------------
如果把main函数中的代码修改如下 那么得到的结果将会是不同的
//MyClassTemp temp= new MyClassTemp();
MyClassAdapter temp = new MyClassAdapter(); JIT编译main函数,个人感觉好像是把Main函数的所有引用(这里专指引用到heap上的对象)放到root中
MyClassTemp temp= new MyClassTemp(); 这个temp也被放入。那么后来在main函数中调用GC的时候,temp的引用仍然在root中,所以temp并不被GC,而关闭这个控制台程序的时候,temp被GC掉。
如果使用这段代码 MyClassAdapter temp = new MyClassAdapter(); 这个时候main中调用了自函数,此子函数调用结束之后(子函数栈和堆退出了) 这个时候temp这个引用应该是可以从root上移除了,GC的时候,temp被GC.
关乎GC,说得比较清楚地只有jeffrey richer的《Applied Microsoft .Net Framerok Programming》,没有别的书作对照和参考,我也不能很好的理解,如果理解的有错误的地方,望个位路过的留个记号,多多指教。 September 15 Asp.net的一些随笔在这里做个记号,没有系统的接触过,先做个记号,以后慢慢来吧。
每一个虚拟目录应该是对应着一个AppDomain 的, 而每一个AppDomain里面应该是有很多的Application实例,这些实例的创建应该是在用户第一次请求一个Page被创建的。
那么同一个Page的多个请求,是使用一个App还是每一个用户都建立单独的App----------汗,这点搞不明白。
恩 或许是这个样子的。
App是一个Instance 当一个request收到的时候, 相应的App就会被建立,
这个App就被pool 因为App的创建应该是比较好费资源的(parse 和 compily 特别是这种parse 如果没有pool 应该是非常费劲 )
接着authentication authorization 和 Session 的module 依次工作 当这个请求结束的时候 虽然意义上这个App的生命期已经结束了 但是实际上它在pool里面
至于request的Session 应该是放到一个别的地方(比如说SessionState进程) Session 的module会在工作的时候根据key取道相对应的value
-----------------------------------------------------------------------------------------------------
----------至于request的Session 应该是放到一个别的地方(比如说SessionState进程)--------
也就是在这个地方 如果使用的是inproc (我个人感觉这个inproc应该就是这个app) 那么当一个用户的reqeust处理完后是不能把App释放了的 因为session还在里面阿 这个要一直活到Session实效为止 而且不同用户访问同一个page的时候 也不能已经创建好的App去应付这个新的请求阿 因为他们的Session是不一样的阿 汗
-----------------------------------------------------------------------------------------------------
不管是别的用户还是仍旧是当前用户 如果发送出对相同的Page的请求 App被从pool中取出 周而复始
也就是说应该是每一个Page都会有一个App 而不同用户访问请求相同的Page的时候 访问的都是一个App(但是这个App的一些冬冬是不同的 比如说Session什么的 其实App本身是个动态的概念 但是因为pool 所以就~~~~)
这个概念和Remoting的为每一个请求创建一个app和都是用一个app处理所有的请求有些差别 汗 不知道remoting 所以这些事情搞不明白
如果有人能够给我讲讲asp或者是java中的服务器端模型 应该能加深理解 后悔大学里怎么没有学习一下asp
个人感觉UI使用html不断的回来回去的实在是滥 但是相对应的asp.net确实做得如此的棒 断开连接和使用pool这些都很漂亮 更要命的是 Parse和complier 当然这个东西同时也是学习asp.net的最大的障碍 我不知道怎么才能找到最终生成的appClass代码和PageClass代码
VS03中在还能看些简单的 VS05都不知道怎么做了
asp.net比较滥的地方是那些control 他们在设计其中的展现和他们的功能相互交错在一起 即使使用的是Attribute 但是感觉还是掺在一起了 要想做一个完全第三方的ide还真的比较难了 html把展现和数据掺和到一起 死掉了 asp.net的control把功能和定制掺和到了一起 后果如何 慢慢看~~~~~~~~~~~
August 31 推荐一篇asp.net得好文章博客园已经有人在做翻译了。
这篇文章着重讲述了 isapi 到 httphandler 处理过程的一些细节
对于这方面讲述的比较好的中文书籍有:《asp.net服务器控件组件开发》 和 《asp.net组件程序设计技术内幕》 -------- 可能会有别的书 好像是有一本叫什么《asp.net揭秘》 绿色的封面 但是好像是很厚 我怕会有很多地方讲述如何使用控件 在书店的时候就没有翻过
但是 《asp.net服务器控件组件开发》 对于isapi 到 httphandler 处理过程讲的很简单 因为做一个servercontrol主要是要使用httphandler后面的东西 而《asp.net组建程序设计技术内幕》中 黄忠成老先生好像是表达不在行 弄得我一直是云里雾里 以至于这本书在我手里一年多了 我一直都没有看过
个人认为一个高效率的portal可能是安插了一个新的httpmodule来对付自定义的UI 而不可能是在httphandler之后作一些动作
但是ms的sps大概在什么地方实现我个人不清楚 因为本人的asp.net水平实在是不怎么样 ---------- 恩 仅仅是停留在会使用控件的层次
先做个记号 有了别的心得在继续补充 July 18 《20 30 40》 一个很要好的朋友推荐看这部电影,已经很久不看电影和读书了。因为看过之后很长一段时间都沉浸在一种情趣中而不能自拔,而自己也不太愿意再看一些很凄惨的结尾。一部好的电影总是试图展现我们在记忆里存活的状态,《20,30,40》也是一样。
20岁的小洁,带着自己的音乐的梦想和青春的萌动,只身来到台北。还是那句话,年轻没有什么不可以。连地震都兴奋不已……30岁的想想,之前20岁的时候如果没有找到那个要的人,想想还在继续寻找,爱她爱的痴颠得小乐手,浪漫邂逅的有妇之夫,有保持暧昧的前男友,想想拿着三部手机在他们之间穿梭优游。爱想想的小乐手想想认为太幼稚,想想觉得成熟的医生又是有妇之夫。直到有天前男友说要结婚了,想想慌了,原来自己什么都没有剩下,就连那个爱她的小乐手,也被一次次的不 接电话而离她而去,不过影片的结尾倒是给了想想一个新的可以依靠的人,不知道想想会不会厌烦而再次回到从前……40岁的花店老板丽丽在一次送花的途中偶然发现丈夫在外面还有一个家。之后的离婚和重新的选择同样让她疲惫不堪。有个朋友问我如果有一天我老婆也有了外遇我该怎么办,我当时一下子哑然,怎么办,还真的没有想过,也想不出来,即使是让我现在回答,我也不知道该怎么办…
我的影子又有多少在里面,20岁的青春年少,已经渐渐离我而去。30岁在慢慢到来,好多30岁的影子就在自己身边。40岁,不想去想……或许像那个被别人骂了无数次幼稚无知小乐手还颠颠追人家的小乐手,可是我没有他那么年轻了。恩,向黄秋生吧,做了很多年音乐却仅够糊口饭(我是连饭也糊不上),一边发着牢骚,一边为了自己的梦想(也不一定是梦想了,可能他除了音乐别的什么都不会做)而工作。
建议要是有时间的话,不妨看看这部《20 30 40》
June 22 项目日记--关于测试其实现在这个项目处于收尾阶段
关于测试——————————————
我会慢慢把它补上
很多的事情,只有经历过了才能感受得到…………
今天整整一天的时间在debug,在一段抛出异常的代码上面没有使用try来捕获,结果这个异常被sps捕获了,什么都不说,直接显示错误。然后一层一层的跟踪…………
很多的时候我们为了节省时间都不做单元测试,但是想一想我们这个样子又节省了多少时间呢?即使是些程序的高手,每天能够写出不用单元测试而没有bug的代码也没有几行。自己做这个项目也有一年多的时间了。感觉code的时间能占到1/5就不错了,更多的是在debug,有几个模块作了一些测试的小例子,结果后来在这几个模块出问题或者需要添加新的功能的时候,很快就能够完成。可是后来我一次大意把一些测试代码删掉了,呜呜^^^^^^
还是那句话“你盖房子的时候是先吊线,在垒砖,还是先垒砖,在吊线”。
最近公司的测试部经理换掉了,个人感觉,公司的测试就是,墙都垒完了,调根线看看直不直。需求阶段产生的bug在测试阶段不知道已经扩大到了几百倍,而代码有时在不断的催促之下写出来的。好多事情,就这样莫名其妙的发生了。
-----------------------------------------------------------------------------------------------------------------------------------
不重视开发流程中的每一步测试还产生出另外一个现象——————牛人,在项目上线之后,公司会有一群牛人跟踪这个项目中隐藏的bug和性能调优。很多这样的事情在编码的工程中就可以稍微注意就可以控制得住。但是管理者们往往根本不注意编码这块工作的重要性,不断的催促赶时间,而前期的分析和设计又没有做好,导致编码也要不断的修改,于是出现了一大堆开发人员都感到恶心的代码。这些表面上看似能够正常工作的代码实际上杀机无限,程序提交给客户了,开发人员送了一口气,轮不到他的事情了,但是程序在工作中漏洞和错误不断出现,这个时候牛人闪亮的登场了,使用dump调出内存中的信息察看,靠,最终是使用了string而没有用stringbuild造成了4万次的循环,牛人找到了问题,也送了一口气。其实牛人本应该站在更高的高度去做系统架构,引导公司软件发展的方向,但是牛人每天奔波于编码过程中的内存泄漏,string的滥用,connection没有关闭链接………… 我想牛人也够无奈的。据说华为也有专门做这个的牛人,年薪100万,靠。
ps: 本人不懂得测试驱动 May 11 看来我只能是穷人了1.自我认知 穷人:很少想到如何去赚钱和如何才能赚到钱,认为自己一辈子就该这样,不相信会有什么改变。 富人:骨子里就深信自己生下来不是要做穷人,而是要做富人,他有强烈的赚钱意识,这已是他血液里的东西,他会想尽一切办法使自己致富。 2.休闲 穷人:在家看电视,为肥皂剧的剧情感动得痛哭流涕,还要仿照电视里的时尚打扮自己。 富人:在外跑市场,即使打高尔夫球也不忘带着项目合同。 3.交际圈子 穷人:喜欢走穷亲戚,穷人的圈子大多是穷人,也排斥与富人交往,久而久之,心态成了穷人的心态,思维成了穷人的思维,做出来的事也就是穷人的模式。大家每天谈论着打折商品,交流着节约技巧,虽然有利于训练生存能力,但你的眼界也就渐渐囿于这样的琐事,而将雄心壮志消磨掉了。 富人:最喜欢交那种对自己有帮助,能提升自己各种能力的朋友。不纯粹放任自己仅以个人喜好交朋友。 4.学习 穷人:学手艺。 富人:学管理。 5.时间 穷人:一个享受充裕时间的人不可能挣大钱,要想悠闲轻松就会失去更多挣钱的机会。穷人的时间不值钱的,有时甚至多余,不知道怎么打发,怎么混起来才不烦。如果你可以因为买一斤白菜多花了一毛钱而气恼不已,却不为虚度一天而心痛,这就是典型的穷人思维。 富人:一个人无论以何种方式挣钱,也无论钱挣得是多是少,都必须经过时间的积淀。富人的玩也是一种工作方式,是有目的的。富人的闲,闲在身体,修身养性,以利再战,脑袋一刻也没有闲着;穷人的闲,闲在思想,他手脚都在忙,忙着去麻将桌上多摸几把。 6.归属感 穷人:是颗螺丝钉。穷人因为自身的卑微,缺少安全感,就迫切地希望自己从属并依赖于一个团体。于是他们以这个团体的标准为自己的标准,让自己的一切合乎规范,为团体的利益而工作,奔波,甚至迁徙。对于穷人来说,在一个著名的企业里稳定地工作几十年,由实习生一直干到高级主管,那简直是美妙得不能再美妙的理想了。 富人:那些团体的领导者通常都是富人,他们总是一方面向穷人灌输:团结就是力量,如果你不从属于自己这个团体,你就什么都不是,一文不名。但另一方面,他们却从来没有停止过招兵买马,培养新人,以便随时可以把你替换。 7.投资及对待财富 穷人:经典观点就是少用就等于多赚。比如开一家面馆,收益率是100%,投入2万,一年就净赚2万,对穷人来说很不错了。穷人即使有钱,也舍不得拿出来,即使终于下定决心投资,也不愿冒风险,最终还是走不出那一步。穷人最津津乐道的就是鸡生蛋,蛋生鸡,一本万利……但是建筑在一只母鸡身上的希望,毕竟是那样脆弱。 富人:富人的出发点是万本万利。同样的开面馆,富人们会想,一家面馆承载的资本只有2万,如果有1亿资金,岂不是要开5000家面馆?要一个一个管理好,大老板得操多少心,累白多少根头发呀?还不如投资宾馆,一个宾馆就足以消化全部的资本,哪怕收益率只有20%,一年下来也有2000万利润啊! 8.激情 能不能干成大事,首先要看有没有激情 穷人:没有激情。他总是按部就班,很难出大错,也绝不会做最好。没有激情就无法兴奋,就不可能全心全意投入工作,大部分的穷人不能说没有激情,但他的激情总是消耗在太具体的事情上;上司表扬了,他会激动;商店打折了,他会激动;电视里破镜重圆了,他的眼泪一串一串往XL,穷人有的只是一种情绪。 富人:“燕雀安知鸿鹄之志?”“王侯将相,宁有种乎?”有这样的激情,穷人终将不是穷人!激情是一种天性,是生命力的象征,有了激情,才有了灵感的火花,才有了鲜明的个性,才有了人际关系中的强烈感染力,也才有了解决问题的魅力和方法。 9.自信 穷人:穷人的自信要通过武装到牙齿,要通过一身高级名牌的穿戴和豪华的配饰才能给他们带来更多的自信,穷人的自信往往不是发自内心和自然天成的。 富人:李嘉诚在谈到他的经营秘诀时说:“其实也没什么特别的,光景好时,决不过分乐观;光景不好时,也不过度悲观”。其实就是一种富人特有的自信。自信才能不被外力所左右,自信才可能有正确的决定。 10.习惯 穷人:有个故事,一个富人送给穷人一头牛。穷人满怀希望开始奋斗。可牛要吃草,人要吃饭,日子很难。穷人于是把牛卖了,买了几只羊,吃了一只,剩下的来生小羊。可小羊迟迟没有生下来,日子又艰难了。穷人又把羊卖了,买成鸡。想让鸡生蛋赚钱为生,但是日子并没有改变,最后穷人把鸡也杀了,穷人的理想彻底崩溃了。这就是穷人的习惯。 富人:据一个投资专家说,富人成功秘诀就是:没钱时,不管多困难,也不要动用投资和积蓄,压力使你找到赚钱的新方法,帮你还清账单。这是个好习惯。性格形成习惯,习惯决定成功。 11.上网络 穷人:上网聊天。穷人聊天,一是穷人时间多,二是穷人的嘴天生就不能闲着。富人讲究荣辱不惊,温柔敦厚,那叫涵养,有涵养才能树大根深。穷人就顾不了那么多,成天受着别人的白眼,浑身沾满了鸡毛蒜皮,多少窝囊气啊,说说都不行?聊天有理! 富人:上网找投资机会。富人上网,更多的是利用网络的低成本高效率,寻找更多的投资机会和项目,把便利运用到自己的生意中来。 12.消费花钱 穷人:买名牌是为了体验满足感,最喜欢试验刚出来的流行时尚产品,相信贵的必然是好的。 富人:买名牌是为了节省挑选细节的时间,与消费品的售价相比,他们更在乎产品的质量,比如会买15元的纯棉T恤,也不会买昂贵的莱卡制品。 April 11 是变化太多还是我没有能力拥抱做一个新的系统,首先要对系统需要实现的功能明确,然后开始对每一块要实现的功能作技术实现的研究,等所有的技术点都解决得差不多的时候。就需要设计架构(准确地说没有达到的架构规模,而仅仅是模块的逻辑关系),一般来说,模块的功能是不变的,而功能的实现是变化的,找准系统中不变和可变的部分,这个是设计的重中之重。
这些是对于很有经验的系统架构师来说,想我这种水平的人就做不得到,我一般采取的方法是,先使用最简单的技术对系统做一个模型(这个模型并不困难,每一个技术点的代码组合一下就差不多了),然后在模型的基础上重构,说白了就是从新写组织代码,这个时候需要注意的是往往重构代码的时候会沉浸在代码重而忽略了。
LCEIP中可能存在的变化 1. SSO。SPS的新版本实可以选用From验证,甚至说这个From的数据完全可以读取自己数据库里的表而不是SPS提供的API,这个一个接口就可以搞定,同一个系统使用的凭证信息存放在SPS和存放在数据库里都没什么问题了。但是不同系统的验证信息可能所需的数量和类型都是不一样的,这个才是系统变化中最要命的部分。可以做一个接口,接口里面包含一个事件,时间的参数有一个SignOnSuccess的标志,不同系统中的登陆都注册此事件,但是这个接口抽象地层次是如此之高,估计意义不会很大。(还有该死的SPS只能存放5个字段,当然可以把这五个字段映射到相应的表中用来扩充。这是一个多么令人恶心的解决方法啊)。 2. WebPart。Part的功能就是展现,这个是不变的,Part的实现可以有很多种变化,GS3.2的Part和GS3.0的Part实现方式完全不一样,而Web方式的Part也是完全不一样的,这个变化的封装不应该在WebPart中而应该在ToolPart中。第二点的变化就是如果把继承SPS中的WebPart的修改为继承.net2.0的WebPart,代码不作修改或者说仅仅需要做少量的修改就能继续正常工作。
写到这个地方做个备份同时也希望各位路过的大虾都给个意见 March 23 手发麻,该如何?年后刚开始工作就觉得整个右胳膊酸疼,心想是长时间不活动的问题,没在意,3个星期前手开始发麻,就像是坐车时间久了脚麻了那种感觉,不是很重,也不是一直麻,每隔一段时间就有些麻。
去齐鲁医院,导医台的混蛋告诉我要挂神经科,7元,神经科说应该去骨科,再次挂号,6元,骨科和神经科都建议我拍颈部CT,280元。太贵,心疼,没舍得拍。神经科的大夫说是颈椎间盘突出压迫神经所致,让我打针 维生素B1 + 维生素B12,口服维生素B6。骨科的大夫摸了我半天脖子说没有颈椎间盘突出(我的脖子长,很仔细的摸了半天,很辛苦)。给我开了一盒止疼药,让我在去神经科。郁闷,没有在去,不看了。
划价,贵得要死,心疼,没交钱,去平民大药房买维生素B1一瓶(口服),维生素B6一瓶(口服),维生素B12一瓶(口服)。 三瓶药共两块二毛钱。
吃了一个星期了, 没怎么见效果。
各位做程序员的同行有没有过类似的经历,如果有过,我就不用再去看医生了。
如果知道什么偏方或者是什么别的意见,谢谢告诉我~~~~~~~ February 28 大话(ZT)
发帖人:CrazyDemon February 24 八卦一下Office SharePoint Server 2007 !(转载 Kaneboy's Bloy)微软正式将Office12命名为了Office 2007,而SharePoint产品的名称则是:Office SharePoint Server 2007(OSS2007)。呵呵,没错,“Portal”这个词已经从产品名称中去掉了,原因就是,下一代的SharePoint Server已经不仅仅是一个企业门户产品了!除了门户,它能干啥呢?嗯,比如:企业资源搜索引擎 没错,如果你用过SPS2003,那么一定对SPS强大的搜索能力印象深刻。SPS能够以爬网的方式,对企业内部的网站(当然,如果愿意,你一样可以让SPS去爬Internet上的站点,比如新浪新闻...)进行全面的检索,当然,对文档库、共享文件夹中的文档进行全文索引,也是它的拿手好戏!OSS 2007对搜索功能进行了大幅的改进,不但提高了搜索效率和准确性,还增加了更多的可搜索内容。 如果企业中已经存在不少的内部网站、OA系统、文档管理中心...难道会不需要一个强大的搜索引擎能够对所有这些进行搜索吗?我们完全可以仅仅把SharePoint用做企业内部资源的一个搜索引擎,让我们的用户在上面能够搜索到企业内部所有的信息! Blog/Wiki OSS2007内置了Blog和Wiki站点模板,通过OSS2007,我们可以迅速在公司内创建Blog站点和Wiki站点。 Workflow Server 在Office2007中,将内置对Workflow的支持,比如,你可以在Word里面直接用当前文档启动一个定义好的流程,然后在Outlook里面看到自己的流程任务。而Office2007的Workflow中心,就是SharePoint Server。 图片是从网上down下来的office12 但是没有发现有sharepointserver的影子 估计不在这张盘中 郁闷
等待着ms快点出来 February 07 帅哥张大嘴的幸福生活(二) 昨天发短信问张大嘴什么时候回来,结果他说他以后就不回来了,吓了老子一蹦,马上打电话过去,还是像以前一样的笑骂,但是能感觉到大家心里挺难受,他说他以后可能一辈子都不再回来了…………最后的时候他告诉我他的档案什么的到时候要麻烦我去人事局给他办,NND…………
挂电话的时候很不好受,那个校园里的帅哥,那个自己写歌得吉他手,一起租的阴暗潮湿的小房子,茶几上软大鸡的烟屁股,夏天里一起唱同桌的你,那次差点冻死的洗澡,都默默的离我远去了,变得清晰而又模糊起来…………
“世界如此美妙,你却如此暴躁,这样不好不好…………”
祝愿我曾经爱过的人和曾经爱过我的人,我爱的人和爱我的人,祝愿天下所有有情人终成眷属
########################################################
各位看官,我什么时候变得这么酸了,奇怪?? January 26 帅哥张大嘴的幸福生活(一) 张今天早上走的,6点的火车(这会儿估计正在火车上),让我陪他聊天到5点
大学时候我们是对面宿舍,他那个时候是化工系一大帅哥(现在已经发福了,我说他每天吃猪肉吃的都成了猪头了),
上大学的时候就每天拿着把破吉他让一群小女生眼馋得不得了。我从上海回来后就住到他租的房子里,我们每个人往一个公共抽屉里放50块钱,然后就用这钱买菜,等花光了,每个人再放50。冬天的时候很冷,两个人一起洗澡,那个煤气的热水器,老得掉牙,还经常熄火。于是一个人洗,另外一个人看着。每次都是我先洗,然后我裹着被子看着热水器他洗。房子里没有暖气的。一边哆嗦,一边喊“还活这么?没有被熏死吧”“没有…………”。
后来张的女朋友去了北京,张在济南也是混得不咋地,就随后也去了北京。我们两个人在一起的时候就是红河和大鸡,这次到出差到北京见他已经是硬红塔了。我一边抽着他的烟一边听他吹一边在心里骂着这狗日的世道。
张是油田的子弟,毕业后如果回去房子车子都有了,然后就找个女人结婚然后就享着福等着死,为了他大学时候的女朋友他和家里闹翻了留在了济南…………
昨天晚上找又到他老丈人家拍马屁了,结果老头和老太太说“离家这么远,以后有个孩子怎么带”“你有没有房子,有没有钱”“你还是回家吧”“…………”。张昨晚回来就开始发疯了(不过没有我的几次发得厉害,我都是一边抽烟一边哆嗦),我能看得出这次他真的是很伤心,他一边开着电脑看兰兰,
一边说着“你个老笨蛋我又不是和你结婚是和你家丫头结婚,我将来会让她幸福的,你懂个屁” “px(他女朋友的名字)就是我的人了,chrd你给我看着,谁要是敢找她,我他妈一脚踢死他…………”。最后这狗日的不知道是兰兰看多了,还是牛肉干吃多了,还是烟抽多了,竟然作了一个惊人的决定:明年考济南的公务员,如果公务员不成,年底考研,考山大(他大学的时候差点就没有毕业证了)。 张这个人年轻的时候也不是个什么好鸟,荒唐事也没少干。估计是老天报应,等到他年老的时候就给他来这一招了。我正在迷迷糊糊中他就走了,年后还是要来济南的,他要考公务员考研的。
我也要回家过年了,又是一年……………………
|
|
|