技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 火丁笔记
    Martin Fowler在他所写的《企业应用架构模式》一书中感慨道:MVC已经成为我们最常误用的模式。人们之所以常常误用MVC,很大程度上是因为混淆了不同的MVC变体。 Classic MVC 大概上世纪七十年代,Trygve在Xerox PARC提出了MVC的概念,并应用在Smalltalk系统中,为了和其它类型的MVC加以区分,历史上习惯的称之为Classic MVC。 Model:封装领域数据及逻辑 View:查询领域数据并展现给用户 Conctroller:截获用户请求并改变领域数据 ...
    代码重构(Code refactoring)有时是很枯燥的,字符串替换之类的操作不仅乏味,而且还容易出错,好在有一些工具可用,以PHP为例,如:Rephactor,Scisr等等,不过现成的工具往往意味着不够灵活,所以今天我要说说Shell在代码重构中的应用。
    Javascript有很多有趣的用法,在Google Code Search里能找到不少,举一个例子: 试一下就知道这段代码的意思就是声明一个函数,然后立刻执行,因为Javascript中的变量作用域是基于函数的,所以这样可以避免变量污染,但这里的位运算符“~”乍一看让人摸不到头脑,如果去掉它再运行则会报错:SyntaxError。
    MySQL用户多半都有auto_increment情结,不过MongoDB缺省并没有实现,所以需要模拟一下,编程语言以PHP为例。
    假设我们正在运营一个手机相关的网站,用户可以通过指定若干参数(如操作系统,屏幕分辨率,摄像头像素等等)来筛选自己想要的手机。不过由于手机的参数多,且不同的手机其参数差异大,所以参数表结构通常是纵表(一个参数是一行),而不是横表(一个参数是一列),此时使用若干参数来取结果,通常就是把每个单独参数来取结果,再一起取交集。
    最近,国内主要门户网站相继开放了微博平台,对开发者而言这无疑是个利好消息,不过在实际使用中却发现平台质量良莠不齐,有很多不完善的地方,就拿PHP版SDK来说吧,多半都是用TwitterOAuth改的,一旦多平台集成,很容易出现命名冲突之类的问题。 既然官方SDK不给力,那我们只能发扬自力更生的革命精神了!好消息是PHP本身已经有了一个标准的OAuth实现:PECL OAuth!下面以此为例来讲解一下如何实现微博应用: 说明:首先需要对OAu...
    

唠叨了半天,听上去似乎有点跑题了,其实不然,对互联网从业者而言,同样需要有火眼金睛,以便识别网友的喜好,此时的衡量标准是点击,点击越多则表示越喜欢,此技术被称作Heatmap,已经有网站提供此类服务,如:clickdensity,clicktale,crazyegg等等,甚至还有类似clickheat项目提供源代码供你直接使用。

    缩略图是个很常用的功能。它的实现并不复杂,但如果原图是GIF动画的话,问题就会变得繁琐一点,下面通过一个取自CS警匪游戏的GIF动画来说明问题: 为了让问题更加清晰,我们先还原动画各帧: 选择一:用PHP中的Imagick模块: writeImage(\'old_\' . $i++ . \'.gif\'); } ?> 选择二:用ImageMagick提供的convert命令: shell&#...
    说起来umask是个很常见的命令,用于创建文件或目录时设置权限掩码,通常是0022: shell> umask 0022 注:0022等价于022,0022中第一个0用于sticky-bit,本文不做讨论,有兴趣的请自查。 为了稍后演示的方便性,先在Windows上用7-zip创建两个文件: foo.zip(包括:目录foo_dir,文件foo_file) bar.tar(包括:目录bar_dir,文件bar_file) 当然,你可以不用Windows,我之所以这样做,只是为了稍后抖个包袱而已。 把这两个文件...
    使用mysqlbinlog按时间查询二进制日志时,会用到start-datetime和stop-datetime选项。 提示:MySQL二进制日志的名称缺省是HOSTNAME-bin,不过推荐通过log-bin设置,以防止HOSTNAME更改所带来的影响。二进制日志的目录可以使用如下方法得到...
    据说有这么一个典故: 毛泽东说:三天不学习,赶不上刘少奇。 刘少奇说:一天不用功,赶不上毛泽东。 到底是老百姓作的打油诗,还是政客对的对联,早已无从考证。 … STOP!回到主题上来,正则是必须时常温习的知识,下面学习Grep,Sed中的正则。 问题:从一个文本文件里筛选出含有电话号码的行,电话号码是由七位或者八位阿拉伯数字组成(开头不是零),并且被单引号或者双引号包裹。 鉴于问题的需要,先杜撰一份数据: # cat /pa...
    有句话说得好:“选择最好的不一定是最好的选择!”。AutoMySQLBackup算不上出类拔萃,但作为轻量级MySQL备份方案,它值得尝试。 AutoMySQLBackup使用起来简单方便,属于快餐型工具,操作步骤如下: 下载AutoMySQLBackup,是一个名字类似automysqlbackup-VERSION.sh的shell脚本。 创建配置文件: mkdir /etc/automysqlbackup vi /etc/automysqlbackup/automysqlbackup.conf 配置文件的缺省内容就是shell脚本中“START CFG”和“END...
    本文对比Imagick和Gmagick的像素迭代功能: 数据生成代码 Imagick实现代码。比较而言,Imagick的实现更简单些,而Gmagick的实现因为没有PixelIterator的概念而稍显复杂。不过,Gmagick没有PixelIterator的概念并不是Bug,而是为了和GraphicsMagick Wand C API接口保持一致。
    

    我们前面描述的OAuth,被称为三条腿的OAuth(3-Legged OAuth),这也是OAuth的标准版本。这里所谓的“三条腿”,指的是授权过程中涉及前面提到的三种角色,也就是:消费方,服务提供者,用户。不过有些情况下,不需要用户的参与,此时就产生了一个变体,被称作两条腿的OAuth(2-Legged OAuth),一般来说,访问私有数据的应用需要三条腿的OAuth,访问公共数据的应用需要两条腿的OAuth。

    两条腿的OAuth和三条腿的OAuth相比,因为没有用户的参与,所以在流程中就不会涉及用户授权的环节,也就不需要使用Token,而主要是通过Consumer Key和Consumer Secret来完成签名的,此时的Consumer Key和Consumer Secret基本等价于账号和密码的作用。

[ 共74篇文章 ][ 第4页/共4页 ][ 1 ][ 2 ][ 3 ][ 4 ]
赞助商广告
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1