代码改变世界

ThreadHelper

2016-01-04 20:11 by 诺言, 540 阅读, 0 推荐, 收藏, 编辑
摘要:public class ThreadHelper{public static void RunSafeThread(Control ctrl, MethodInvoker invoker){if(ctrl != null && !ctrl.IsDisposed){try{if (ctrl.Invo... 阅读全文

WINFORM隐藏光标

2013-03-19 11:04 by 诺言, 402 阅读, 0 推荐, 收藏, 编辑
摘要:using System.Runtime.InteropServices;[DllImport("USER32", EntryPoint = "HideCaret")]private static extern bool HideCaret(IntPtr hWnd);//获得焦点事件时隐藏光标TB.GotFocus += new EventHandler(TB_GotFocus);void TB_GotFocus(object sender, EventArgs e){ HideCaret((sender as Control).Handle); } 阅读全文

Google Play最在意的10件事

2013-02-28 09:56 by 诺言, 426 阅读, 0 推荐, 收藏, 编辑
摘要:中国的第三方Android市场多如牛毛,发布一个产品需要多次提交,而且市场公正性也难以保障,有些市场不花钱,下载量再大也不会上榜。在国际市场上,几乎所有的下载量都来自于GooglePlay,它的推荐、排名相对公平,其生态公平、健康。 但是,为了保障生态系统的健康运转,GooglePlay也有设置了繁琐的规则,让国内开发者头痛不已。经常有同行会抱怨,应用刚提交就被下架了。其实,这些都是对GooglePlay运营规则不够了解,以及对国外文化上理解的偏差所导致的。凭借GO系列应用这两年来在海外市场推广所积累的经验,我特别总结了“GooglePlay最在意的10件事”,包括了开发者非常容易触及的... 阅读全文

批量清除BOM(PHP文件头的空白行)

2013-01-15 16:42 by 诺言, 240 阅读, 0 推荐, 收藏, 编辑
摘要:BOM: Byte Order MarkUTF-8 BOM又叫UTF-8 签名,其实UTF-8 的BOM对UFT-8没有作用,是为了支援UTF-16,UTF-32才加上的BOM,BOM签名的意思就是告诉编辑器当前文件采用何种编码,方便编辑器识别,但是BOM虽然在编辑器中不显示,但是会产生输出,就像多了一个空行.类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM)PHP的生成图片函数(imagepng(),imagegif(),imagewbmp(),imagejpeg()和imagetypes 阅读全文

微型ORM推荐

2012-12-20 10:39 by 诺言, 776 阅读, 0 推荐, 收藏, 编辑
摘要:复杂逻辑的方法事务通常不建议使用ORM,简单适用的才是王道。Dapper高效率,缺少直接更新、插入对象的方法,需要手动写SQL语句,也有第三方扩展(Dapper-Extensions)。ServiceStack.OrmLiteServiceStack是一个REST ful架构的整套项目,ServiceStack.OrmLite也是高效的ORM,操作方法也很多很完整。PetaPoco项目灵感来源自Massive,但使用非动态对象的方式,更加直观。Massive非常简单好用,主要以动态对象的方式操作数据库。由于是动态对象,所以有哪些属性都不知道,适合知道数据库结构的小型项目。Simple.Data 阅读全文

百万级访问网站前期的技术准备(下)

2012-02-17 15:20 by 诺言, 237 阅读, 0 推荐, 收藏, 编辑
摘要:转载自:http://zhiyi.us/internet/thinking-twice-before-building-your-site-final.html这一系列的最后一篇写给普通编程人员,如果不感兴趣可直接看本文最后几段。开始设计代码结构之前,先回顾一下之前准备过的事情:我们有负载均衡的WEB服务器,有主从DB服务器并可能分片,有缓存,有可扩展的存储。在组织代码的各个方面,跟这些准备息息相关,我一二三的列出来分别说,并且每一条都以“前面讲到”这个经典句式开头,为了方便对照。前面讲到,WEB服务器是要做负载均衡的,图片服务器是要分开的。对于这点,代码在处理客户端状态时,不要把状态放到单机 阅读全文

百万级访问网站前期的技术准备(中)

2012-02-17 15:19 by 诺言, 208 阅读, 0 推荐, 收藏, 编辑
摘要:转载自:http://zhiyi.us/internet/thinking-twice-before-building-your-site-two.html七、数据库几乎所有操作最后都要落到数据库身上,它又最难扩展(存储也挺难)。对于mysql,什么样的表用myisam,什么样的表用innodb,在开发之前要确定。复制策略、分片策略,也要确定。表引擎方面,一般,更新不多、不需要事务的表可以用myisam,需要行锁定、事务支持的,用innodb。myisam的锁表不一定是性能低下的根源,innodb也不一定全是行锁,具体细节要多看相关的文档,熟悉了引擎特性才能用的更好。现代WEB应用越来越复杂了 阅读全文

百万级访问网站前期的技术准备(上)

2012-02-17 15:12 by 诺言, 203 阅读, 0 推荐, 收藏, 编辑
摘要:转载自:http://zhiyi.us/internet/thinking-twice-before-building-your-site-one.html笔者作为一个技术从业者十年,逛了十年发现有些知识东一榔头西一棒槌的得满世界看个遍才整理出个头绪,那咱就系统点的从头一步一步的说,一个从日几千访问的小小网站,到日访问一两百万的小网站,怎么才能让它平滑的度过这个阶段,别在技术上出现先天不足,写给一些技术人员,也写给不懂技术的创业者。对互联网有了解的人都有自己的想法,有人就把想法付诸实现,做个网站然后开始运营。其实从纯网站技术上来说,因为开源模式的发展,现在建一个小网站已经很简单也很便宜。当访问 阅读全文

删除数据库中重复的记录

2012-01-04 12:30 by 诺言, 214 阅读, 0 推荐, 收藏, 编辑
摘要:查找所有唯一的记录,删除其他记录。 最常用的 T-SQL 语句:DELETE FROM [dbo].[myTable] WHERE 主键 NOT IN (SELECT MAX(主键) From [dbo].[myTable] GROUP BY 列1, 列2, 列3) 列1,列2,列3为需要去重复的列。 阅读全文