Vim 使用技巧之只有用了才会懂“最好的 IDE 是 Vim”

半年前,我还在诸如 Eclipse、ZendStudio 等 IDE 里徘徊。然而,这半年对于 Vim 的使用,不得不说,Vim 的效率是更高的。代价是需要时间来自定义并熟悉自己的 Vim。这里,只写下迄今为止对于 Vim + Tmux 的使用感受,以及展示 Vim 的使用技巧(至于如何入门 Vim 请自行 Google)。为什么要用 Vim?随时随地,摆脱环境的束缚,你只需要一个终端(Terminal)。你不必在键盘和鼠标之前来回切换(我压根就觉得鼠标是不服务于“编码工作”的产品),所有的操作都在指尖下的按键。高程度的自定义,所以不要来拷贝他人的配置文件,很伤。其他 IDE 中的功能在 Vim 里基本能找到替代品,幸福指数飙升耳听十遍,不如亲眼一见winmanager, ftaglist, neardtree, bufexplorer和tmux等的应用ctrlp的应用Vim 使用技巧看... Read More

关于“如何开发 PHP 扩展”的学习小结

近期,工作上的业务并不是很忙。做了大半年的业务逻辑,尽管在 PHP 编码习惯和技巧上有所进步,初步熟悉了在高并发下 Redis 和 Memcache 缓存的使用和注意事项。但,应该借此闲暇时间探索下 PHP 底层的一些原理。这样,才是会有质的提升,写出更好的代码。正如那句话“PHP 取得成功的一个主要原因之一是她拥有大量的可用扩展”,那就从 PHP 扩展入手了解下。在此之前,大家肯定都了解“PHP 是 C 写的”。于是打开了 PHP 的源码,列出跟目录列表如下图PHP(5.6.4)跟目录列表看到了熟悉的以后缀 .c 结尾的源文件。如图,有个名为“Zend”的文件夹很重要,这个就是 PHP 的核心。于是在网上搜到了两个若干 PHP 扩展的教程http://www.laruence.com/2009/04/28/719.htmlhttp://www.walu.cc/phpboo起初,耐心... Read More

关于 rsync 工具的安装、配置与进行文件同步与备份的使用流程

安装linux yum install rsyn配置编辑文件vim /etc/xinetd.d/rsyn内容如下# default: of# description: The rsync server is a good addition to an ftp server, as it # allows crc checksumming etc.service rsyndisable = nflags = IPvsocket_type = streawait = nuser = rooserver = /usr/bin/rsynserver_args = --daemolog_on_failure += USERI创建配置文件touch /etc/rsyncd.con... Read More

[开发中] Java 实现仿 QQ 界面多人聊天客户端程序

记得几年前,在校期间写过一个聊天程序,也发布了一篇博客在 csdn 上。然而,近期有好多网友加我 QQ 索要源码,可惜的是源码早已消失在网络中了。所以,借此闲暇时间重写一次 Java 多人聊天客户端程序,以供爱好者学习交流之用。如下是每日程序的进展日志。项目源码客户端 ->github.com/genialx/Ch服务端 ->github.com/genialx/ChatXServe前面的话对于 Java,笔者算是新手,没有用 Java 做过实际的项目。所以,在做这个项目的过程中,进行了大量的调研工作,有很多问题都无法短时间内解决。固然,项目中的代码是很糟糕的。不过,有时间会进行深入的学习来优化项目甚至重构代码。进展日志2016.02.1项目不是起于今日,目前已经完成了客户端的登陆界面,正在着手完善朋友列表的界面。登陆界面朋友列表遇到的一些不是问题的问题...容器组件半透明的问题... Read More

GO 语言实现的多人 WEB 聊天室

前段时间的工作,大部分都在“热门微博推荐流”的性能优化上。前期通过源码分析对源码的逻辑进行了优化,其中可优化的地方大多都是落在了 Redis 的多次调用、外部接口的调用以及自身过多的 IO 操作。近期,提出利用 GO 语言做一层 RPC 服务,将较数据层进行封装。所以,为了尽快熟悉并上手 GO,先写个小程序熟悉熟悉程序名称:聊天室源码地址:http://github.com/genialx/gurin截图程序中固然存在不合理的地方,仅供参考 Read More