随笔分类 - Programming
Enjoy programming.
    
摘要:通常对一幅图片的处理包括:格式变换,缩放(Scale),翻转(Rotate),截取(Clip),滤镜(Filter,如高斯模糊)等。 1,图片格式转换 .NET中的Image类是对图片对象的封装,我们可以通过操作Image类的实例来处理图片。通常我们有两种式可以得到Image实例: var imgPng = Image.FromFile(@"C:\temp\img\pp.png");byte...
        阅读全文
            
摘要:在.NET下面画图需要用到System.Drawing命名空间,这个命名空间基本上是对GDI+(Graphic Devices Inteface plus)的封装。我们来看看怎么使用.NET画图。 1,先创建一个画布(Graphics) GDI+是对显示器/打印机的图形输出设备的包装,通过GDI+我可以使用抽象语言输出图形,而不考虑硬件的驱动等细节。要画图先要有画布(其实是个输出设备),...
        阅读全文
            
摘要:最初让我体会递归的就Joe的《Programming Erlang》,随着对计算(computing)的理解,对递归的体会也会有所不同。这里我记录下我的理解过程。 1,理解递归 递归是需要List这种结构的,这也是为什么Lisp本身就是LISt Processor表缩写。数据是表,那么我们可以一个个地处理表中的每个元素。处理方式也颇为简单: 1,解决空表的特殊情况。 2,处理头元...
        阅读全文
            
摘要:我们在学计算机基础时就讲到了,在计算机中负数是用补码表示的,但为什么呢?即使做了6年程序员,我仍然不知道,直到我看了《哈佛大学公开课:计算机科学cs50》。通俗点讲来,使用补码是因为: 计算机中统一加法和减法,使得类似于(-5)+(5)最终可以得到0。 比如我们用8bit来表示数字,那么(-5)和(+5)分别表示为: 0000,0101 1111,1011 我们采用计...
        阅读全文
            
摘要:以下是笔记和自己理解,不一定正确。 JavaScript的作用域主要有以下特征: 1,词法作用域(Lexical Scope)和函数作用域(Function Scope & Local Scope)。这是JavaScript的静态的特征,很多问题都是由此引起的。我的理解Hoisting也是由此造成。 2,作用域链(Scope Chain)和执行上下文(Execution Context)...
        阅读全文
            
摘要:今天看到园子里的一篇文章,进的是变量名的重名问题,我们直接来看代码: var a;function a() { }alert(typeof a);这里alert的结果是function。但如果我将代码改一行,声明之后立即assign a value:var a=1; // 注意变化,声明后立即赋值function a() {}alert(typeof a);这时输出的却是numbe...
        阅读全文
            
摘要:1,模版替换(跟Crockford学的) var template = '<table border="{ border }">' + '<tr><th>Last</th><td>{ last } </td></tr>' + '<tr><th>First</th><td>{ first }</td></tr>' + '</table>'var d
        阅读全文
            
摘要:1,解决上篇的问题先 前面一篇文章,我发了一堆的牢骚,想来也是很愚蠢的,只是被JavaScript搞的头疼,不爽而已。像许多东西你不懂的时候以为他是屎,当你懂了时候才知道他是宝。 书也是读第二遍的时候才能懂,08年能就读了爱民的《JavaScript语言精髓与编程实践》,而且也通读了语言精髓的部分,而且还和他通邮件聊了一点。不过当前我也没有读懂,我在书上有所记录。 现在看来Crockfo...
        阅读全文
            
摘要:想当年搞C++的面向对象时,很多问题只要花一些时间就可以搞定,想的很清楚明白。可是最近搞JavaScript好多问题搞不清楚,会用却搞不清楚很让人不爽。 function Shape(){ this.area = function(){};}function Point(){ this.x = 0; this.y = 0;}var p = new Point;console.log(p.p...
        阅读全文
            
摘要:下面内容摘抄自《JavaScript内核》。 在Java或者C/C++等语言中,方法(函数)只能依附于对象而存在,不是独立的。而在JavaScript中,函数也是一种对象,并非其他任何对象的一部分,理解这一点尤为重要,特别是对理解函数式的JavaScript非常有用,在函数式编程语言中,函数被认为是一等的。 函数的上下文是可以变化的,因此,函数内的this也是可以变化的,函数可以作为...
        阅读全文
            
摘要:下面是摘抄自《JavaScript内核》这本书的。 在JavaScript中,在所有函数体之外声明的变量为全局变量,而在函数体内声明的变量(通过var关键字)为局部变量。事实上,全局变量是全局对象的属性而已,比如在客户端的JavaScript中,我们声明的变量其实是window对象的属性,如此而已。 那么,局部变量又隶属于什么对象呢?就是我们要讨论的调用对象。在执行一个函数时,函数...
        阅读全文
            
摘要:以下内容是我看《Javascript内核》这本书学到的。 1,Javascript变量作用域为(整个)函数体内有效,没有块作用域。 2,Javascript的函数是在局部作用域内运行的,在局部作用域运行的函数体可以访问其外层的变量和函数。 3,Javascript的作用域为词法作用域。词法作用域是指:其作用域在定义时(词法分析时)就确定下来的,而并非在执行时确定。 作者有一个极好的例...
        阅读全文
            
摘要:1, Select the revision that you want merge to the trunk a, show revisions b,select the revision that you want to merge 2,select the trunk as destination 3,commit in trunk code base to ...
        阅读全文
            
摘要:当我们谈到继承,我们通常会分开为接口继承和实现继承。如果是单继承,无论是实现继承还是接口继承,都容易理解和使用。即便如此,在C++的著作中,还是提到当我们在继承一个类的时候,不仅仅要想到继承了实现,还要想到一并继承了接口。 多继承更是复杂,很容易走到菱形继承这样一个怪圈。在C#中,只有接口的多继承,并没有实现的多继承——我们不可以指定两个或两个以后的类作为父类。 Ruby中的Mix...
        阅读全文
            
摘要:有关数字签名与加密解密的文章我看了许多次,基于这样的事实——我总是说服不了自己,所以每次看都看不明白,说服不了自己。最近在看OAuth的相关东西,数字签名与加密解密是绕不开了,干脆静下心来,看看资料,尝试着将自己说服. 1,加密解密基础 简单地讲,计算机加密无非是,用密钥K,对明文P加密,得到密文M: K(P) = M 解密就是将这个过程反过来: K(M) = P ...
        阅读全文
            
摘要:Talking About Test I hate the unit test to some extent, since I think unit test is a kind of duplication. We all know “Don’t Repeat Yourself”, but test definitely duplicated with production code. Thin...
        阅读全文
            
摘要:It’s very common to create unique id in our application, like as order identifier,user identifier.etc. There are also many ways to generate the unique id in C#. The simplest approach is generating GUI...
        阅读全文
            
摘要:1,HTML Specification In HTML specification, a section of [form submission] dedicated to explain which data should be post to the sever when submitting a form. User agent(such as Chrome, IE) which comp...
        阅读全文
            
摘要:0:004> !threads ********************************************************************* * Symbols can not be loaded because symbol path is not initialized. * * * * The Symbol Path can be set by: * * usi...
        阅读全文
            
摘要:1,准备工作 很多播放器都使用了ffmpeg这个类库来编解码,使用没有关系,但总是有些人不守规则。在耻辱榜上我看到了腾讯(QQPlayer),还有另一家深圳的公司。 我对GPL协议也不太了解,issue tracker中显示QQPlayer需要提供完整项目代码。我的疑问是: 如果是QQPlayer。其中集成了QQ的一些登陆模块,但这些代码不方便公开。但Player相关的代码已经公开。这样违反GPL...
        阅读全文
            
 
                     
                    
                 
                    
                 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号