music unfamous original game design efficient software wtf
life ui algorithm fix programming

Golang Web 从头开发 P1-概论 818

   2016-12-20  标签:  programming 

Golang的优势 在Quaro上看到一个问题,里面谈到 Golang 在中国大陆拥有极大的粉丝群体.这是一个值得令人欣慰的事实.想想大陆程序员的竞争压力从而对新技术骨折似的敏感态度,是很容易理解的.另外 Python 已成功的让一部分程序员减少了加班时间,Golang 则可能会带来其他新机遇;云计算,虚拟化已提前占领了未来十年的趋势以及大陆程序员对于彼岸 Google 公司的神圣态度,一切都是这么的容易理解. 其实,PHP,Python程序员使用Golang的感受和C程序员是有相当明显的差异的.Google 宣称的"Golang是更好的C"已经昭示了这一点.从之前我的一篇文章是...


《为什么Go是一种设计糟糕的编程语言》之浅见 1040

   2016-12-1  标签:  programming 

在网上闲逛,发现这篇文章《为什么Go是一种设计糟糕的编程语言》 是一篇翻译来的文章,原文也没去看,主要代码就在那放着。显然,这是一个 Golang 的拥趸在搔首弄姿。发了自己调试 Bug 的牢骚,而且赚赚眼球,隔空叫喊 Rob Pike,Rob Pike 说了,对我喊话的多了,你算老节? 下面针对该文原作者提出的几个糟点发表一点看法 1,Slice 操作不对 作者在进行插入操作,其实我们知道 Slice 在底层是 Array,Array 在底层高度类似 C 的数组,这种类型的插入每一次都会移动元素,恶劣的会重新申请内存,然后移动元素。插入一个元素的空间复杂...


Golang 标准包 flag 使用简单实例 1035

   2016-8-7  标签:  programming 

最近用到命令行参数,godoc flag 看了一下,和C++ 库 POCO 的处理方式很像,连结构体命名都很相似。做了个Demo,简单到令人发指: package main import ( "flag" "fmt" ) var supported_commands = [...]string{"ip", "port", "auto"} func init() { flag.Int("port", 8080, "listen port") flag.String("ip", "192.168.1.100", "listen IP address") flag.Bool("au...


Scrapy1.1.1 爬虫试验--爬取酷壳 1195

   2016-7-25  标签:  programming 

当然是简单的爬虫,做这个工作最合适的是 Python 了。     1.给定初始地址,下载页面     2.从页面中解析出内容页面链接(列表A),解析出下一页链接(地址B)     3.循环下载列表A链接地址文件,解析出需要的条目(字典C)。保存(标注1)     4.地址B存在,下载地址B文件,跳转到步骤2     5.地址B不存在,结束。     (标注1:可以保存到文件,csv,各种(no)sql数据库,比较理想的是保存到 elast...


利用 ThinkPHP3.2 开发 REST API 接口 2362

   2015-9-28  标签:  programming 

一,背景     项目中部署一组数据库提供查询,用户接口有桌面版,Web版,手机版,还有一个后台服务。这是很常见的场景。都需要直接或间接的访问数据库,此时用REST 来开发一个访问 API 算是中规中矩的做法。     因为一直用 ThinkPHP3.2 来做 Web,所以这次也用它来做 。     题外话:PHP 的框架有很多,Yii,Symfony,CI,SlimPHP,eagerPHP,Phalcon yaf,Laravel,speedPHP,CakePHP... 用ThinkPHP 的原因在于它的集成度高,...


c++ reflection 1997

   2015-8-19  标签:  programming 

一,什么是 reflection(反射)     C#,Java 程序员对这个肯定不陌生。看看维基百科的解释。     简而言之,反射的意义就是程序中的调用不再是硬编码。 二,已知C++支持反射的 Library     XCppRefl     OpenC++     xrtti     都没用过,因为我也是刚刚找到的。目测第一个会好用点) 三,C++中,手动实现简单的反射框架     直...


AngularJS,Byebye 1659

   2015-6-19  标签:  programming 

    这个年代,任何语言的程序员,多少都要沾染一些 JS,因为一些曲曲折折的关系,我竟到了非要了解 AngularJS 的地步。于是上官网看Document ,不得不说,AngularJS 是一个非常强大的JS 框架,强大到让人窒息。     为什么我要对这么强大的框架说 byebye 呢?先来说说我为什么非要了解它。     最近在找一种跨平台的移动方案,于是接触了cordova,然后是 ionic 基于 cordova 进行了一层包装,用的 JS 库就是   AngularJS...


buglist #LTS 957

   2015-6-11  标签:  wtf  programming 

1,循环与初始化 struct _tag_a{ int a,b,c; }; std::vector<_tag_a> va; .... int i=0; _tag_a temp; for( i=0; i<max; i++){ temp.a=i; temp.b=function(); ... va.push_back(temp); } ...     在C++ 中,是允许以上述方式来循环插入列表值的。注意,由于 temp 在下一次循环中会缓存上一次循环中的值,bug 产生了。


Sqlite3 加密 1584

   2015-5-23  标签:  unfamous  original  programming 

一,背景     在使用 sqlite3.8.x 的过程中,因为商业上的原因需要将数据库文件加密,sqlite3 仅仅提供了加密的接口,没有提供加密实现(如果实现了,sqlite3本身是开源的,也没什么加密的意义)。就需要自己去定义加密的实现。 二,自己实现加密     说是自己实现加密,其实是站在 sqlite3 的立场来说的。在 sourceforge 上有一个wxsqlite3 的模块,姑且利用它的加密实现。其实,用 wxsqlite3 是极好的,只是我这边的 sqlite3 部分的代码已经调试完毕,仅仅需要加密,所以没有直接...