摘要:
同事搓蛋问了我一个问题,mock的原理是啥,没怎么想出来,于是花了点时间学习了一下。 从Moq这个库入手:https://github.com/moq/moq4 Moq用到了Castle的库用于DynamicProxy的生成和interception,Castle还有IOC的功能,因为每次生成Dyn 阅读全文
摘要:
最近在试探性地跟随微软最新发布的一些产品,现列下某些挺好的文章和链接code.visualstudio.comhttp://blogs.msdn.com/b/cesardelatorre/archive/2014/11/18/what-is-net-core-5-and-asp-net-5-with... 阅读全文
摘要:
Rx提供了一种新的组织和协调异步事件的方式,极大的简化了代码的编写。Rx最显著的特性是使用可观察集合(Observable Collection)来达到集成异步(composing asynchronous)和基于事件(event-based)的编程的效果。我的理解是它是一种编程模式的抽象,http... 阅读全文
摘要:
using (var ts = new TransactionScope()){ string connStr = "Data Source=.;Initial Catalog=Test;Integrated Security=true;"; using (SqlConnection c... 阅读全文
摘要:
本文翻译CodeProject(链接)上的一篇文章,文章对JSON的概念以及它在微软一些技术中的应用起到了非常好的扫盲作用,总结得非常好,适合初学者。目录介绍什么是JavaScript对象?实验一:理解JavaScript对象实验二:JavaScript对象数组什么是XML以及为什么使用XML?什么... 阅读全文
摘要:
通常可以通过xslt把一个xml转成htmlcd.xml Boys for Pele Tori Amos Horses 3.5 Blood roses 3.2 ... 阅读全文
摘要:
Memcached是什么?Memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度。Memcached能缓存什么?通过在内存里维护一个统一的巨大的hash表,Memcached能够用来存储各种格式的数据,包括图像... 阅读全文
摘要:
NamespacesIn most programming languages we know the concept of namespaces (or packages).Namespaces allow us to group code and help us to avoid name-co... 阅读全文
摘要:
System.Threading.Thread t=null;string message = "I'm cookie and " + t == null ? "You're nicky" : "";请问最后message是啥?看仔细奥!给出一个运算符优先级表吧。优先级运算符名称或含义使用形式结合方... 阅读全文
摘要:
阅读目录:一.为什么是它们三个二. 能够任意赋值的原因三. dynamic的用法四. 使用dynamic的注意事项一. 为什么是它们三个?拿这三者比较的原因是它们在使用的时候非常相似。你可以用它们声明的变量赋任何类型的值。看看下面的示例:var a = 1;object b = 1;dynamic ... 阅读全文
摘要:
Using() Statement in 3 seconds and a bug in Reflector The boring, known accross the board definition from the MSDN site: Defines a scope, outside of w... 阅读全文
摘要:
最近在做异步上传文件的工作,用到了一些库,这里归纳下,暂且不考虑异常处理,仅作为demo。1.不用任何插件,利用iframe,将form的taget设为iframe的name,注意设为iframe的id是没用的,跟网上很多说的不太一致iframe_upload.htm ... 阅读全文
摘要:
Jquery官网上两个each用法:http://api.jquery.com/jQuery.each/http://api.jquery.com/each/使用时注意点 Untitled Page 阅读全文
摘要:
CRM2011对删除和添加操作会自动做判断,比如A打开纪录x,B也打开纪录x,然后B删除了纪录x,A去更新的话就会有提示。更新的话是后者覆盖前者,比如A打开纪录x,B打开纪录x,然后B把记录x中的字段y更新成了3,然后点保存,A把字段y更新成了5保存,最后5会覆盖3。这篇日志解决的问题就是当A改成5... 阅读全文
摘要:
在上一篇文章中我提到如何在Android手机上建立Windows共享服务器,现在来说说一个反向的问题,就是,如何在Android手机上访问Windows计算机中的共享资源,当然,前提也是需要软件,这里和大家分享的软件名称叫:AndSMB,它是一款免费的应用,你可以在这里下载得到:Samba Clie... 阅读全文
摘要:
大家都有这样的经历,通过我的电脑或网上邻居访问另一台计算机上的共享资源,虽然电脑和手机之间可以有多种数据传输方式,但通过Windows SMB方式进行共享估计使用的人并不是太多,下面我就简单介绍一下,如何在Android上建立一个与计算机相同的共享方式,在Linux中,我们称之为Samba,使用的是... 阅读全文
摘要:
SQL Server 2005后之后,引入了row_number()函数,row_number()函数的分组排序功能使这种操作变得非常简单分组取TOP数据是T-SQL中的常用查询, 如学生信息管理系统中取出每个学科前3名的学生。这种查询在SQL Server 2005之前,写起来很繁琐,需要用到临时... 阅读全文
摘要:
对象检测语句:var W3CDOM = document.getElementsByTagName && document.createElement为了执行运算符&&,两个对象被解释成为布尔型,你可能认为W3CDOM变成了一个布尔值,但事实不是这样,事实是返回最后一次被求值的表达式的值。如果用alert查看alert(W3CDOM),弹出的提醒框显示的是function createElement(){[native code]}利用&&和||的怪异特性大多数浏览器保存事件目标在evt.target中,但IE是evt.srcElement.因此 阅读全文
摘要:
转一篇当图片源大小大于ImageView大小定死时的处理方法,但不适用于图片大小小于ImageView时的情况,因为inSampleSize不能 dstAspect) {finalintsrcRectWidth = (int)(srcHeight * dstAspect);finalintsrcRectLeft = (srcWidth - srcRectWidth) / 2;returnnewRect(srcRectLeft, 0, srcRectLeft + srcRectWidth, srcHeight);} else{finalintsrcRectHeight = (int)(srcWi 阅读全文
摘要:
从早期G1的192MB RAM开始,到现在动辄1G -2G RAM的设备,为单个App分配的内存从16MB到48MB甚至更多,但OOM从不曾离我们远去。这是因为大部分App中图片内容占据了50%甚至75%以上,而App内容的极大丰富,所需的图片越来越多,屏幕尺寸也越来越大分辨率也越来越高,所需的图片的大小也跟着往上涨,这在大屏手机和平板上尤其明显。而且还经常要兼容低版本的设备。所以Android的内存管理显得极为重要。在这里我们主要讲两件事情:1.Gingerbread和Honeycomb中的一些影响你使用内存的变化-heap size-GC-bitmaps2.理解heap的用途分配-logs 阅读全文
摘要:
CSS3 continues to both excite and frustrate web designers and developers. We are excited about the possibilities that CSS3 brings, and the problems it will solve, but also frustrated by the lack of support in Internet Explorer 8. This article will demonstrate a technique that uses part of CSS3 that 阅读全文
摘要:
红色部分为自己的实践理解如何实现将View向上平移自身高度一半的距离?TranslateAnimation translate = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0,Animation.RELATIVE_TO_SELF, 0, Animation.RELATIVE_TO_SELF, 0.5f);mView.startAnimation(translate);问题:当动画结束后,View会跳回到原始位置。改进:AnimationSet set = new Anim 阅读全文
摘要:
先看下LinkedHashMap的数据结构图对于LinkedHashMap而言,它继承与HashMap、底层使用哈希表与双向链表来保存所有元素。其基本操作与父类HashMap相似,它通过重写父类相关的方法,来实现自己的链接列表特性。根据链表中元素的顺序可以分为:按插入顺序的链表,和按访问顺序(调用get方法)的链表。LinkedHashMap采用的hash算法和HashMap相同,但是它重新定义了数组中保存的元素Entry,该Entry除了保存当前对象的引用外,还保存了其上一个元素before和下一个元素after的引用,从而在哈希表的基础上又构成了双向链接列表。LinkedHashMap定义 阅读全文
摘要:
因为国内被墙,看起来不方便,转载下,原文地址:http://android-developers.blogspot.com/2010/07/multithreading-for-performance.htmlMultithreading For Performance[This post is by Gilles Debunne, an engineer in the Android group who loves to get multitasked. — Tim Bray]A good practice in creating responsive applications is to 阅读全文
摘要:
1、何为9-patch?NinePatch图片以*.9.png结尾,和普通图片(png图片)的区别是四周多了一个边框(如下图所示):采用NinePatch图片做背景,可使背景随着内容的拉伸(缩小)而拉伸(缩小)。---在Android中,对于不同的分辨率,图片显示就不会变形了上下左右的四条黑线表示如下:1、左边和上边的交叉区表示可扩展区域;右边和下边的交叉区表示文字显示区域2、左边和上边的黑线必须有(否则,工程会报错的);右边和下边的黑线可无,或者只有一个3、当右边和下边的黑线都没有的时候,左边和上边的交叉区不仅仅表示该区域可扩展,也表示该区域是文字显示区域4、当右边或者下边的黑线没有时,显示 阅读全文
摘要:
http://blog.alipay.com/查看源代码 阅读全文
摘要:
目前市面上二维码的扫描似乎用开源google的zxing比较多,接下去以2.2版本做一个简析吧,勿喷。。。下载下来后定位两个文件夹,core和android,core是一些核心的库,android是针对android的一些代码。我们先看核心库,在package com.google.zxing中的一些生成二维码的类关系接口Writer里面有两个encode的重载函数,不同的格式的二维码有各自的类实现了Writer接口,MultiformatWriter类比较特殊,根据代码的注释可见其其实是个工厂类,根据BarcodeFormat实例化不同的Writer,然后最终调用各自的Encode.enco 阅读全文
摘要:
开学第一天一般都挺认真的,认真做个功课。跟据Ryan Tang的推荐,有两个比较好的学习Git的网站:http://git.gitcafe.com/book/zh还有一个是CodeSchool的一个Git学习和模拟操作的,可以去体验一下:http://try.github.io/ , 这个做了下有点感觉。完成后发现这个网站还有其他很多教程以后的话可以将一些平时积累的代码放到github,也算对自己的一个交代吧:)大家也可以找找在windows上使用git/github的资源,在自己的windows上配置一下。我之前找到过一篇:http://www.cnblogs.com/dabaopku/ar 阅读全文
摘要:
如果光是透明全屏的Activity的话,直接继承内置theme即可然后这里需要渐变的效果,就需要自己写drawable文件了,在drawable文件夹下创建一个xml文件 然后在values/styles.xml中自定义一个theme然后在Manifest中将这个theme运用到activity上 阅读全文
摘要:
在一般的软件开发中,子线程中是不能更改UI主线程中创建的UI控件的。之前的理解是Toast也不能在子线程中创建。事实上并不是这样子的。@Overrideprotected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); new Thread(new Runnable(){ @Override public void run() { // T... 阅读全文
摘要:
我也是参考下面两篇很有价值的文档,然后做一个总结的:http://blog.csdn.net/hitlion2008/article/details/7983449http://blog.csdn.net/mylzc/article/details/6784415最近主管让我看一下某个性能方面的问题,场景类似于一个weibo页,外层weibo列表加载很多图片并不是很卡,但是进入单个weibo,评论列表里面滑动有时就会卡顿。缓存方面原本已经做好,那究竟是为什么呢?想到的主要原因:列表页同一时间相对图片需要下载的并不是很多,评论页的话都是小图片,屏幕里可见区域里需要下载的图片较多,所以会卡顿。找了 阅读全文
摘要:
最近做一个分享功能,需要使用微信SDK分享内容给朋友或朋友圈。期间遇到些奇怪的问题,花了点时间去折腾了一番。首先需要到微信开放平台http://open.weixin.qq.com/?lang=zh_CN登记自己的app。一个账号最多可以登记10个App。有时会发现登陆不了,说什么资源未下载完成,这是浏览器禁用了某些脚本。1.会自动产生一个APPID和APPKEY,该填的资料都要填上,28*28,108*108的图标也要上传,他会出现在分享的对话框里。2.如果是Android移动应用的话,必须填上下载地址,应用签名,包名。根据之后的尝试猜想包名应该是为那个接受回调的Activity(WXEnt 阅读全文
摘要:
MobileProbe是CNZZ移动这块统计的一个产品,目前似乎分成了基础版和专业版.下载地址为: http://m.cnzz.com/?a=main&m=download&f=info&t=download_android_sdk搜索引擎出来的第一个网页一般是http://mobile.cnzz.com/help.php?h=Android_SDK_Download_and_Usage_Manual#,但似乎下载有问题,而且此文档针对专业版而言的我感觉.基础版和专业版的通用配置项 此项设置后debug模式能很快才统计页面反映出来将 SDK包(MobileProbe-b 阅读全文
摘要:
闭包总是搞不太懂,而且网上各说风云,还是先参考Javascript高级程序设计第三版里的定义来理解吧。定义:闭包是指有权访问另一个函数作用域中的变量 的 函数Javascript中具体是通过作用域链来实现闭包的,具体大家可以参考其它文章,我目前也是一知半解,而且即使当前看懂了,但看过就忘了。。。脑子搓没办法。接下来我用C#做个简单的理解,仅算是抛砖引玉吧。 1 public delegate bool Compare(Person p1, Person p2); 2 class Program 3 { 4 static void Main(string[] ar... 阅读全文
摘要:
项目中某些过滤条件需要persist,故可以放入Cookie中来实现。一般都没啥问题。但是项目里有些人名是德文的,populate的时候就出现问题了。存的时候:Biesenbach, Frank-Germany-Düsseldorf来的时候:Biesenbach, Frank-Germany-Düsseldorf显然是cookie编码的问题。解决方案是:1.确认webconifg中全局设置是否正确<globalization requestEncoding="utf-8" responseEncoding="utf-8&quo 阅读全文
摘要:
Android的Looper只允许一个线程中有且只有一个Looper,具体实现使用了ThreadLocal来达到这个目的,如果要在新的线程中进行消息传递,则必须调用Looper的静态方法prepare()public class Looper { // 每个线程中的Looper对象其实是一个ThreadLocal,即线程本地存储(TLS)对象 private static final ThreadLocal sThreadLocal = new ThreadLocal(); // Looper内的消息队列 final MessageQueue mQueue; //... 阅读全文
摘要:
之前没出现过任何问题,今天打开eclipse后,就始终停留在开始界面,停留在Loading workbench状态,重启系统也没用。于是google了下。转载下原文:做开发的同学们或多或少的都会遇到eclipse启动到一定程度时,就进入灰色无响应状态再也不动了。启动画面始终停留在Loading workbench状态。反复重启,状态依旧。 多数情况下,应该是非正常关闭eclipse工作区的文件状态错误所导致的。 在工作区目录中,有一个.metadata目录,里面是工作区及各插件的信息,删除此目录,再重启eclipse,果然可以正常启动eclipse了,但原来工作区的配置和项目信息也都消... 阅读全文
摘要:
今天参加了海丁网和博客园合办的Jeffrey Richter的讲座,颇感兴奋,JR讲授了windows 8 app的各种特性,以及.net4.5中新加入的I/O异步编程模型。休息间隙,很荣幸的获得了JR的签名和留影纪念。希望今后能有更多的机会参与到这类的活动。在此感谢海丁网和博客园了。唯一比较郁闷的就是来回需要4个小时,有点太远了。不过还是很期待今后能有机会在创智天地工作的。哈哈,最后鼓起勇气跟dudu打了个招呼,之前只看过dudu头像,还好没认错,dudu还是很和善啊,呵呵,做IT的都不知道怎么打招呼,最后纠结了一番给了dudu我的名片一张。dudu可别忘了我哈。 阅读全文
摘要:
对于大牛们看到这篇文章千万别喷我哈。首先我想说最好不要在ASP.NET中用Response.Write()输出一段文字或者类似alert的东西,因为它会把内容放在body之外,html最上面,破坏了整个html。可以用ClientScriptManager的方法来实现这个功能。其次想说aspnet中Response.Write的实现方式,可能不一定正确,我是这么理解的。先看段代码<html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <title> 阅读全文
摘要:
如何为我们自己的包含非托管资源的类型编写资源管理代码呢?在 .NET 中为我们提供了一种标准的销毁非托管资源的模式,这个标准的模式能够使使用者通过调用IDisposable接口正常释放掉非托管资源,也能够保证使用者在忘记释放资源时使用终结器释放。这个标准模式可以和GC配合,保证仅在最糟糕的情况下才调用终结器,尽可能的降低其带来的性能影响。阅读目录: 1.实现IDisposable接口 1.1 资源释放的标准模式 2.提供终结器 2.1 析构函数 小节 参考阅读&进一步阅读1.实现IDisposable接口 实现IDisposable接口是一种标准的... 阅读全文