引子经常会有这样一种场景,就是在你想表达某种意思时,不能确定这个词是不是能正确的表达,而又没有别的选择时,你使用了这个不确定的词,并且最后发现这个词用错了。这时我们通常会产生一种羞耻感,而这种羞...
缘起通常我们配置好了Android的开发环境后都需要打入android命令启动SDK管理器,然后再点到AVD管理器中才能启动一个模拟器。或者我们在IDE里启动模拟器。这些都不算麻烦,但是偶尔我们...
由于众所周知的原因,我们的网络环境是相对受限的。这样导致我们无法获得足够的信息作出比较全面的价值判断。
背景而对于技术人员来讲,则是我们无法获得一手的资料,从而产生各种传播的错误。其中传播最为广...
废话React Native火遍大江南北,五湖四海。基于React的组件化思想,通过JS就可以轻松的制作出来界面精良,体验真实的移动应用,对于开发Web应用为主的广大js开发人员来说还是非常有吸...
前一阵子听说bower团队有意找维护人员,于是我就发了个申请。没几天就收到了bower的官方邀请,同意后就正式成为bower成员。虽然刚成为bower的维护人员,还没有太多权限,也还没有提交过代...
RESTful APIs存在的问题基于上次我们对良好API的设计的讨论,我们发现RESTful APIs存在一些问题:
以描述资源为主,而API的设计并非只是描述资源的
接口是无状态的,而实际...
对于如何设计好一个API,不同的人有不同的看法。但是不管怎样,我们还是可以找到一些基本的切入点的。
易理解性看到API很容易理解他是做什么的
易实现性通过各种语言都可以很容易的实现
稳定性对于...
1、微信消息处理
node-weixin-message
wechat
2、微信加密
node-weixin-crypto
wechat-crypto
3、微信支付
node-weix...
在微信支付开发的过程中,最困难的部分是对微信支付的调试。由于微信支付对支付域名与目录都有严格的要求,并且微信支付的测试域名基本上是没有用的,所以一般在本地调试微信支付基本不可能。
之后QQ浏览器...
随着移动设置的不断增加与占有人们的时间越来越多,移动应用与移动Web的技术已经显得越来越重要。我在这里梳理一下这些年来移动领域相关技术的发展,并分享一些我的观察,希望能帮助还没有做出决策的你更好...
REST的概念从提出到现在已经10年多了,它对互联网的企业级计算产生了非常重大的影响。
REST是从WDSL,SOAP等架构发展而来的,是目前企业级开发中使用最广泛的架构之一。
下面我们来考查一...
关于MVC,前后端,以及前后端分离,还有前后端同构的问题其实我已经分析的非常清楚了。但是为了能够让所有人更加系统的从各个角度理解他们之间的关系,我在这边再重新总结,并提合并成一篇文章。
理解所有...
MVC是一种很古老的软件架构模式。这种模式对于计算机刚出来时是一种比较完备或者比较适用的描述。
但是随着时间的流逝,软件变得越来越复杂,MVC这种结构就会看上去显得不准确。但是我们只要能基于巨人...
nodejs开发给开发者带来的最大的好处是丰富多彩的各种npm包。我们经常会很高兴某个包已经被其他的开发者开发完成,并且质量也很高,我们直接拿过来用就可以了。这也是很多开发者喜欢nodejs的原...
对于语言或者开发环境的比较总是让人乐此不彼的。我在这里呢通过数据比较Python与Nodejs,让更多的人可以更好的作出来自己的决策。从主观的角度来讲,我当然认为总体上Nodejs要优于Pyth...
Cookie与Session是所有Web开发中最基本的概念,是用户认识用户验证最基本的手段。自从RESTful的概念提出来之后,不断有人提出削弱Cookie与Session进行身份认识的作用。尽...
最近发现很多人提前后端分离, 搜索网络一看,发现原来淘宝系又是国内的始作俑者.我很赞赏阿里技术团队对中国技术圈所做的贡献,但是也很担心他们将一些错误的理念传达给更多的人.
我也在我的博客里批评过...
无论是在使用node还是在安装node时,都尽量避免安装成root/管理员权限。不管是在linux下面还是在windows下面。
原因有几点:
一般不要用root安装node,除非你知道自己在...
首先安装系统:
12sudo apt-get install libpangocairo-1.0-0 libcairo2-dev libgnomeui-dev libgstreamer0.10-...
年前由于ppk对前端的模板化进行了一定的批评,并认为Angular应该是一个面向企业开发的框架。但是由于包括我在内的很多人并不认可,所以跟国内一些人进行相应的讨论。而问的根源实际上在于如何界定...
对于任何的非系统软件的安装,本人都是比较推荐非root权限安装的。所以虽然ubuntu的apt包管理机制很方便,但是对于大部分软件,特别是开发软件最好还是通过源码安装,方便修改安装。下面是在Ub...
前阵子看了某里的开发人员写的书,上面写道有异步IO必有异步编程。这个说法让人心颤了一下。
难道没有异步IO就没有异步编程?有异步IO就必定是异步编程?细仔想想两者都是不对的。
对于没有异步IO...
浏览器兼容性的问题是一个相对比较复杂的问题,也是困扰了很多开发人员的常见问题。今天我准备从原理的角度分析一下,浏览器的兼容性问题到底有那些,应该如何解决。但是我不会特别具体的讲解浏览器的具体兼容...
通常对于手机网页来讲最难解决的问题是在不同手机上的显示很难统一的问题。即没有办法只设计一个页面来适配所有的手机终端。但是设计一个页面适配所有终端的目标对于很多网站开发者来说是很重要的。这也是我的...
通常对于inline-block元素,我们都不能在它们的中间放入空格,否则就会影响到相应的布局。但是当你将inline-block作为结构元素来布局时,通常是不希望空格影响到你的布局。这时你可以...
首先安装:
1yum install cairo cairo-devel cairomm-devel libjpeg-turbo-devel pango-devel
然后再
1npm insta...
1sudo apt-get remove fonts-arphic-ukai fonts-arphic-uming
nodejs的https请求如何不加以配置会出来很多错误。
下面是经过测试的一段nodejs发送HTTPS请求的代码,主要是要注意Options里的几个参数的内容。
12345678910111...
原文:http://socket.io/blog/introducing-socket-io-1-0/
Socket.IO的第一个版本在Node.JS出现的不久就出来了。我之前很长时间里都在寻找...
1、AMD比CMD更符合前端开发,为了实现所谓的CMD,在非node环境中增加exports变量,是一种不必要的负担。
2、前端的模块化更关注的应该是模块化开发,自动发布,自动打包,自动压缩,而...
因为eclipse的强大的功能,支持几乎所有的开发语言与环境,
最近越来越往eclipse平台上靠了。eclipse + emacs的按键模式可以产生很好的编辑效率。
但是eclipse这么强大...
javascript技术是最近几年最活跃的技术之一,不但创造了非常好用的nodejs,
还基于nodejs产生了一堆非常好用的包机制,类库,web框架,还有就是项目集成与管理工具。
本文要介绍的...
最近网上流行转载了一篇文章,用来表达12306系统架构有多复杂的。
里面引用了一些非技术数据用来强调自己的观点。
下面我以技术的角度,一步一步分析12306网站的用户规模与网站业务逻辑的情况,以...
最近做移动开发app的专题培训,并选择了phonegap与jqm作为主要的实例进行讲解。
原因是jqm功能丰富,社区强大,历史悠久,非常成熟。
phonegap也已经开源,有很长的历史,成熟很高...
使用Open shift hot deploy 加速应用的启动。代码如下:
12345$ cd applicationName/.openshift/markers$ touch hot_dep...
关于phonegap/cordova
1、将cordova.js放在所有js代码最前面
2、对于硬件事件与DOM事件分开去响应
3、从js的模板化道路
4、cordova变快非常快,并且经常会有...
原文:http://www.gajotres.net/top-7-mobile-application-html5-frameworks/
【一手痒,翻译了一下,原文错字有几处,已经在译文中已经...
由于我们伟大的防火墙的影响,Android的SDK下载总是存在问题,一般情况下,我们基于方法一就可以解决问题。
方法一、
1、通过在命令行或者eclipse开发环境打开Android SDK m...
DIV+CSS这个在国内流传了多年的说法,本身不全面,不正确,给人以误解,也违反了Web标准化与语义化的趋势与原则,但是到今天一直没有人站出来指明它的错误。所以为了更好的说明这是一个错误的提法,...
原文: http://java.dzone.com/articles/performance-comparison-between
Node.js和Java EE从CouchDB读取JSON数据...
献给所有跟我一样学习jquery mobile并在api里找不到合适的dialog使用办法的同仁们。
代码如下:
对于1.4.2新版本:
1234567891011121314151617181...
由于最近心血来潮,将PC的桌面OS从UBUNTU 13.04升级到了13.10的Beta。发现apache也从2.2.X升级到了2.4.X了。
从而导致我们的配置都失效了。
所有的虚拟主机的配置...
经典的洗牌问题。
一般来讲洗牌的牌都是固定的。
所以一开始可以顺序存放好各种牌。
然后取总牌总的一半的长度来执行随机交换。
交换掉前面的N/2个牌,基本上这个牌的随机性就已经可以了。
12345...
汉诺塔是一个比较经典的递归问题。由于其包含两层递归,所以相对来讲比较难理解。
同时一些书本上只给出来算法。并没有真正的可以运行并且包含数据处理的例子。
今天兴趣一来,就写了一个。
放在博客上,留...
快速排序是一种平均性能非常优秀的排序算法,在很多场合都会应用到他。
了解快速排序于对开放高效率的软件有很重要的作用。
但是有不少的书本讲得并不是很清楚,而且不同的教材的实现方式也不尽相同,
我这...
前端开发时经常需要判断是不是当前的值已经有Option了,如果有就将当前值的Option选中。
下面的代码就是让你如何找到值为val的option,并选中它。
1、如何判断是不是有当前值为val...
出于安全的考虑,很多时候服务器端的数据是不能生成HTML数据的。
所以我们要找到一个纯文本的方式来显示服务器的数据。
即HTML的代码最终显示的结果还是HTML文本,而不是HTML节点。
为了做...
最近使用Ubuntu是发现经常读硬盘,导致速度非常的慢的。搜索了一下发现在可以调整内存的交换设置来改善这种情况。代码如下,值可以是0~100,当我们把swappiness设置成0后,基本上就没有...
原文:
http://qing.blog.sina.com.cn/1687779391/6499783f33003s9u.html
解决bitbucket被封,无法pull,push的问题
昨晚...
如何在CI中创建干净的链接地址以方便SEO或者直接使用index.php方便在没有配置rewrite规则的机器上调试呢?
下面我介绍一下我通过实践找到的在apache下面的办法。
1、对于所有的...