技术宅,fat-man

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

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

随笔分类 -  转载

上一页 1 2 3 4 5 6 ··· 9 下一页

代码面试最常用的10大算法
摘要:http://www.csdn.net/article/2014-04-10/2819237-Top-10-Algorithms-for-Coding-Interview在程序员的职业生涯中,算法亦算是一门基础课程,尤其是在面试的时候,很多公司都会让程序员编写一些算法实例,例如快速排序、二叉树查找等等。本文总结了程序员在代码面试中最常遇到的10个算法,想要真正了解这些算法的原理,还需程序员们花些功夫。1.String/Array/Matrix在Java中,String是一个包含char数组和其它字段、方法的类。如果没有IDE自动完成代码,下面这个方法大家应该记住:toCharArray() / 阅读全文

posted @ 2014-04-11 10:34 codestyle 阅读(719) 评论(0) 推荐(0) 编辑

objective-C: nonatomic retain copy assgin 等属性详解
摘要:http://my.oschina.net/u/728866/blog/90798property,可以提供的功能有:提供成员变量的访问方法的声明、控制成员变量的访问权限、控制多线程时成员变量的访问环境 )。property不但可以在interface,在协议protocol.和类别category中也可以使用.synthesize的理解是:实现property所声明的方法的定义。其实说直白就像是:property声明了一些成员变量的访问方法 ,synthesize则定义了由property声明的方法。他们之前的对应关系是property 声明方法 ----------》 头文件(.h)中申明 阅读全文

posted @ 2014-04-10 13:38 codestyle 阅读(497) 评论(0) 推荐(0) 编辑

Objective-C 入门(给新人的)
摘要:http://www.hengxinsoft.com/2010/12/objective-c-%E5%85%A5%E9%97%A8%EF%BC%88%E7%BB%99%E6%96%B0%E4%BA%BA%E7%9A%84%EF%BC%89/基本知识nil 类似于C中的NULL, 但nil是Object, 可以发送消息给nil如:[nil message]BOOL 也是通过类库实现的, 分别是YES和NO#import 类似了 #include ,但不会存在重复包含的问题在普通的双引号字符串前放置一个@符号,就成了一个 NSString对象方法名字前面的单个减号(-)表明该方法是一个实例方法。如 阅读全文

posted @ 2014-04-10 13:30 codestyle 阅读(375) 评论(0) 推荐(0) 编辑

程序员很暴力,请远离
摘要:http://www.vaikan.com/violence/程序员给人的印象一般是趴在那里一天到晚敲着键盘,不出一声,很安静。其实他们内心完全相反,时刻都在激烈的斗争。他们是在压抑自己。不在沉默中爆发,就在沉默中死亡。一旦他们喝点酒,你就很容易发现他们露出狂暴的真面目。不信?下面就是有人拍到的一个程序员,你看他喝了一点酒后都干出什么了。电锯惊魂的原型吗?程序员不但脾气很暴躁,有很多人还是精神分裂症患者,大家都看过一部叫“美丽心灵”的电影吧,那个主人公就是精神分裂症,具体表现是自言自语,自言”他“语——跟另外的一个自己说话,好恐怖呀。更可气的是,他们不仅不以自己的毛病为耻,而且依仗自己的计算机 阅读全文

posted @ 2014-04-04 13:29 codestyle 阅读(273) 评论(0) 推荐(0) 编辑

Rust语言:安全地并发
摘要:http://www.csdn.net/article/2014-02-26/2818556-Rusthttp://www.zhihu.com/question/20032903Rust是近两年Mozilla正在开发的一种新编程语言,以并发、安全和实用为口号,主要使用场景是系统编程,用来取代C++语言的角色。它有颇多新颖之处,能帮助我们了解编程语言设计的流行趋势。Rust是近两年Mozilla正在开发的一种新编程语言,它以并发、安全和实用为口号,主要使用场景是系统编程,用来取代C++语言的角色。由于Rust还在快速的开发和演进中,每个版本都会产生一些不兼容的变更,现在也许并非是学习这门语言细节 阅读全文

posted @ 2014-02-27 13:30 codestyle 阅读(1065) 评论(0) 推荐(2) 编辑

Ubuntu下安装和配置Apache2
摘要:http://www.blogjava.net/duanzhimin528/archive/2010/03/05/314564.html在Ubuntu中安装apache 安装指令:sudo apt-get install apache2 安装结束后: 产生的启动和停止文件是:/etc/init.d/apache2 启动:sudo apache2ctl -k start 停止:sudo apache2ctl -k stop 重新启动:sudo apache2ctl -k restart 配置文件保存在:/etc/apache2需要说明的是,普通的apache发行版本配置文件是: ... 阅读全文

posted @ 2014-02-24 19:47 codestyle 阅读(301) 评论(0) 推荐(0) 编辑

如何判断自己是否具有成为一名优秀程序员的潜质
摘要:很多像这样的日子,当地上积起厚厚的雪时,我通常会燃起铁炉,把马蹄跌烧的通红,搓搓温暖的手,开始打造特制手工马蹄铁。经过了5年多的专职钉马掌生活后,我开始问自己一个问题:我要一直这样干下去吗?能不能干点儿别的?我的性格跟其他乡下那些叼着雪茄、喝着小酒的铁匠不一样,我从来没有戴过牛仔帽或骑过公牛。我渴望的是知道更多的事情,琢磨更多的事情,做更多的事情。成功的从事开发工作7个月后,我已经给几百人回复了邮件,他们问我如何成为一个程序员的,寻求我的建议,他们想知道如何判断自己是否适合去做一名程序员。本文的作者 Joshua Kemp下面罗列了7种特征,是我从同事中最有效的程序员身上观察到的,我知道,优秀 阅读全文

posted @ 2014-02-24 11:40 codestyle 阅读(190) 评论(0) 推荐(0) 编辑

使用c语言编写cgi程序
摘要:http://blog.chinaunix.net/uid-22566367-id-3109877.html简单的说,cgi是沟通HTML表单和服务器端程序的接口,是可以被其他语言所应用的一个规范集。必要条件,安装apache。首先建立C程序,这里就不多介绍。参照前面的文章或者其它的参考书籍。建立文件hello.c,内容如下:#include int main(){printf("Content-type:text/html\n\n");printf("");printf("welcome to c cgi.");printf(&qu 阅读全文

posted @ 2014-02-21 21:17 codestyle 阅读(1621) 评论(0) 推荐(0) 编辑

用C++进行函数式编程
摘要:http://www.programmer.com.cn/12717/文 / John Carmack 译 / 王江平《Quake》作者Carmack认为追求函数式的程序设计有着实实在在的价值,然而,劝说所有程序员抛弃他们的C++编译器,转而启用Lisp、Haskell,或者干脆说任何其他边缘语言,都是不负责任的。或许本文的每位读者都听说过,当初“函数式编程”(Functional Programming)肩负着为软件开发带来福祉的期望来到这个世界,大家可能还听说过有人将它奉为软件开发的银弹。然而,上维基百科查看更多信息却让人大倒胃口,一上来就引用λ演算和形式系统。很难一眼看出这跟编写更好的软 阅读全文

posted @ 2014-02-20 20:25 codestyle 阅读(1119) 评论(0) 推荐(0) 编辑

代码之美——Doom3源代码赏析2
摘要:http://www.csdn.net/article/2013-01-17/2813778-the-beauty-of-doom3-source-code/2摘要:Dyad作者、资深C++工程师Shawn McGrathz在空闲时翻看了Doom3的源代码,发出了这样的惊叹:“这是我见过的最整洁、最优美的代码!”“Doom 3的源代码让我对那些优秀的程序员刮目相看。”因此有了本文。最少模板id“犯了不少C++的禁忌”,他们重写了所有需要的STD函数。我个人对STD爱恨交织。在Dyad,我调试构建时常使用它来管理动态资源;在发布时又会处理所有的资源,避免使用任何STL函数,以求尽快地加载。STL 阅读全文

posted @ 2014-02-20 20:07 codestyle 阅读(655) 评论(0) 推荐(1) 编辑

代码之美——Doom3源代码赏析1
摘要:http://www.csdn.net/article/2013-01-17/2813778-the-beauty-of-doom3-source-code/1摘要:Dyad作者、资深C++工程师Shawn McGrathz在空闲时翻看了Doom3的源代码,发出了这样的惊叹:“这是我见过的最整洁、最优美的代码!”“Doom 3的源代码让我对那些优秀的程序员刮目相看。”因此有了本文。背景介绍:Doom3是id Software于2004年开发的第一人称射击游戏,目前以GPL v3协议开源。其采用游戏引擎的是id Tech 4,由id Software创始人、首席程序员John Carmack领导 阅读全文

posted @ 2014-02-20 20:05 codestyle 阅读(963) 评论(0) 推荐(0) 编辑

管理者,你的团队持续可用吗
摘要:http://blog.jobbole.com/867/http://blog.ppcode.com/article/Work/manger-balance-risk.htm(文/余波)好几年前,我跳槽到一家创业公司做技术总监,在一穷二白的情况下组建团队,启动项目。加班加点几个月,项目如期上线。项目上线不久,老板把我叫过去了,他说,余波,你有没有觉得,我们的网站好像有点慢。老板这么一说,我就明白了。我说嗯,我回去想办法改进一下,我就把老板的意思,转给了我们的项目经理,项目经理也很给力,一口答应去做优化。没多久,我们又发布了一个版本,性能确实提高了不少。几天之后,老板又把我叫过去了。说,余波啊, 阅读全文

posted @ 2014-02-19 11:07 codestyle 阅读(226) 评论(0) 推荐(0) 编辑

一个前端与后端分离的架构实例
摘要:http://www.codeceo.com/article/web-js-and-server-artch.html一个优秀的WEB架构,必定会应用一些分层设计的思想,这样可以让系统开发起来更灵活,同时后期维护也比较方便。本文作者麦舒设计了一个前端与后端分离的架构,原文分享如下:看了《系统架构:Web应用架构的新趋势—前端和后端分离的一点想法》这篇文章,对前端与后端的分离非常认同,这样做对于系统的维护是有相当大的好处的。正好自己也设计了一个这样的系统,于是把它拿出来,和大家讨论一下。这个架构,与其说是想出来,还不如说是我做系统总结出来的最佳实践。我们做的系统,前端的页面基本都是使用 Java 阅读全文

posted @ 2014-02-19 11:00 codestyle 阅读(2232) 评论(0) 推荐(0) 编辑

Plan-9效应:为什么东西不坏就不要去修它
摘要:http://www.aqee.net/the-plan-9-effect-or-why-you-should-not-fix-it-if-it-aint-broken/Plan-9是一个很棒的、很先进的,而且完全是全新实现的Unix系统,它的目的就是要最终解决Unix最初的诺言:一切皆为文件。你听说过这套系统吗?没有?那好,下面就是为什么。我十分确信你不知道Plan-9是什么东西,并且很有可能你还是第一次听说这个名字。Plan-9是一款神奇的新版Unix,几乎是由70年代当初开发Unix系统的同一个团队开发的。它的确是一款非常酷的操作系统。它跟Unix非常相似,但它不是Unix,它纠正了Un 阅读全文

posted @ 2014-02-14 11:59 codestyle 阅读(478) 评论(0) 推荐(0) 编辑

持续集成之戏说Check-in Dance
摘要:尽管Thoughtworks的首席科学家Martion folwer为“持续集成” 下了定义,但由于自身背景与经历的不同,每个人对其都有不同的理解。从狭义上讲,持续集成可以认为是一种基于某种或者某些变化对软件系统进行的经常性的构 建活动(注:这里的构建活动不仅指编译打包工作,还包含各类自动化测试、部署及发布活动)。然而,它忽视了一点,即:任何实践中都应该包含“与人的交互” 这一因素。因此,从广意上讲,持续集成应该是软件开发团队在上述活动的约束下所采用的整个开发流程及活动。它强调开发团队与持续集成系统之间的互动性。我 们既见过持续集成做得非常成功的团队,也见过效果不佳的持续集成,甚至失败的案例. 阅读全文

posted @ 2014-01-22 16:28 codestyle 阅读(258) 评论(0) 推荐(1) 编辑

最佳日志实践
摘要:http://www.bitstech.net/2014/01/07/log-best-practice/前言日志用来记录用户操作、系统运行状态等,是一个系统的重要组成部分。然而由于日志并非系统核心功能,通常情况下并不受团队的重视。在出现问题需要通过日志来定位时,才发现日志还存在很多问题。日志记录的好坏直接关系到系统出现问题时定位的速度,同时可以通过对日志的观察和分析,提前发现系统可能的风险,避免线上事故的发生。我们在开发和运维NOS(网易对象存储,Netease Object Storage)的过程中,对整个系统的日志进行了分析优化,积累出一些经验,归纳如下。相关问题经验整理1.关于日志级别 阅读全文

posted @ 2014-01-20 13:00 codestyle 阅读(298) 评论(0) 推荐(0) 编辑

化简复杂逻辑,编写紧凑的if条件语句
摘要:当业务逻辑很复杂,涉及多个条件的真假,或者多种条件下都会执行同一动作时,如何编写紧凑的if语句呢?本文借由一个实际例子,利用数学的布尔逻辑整理条件,最终产生if语句。问题在《X3 重聚》里,宇宙是一个个星区由跳跃门连接起来的。大多数星区是相邻的,也有部分星区是非连通的。这是X3 重聚星系图,右下的红色星区就是非连通星区。飞船从一个星区到另一个星区有两种方法,一是老老实实飞过去,二是跃迁过去。跃迁的话飞船要装有跃迁引擎和足够能量。能量由发电机供应。跃迁是跃迁到目的星区的跳跃门,跳跃门那里不能太挤,否则飞船会和其他飞船相撞。去非连通星区只能靠跃迁。问题来了。给定一艘船和它的当前星区以及目的星区,求 阅读全文

posted @ 2014-01-16 16:21 codestyle 阅读(1239) 评论(0) 推荐(0) 编辑

简明解释算法中的大O符号
摘要:伯乐在线导读:2009年1月28日Arec Barrwin在StackOverflow上提问,“有没有关于大O符号(Big O notation)的简单解释?尽量别用那么正式的定义,用尽可能简单的数学来解释”。在经过众多热心网友的修改更新后,最佳回复的得分已高达 3234 分,详细内容,请见下文。最佳回复所给出的大O符号的最简单定义如下:大O符号是一种算法复杂度的相对表示方式。这个句子里有一些重要而严谨的用词:相对(relative):你只能比较相同的事物。你不能把一个做算数乘法的算法和排序整数列表的算法进行比较。但是,比较2个算法所做的算术操作(一个做乘法,一个做加法)将会告诉你一些有意义的 阅读全文

posted @ 2014-01-16 12:32 codestyle 阅读(1321) 评论(0) 推荐(0) 编辑

正则表达式识别汉字
摘要:最近要为某国大选做项目,得把项目中所有汉字翻译为西文。项目中java、js文件几千个,eclipse中\w是无法识别中文的。所以下面这两条正则就算救命的工具了。匹配中文字符的正则表达式:[\u4e00-\u9fa5]:\u表示unicode,4e00~9fa5是unicode的中文编码段。匹配双字节字符:[^\x00-\xff]:一个汉字占两个字节,这个就很明显了。 阅读全文

posted @ 2014-01-13 12:04 codestyle 阅读(774) 评论(0) 推荐(0) 编辑

编写易于理解代码的六种方式
摘要:http://www.ibm.com/developerworks/cn/linux/l-clear-code/我学习编写、改善和维护代码的过程是很艰苦的。在过去的 12 年里,我一直在编写计算机游戏并通过曾红极一时的共享软件技术进行网络销售,并以此为生。这就是说,我常常要从空白的屏幕开始从头编码,当代码达到数万行之后才能拿去销售。这也就是说,如果我出了错,我必须要自己去解决问题。当我在凌晨三点还在竭力寻找 bug 的时候,看着这些不知所云的晦涩代码,我不禁自问:“我的天啊,这些垃圾代码究竟是哪个笨家伙写的啊?”,很不幸,问题的答案是 “我”。在学习了良好、正规的编码技巧之后,我大受其益。本文 阅读全文

posted @ 2014-01-08 16:27 codestyle 阅读(397) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 ··· 9 下一页
点击右上角即可分享
微信分享提示