技术宅,fat-man

增加语言的了解程度可以避免写出愚蠢的代码

导航

上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 50 下一页

2013年8月28日 #

函数式C代码

摘要: 代码如下:#include #include typedef char String[32];typedef FILE* File;typedef struct _Employee { String name; int age; int salary; struct _Employee *next;} *Employee;typedef void (*Callback)(Employee);/* High Order Functions */void foreach(Employee e, Callback fn) { Emplo... 阅读全文

posted @ 2013-08-28 13:13 codestyle 阅读(260) 评论(0) 推荐(0)

2013年8月27日 #

代码的抽象三原则

摘要: http://www.ruanyifeng.com/blog/2013/01/abstraction_principles.html作者:阮一峰日期:2013年1月31日软件开发是"抽象化"原则(Abstraction)的一种体现。所谓"抽象化",就是指从具体问题中,提取出具有共性的模式,再使用通用的解决方法加以处理。开发软件的时候,一方面,我们总是希望使用别人已经写好的代码,另一方面,又希望自己写的代码尽可能重用,以求减少工作量。要做到这两个目标,这需要"抽象化"。最近,我读到美国程序员Derick Bailey的一篇文章,谈到&q 阅读全文

posted @ 2013-08-27 12:48 codestyle 阅读(360) 评论(0) 推荐(0)

函数式编程初探

摘要: http://www.ruanyifeng.com/blog/2012/04/functional_programming.html作者:阮一峰日期:2012年4月 6日诞生50多年之后,函数式编程(functional programming)开始获得越来越多的关注。不仅最古老的函数式语言Lisp重获青春,而且新的函数式语言层出不穷,比如Erlang、clojure、Scala、F#等等。目前最当红的Python、Ruby、Javascript,对函数式编程的支持都很强,就连老牌的面向对象的Java、面向过程的PHP,都忙不迭地加入对匿名函数的支持。越来越多的迹象表明,函数式编程已经不再是学 阅读全文

posted @ 2013-08-27 12:40 codestyle 阅读(185) 评论(0) 推荐(0)

转:Reddit排名算法工作原理

摘要: http://www.aqee.net/how-reddit-ranking-algorithms-work/这是一篇继《Hacker News 排名算法工作原理》之后的又一篇关于排名算法的文章。这次我将跟大家探讨一下Reddit的文章排名算法和评论排名算法的工作原理。Reddit使用的算法也是很简单,容易理解和实现。这篇文章里我将会对其进行深入分析。首先我们关注的是文章排名算法。第二部分将重点介绍评论排名算法,Reddit的评论排名跟文章排名使用的不是同一种算法(这点跟Hacker News不一样),Reddit的评论排名算法非常有趣,它是由xkcd的作者Randall Munroe发明的。 阅读全文

posted @ 2013-08-27 09:32 codestyle 阅读(745) 评论(0) 推荐(0)

2013年8月26日 #

C语言读写伯克利DB 4

摘要: 因为缓存数据的buffer总是不够大(会引起段错误)索性从堆上拿了两块大内存/*功能说明:逐日存储来访用户(使用伯克利DB)根据存储的用户信息确定某用户是否是首次来访用户(未被存储的伯克利DB)调用方式1: 查询游客在2013年8月8日是否访问了指定渠道./channeldb -s "bch2000 guest:123456789" 20130808调用方式2:将指定文件里的用户信息写入DB,同时将该文件里的首次访问用户写入日志./channeldb -f 20130809 ./clog/20130809.log 20130809*/#include #include #i 阅读全文

posted @ 2013-08-26 16:17 codestyle 阅读(600) 评论(0) 推荐(0)

2013年8月24日 #

程序之美(转自知乎)

摘要: 因为程序是逻辑的集合,是一种结构化的事物,因此程序的美往往体现了某种秩序。1. 基本的秩序是基础 CS 理论的应用,比如程序中实现了一某种数据结构,针对数据结构的某种算法,这些结构和算法都具备一些固定的性质。你的程序具备了这些性质,就在一定层面上(这里是运行时)具备了秩序。数据结构和算法的秩序,就是你的代码“美”的体现;2. 紧接着就是代码的可约性。也就是你的逻辑是不是可以再化简的,一个等式越化简越接近结果,一段代码越化简越接近本质。你实现的基本算法和数据结构,每一行代码都是必须的吗?如果能够化简,说明逻辑是可约的。如果你能保证代码再简单不过了,你就对自己代码有了自信;3. 普适性。一段代码是 阅读全文

posted @ 2013-08-24 13:19 codestyle 阅读(484) 评论(0) 推荐(0)

2013年8月23日 #

C语言读写伯克利DB 3

摘要: gcc -o channeldb channel.c -db -Wall# -Wall参数等价于执行lint,即:进行代码的静态分析,它可以指出未初始化的变量,未使用的变量#include #include #include #include #include #include #include //define DATABASE "/work/stat/read/newstat/data/userlist/historydb/channel.db"#define DATABASE "/mnt/disk1/ucshuqi/touch/userlist/histor 阅读全文

posted @ 2013-08-23 16:15 codestyle 阅读(326) 评论(0) 推荐(0)

2013年8月22日 #

ON DUPLICATE KEY UPDATE

摘要: http://blog.csdn.net/kesaihao862/article/details/6718443MySQL 当记录不存在时插入,当记录存在时更新MySQL当记录不存在时插入,当记录存在时更新网上基本有三种解决方法。第一种:示例一:插入多条记录假设有一个主键为 client_id 的 clients 表,可以使用下面的语句:INSERTINTOclients(client_id,client_name,client_type)SELECTsupplier_id,supplier_name,'advertising'FROMsuppliersWHEREnotexis 阅读全文

posted @ 2013-08-22 14:25 codestyle 阅读(242) 评论(0) 推荐(0)

2013年8月21日 #

nanomsg:ZeroMQ作者用C语言新写的消息队列库

摘要: http://geek.csdn.net/news/detail/2299http://www.freelists.org/post/nanomsg/nanomsg-01alpha-released 阅读全文

posted @ 2013-08-21 17:58 codestyle 阅读(1333) 评论(0) 推荐(0)

2013年8月20日 #

新浪研发中心: Berkeley DB 使用经验总结

摘要: http://blog.sina.com.cn/s/blog_502c8cc40100yqkj.htmlNoSQL是现在互联网Web2.0时代备受关注的技术之一,被用来存储大量的非关系型的数据。Berkeley DB作为一款优秀的Key/Value存储引擎自然也在讨论之列。最近使用BDB来发一个KV系统,并将这段时间的BDB的学习和使用经验记录如下。(项目中使用了BDB的4.8.30版本,本文所有涉及的具体问题都基于该版本)。1. Berkeley DB的简介Berkeley DB(BDB)是一个高性能的嵌入式数据库编程库(引擎),它可以用来保存任意类型的键/值对(Key/Value Pair 阅读全文

posted @ 2013-08-20 14:41 codestyle 阅读(580) 评论(0) 推荐(0)

上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 50 下一页
点击右上角即可分享
微信分享提示