技术宅,fat-man

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

导航

随笔分类 -  转载

上一页 1 ··· 4 5 6 7 8 9 下一页

什么是Code Review
摘要:Code Review是一种通过复查代码提高代码质量的过程,在XP方法中占有极为重要的地位,也已经成为软件工程中一个不可缺少的环节。本文通过对Code Review的一些概念和经验的探讨,就如何进行Code Review和Code Review中应该注意什么提出一些建议。本文中涉及的问题大部分针对JAVA类代码。同时本文不涉及Code Review过程和组织。关键词:Code Review JAVA 代码质量 软件工程一、Code Review简介1 Code Review的目的凡事知其然还要知其所以然,我们首先需要知道什么是Code Review和我们使用它的目的是什么。Code Revie 阅读全文

posted @ 2013-07-15 15:53 codestyle 阅读(841) 评论(0) 推荐(0)

支撑5亿用户、1.5亿活跃用户的Twitter最新架构详解及相关实现
摘要:http://www.csdn.net/article/2013-07-11/2816199-architecture-twitter-uses-to-deal-with-150m-active-users摘要:Twitter出道之初只是个奋斗在RoR上的小站点,而如今已拥有1.5亿的活跃用户,系统日传输tweet更多达4亿条,并已完成了以服务为核心的系统架构蜕变。Twitter如今在世界范围内已拥有1.5亿的活跃用户,为了给用户生成timeline(时间轴)需支撑30万QPS,其firehose每秒同样生成22MB数据。整个系统每天传输tweet 4亿条,并且只需要5分钟就可以让一条twee 阅读全文

posted @ 2013-07-15 09:22 codestyle 阅读(995) 评论(0) 推荐(0)

CDN(内容分发网络)技术原理
摘要:1. 前言 Internet的高速发展,给人们的工作和生活带来了极大的便利,对Internet的服务品质和访问速度要求越来越高,虽然带宽不断增加,用户数量也在不断增加,受Web服务器的负荷和传输距离等因数的影响,响应速度慢还是经常抱怨和困扰。解决方案就是在网络传输上利用缓存技术使得Web服务数据流能就近访问,是优化网络数据传输非常有效的技术,从而获得高速的体验和品质保证。 网络缓存技术,其目的就是减少网络中冗余数据的重复传输,使之最小化,将广域传输转为本地或就近访问。互联网上传递的内容,大部分为重复的Web/FTP数据,Cache服务器及应用Caching技术的网络设备,可大大优化数据链... 阅读全文

posted @ 2013-07-11 11:42 codestyle 阅读(300) 评论(0) 推荐(0)

云计算服务模型,第 3 部分: 软件即服务(PaaS)
摘要:作者: Dan Orlando发布时间: 2013-07-06 16:42阅读: 489 次推荐: 0原文链接[收藏] 英文原文:Cloud computing service models, Part 3: Software as a Service 软件即服务 (SaaS) 为商用软件提供基于网络的访问。您有可能已经使用过 SaaS,即使您当时并不知道。SaaS 的示例包括 Netflix、Photoshop.com、Acrobat.com、Intuit QuickBooks Online、Gmail 和 Google Docs。可能不太明显的 SaaS 实现包括移动应用程序市场中的相.. 阅读全文

posted @ 2013-07-10 15:13 codestyle 阅读(478) 评论(0) 推荐(0)

Mongodb
摘要:http://topmanopensource.iteye.com/blog/1278811MongoDB基本介绍及一些用法满足海量存储需求和访问的面向文档的数据库:MongoDB,CouchDB MongoDB Nice, I like it very much. 面向文档的非关系数据库主要解决的问题不是高性能的并发读写,而是保证海量数据存储的同时,具有良好的查询性能。MongoDB是用C++开发的,而CouchDB则是Erlang开发的: 1、MongoDB MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据... 阅读全文

posted @ 2013-07-09 17:55 codestyle 阅读(416) 评论(0) 推荐(0)

用linux mail命令发送邮件[Linux]
摘要:mail [-s 邮件标题] [邮件地址2] [邮件地址3]> [ [-F 显示发送人姓名]说明接收邮件地址以空格分隔加粗的表示必选从终端输入邮件内容# 以单独的一行点号结束邮件内容的输入mail -s "bookshelf.pp.cn" lishujun@3gpp.com.cn jinpeng@3gpp.com.cn -- -f lishujun@3gpp.com.cn -F leehello.EOT从文件中输入邮件内容mail -s "bookshelf.pp.cn" lishujun@3gpp.com.cn jinpeng@3gpp.com. 阅读全文

posted @ 2013-07-03 15:17 codestyle 阅读(761) 评论(0) 推荐(0)

优秀技术领导者的修成之道
摘要:http://www.csdn.net/article/2013-06-30/2816056-how-to-be-a-great-technical-leader摘要:日前,曾就职于谷歌、Square、DoubleHelix等公司的资深软件工程师及创业者David Byttow撰文阐述如何成为一名伟大的技术领导者:丰富的知识积累、对问题的迅速处理、大局观意识、能动性和对不必要的功能说“不”等。最成功的项目都有一位优秀的技术领导者,来推动项目前进,同时确保正确制定每一个技术决策以及树立团队成员的信心。日前,曾就职于谷歌、Square、DoubleHelix等公司的资深软件工程师及创业者David 阅读全文

posted @ 2013-07-02 15:49 codestyle 阅读(261) 评论(0) 推荐(0)

深度解析:清理烂代码
摘要:http://blog.jobbole.com/28672/本文由伯乐在线-唐小娟翻译自Niklas Frykholm。转载请参见文章末尾处的要求。猜猜看怎么了!你正”继承“(接收)了一堆混乱的旧代码。恭喜你!现在都是你的了。混乱的代码可能来自任何地方。中间件,网络,可能来自你自己的公司。你知道在一个角落里有一个家伙,没有人过去管他在做什么。猜猜看他一直在做什么?辛辛苦苦写出了代码,却是一堆烂代码。你还记得这个模块是一个家伙几年前写的,在他离开公司之前。这个模块已经有20个不同的人加过补丁,进行过代码修复,而且他们也并不理解代码到底是做了什么。是的,就是这样的代码。或者你从网上下载下的开源的软 阅读全文

posted @ 2013-07-02 15:39 codestyle 阅读(306) 评论(0) 推荐(0)

开始3D编程前需注意的十件事
摘要:http://www.csdn.net/article/2013-06-21/2815949-3d-programming原文作者Vasily Tserekh是名3D编程爱好者,他发表了一篇博文《Ten Things to Achieve When Starting 3D Programming》文中他分享了创建3D编程必做的十件事。开发者想要启动3D编程也并非是件易事,它不仅需要许多新技术,而且还需要根据不同的项目来选择编程语言从而设置正确的3D软件模型。3D编程语言提供了一种更加容易的编写3D应用程序的方法,因为你使用的是一种专门为3D游戏设计的脚本语言来编写DirectX界面。这种语言不 阅读全文

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

王淮的码农标准
摘要:http://kb.cnblogs.com/page/173587/摘要:这篇文章只是体现我以前写代码和做代码审查时候的一些原则。供大家借鉴:1、正确性,不能解决问题的代码都是耍流氓;2、可读性, 统一的代码规范;diff发出去之前,code-review之中,check-in之前分别应该做什么? 这篇文章只是体现我以前写代码和做代码审查时候的一些原则。供大家借鉴。欢迎大家补充。 正确性(Correctness) 正确性是第一要求。不能解决问题的代码是耍流氓。结构(CodeStructure) 结构体现逻辑。第一步,第二步;需要什么数据,需要做什么处理,处理完了结果到那里去,都应该在结... 阅读全文

posted @ 2013-06-27 09:05 codestyle 阅读(265) 评论(0) 推荐(0)

重构:仔细查看,改进代码
摘要:http://www.csdn.net/article/2013-06-25/2815981-Refactoring-is-the-art-of-changing重构是一门改变已经正常的工作的艺术。但是重构是需要理由的。可能是设计改进,性能问题,安全角色或者很多其他的原因。我建议你进行一个练习:当你第二天早晨开始工作的时候,重新审视你的项目源码,尝试发现进行重构的机会。就算你的领导没有要求,仍然去做。因为在工作中,你希望有一些激动人心的时候。重构是一门改变已经正常的工作的艺术。但是重构是需要理由的。可能是设计改进,性能问题,安全角色或者很多其他的原因。改进程序的技术缺点是要冒风险的,尽管能够使 阅读全文

posted @ 2013-06-27 08:52 codestyle 阅读(364) 评论(0) 推荐(0)

日志打印
摘要:http://blog.csdn.net/mgoann/article/details/5681759日志打印日志重要性日志规则日志格式1、日志重要性日志无论是在开发过程还是定位问题以及了解应用的运行轨迹都有非常重要的意义。日志打印也是一项技术活,好的日志对日后的维护工作带来意想不到的帮助。通过日志的打印来定位问题通过日志的打印了解应用的运行轨迹通过日志完成性能调优通过日志了解应用状态2、日志规则l打印日志是用来分析的不是用来看的日志有很大一部分作用是用来分析的。打印出便于分析的日志,就是好的日志。便于分析可以从生产环境来考虑,大部分的生产环境都是Linux操作系统,Linux操作系统文本分析 阅读全文

posted @ 2013-06-04 15:22 codestyle 阅读(1499) 评论(0) 推荐(0)

谈谈.NET中常见的内存泄露问题——GC、委托事件和弱引用
摘要:http://kb.cnblogs.com/page/178404/其实吧,内存泄露一直是个令人头疼的问题,在带有GC的语言中这个情况得到了很大的好转,但是仍然可能会有问题。一、什么是内存泄露(memory leak)?内存泄露不是指内存坏了,也不是指内存没插稳漏出来了,简单来说,内存泄露就是在你期待的时间内你程序所占用的内存没有按照你想象中的那样被释放。因此什么是你期待的时间呢?明白这点很重要。如果一个对象占用内存的时间和包含这个对象的程序一样长,但是你并不期望是这样。那么就可以认为是内存泄露了。用具体例子来说明如下:class Button { public void OnClick(o. 阅读全文

posted @ 2013-06-04 09:34 codestyle 阅读(355) 评论(0) 推荐(0)

转:关于软件开发的一些常识和思考
摘要:http://kb.cnblogs.com/page/165036/ 有最好的编程语言吗 作者的观点:程序员在最初学习BASIC、Fortran、 Pascal、C、C++等语言时会感觉一个比一个好,不免有喜新厌旧之举。而如今的Visual Basic、Delphi、Visual C++、Java等语言各有所长,真的难分优劣。能很好地解决问题的编程语言就是好语言。开发人员应该根据实际情况,选择业界推荐的并且是自己擅长的编程语言来开发软件,才能保证有较好的质量与效率。 编程是一件自由与快乐的事情,不要发誓忠于某某语言而自寻烦恼。 编程是一门艺术吗 作者的观点:水平高到一定程度后,干啥事都... 阅读全文

posted @ 2013-06-04 09:33 codestyle 阅读(197) 评论(0) 推荐(0)

go语言单元测试demo
摘要:package mymathfunc Add(a, b int) int { return a + b}func Max(a, b int) (ret int) { ret = a if b > a { ret = b } return}package mymath_testimport ( "mymath" "testing")type mathTest struct { a, b, ret int}var addTest = []mathTest{ mathTest{4, 6, 10}, mathTest{5, 6,... 阅读全文

posted @ 2013-06-03 17:14 codestyle 阅读(302) 评论(0) 推荐(0)

Crontab的格式
摘要:第1列分钟1~59第2列小时1~23(0表示子夜)第3列日1~31第4列月1~12第5列星期0~6(0表示星期天)第6列要运行的命令下面是crontab的格式:分 时 日 月 星期 要运行的命令这里有crontab文件条目的一些例子:30 21 * * * /usr/local/apache/bin/apachectl restart上面的例子表示每晚的21:30重启apache。45 4 1,10,22 * * /usr/local/apache/bin/apachectl restart上面的例子表示每月1、10、22日的4 : 45重启apache。10 1 * * 6,0 /usr/l 阅读全文

posted @ 2013-05-31 19:37 codestyle 阅读(232) 评论(0) 推荐(0)

转:Logging 日志记录最佳实践
摘要:http://www.oschina.net/question/12_44624http://www.oschina.net/question/12_44624介绍本文解释应用程序中的错误和调试日志的最佳实践。应用日志是一个非常重要的“工具”用来帮你查明具问题。如果有一个基础架构用来记录应用中的日志和事件,那么调试和问题的解决就会变得很简单。在开始文章之前,我们要介绍两个相关的工具:Logstash-http://www.oschina.net/p/logstashGraylog2-http://www.oschina.net/p/graylog2不同的日志含义日志 Logging 可以代表不 阅读全文

posted @ 2013-05-29 11:49 codestyle 阅读(350) 评论(0) 推荐(0)

转:加强debug能力来提高工作效率
摘要:原地址:http://yaocoder.blog.51cto.com/2668309/1210546以我的观点来看:做出一个业务功能是件很简单的事,做好则有难度,高效的做好则是难上加难。抛开前期的架构设计、技术方案的制定不谈,单单是写好代码这一阶段就给我们每个人带来了不同程度的挑战。之前还写过一篇关于代码编写阶段的文章《提高工作效率的工具“类”》,下面我就主要从代码debug的角度来谈谈我的看法。尽量写代码时避免bug,减少调试对于任何问题,先以预防为主。在团队中常常可以遇见这样的同事,代码写的非常快,可是天马行空的代码之后却让自己陷入了无尽debug的沼泽。我会给这样的同事建议:多花点时间做 阅读全文

posted @ 2013-05-29 10:02 codestyle 阅读(286) 评论(0) 推荐(0)

mac快捷键
摘要:http://support.apple.com/kb/HT1343?viewlocale=zh_CN&locale=zh_CNOS X键盘快捷键摘要了解有关常见 OS X 键盘快捷键的信息。键盘快捷键是通过按下键盘上的组合键来调用 OS X 功能的一种方式。受影响的产品Mac OS X 10.2, Mac OS X 10.3, Mac OS X 10.4, Mac OS X 10.5, Mac OS X 10.6,OS X Lion,OS X Mountain Lion若要使用键盘快捷键或按键组合,您可以同时按修饰键和字符键。例如,同时按下 Command 键(标有符号的按键)和“c 阅读全文

posted @ 2013-05-29 00:49 codestyle 阅读(735) 评论(0) 推荐(0)

转载:网站的分布式架构
摘要:http://www.cnblogs.com/sharpxiajun/archive/2013/05/11/3072798.html 互联网的网站和大部分企业管理软件一样都是使用B/S架构模型,但是大型的公共网站B/S架构会更加复杂,对架构人员的要求更高,今天我想在自己博客里聊聊我设计的网站的B/S技术架构。 不管是B/S架构的企业管理系统还是网站技术架构可以抽象为如下简图: 在传统B/S架构的企业管理系统里,技术架构往往就是一个工程项目,各个逻辑分层都是该工程的业务逻辑模块。但是作为提供公共服务的网站,由于用户群比较庞大,网站并发量高,需求变化大,变更频繁以及网站出于对安全的考虑,以上... 阅读全文

posted @ 2013-05-13 19:35 codestyle 阅读(249) 评论(0) 推荐(0)

上一页 1 ··· 4 5 6 7 8 9 下一页