摘要:
也许某天你来某一家公司面试,或许就会被问到这个问题,当你看到这个问题,也许会立即反编译下源代码看个究竟。 1 [Serializable, StructLayout(LayoutKind.Sequential), __DynamicallyInvokable] 2 public struct... 阅读全文
摘要:
这几天比较清闲,刚好前段时间买了本CLR Via C#,在.Net界大家都知道Jeffrey大师的这本经典著作,惭愧一直没有拜读。不过在C#著作中经典的非常多。读书的那时候就是通过《C#与.NET 3.0高级程序设计》这本书接触C#的,也被称为C#圣经。CLR Via C#中的委托说的非常好,比... 阅读全文
摘要:
说到FlagsAttribute,源自前几天看到了一小段代码,大概意思就是根据航班政策来返回哪些配送方式是否可用,根据这些是否可用来隐藏或者开启界面的相关配送方式,如果大家订过机票可能知道配送方式有很多种,比如“无需打印行程单(PJN)”,“机场自取(Airport)”,“市内配送(CND)”,... 阅读全文
摘要:
这篇继续分享下GetHashCode和ExpandoObject这两个比较好玩的方法。一:GetHashCode 从MSDN上可以看到的解释是:用作特定类型的哈希函数,也就是说任何对象的实例都会有一个int32类型的HashCode,并且存放在FCL中的HashCollection中,废话不说... 阅读全文
摘要:
我们知道在面向对象编程中,总会想着各种办法来实现代码的解耦,从而让项目中的各种人员面对自己熟悉的业务进行开发,做到术业有专攻,比如大家非常熟悉的三层架构,MVC,MVP以及MVVM模式,让前端设计专注于html的制作,让后端开发人员更加专注于业务逻辑的编写,可以看到,我们这么做的目的就是想最大程... 阅读全文
摘要:
说到缓存,我想大家跟我一样都很兴奋,当我们遭遇网站性能瓶颈的时候,缓存是一剂强心针,也是一粒紧急妈富隆,从而在优化网站性能方面冠上了第一定律的帽子,我们前年在做淘应用的时候,就遭遇了性能瓶颈,短时间内采用缓存紧急优化,给我们大优化之前争取了宝贵的时间。一:缓存的种类 要说缓存有多少种,太多了,比... 阅读全文
摘要:
这篇文章本来准备前几天就得写的,谁也没想到这段时间公司的RC太多了,含酸苦逼的加班,加班。。。所以在大一点的公司上班,写代码的责任心一定要强,或许就因为你的一些小bug,给公司带来不少损失。。。这在以前公司真的没多大体会的。 好了,继续说说架构的演变,从第四代架构中可以看到,我们通过做应用程序... 阅读全文
摘要:
我们知道一个网站都是随着业务的发展,逐渐演变成几万服务器,几亿用户数的大型网站,经历了若干年,甚至上十年的发展成为大型网站,然而真正亲身经历这个发展过程的人已经不多了,这种人也是拿着公司股票,赶都赶不走的人,所以正因为很多人没有亲身经历过,所以对架构的演变没有深刻的了解,包括我自己在内,不过没吃... 阅读全文
摘要:
对于内容型,不易变动的东西我们都希望给它来个静态化,还有种情况就是比如新浪云不支持.net,为了能跑起我们的网站,只能放些静态页面上面,外加jsonp来实现交互,我们知道.net中有很多模板引擎,但都不是原装的,所以基本都没有代码提示,用起来比较不爽,自razor出来后,私活中也抛弃了原先使用的NVelocity,而采用原装的razor。 好了,我们先看看怎么玩,首先我们去codeplex上下两个dll。http://razorengine.codeplex.com/ 我想razor语法,大家都已经滚瓜烂熟了,不过我快一年都没接触mvc了,也忘了差不多了,就简单介绍一些吧~~~一般来说,只.. 阅读全文
摘要:
时间太快了,三月又要过去了,告别一下。。。继续期待生死未卜的四月,今天我们继续挖一挖。一: Environment.StackTrace 可能我们看到最多的就是catch中的e参数,里面会有一个StackTrace,然后不可否认的这玩意太有用了,它会把调用堆栈中的信息输出出来,有了它,我们就可以快速的知道运行代码的执行流并且快速的定位到问题。 有时候我们会遇到这样两个问题:①:线上的bug在本地不能重现。②:由于太多的多态,设计模式,程序员反而对线上的代码执行流向会搞的稀里糊涂的。 为了搞清楚并解决这两个问题,我们看生产日志的时候很在乎代码的执行流以及想获取当前上下文的可疑变量值... 阅读全文
摘要:
不知道有人做没做过对日外包,如果做过的话,那么对vb.net应该非常熟悉了,当年我刚毕业的时候也做过四个月的外包,那种日子简直不是人过的,就连大楼下面买珠宝的阿姨都说,这些孩子,只看过他们上班,就没见过他们下班,不过有一点好,有个QA的小姑娘天天下午6点教我们倭瓜语,现在还在勾搭中。。。 好了,现在我们看看需求。一: 如何判断“a”是不是数字类型。 ①:在C#中我们可能会用TryParse来判断当前的”a“是否为整数。 1 static void Main(string[] args) 2 { 3 var a = "a"; 4 ... 阅读全文
摘要:
这个系列我们看看C#中有哪些我们知道,但是又不知道怎么用,又或者懒得去了解的东西,比如这篇我们要介绍的toDictionary和ToLookup。 从图中我们看到有四个ToXXX的方法,其中ToArray和ToList,我想大家用的是非常非常多,但是ToDictionary和ToLookup不... 阅读全文
摘要:
在.net中我们知道有一个叫做WebHttpRequest的东西,用它我们可以实现各种网络偷窥,监控,采集和机器人,如果外加一个模式识别,那真是吊爆了。。。 在as中我们也可以实现同样的功能,而且我们可以配合js来做到跨域,采集cookie等等一些用户行为分析,也算是web开发中的一把利器。一:构建与外部程序的通信 1:一般要三个步骤 使用UrlRequest创建请求对象。 使用UrlLoader载入请求对象,然后就可以发出请求了。 监听UrlLoader对象,通过各种事件来反馈处理的结果。二:构建UrlRequest下面来看看UrlRequest中的常用属性1: url这个很简单了,... 阅读全文
摘要:
最近搞了个私活,需要用as去加载一个网站的xml,不过本人as也不咋滴,就去看看怎么玩,看完之后也蛮简单的。由于业务上比较复杂,就随便说个小例子吧。 很多时候,为了页面区域更加灵活,生动,有吸引力,或多或少的都要使用flash,如果flash不能与外界进行交换,那确实会大大限制的flash的功能,也就不好玩了,在很多网站上我们都能看到用flash来显示当前的在线用户数,或者用flash展现当前的用户参与数,或者滚动显示当前中奖名单。 由于是纯教学的,所以业务非常简单,动态显示当前的用户参与数,不过好玩的地方在于很多程序拿到一个基准的人数后,不再向服务器轮训状态,而是采用在flash上用随机.. 阅读全文
摘要:
昨晚在家看 “南洋十大邪术”,又发现徐锦江了,果然是在情色片中起家的,起兴处。。。被以前学校的一个小师弟抖屏搅了。。。悲剧!由于金三银四的好时期,小师弟也跑去找工作了,也就碰到了各种各样的面试题,然后也就引出了今天的这篇博文,就是:如何产生1-100之间的100个不重复的随机数,不过这里还好,在携程面试.net是没有笔试的:-) 如果这是你是第一次看到这个题目,也许你的想法有很多。1:首先从原始数组中随机选择一个数字,然后将该数字从数组中剔除,再随记选,再剔除,重复99次,就解决了。 我们知道从数组中剔除一个元素的复杂度为O(N),那么随机选取n个数字,它的复杂度就是O(N2)了。... 阅读全文