11 2011 档案

摘要:引言 在web开发中,session是个非常重要的概念。在许多动态网站的开发者看来,session就是一个变量,而且其表现像个黑洞,他只需要将东西在合适的时机放进这个洞里,等需要的时候再把东西取出来。这是开发者对session最直观的感受,但是黑洞里的景象或者说session内部到底是怎么工作的呢?当笔者向身边的一些同事或朋友问及相关的更进一步的细节时,很多人往往要么含糊其辞要么主观臆断,所谓知其然而不知其所以然。笔者由此想到很多开发者,包括我自己,每每都是纠缠于框架甚至二次开发平台之上,而对于其下的核心和基础知之甚少,或者有心无力甚至毫不关心,少了逐本溯源的精神,每忆及此,无不惭愧。曾经实现 阅读全文
posted @ 2011-11-30 21:57 永哥 阅读(308) 评论(0) 推荐(0) 编辑
摘要:无可争议的是,色彩是任何设计领域中最重要的一方面。设计师在决定了一个网站风格的同时,也决定了网站的情感,而情感的表达很大程度上取决于颜色的选择。颜色是很有力的工具,所有设计师在设计网页时就应该明白这一点。一、颜色术语你们当中很多人可能已经在学校学过一些色彩基础知识,让我们快速回顾一些术语,来更好的把握色彩和运用色彩。色轮的主要组成所有的色彩能在一个色轮中呈现。在这个色轮中,我们能把颜色分成3大块:原色,辅助色和第三颜色。三原色分别是红色,蓝色和黄色。这些色彩是基础色,他们组成了色轮上的所有其他颜色。把原色混合在一起,你就能得到辅助色,它们是橙色、绿色和紫色。二、颜色的关系描述颜色有大量的术语, 阅读全文
posted @ 2011-11-30 18:04 永哥 阅读(542) 评论(0) 推荐(0) 编辑
摘要:工欲善其事,必先利其器!玩微博,也一样。微博开通过后,无论是官微、个人微博还是草根娱乐微博,都要先取一个好名字,再给它一个定位,然后才能开 启你的微博之旅。玩微博的过程,我个人总结如下:学着玩→玩着学→教别人玩。对于微博工具的熟悉程度就得因人而异了,但就算没吃过猪肉,难道还没见过猪跑 吗?不管你是微博专职运维人员,还是普通微博使用者,下面提到的这些应用你肯定用过或者其中一二。因为做图篇幅和版面的关系,列举的工具优缺点都一句话代 过,在接下来的三篇文章中,我将为大家详细介绍如何深度发掘它们的价值。第一部分:内容生成。微博内容离不开文+图+链接三部分,纵然一个微博有千百万粉丝,但长期不更新或者没有 阅读全文
posted @ 2011-11-29 23:37 永哥 阅读(703) 评论(0) 推荐(0) 编辑
摘要:借助日益强大的HTML5,网页将实现越来越多的功能。这场变革正在加速到来。Flash投降了。我们说的是在移动互联网上。Flash的专利持有者Adobe公司—没错,就是那家发明了著名的PhotoShop软件的公司,在上周宣布了一个消息:放弃在手机等移动设备上对Flash的支持,公司将不会再对此投入任何资源。十多年来,Flash一直是网页在展示多媒体内容时的标准格式,它也是Adobe公司除PhotoShop等产品以外最重要的盈利手段之一。 Flash动画曾经风靡一时,用Flash制作的网络广告至今还随处可见。还有上传到Youtube的那些视频,在早期绝大多数都是Flash格式。这项技术的兴起源自1 阅读全文
posted @ 2011-11-28 19:04 永哥 阅读(253) 评论(0) 推荐(1) 编辑
摘要:一个网站的实现不可避免的需要处理大量的内存数据,这大多都出于网站性能的考虑和解决I/O瓶颈问题,如JavaEye网站的首页排名数据和博客频 道的排名等数据,都进行了缓存处理,而且并非是实时的,特别是首页的排名数据几乎是一天才会更新一次的,同样,QQ等门户网站也存在大量静态化内存数据, 所以一个网站缓存的处理是至关重要的,并且好的架构需要做到代码无侵入性,也就是说内存的更新,日志的记录等操作都应该是“切面”处理,在我后来的网站开 发中,我一般都会定义一个缓存类,如下:Java代码public static LinkedList<Login> regRecentUser=new Lin 阅读全文
posted @ 2011-11-28 07:47 永哥 阅读(1678) 评论(0) 推荐(0) 编辑
摘要:为了找到一个好的模板引擎,我在互联网上进行搜索,目前已经整理出了以下名单:SmartySmarty的特点是将模板编译成PHP脚本,然后执行这些脚本。很快,非常灵活。Heyes Template Class一个非常容易使用,但功能强大并且快速的模板引擎,它帮助你把页面布局和设计从代码中分离。FastTemplate一个简单的变量插值模板类,它分析你的模板,把变量的值从HTML代码中分离处理。ShellPage一个简单易用的类,可以让你的整个网站布局基于模板文件,修改模板就能改变整个站点。STP Simple Template Parser一个简单、轻量级并且易于使用的模板分析类。它可以从多个模板 阅读全文
posted @ 2011-11-27 22:54 永哥 阅读(200) 评论(0) 推荐(0) 编辑
摘要:自从Rails框架问世后,Ruby一举成为了一个令不少人赞赏的编程语言。在这篇文章中,来自Merb与Rails核心开发团队的Yehuda Katz向我们分享了十大令人喜爱的Ruby语言特点。我每天都要用 Ruby 工作,久而久之,我现在真的喜欢上使用它了。(51CTO编者注:本文作者Yehuda Katz是Ruby on Rails核心开发团队的成员,以及Merb项目的主要推动者。)下面是一个列表,列出了我最喜欢的 Ruby 语言特点。一些特点显而易见,一些特点也存在于其他语言中。分享 Ruby 这些我喜欢的特点,并非是为了和其他语言进行比较和对比。1. 动态类型静态类型语言也有很不错的功能, 阅读全文
posted @ 2011-11-27 03:09 永哥 阅读(441) 评论(0) 推荐(0) 编辑
摘要:这里我就不累述 Ruby 语言的历史了。如果您还不了解 Ruby,官方网站 www.ruby-lang.org 是最好的去处。而对于已经了解 Ruby 的各位,我在此给出我爱上这门(相对比较)新的语言的理由。Ruby 是面向对象语言。 这意味着什么呢?的确,关于“什么是 OOP”,每十位程序员当中恐怕就有十二种看法。这个问题我留待您自己判断。而就特征而言,Ruby 提供了机制,将数据和方法封装到对象里,实现了一个类到另一个类的继承机制,还提供对象多态机制。与某些语言(C++、Perl 5 等等)不同的是,Ruby 从一开始的时候就是以面向对象为目标来设计的。Ruby 是“纯正”的 OOP .. 阅读全文
posted @ 2011-11-26 17:58 永哥 阅读(201) 评论(0) 推荐(0) 编辑
摘要:近日,国外著名博客WDL发布了2011年度最佳 jQuery 插件。jQuery 自2006年发布以来,经过五年的迅速发展,目前已是最流行和使用最广泛的 JavaScript 框架。jQuery 的易扩展性吸引了来自全球的开发者来共同编写 jQuery 插件,jQuery 插件不仅能够增强网站的可用性,有效的改善用户体验,还可以大大减少开发时间。IsotopeIsotype 是一款非常优秀的 jQuery 插件,用于创建动态的,智能的布局。使用这款插件能够对一组页面项目进行过滤、排序等很多操作,而且带有非常酷的动画效果。FitTextFitText 是一款文本大小自动调整插件 ,使用这款插件能 阅读全文
posted @ 2011-11-26 03:05 永哥 阅读(137) 评论(0) 推荐(0) 编辑
摘要:OO方法(Object-Oriented Method,面向对象方法,面向对象的方法)是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,简称OO (Object-Oriented)方法,是建立在“对象”概念基础上的方法学。对象是由数据和容许的操作组成的封装体,与客观实体有直接对应关系,一个对象类定义了具有相似性质的一组对象。而每继承性是对具有层次关系的类的属性和操作进行共享的一种方式。所谓面向对象就是基于对象概念,以对象为中心,以类和继承为构造机制,来认识、理解、刻画客观世界和设计、构建相应的软件系统。 面向对象方法作为一种新型的独具优越性的新方法正引起全世界越来越广泛的关注 阅读全文
posted @ 2011-11-26 00:17 永哥 阅读(1647) 评论(0) 推荐(0) 编辑
摘要:编程新手都有一个同样的问题:“我应该学习哪一种语言?”。《Unix编程艺术》(Eric Raymond著)第十四章,对各种语言进行了评价,正好可以用来回答这个问题。下面是我的笔记,整理了六种主要计算机语言的优缺点。读完就会知道,对于不同的任务,应该选择哪一种语言了。原文写于2003年。网上曾经有一个不完整的中译本,我也在这个网志中转贴过,所以今天贴的只能算修订版了。====================几种计算机语言的评价作者:Eric Raymond摘自《Unix编程艺术(第十四章)》一、CC语言的优点是,运行效率高和接近机器语言。它特别适用于以下几种程序: 1. 对运行速度要求很高的程. 阅读全文
posted @ 2011-11-25 22:17 永哥 阅读(143) 评论(0) 推荐(0) 编辑
摘要:implements是一个类实现一个接口用的关键字,他是用来实现接口中定义的抽象方法。 还有几点需要注意: (1)接口可以被多重implements,抽象类只能被单一extends (2)接口只有定义,抽象类可以有定义和实现 (3)接口的字段定义默认为:public static final, 抽象类字段默认是"friendly"(本包可见) 比如:people 是一个接口,他里面有say这个方法。public interface people(){ public void say();}但是接口没有方法体。只能通过一个具体的类去实现其中的方法体。比如chinese这个类. 阅读全文
posted @ 2011-11-25 22:05 永哥 阅读(331) 评论(0) 推荐(0) 编辑
摘要:FreeRIDENetBeanEclipse搭建Ruby开发环境 阅读全文
posted @ 2011-11-25 21:55 永哥 阅读(158) 评论(0) 推荐(0) 编辑
摘要:在OO设计领域,我们知道前人总结了不少的经验,许多的经验在现代软件工程过程中已经被认为是原则来遵守。下面笔者摘抄几项下文涉及到的OO原则的定义。OCP(开闭原则,Open-Closed Principle):一个软件的实体应当对扩展开放,对修改关闭。我的理解是,对于一个已有的软件,如果需要扩展,应当在不需修改已有代码的基础上进行。DIP(依赖倒转原则,Dependence Inversion Principle):要针对接口编程,不要针对实现编程。我的理解是,对于不同层次的编程,高层次暴露给低层次的应当只是接口,而不是它的具体类。A. 高层模块不应该依赖于低层模块,二者都应该依赖于抽象B. 抽 阅读全文
posted @ 2011-11-25 19:11 永哥 阅读(447) 评论(0) 推荐(0) 编辑
摘要:简单工厂模式(simple factory)是类的创建模式,又叫静态工厂方法(static factory method)模式。简单工厂模式就是由一个工厂类根据传入的参数决定创建哪一种的产品类。有4个角色工厂类角色:是具体产品类角色直接调用者。 抽象产品角色:接口或抽象类,负责具体产品角色的定义,及与客户端的交互。 具体产品角色:被工厂类创建的对象,也是客户端实际操作对象。 客户端:调用工厂类产生实例,并调用实例的方法进行相应工作。public interface people{public voidsay();}public class chinese implements people{p 阅读全文
posted @ 2011-11-25 18:49 永哥 阅读(155) 评论(0) 推荐(0) 编辑
摘要:需求如下: 有这样一家超市,对顾客实行会员制,会员目前分为两个等级:金卡及银卡。 每次会员购物时,都会根据会员等级提供不同的折扣优惠和返点。 设计方案有三个: 1. 过程设计,用作对比 2. 过程式的OO设计,简单来说就是将过程设计中的函数封装到类里面 3. 标准的OO设计,封装、继承、多态、设计模式,能用的都用上 问题: 如果是你,你会采用哪种OO设计,或者有更好的设计? 过程式设计:Java代码 //client:stringid=input_id;stringtype=GetMemberTypeByID();;intdiscount=GetDiscountByType(type)... 阅读全文
posted @ 2011-11-25 18:43 永哥 阅读(193) 评论(0) 推荐(0) 编辑
摘要:前一篇Post因为绘图的关系导致理解上有所误区,所以重构一下,重新更新了图形,让我们重新来审视一下这个被多次讨论的设计。首先是图书馆的用例:其实用例的情况大家都很清楚了,简而概之就是用户在图书馆的书架上找到自己想要的书,然后向管理员出示借书卡后借到想要的书。用例图。这是一个很简单的用例,我没有分析完所有的用例以及子用例,这里到此就可以打住了,我们可以在以后的迭代过程当中来继续完善然后根据需求我们来建立业务规则表:规则一:借书需要出示身份证明以及借书卡 (来源:图书馆馆规)规则二:每个用户一张借书卡 (来源:图书馆规定)规则三:每张借书卡可以借N本书 (来源:图书馆规定)然后得到领域模型:这 个 阅读全文
posted @ 2011-11-25 17:44 永哥 阅读(262) 评论(0) 推荐(0) 编辑
摘要:在大学里的某一天,一个漆黑的夜晚,我来到了一个学校里阴森的图书馆,虽然说不喜欢,但是为了考试不要零蛋,所以拼死也要温书了。来到图书馆的柜台前,遇到了图书管理员。然后我跟管理员说:“我来借书了”,管理员头也不抬的把手一指:“书架在那边,自己去找”。-----------------------------------------------------------------------------------------------------------------------------------------------------------------书架实在是很多,都是分门别类的把 阅读全文
posted @ 2011-11-25 17:43 永哥 阅读(377) 评论(0) 推荐(0) 编辑
摘要:问:看了网络上的说法:一个方法要有一个返回类型,比如String, int等,如果这个方法只是执行了一个操作不返回结果,就把返回类型设置为void,表示什么都不返回,只是执行了一个操作 。-------------------------------------例如方法是string,那需要返回。那我想问返回干嘛,有什麼用?答:一般函数都是被用来调用的,返回值就是你调用函数的运行结果。 变量是具有作用域的,一般在函数里面声明的变量的作用域即是在函数里面,函数运行结束以后就会消失,这时候返回一个值就可以使你获取到函数的运行结果。当然,你可以不用返回值,设置全局变量或者是通过传递引用参数来获取.. 阅读全文
posted @ 2011-11-25 17:24 永哥 阅读(1232) 评论(0) 推荐(0) 编辑
摘要:首先什么是封装就不用多说了,上次说到,类是用来描述是什么,属性表示有什么,而行为表示能够执行什么动作的时候没有进一步对如何封装这些概念来做进一步的阐述。 对属性的封装: 属性表示对象的状态,而状态在程序里是使用数据来表示的,所以类中使用变量的来存储。所以一个类的内部成员变量是用来存储对象的状态的。 为了封装状态,我们需要将变量的访问性设置为private。 但是很多时候对象的某些状态是需要外界可见的(外部可见的状态,很容易理解,如果对象的状态都不清楚,那不是两眼一抹黑闷头操作),打个比方,汽车对象, 起码来说,当前跑的速度,车身颜色,车牌号码都应该是外部能够了解的状态。那么,在java中,只. 阅读全文
posted @ 2011-11-25 17:08 永哥 阅读(157) 评论(0) 推荐(0) 编辑
摘要:其实我自己也就能简单用用js而已,但是呢,相对很多初学者来说多懂了点Know How所以斗胆孟浪一下,将一些所得记录下来,以供更多的初学者能够知道一个东西的实现过程,省去在源码里摸索的过程。在表单程序中,在页面上需要很多的Js代码来验证表单,每一个field是否必须填写,是否只能是数字,是否需要ajax到远程验证,blablabla。如果一个一个单独写势必非常的繁琐,所以我们的第一个目标就是构建一个类似DSL的东西,用表述的语句而非控制语句来实现验证。其次一个个单独写的话还有一个问题就是必须全部验证通过才能提交,但是单独验证会因为这个特征而增加很多额外的控制代码,且经常会验证不全面。所以第二个 阅读全文
posted @ 2011-11-25 16:59 永哥 阅读(255) 评论(0) 推荐(0) 编辑
摘要:问:public String getPassword() { return password; } public void setPassword(String password) { this.password = password;第一步的return返回什么第二步的 this怎么解释答:你前面应该定义了password这个字段并且为String 类型的,类似这样:private String password;其实getPassword()和setPassword()是对你定义的password进行取值和赋值,这两个方法执行的顺序是这样的:首先执行setPassword();//对.. 阅读全文
posted @ 2011-11-25 15:40 永哥 阅读(2218) 评论(0) 推荐(0) 编辑
摘要:当类声明了私有成员时,如果需要 获取(get) 或 设置(set) 这个私有成员的值,可以为这个私有成员编写get或set 方法 package cn.itcast.domain;import java.util.Date;public class User { private String username; private String password; private String gender; private Date birthday; private String email; public String getUsername() { return username; } . 阅读全文
posted @ 2011-11-25 15:31 永哥 阅读(451) 评论(0) 推荐(0) 编辑
摘要:最近针对OO有了太多的讨论,太多的误会,太多的不理解。让我来一次性解决什么是对象,为什么要面向对象的问题吧,这是第一篇。所谓面向对象的编程、设计、思想。我们用大白话来说。面向对象就是用 某物(对象),是什么(类),有什么(对象的状态),能干什么(方法)的方式来描述程序的方法。这就是面向对象。面向对象的程序的特征,封装性:也就是某物状态的改变,必须是他自己的行为来改变。打个比方,我(人类),有钱(有什么),你(人类),要找我借钱(能干什么)。于是class Man() { private int money; public int Money { get{return money} s... 阅读全文
posted @ 2011-11-25 15:05 永哥 阅读(267) 评论(0) 推荐(0) 编辑
摘要:1. The Best Designs以前介绍过这个The Best Designs,所以这次就不细数它的优点了。对此站不甚了解的朋友来说,The Best Designs是个遍览高质量XHTML和FLASH设计的优秀网站。每个网站设计都会加上相关的标签(比如 – Bold, Colorful,CSS),让你更方便的找到你想要的。2. CSS Remix照CSS Remix自己的话说,他们是“一个新鲜的Web2.0最佳设计站点的大本营” (尽管有些搜罗的站点并不是Web 2.0的)。RSS订阅者超过14,000人,CSS Remix绝对可以称得上是设计师们发现别人设计作品的主流网站之一。3. 阅读全文
posted @ 2011-11-25 14:52 永哥 阅读(205) 评论(0) 推荐(0) 编辑
摘要:大型Web2.0站点构建技术初探一、 web2.0网站常用可用性功能模块分析二、 Flickr的幕后故事三、 YouTube 的架构扩展四、 mixi.jp:使用开源软件搭建的可扩展SNS网站五、 Technorati的后台数据库架构六、 通过了解MySpace的六次重构经历,来认识分布式系统到底该如何创建七、 从LiveJournal后台发展看大规模网站性能优化方法八、 说说大型高并发高负载网站的系统架构一、 web2.0网站常用可用性功能模块分析Web 2.0网站是指将传统的网站构架(平台、内容源、用户、传播方式等)转化到以用户为核心的网站构架上来,包括一系列体现web2.0概念的元素、定 阅读全文
posted @ 2011-11-25 04:35 永哥 阅读(217) 评论(0) 推荐(0) 编辑
摘要:你不必严格遵守这些原则,违背它们也不会被处以宗教刑罚。但你应当把这些原则看成警铃,若违背了其中的一条,那么警铃就会响起 。 ----- Arthur J.Riel (1)所有数据都应该隐藏在所在的类的内部。 (2)类的使用者必须依赖类的共有接口,但类不能依赖它的使用者。 (3)尽量减少类的协议中的消息。 (4)实现所有类都理解的最基本公有接口[例如,拷贝操作(深拷贝和浅拷贝)、相等性判断、正确输出内容、从ASCII描述解析等等]。 (5)不要把实现细节(例如放置共用代码的私有函数)放到类的公有接口中。 如果类的两个方法有一段公共代码,那么就可以创建一个防止这些公共代码的私有函数。 ... 阅读全文
posted @ 2011-11-25 04:34 永哥 阅读(144) 评论(0) 推荐(0) 编辑
摘要:1.oncontextmenu="window.event.returnValue=false"将彻底屏蔽鼠标右键<tableborderoncontextmenu=return(false)><td>no</table>可用于Table2.<bodyonselectstart="returnfalse">取消选取、防止复制3.onpaste="returnfalse"不准粘贴4.oncopy="returnfalse;"oncut="returnfalse 阅读全文
posted @ 2011-11-25 04:26 永哥 阅读(105) 评论(0) 推荐(0) 编辑
摘要:在我的前两篇随笔中,我大概的陈述了一下我对面向对象设计的一些想法。本人拙于言,不善表达,写文章陈述观点这种技术活就更不擅长了,如果在文章中有什么 表述不清之处,还请各位海涵。此外,非常欢迎大家对我的文章点评,无论是赞扬、还是批评我都笑纳,多多益善,如果有探讨类型的评论就更好了。 从《颠覆传统-面向对象的设计思想(序章)》和《颠覆传统-面向对象的设计思想(序章续)》的评论来看,对这两篇随笔持不同意见的主要原因是设计和需求之间关系的问题,很多朋友都在他们的评论中一再重申需求的重要性,认为需求和设计密不可分,需求是设计之母,离开需求谈设计都是空谈。 谁也不能说这些观点是错的,但是说这些有用... 阅读全文
posted @ 2011-11-25 03:38 永哥 阅读(153) 评论(0) 推荐(0) 编辑
摘要:自从《颠覆传统-面向对象的设计思想(序章)》发布出来后看的朋友和评论的朋友很多,有说好的,也有说不好。当然也有很多朋友在文章的评论中发表了自己的见解,在这里我就一些比较典型的评论做一下解释。来自名为wanghualiang 的评论很佩服楼主的发散型思维。但是远远还没到颠覆传统的地步。这里谈谈我的观点,面向对象设计时完全从接口来描述对象本身的特性是不是有问题。从鱼是不是可吃应该只能作为其一个属性来辨识,ClassFish{publicboolIsEatable;}当客户想吃这条鱼的时候,IsEatable=true;如果是河豚的话就是False了。当然有许多种不确定的因素,在可吃不可吃之间。那. 阅读全文
posted @ 2011-11-25 03:10 永哥 阅读(164) 评论(0) 推荐(0) 编辑
摘要:从我们最初接触面向对象思想的时候,我想我们接触到的第一个概念应该就是“类”,我们一直在讨论诸如如何设计类、如何实现类等高深的问题,但是我们有没有思索过到底什么叫做“类”,类的本质是什么?。按照大多数的面向对象的书籍中的介绍来看,类就是一个数据结构,封装了数据和操作,对于这样的答案,我估计大家都不会满意。 那到底什么是类呢?在讨论这个问题之前,我们先探讨一下类的由来。“类”在英语对应的单词是“Class”,如果大家翻一翻英语词典就可以查到“Class”的原意是指“种类、把...分类(或分等级)”。Class的概念最早应该是从分类学来的,意思是把对象进行归类(说的可能有些不太准确,欢迎那位高人指. 阅读全文
posted @ 2011-11-24 22:37 永哥 阅读(150) 评论(0) 推荐(0) 编辑
摘要:GoF的起源 《Design Patterns: Elements of Reusable Object-Oriented Software》(即后述《设计模式》一书),由 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 合著(Addison-Wesley,1995)。这几位作者常被称为"四人组(Gang of Four)",而这本书也就被称为"四人组(或 GoF)"书。 在《设计模 式》这本书的最大部分是一个目录,该目录列举并描述了 23 种设计模式。另外,近来这一清单又增加了一些类别,最 阅读全文
posted @ 2011-11-24 14:41 永哥 阅读(1131) 评论(0) 推荐(0) 编辑
摘要:严重声明:本文参考倪大虾的同名文章,本人有同感,留下学习和收藏。版权归原作者,转载请注明。原文地址:http://www.cnblogs.com/niyw/archive/2010/11/03/1863903.html 最近有人向我询问如何学习,工作的问题,思前想后,觉得习惯最重要,于是就想到整理一下自己的学习工作习惯。本人工作比较随便,谈不上章法,就随便列举一些。1,正常的作息时间2,工作便条3,日志4,使用好办公软件5,强大小工具:计算器,画图,记事本...6,帮助别人,向他人学习7,贪多嚼不烂8,总结1,正常的作息时间 个人觉得这点最重要,所以就放在了第一项。也许是年龄增大的缘故,现.. 阅读全文
posted @ 2011-11-24 14:27 永哥 阅读(316) 评论(0) 推荐(0) 编辑
摘要:最近参与了一个面向对象程序设计(以下简称OOP)的培训,这两天才有空整理一下思路,现在拿出来给大家来分享。本文旨在说明以何种方式学习OOP,文中如有不当之处还请大家指正。 上周看到一个人的帖子,大致的意思是对OOP中的一些概念很困惑,不理解什么是“面向对象的五个特性”或“三个原则”。说实话,最早我对这些概 念的认识是背下来的,如果有人问,答得很流畅;后来发现这些概念很空洞,不知道在说些什么,这时候就答不上来了;直到现在,也不该完全保证对这些概念完全 了解,只能结合具体的应用说出个一二。 这也是我对OOP的学习认识过程,以下就是这过程中总结的经验,如下: 1.任何OOP都有其独特的场景... 阅读全文
posted @ 2011-11-24 14:15 永哥 阅读(295) 评论(0) 推荐(0) 编辑
摘要:简介 自上篇翻译<如何向妻子解释OOD>后收到了很好的反应。故特继续翻译作者的<How I explained Design Patterns to my wife: Part 1>一文,以飨读者。在此文中,作者依旧通过与妻子浅显易懂的对话,向读者解释了什么是设计模式。设计模式是什么?Shubho:通过我们关于面向对象设计原则(OODP,即SOLID原则)的对话,我想你已经对面向对象设计原则(OODP)有了基本的认识。希望你不要介意我把对话分享到博客上。你可以在这找到它:<如何向妻子解释OOD>.设计模式是这些原则在某些特定公共场景下标准化的应用,接下来让我 阅读全文
posted @ 2011-11-24 13:27 永哥 阅读(159) 评论(0) 推荐(0) 编辑
摘要:目录 Catelog 目录 Catelog 序言 Perface 真经第一章:世界 Waltanschauung 真经第二章:抽象 Abstraction 真经第三章:层次 Arrangement 真经第四章:继承 Inheritance 真经第五章:耦合 Couple 真经第六章:运作 Moving 真经第七章:建造 Build 真经第八章:刻画 Delineate 真经第九章:模式 Pattern 真经第十章:悟道 Doctrine 后记 Afterword 参考文献 Reference序言 Perface “佛曰:苦海无涯,回头是岸。——佛教用语” 面向对象(Object-Oriente 阅读全文
posted @ 2011-11-23 22:47 永哥 阅读(230) 评论(0) 推荐(0) 编辑
摘要:1,对象与责任2,对象与时间3,对象与现实世界一、对象与责任: 复习多态的实现:(1)继承 public abstractclass Animal(){public abstractstring Bark();} public class Dog():Anmial{public override string Bark(){return "汪汪";}} public class Cat():Anmial{public override string Bark(){return "喵喵";}}(2)接口 public interface IBarkble( 阅读全文
posted @ 2011-11-23 22:33 永哥 阅读(186) 评论(0) 推荐(0) 编辑
摘要:前言:本来上篇已经是完整篇,可在上篇第22楼virus的回复中,我发现了上篇文章中的最终解决方案还是存在着本质的缺陷。再看到第24楼richardzeng的回复,仔细想来,的确应该是像richardzeng的写法一样有更深一步的考虑,感谢两位的回复。我将补充方案的讲解加了进来,希望可以给大家以帮助。接上篇 凭什么要用面向对象编程——面向对象重要设计原则概述★2007-10-02 08:00 小菜在家中准备小菜开始准备给人家讲座的内容,一开始都很顺利。可是当要把不同的验证方式给细化时,发现了问题。24 原有的接口实现关系图如果要再把是用户名密码验证,还是指纹验证的代码加进来,应该如何写具体的实现 阅读全文
posted @ 2011-11-23 01:42 永哥 阅读(170) 评论(0) 推荐(0) 编辑
摘要:本文是我打算离开公司前的一次培训讲座的准备材料,讲得是几个面向对象的设计原则,没什么新鲜东西,都是比较浅显的内容,推荐刚接触面向对象编程的 新手阅读,高手达人们路过飘过即可。文章略长,不过内容过渡上比较平缓,应该比较容易阅读。 第一种讲法凭什么要用面向对象来编程,不用是否可以?今天我们通过讲这么几个设计原则来说明为什么要用面向对象,它的好处在哪里。开放-封闭原则:是说软件实体(类、模块、函数等等)应该可以扩展,但是不可修改。里氏代换原则:子类型必须能够替换掉它们的父类型。依赖倒转原则:A. 高层模块不应该依赖低层模块。两个都应该依赖抽象。B. 抽象不应该依赖细节。细节应该依赖抽象。讲解完毕,今 阅读全文
posted @ 2011-11-23 01:41 永哥 阅读(209) 评论(0) 推荐(0) 编辑
摘要:面向对象的好处就是可以让你的代码语义性更强,因为使用它可以直观的表达“谁.做什么()”的语义,使得我们的程序代码更接近自然语言。然而现实的情况就是我们经常会看到使用面向对象的编程语言写出来的却是面向过程的代码。其实这也不难理解因为大多人开始学习编程语言都是从面向过程的语言学起的如BASIC,C等这些经典的编程入门语言。但在实际开发中一方面是这些面向过程的知识和经验对我们产生了一种先入为主的主导作用,另一方面我们又希望能够得到面对象编程的优势。最终使得我们实际产出的是即没有向过程也没有面向对象的代码,虽然感觉设计有问题但又不知道问题出在那。后来我们知道了OO设计原则、OO设计模式便如获至宝般开. 阅读全文
posted @ 2011-11-23 00:07 永哥 阅读(204) 评论(0) 推荐(0) 编辑
摘要:封装 封装(Encapsulation)是将代码及其处理的数据绑定在一起的一种编程机制,该机制保证了程序和数据都不受外部干扰且不被误 用。理解封装性的一个方法就是把它想成一个黑匣子,它可以阻止在外部定义的代码随意访问内部代码和数据。对黑匣子内代码和数据的访问通过一个适当定义的 接口严格控制。如果想与现实生活中的某个事物作对比,可考虑汽车上的自动传送。自动传送中包含了有关引擎的数百比特的信息,例如你正在以什么样的加速度 前进,你行驶路面的坡度如何,以及目前的档位。作为用户,你影响这个复杂封装的方法仅有一个:移动档位传动杆。例如,你不能通过使用拐弯信号或挡风玻璃 擦拭器影响传动。所以档位传动... 阅读全文
posted @ 2011-11-22 21:20 永哥 阅读(2077) 评论(0) 推荐(0) 编辑
摘要:前言此文译自CodeProject上<How I explained OOD to my wife>一文,该文章在Top Articles上排名第3,读了之后觉得非常好,就翻译出来,供不想读英文的同学参考学习。作者(Shubho)的妻子(Farhana)打算重新做一名软件工程师(她本来是,后来因为他们孩子出生放弃了),于是作者就试图根据自己在软件开发设计方面的经验帮助她学习面向对象设计(OOD)。自作者从事软件开发开始,作者常常注意到不管技术问题看起来多复杂,如果从现实生活的角度解释并以对答的方式讨论,那么它将变得更简单。现在他们把在OOD方面有些富有成效的对话分享出来,你可能会发 阅读全文
posted @ 2011-11-22 19:44 永哥 阅读(175) 评论(0) 推荐(0) 编辑
摘要:导读:个性化的字体是品牌文化和创新产品的标志名片。本文将介绍7款免费的字体编译器,比较它们的优劣和实用性。原文作者Jacob Gude是知名设计网站SixRevisions的创办者和主编辑。第一款:FontStruct特点:网上编译,不需要安装任何桌面软件。可以在任何浏览器上创建自己的字体档案,开始设计。 文件格式:支持True Type Font file (.ttf)用户在网页上完成字体编辑后,可以把最后的设计以.ttf方式下载保存。可以用在Windows/Mac上的各种应用(Microsoft Office, Photoshop等)和您自己的网页设计上。具体操作方式可以参见导读(译者)第 阅读全文
posted @ 2011-11-22 15:45 永哥 阅读(1190) 评论(0) 推荐(0) 编辑
摘要:今天在翻thinkphp文档时发现了令牌验证功能,觉得有点意思,于是扩展学习了一些,在此做一下总结。令牌验证就是标识符匹配。当用户请求一个表单页面时,服务器会生成一个令牌Token(一般是一串字符)并保存在session里。然后将表单页面返回给用户,同时这个Token也附在了表单中,作为一个隐藏域。当用户填完表单,点击提交时。服务器收到提交过来的数据,首先会从中拿出Token域数据,将之与该用户在服务器session里的Token值做比较。当二者一致时,服务器才确认这个提交是正常的,然后做进一步处理;否则会直接返回而不做后续处理。每次验证成功之后,清除该项Token。对于每次的表单页面请求都生 阅读全文
posted @ 2011-11-21 01:20 永哥 阅读(1475) 评论(0) 推荐(0) 编辑
摘要:ActiveRecord是什么: 1. 每一个数据库表对应创建一个类.类的每一个对象实例对应于数据库中表的一行记录; 通常表的每个字段在类中都有相应的Field; 2. ActiveRecord同时负责把自己持久化. 在ActiveRecord中封装了对数据库的访问, 即CRUD; 3. ActiveRecord是一种领域模型(Domain Model), 封装了部分业务逻辑; ActiveRecord不是什么: 1. Row Data Gateway Row Data Gateway模式中每个对象也封装了数据库记录的状态和持久化到数据库的访问方法; 这两个有时候很难区分. 细微的区别在于.. 阅读全文
posted @ 2011-11-20 21:03 永哥 阅读(377) 评论(0) 推荐(0) 编辑
摘要:MVC是三个单词的缩写,分别为: 模型(Model),视图(View) 和控制Controller)。 MVC模式的目的就是实现Web系统的职能分工。 Model层实现系统中的业务逻辑,通常可以用JavaBean或EJB来实现。 View层用于与用户的交互,通常用JSP来实现。 Controller层是Model与View之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映 射为模型层可执行的操作。目录MVC与模板概念的理解MVC如何工作为什么要使用 MVCMVC的优点MVC的缺点开发方式常见的MVC组件Struts 中Model 1 和Mode 阅读全文
posted @ 2011-11-19 13:00 永哥 阅读(763) 评论(0) 推荐(0) 编辑
摘要:内容管理系统(CMS)广泛应用于企业网站、个人网站、博客、电子商务网站等内容更新频繁的网站,可以轻松处理大量的数据请求,实现便捷管理。本文为你整理了一些用 PHP 编写的开源 CMS,你可以用于 PHP 学习,或根据自己的需求进行修改。(编注:英文原文中介绍了60个开源的PHP CMS,原文中并不包括WordPress、Drupal、Joomla!等知名PHP的开源CMS。这篇译文摘译了20个不大知名的CMS,)1. DynPageDynPage 是一个无数据库的开源 CMS,集成了著名的编辑器 CKEditor。CKeditor 所编辑的页面中可插入 Ajax/JavaScript 和 PH 阅读全文
posted @ 2011-11-18 21:19 永哥 阅读(726) 评论(0) 推荐(0) 编辑
摘要:注:本文转载自open-open如果有一个好的编辑器或开发工具,能够极大提高我们的开发效率。下面介绍10个免费、强大的PHP编辑器/开发工具。这些编辑器拥有调试器、增量执行PHP脚本,查看每一行的所有变量值等功能。1) Notepad ++Notepad++ 是一款非常有特色的编辑器,是开源软件,可以免费使用。支持的语言: C, C++ , Java , C#, XML, HTML, PHP, Javascript! 功能有: ①、Notepad内置支持多达 27 种语法高亮度显示(囊括各种常见的源代码、脚本,值得一提的是,完美支持 .nfo 文件查看),也支持自定义语言; ②、Notepa. 阅读全文
posted @ 2011-11-18 21:18 永哥 阅读(294) 评论(0) 推荐(0) 编辑
摘要:这段经历是悲伤的,也是快乐的,毕竟创业是充满激情的,想着自己以后可以不再给人打工了,可以给自己打工了,一个程序员写了很多年的程序之后,能够有机会给自己写程序,现在想着都是兴奋的,心情久久不能平静。创业的那个项目是我自己带队开发出来的一个大型的物流信息平台,技术团队都是我一手带出来的,每个人都有自己的技术特色,有的擅长客户端展现,有的 擅长后台业务逻辑,有的则对总体架构把握很好,我认为这个团队是一个配合很好的团队;我们的运营模式是物流管理软件+物流电子商务+GPS在线运营平台一 起运营。该项目的赢利模式主要是:物流会员费,物流管理软件租用费和GPS运营月租用费。经营模式以物流电子商务:车配货,货 阅读全文
posted @ 2011-11-18 02:59 永哥 阅读(228) 评论(0) 推荐(0) 编辑
摘要:GTD是 Getting Things Done的缩写,来自于David Allen 戴维 艾伦 的一本畅销书《Getting Things Done》。一直在用GTD来做事情,只不过一直以来都是习惯了使用纸笔来做记录任务列表。最近碰到一些相对复杂的项目任务,感觉用软件来记录会方便管 理、修改和备忘。于是试用了一下几款任务管理软件。 GTD是 Getting Things Done的缩写,来自于David Allen 戴维 艾伦 的一本畅销书《Getting Things Done》,国内的中文翻译本《尽管去做:无压工作的艺术》由中信出版,而在网络上流传的《搞定!-2分钟轻松管理工作与生... 阅读全文
posted @ 2011-11-18 00:32 永哥 阅读(1095) 评论(0) 推荐(0) 编辑
摘要:导语:瑞典IT服务公司Pingdom周一撰文,对互联网发展历史上的十大著名技术及其发明人进行了介绍,包括GIF、RSS、Ping、@符号和笑脸表情等。但这些人都有一个共同的特点:虽然他们发明的技术广为人知,但他们本人却并不知名。以下为文章全文:由于昨天是瑞典的父亲节,所以我们便想推出一个专题,来介绍一些为互联网做出卓越贡献的人。有一些显而易见的候选人,包括TCP/IP发明人温特· 瑟夫(Vint Cerf)和鲍勃·卡恩(Bob Kahn)、构思出互联网众多概念的范内瓦·布什(Vannevar Bush)、提出超文本理念的泰德·尼尔森(Ted Nelson 阅读全文
posted @ 2011-11-16 02:22 永哥 阅读(290) 评论(0) 推荐(0) 编辑
摘要:注:本文转载自open-open如果有一个好的编辑器或开发工具,能够极大提高我们的开发效率。下面介绍10个免费、强大的PHP编辑器/开发工具。这些编辑器拥有调试器、增量执行PHP脚本,查看每一行的所有变量值等功能。1) Notepad ++Notepad++ 是一款非常有特色的编辑器,是开源软件,可以免费使用。支持的语言: C, C++ , Java , C#, XML, HTML, PHP, Javascript! 功能有: ①、Notepad内置支持多达 27 种语法高亮度显示(囊括各种常见的源代码、脚本,值得一提的是,完美支持 .nfo 文件查看),也支持自定义语言; ②、Notepa. 阅读全文
posted @ 2011-11-15 12:19 永哥 阅读(472) 评论(0) 推荐(0) 编辑
摘要:在之前的一篇博客中我曾提到:程序员成功的秘诀在于创意和原创性思维。但是如果你没有创意该怎么办?别担心,并非只有你这样。事实上,你所遇到的大部分程序员都缺乏创意。原因在于,跟编程中客观的逻辑性思维相比,创意需要一种不同的思维方式。幸运的是,创新思维是可以学习的。我列出了一个可以激发创意的书籍清单。(注:排名不分先后,有两本书没有相应中文名,应该是没有中文版)《Pragmatic Thinking and Learning: Refactor Your Wetware》 – Andy Hunt 安迪·亨特 这是一本为程序员量身定制的激发创意的书,作者安迪自己也是一名程序员。(他也是《程序 阅读全文
posted @ 2011-11-15 12:17 永哥 阅读(350) 评论(0) 推荐(1) 编辑
摘要:MySQL是目前最为流行的开源数据库管理系统,它强健、响应速度快,深受广大用户青睐。MySQL采用C和C++语言编写,通常和PHP一起来开发动态的服务器端的应用程序。MySQL支持多种编程语言,比如PHP、PERL、C、C++以及Java,所以受开发人员的青睐,MySQL还支持存储过程、触发器、游标等等。MySQL最重要的一点是:开源。因此在这里推荐一些有价值的MySQL资源和教程,无论对初学者还是高级编程人员都将有帮助。1.Official Home Of MySql2.W3Schools.com3.MySql Basics 4.Tutorialized.com5.Tizag MySql . 阅读全文
posted @ 2011-11-15 12:16 永哥 阅读(306) 评论(0) 推荐(0) 编辑
摘要:对于任何一个开发项目来说最大的错误可能就是没有计划。最近,有些人认为开始前无需计划,一个优秀的开发者需要的是随机应变。我敢肯定这样的做法最后注定是要失败的。线框图是计划中的第一步也是最重要的一步。这是将创意转换成客户使用的程序的第一步。本文将要带你了解线框图整个的流程;包括涉及参与人员,工具等,以便您能够更好的制作计划。1)了解自己的目标作为一个开发人员我想大家都有马上坐下来开始编码的冲动。通常最初的想法都很简单,那么你真的可以坐下直接开始吗?答案是否定的,项目很少有那么简单的,任何有经验的人都知道这样做将会有 很多这样的那样的问题等着你。一个线框图可以有效的提供您的工作效率。修改计划内容远比 阅读全文
posted @ 2011-11-15 12:10 永哥 阅读(467) 评论(0) 推荐(0) 编辑
摘要:大二选择辍学创业,没有团队、没有资金,个人生活极其窘困。这个站长还能坚持多久?_文/郑江波 _摄影/梁珣轲24岁的创业者黎言卓,想做一款既带有社交与分享功能,但又与SNS不同;既可以写博客,却又与传统博客、轻博客、微博不同的产品。描述这款产品似 乎有些拗口,总之,这个身处广州、在校期间被同学为电脑“天才”的年青人,2010年一个人编程、创办了一个叫“喵友”的博客社区。目前它已经有大约 9000名用户,且每月以千人的数量在增长。“一个革命性的博客社区,能让你在简单漂亮的界面中与朋友实时分享交流信息,图片,视频和音乐。”打开喵友,这个以淡蓝为主色调的网站,在其首页如此描述道。“很多人都误以为喵友是 阅读全文
posted @ 2011-11-15 11:53 永哥 阅读(153) 评论(0) 推荐(0) 编辑
摘要:先讲一个小故事。昨天我女朋友的一句话对我触动非常大,不是感情问题,是互联网的问题,是关于中国用户的问题。前几天我GF她姐姐家的电脑坏了,要重装系统,虽然我GF是学英语专业的,但她姐姐觉得像她这样的大学生应该懂电脑吧。但事实是我GF根本不会重转 系统,她就给我打电话,我在电话里一步一步教她如何做:开机按del键进bios,找advanced setting,找boot选项,选择cdrom,保存退出,放入光盘,重启,按照提示装到C盘,OK。还好GF比较聪明,虽然经历了小的波折,但最终还 是装好了系统,她也挺高兴,回家之后还把她弟弟的电脑也重装了一下,跟我说“其实也挺简单嘛”。到这里并没有结束,昨天 阅读全文
posted @ 2011-11-15 11:32 永哥 阅读(184) 评论(0) 推荐(0) 编辑
摘要:导语:美国《纽约时报》网络版今天撰文,对神秘的Google X实验室进行了探秘,并披露了该实验研究的一些项目及其前景。以下为文章概要:概念众多在硅谷一个秘密的地方,有一个秘密的实验室。在这里,机器人随处乱跑,未来世界的景象尽在想象。这里的冰箱可以上网,以便在食物减少时从商店订货;餐盘可以将菜单发到社交网站上;机器人可以替你前往办公室,而你则可以穿着睡衣呆在家里;或许,你还可以乘坐电梯直奔太空。这只是Google X秘密实验室的众多梦想之一。谷歌利用这个实验室来追踪100个震撼世界的创意。有很多谷歌员工讨论过这些创意,但却没有人真正了解这个实验室,因为谷歌对该项目极度保密,甚至连很多员工都不知道 阅读全文
posted @ 2011-11-14 22:09 永哥 阅读(302) 评论(0) 推荐(0) 编辑
摘要:本文是《Learn Python The Hard Way, 2nd Edition》这本书的尾声部分。看完了这本书,你决定继续做编程。也许它能成为你的一个职业,也许它能成为你的一项爱好。但你需要一些指导,确保自己不会走错了道路,或帮助你从这个新业余爱好中得到最大的乐趣。我做了很久的编程。久的你都想象不出来,久的都让我苦恼。就在我写这本书的时候,我大概懂20种编程语言,而且我可以用一天或长点儿用一周的时间学 会一种新语言——要依这种语言有多奇怪而定。但这最终成为了我的苦恼,它们已经不能再吸引我的兴趣。我并不是说这些语言没有意思,或告诉你你会觉得它们很 枯燥。只是想说在我的职业旅程走到现在,我已 阅读全文
posted @ 2011-11-12 00:26 永哥 阅读(129) 评论(0) 推荐(0) 编辑
摘要:润讯工程师马化腾丁磊的成功给了很多人榜样的力量。比如马化腾。流行的最广的一个版本是,正是因为看到丁磊靠着免费电子邮箱攻城拔寨,走向成功,与丁磊在CFIDO上有过交情,同有电信背景的马化腾心中泛起阵阵涟漪,因此决定创办腾讯。关于腾讯为什么在1998年创办,还流传着另外一个版本。至少在马化腾毕业后工作的第一个公司润讯内部流传着这样的传闻:当时马化腾关于类QQ软件 的提议,没有引起润讯高层的任何兴趣,因为他们看不到这个小东西上面有任何前景。据润讯一个中层干部透露:”在当时的讨论中,有人说:’这东西究竟是收钱 还是不收钱?如果不收钱,我做它来干什么?‘”当时很多人并没有看到,客户资料比现金收入更加重要 阅读全文
posted @ 2011-11-12 00:25 永哥 阅读(918) 评论(0) 推荐(0) 编辑
摘要:Linux环境下:MySQL默认的数据文件存储目录为/var/lib/mysql。今天想干两件事,把库改名(测试了三种方法),另外就是更改MySQL数据库目录位置。 库改名:1、RENAME DATABASE zhoz_db to zhoz_db_bak mysql> RENAME DATABASE zhoz_db to zhoz_db_bak; ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version f 阅读全文
posted @ 2011-11-11 18:17 永哥 阅读(1194) 评论(0) 推荐(0) 编辑
摘要:在如今这个流行创业的时代,创业公司如雨后春笋般涌现,然而真正具有创新力的创业公司却是少之又少,这也是为什么大多数创业公司难以成功的重要原因。本文列出了当下最具创新力的20家创业公司,希望它们的创新想法能对读者有所启发。1. 趣味编程网站Codecademy融资: 250万美元创新点:Codecademy是一种基于网络的互动编程教程, 手把手帮助用户了解JavaScript的一些基本原理,更重要的是,使用Codecademy学习编程充满了趣味性。用户一旦进入 Codecademy.com页面就能轻松完成编程的第一课,如,用户要想知道自己的名字有多少字母,只需将自己的名字输进双引号中,再输入 “. 阅读全文
posted @ 2011-11-10 11:50 永哥 阅读(398) 评论(0) 推荐(0) 编辑
摘要:Tiobe公布了2011年11月编程语言排行榜,前二十排名无多大变化。从下图的排行榜可以看到,依然是C阵营的天下。距Tiobe发布2011年年度编程语言只有两个月的时间了,这个奖项是颁给这一年里评级增长率最高编程语言的(图1中Delta这列)。相比C#(普通青年?)的+1.61%和JavaScript (文艺青年?)的+0.90%,貌似2B青年Objective-C将凭借目前2.79%的增长率成为了最佳候选人。但是有一件非常扯蛋的事,就是Objective-C在2009年和2010年曾出现跟现在同样的情况。在2009年最后一个月Objective-C被当时Google发布的新语言Go超越了,同 阅读全文
posted @ 2011-11-09 15:07 永哥 阅读(277) 评论(0) 推荐(0) 编辑
摘要:我不想说出她的名字,这里就叫她珍妮吧。珍妮有5个最好的朋友,其中2个是Google的工程师,一个是Eventbrite的工程师,一个是架构师,另外一个是她的老爸(一个很可爱的人),是珍妮家乡的州足球队的主席。珍妮毕业时拿的是企业管理专业的学位证书。这是个错误。在旧金山,企业管理基本上就是说你要去照看别人的工作。珍妮来到加利福尼亚时是2008年。经济形势对她很不利。她这个刚毕业的人能找到工作的那一点点机会被人才市场里洪水般涌入的中级或高级人才冲的无影无踪。为了生活她别无选择,她找到了一个在药房配药的工作。珍妮一直在寻找跟她的专业相关的工作。2009年,她找到了一份在Genentech公司做客服的 阅读全文
posted @ 2011-11-09 15:04 永哥 阅读(212) 评论(0) 推荐(0) 编辑
摘要:大家可能看到我的名字会感觉比较奇怪,叫“其实”。虽然我们公司的名字叫东方财富网,但是创业的目标,如果你想的是追求财富的话,那你也会很累。如果你是追求过程,我觉得没问题;但如果你是追求财富,那是非常危险的,因为你的压力会伴你一生。到今天为止(2011年9月29日——编者按),我公司的股票已经跌了70%,你说我(身价)100亿也好,50亿也好,30亿也好,跟我没有任何 关系,我们公司市值最高的时候,大概是150个亿,五年前我们以300万元人民币起家。如果你是因为财富原因的话,那这个过山车坐得太厉害了,但对我来说 这完全是一种数字的变化而已。在我没有上市之前,我只要为我负责,为我的团队负责就行了。但 阅读全文
posted @ 2011-11-08 19:46 永哥 阅读(174) 评论(0) 推荐(0) 编辑
摘要:前日有:“图书音像满100返200”的当当,“图书0元起购,买多少送多少”的苏宁易购和为控制市场份额、突然宣布“购书满200打对折”的京东 商城,还有打出“全场40余万种图书1折起售”的北发图书网……当当网、卓越亚马逊本来就已经给不高的书价打了折,京东商城,苏宁易购的参与,则让图书价 格低到给人“疯了”的感觉正版书卖得比盗版还便宜,并且免费送上门。网站售书堪比菜市场白菜价,电商们“论贱”血拼的背后,传统书店也面临着前所未有的市场冲击,可谓江河日下,愁云惨淡。前日苏宁易购高调涉水图书销售,与当当网和京东商城形成“三国鼎立”的局面。我们不禁要问,民营书店的未来到底在哪里?传统书店:冬天来了统 计显 阅读全文
posted @ 2011-11-08 19:35 永哥 阅读(162) 评论(0) 推荐(0) 编辑
摘要:如果你想做自己喜欢的事情,并希望做好的话,你需要减少思维和行动之间的差异。换句话说,如果你想成为一名作家,你需要有随心所欲的工具帮助自己来写作。现在,一些人认为你只需要一个普通的文本编辑器和决心就够了,你只要每天写作,就像一个作家一样就可以了。但是,寻找一些能帮助你的工具毕竟是无害的。我在iPhone上写了很多东西。对一些人来说这似乎有些奇怪,但是我发现在触摸屏的键盘上可以飞快的打字。就这样,我在iPhone上做了许多事情,包括列提纲、写作和编辑。下面是7工具可以供你在iPhone上写作时用。TextExpander Touch如果你认为电脑上的文本拓展非常酷,它会让你在移动设备上打字的梦想变 阅读全文
posted @ 2011-11-08 19:24 永哥 阅读(835) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2011-11-08 19:03 永哥 阅读(135) 评论(0) 推荐(0) 编辑
摘要:摘要:Unix系统下pureftpd使用详解。特别是解决了很多人匿名用户无法登录的问题。与数据库的结合使得管理成千上万的用户很轻松。基础篇一、安装二、启动三、匿名登录四、系统真实用户登录五、puredb虚拟用户支持六、技巧进阶篇七、匿名用户的权限八、真实用户和虚拟用户的权限高级篇九、PureFTPd和MySQL的结合十、pureftpd与其它工具的结合基础篇1. 安装我是以FreeBSD为平台的,其它Unix/Linux平台请参考相关shell命令。在shell提示符下输入:#cd/usr/ports/ftp/pure-ftpd#makeinstallclean#rehashFreeBSD会以 阅读全文
posted @ 2011-11-08 12:35 永哥 阅读(876) 评论(0) 推荐(0) 编辑
摘要:编者按:这个对当代最有声望的程序员进行系列访谈的想法,是由微软出版社的Min S. Yee提出的。在访谈中,我们问了这样的问题:那些想法是从哪里来的?把想法转化为现实有多难?开发大型程序是什么感觉?这是一门艺术还是一门科学?是手艺还是技 能?同样的事情还能再做一次吗?访谈的目标不是支配、欺骗或操控,而是程序员自由地反思、反省,然后用言语把他自己的编程方法表达出来。世界上的优秀程序员为数众多,他们不会都出现在本书中。所以,这是对当代杰出程序员进行访谈的系列图书的第一本。——————————————————————————–Charles Simonyi(查尔斯·西蒙尼)1948年9月1 阅读全文
posted @ 2011-11-08 09:24 永哥 阅读(321) 评论(0) 推荐(0) 编辑
摘要:生平:松本行弘(Yukihiro Matsumoto),1965年4月14日出生于日本鸟取县。1984年,就读于筑波大学第三学科信息学系。2年后休学,成为末日圣徒耶稣基督教会的宣 讲师。大学复学后,加入中田育男教授的研究室。1990年大学毕业。后在岛根大学攻读博士课程,修满学分后退学,未获学位。现任株式会社Network应用通信研究所研究员、乐天株式会社乐天技术研究所研究员、Ruby association 理事长、Heroku首席构架师。经历篇:高中时代:用自己设计的语言编程第一次接触电脑,是小学6年级。父亲给我买了一个口袋型电脑L-Kit16,当时真是激动坏了。到了初中3年级,父亲又给我买 阅读全文
posted @ 2011-11-08 09:22 永哥 阅读(158) 评论(0) 推荐(0) 编辑
摘要:导读:作者Jean Hsu现就职于Pulse,是一名Android工程师。她近日写了一篇文章《It’s Not Too Late to Learn How to Code》。文中提到了她自己在学习代码的过程中虽然艰辛但却很有收获。她强调,心动不如行动,要将想法实现化。她还为大家推荐了一个Stanford的学习课程,希望对大家能所帮助。文章由CSDN张祺摘译,以下是内容:编程就如一种超能力。通过它,你可以创造出成千上万的人们可以看到的东西;你可以改变人们的行为方式、思想方式及与他人交互的方式。这棒极了,但 是,我也见过好多人,他们认为这是一种他们力所不能及的能力。我也见过很多非技术出身的人,他们 阅读全文
posted @ 2011-11-08 09:18 永哥 阅读(169) 评论(0) 推荐(0) 编辑
摘要:网站到底有什么用?如果说社交网站能为网友带来朋友,新闻网站能为网民带来信息,视频网站能给网民娱乐,那企业网站到底能带来什么?或者说是给企业或者给网民客户带来什么?网站现在到处都是,并且现在大多数中大型企业都有企业网站,那么这些企业网站到底能干什么?到底给企业带来什么?一些企业在做了一个公司网站之后就 甩手不管了,期望着这些网站给他们带来更多的客户!其实一些企业不知道到底是不知道还是不想知道,一个网站要配合适当的宣传才能得到效果!李麟杰给一部分 企业做过一部分网站,但是大多都是企业不愿意宣传,或者不愿意推广,那些网站最后也没有起到多大的作用!网站到底能给企业带来什么呢?1,提高企业知名度,一个企 阅读全文
posted @ 2011-11-08 08:56 永哥 阅读(203) 评论(0) 推荐(0) 编辑
摘要:原文作者Axel Rauschmayer 是一位居住在德国慕尼黑的自由软件工程师。他在这篇博文列举了在编程期间休息片刻的一些好处。你会更精明而不是更卖力地工作。我曾经为了一个功能的实现而卖力工作过。每天12小时,整整工作了两个星期。我付出了很多努力。那两个星期之后,我休息了一阵,并产生了一些减少很多不必要的工作的想法。你的思维会变得更清晰。疲劳对于个人的影响就跟他喝醉酒差不多。每天下班的时候,我总是欺骗自己,我将很快完成 这件事,以便明天有个新的开始。实际上,通常第二天我经常需要收拾昨天的烂摊子。如果我发现如果能够在编程中间休息一下,我仅仅需要一小部分的时间,就可 以完成同样的任务,而且效果更 阅读全文
posted @ 2011-11-08 08:54 永哥 阅读(173) 评论(0) 推荐(0) 编辑
摘要:线框是一个非常有用的网页开发工具,正确使用有助于帮助Web开发者节省时间和精力!下面介绍一些常见的线框工具,希望对Web设计师有帮助。1. 960.gs Templates for Inkscape960.gs Inkscape模板集合。2. Android Patterns一组帮你设计Android应用的交互模式。交互模式是应用程序设计中的经典模式。但开发者无需墨守成规,要能够灵活运用。3. Free Photoshop browser templates展示设计的时候需要一个简洁的浏览器效果截图吧?别再找了,这款免费插件就可以做到。提供1024*768和800*600两种尺寸,适应各种浏览 阅读全文
posted @ 2011-11-08 02:45 永哥 阅读(193) 评论(0) 推荐(0) 编辑
摘要:主要分三步:1. 添加监听端口 Listen 802. 修改servername *:803. 添加NameVirtualHost *:804. 添加虚拟目录:#第一个网站<VirtualHost *:80> ServerName www.um.com DocumentRoot "/usr/local/apache2/htdocs" </VirtualHost>#第二个网站 <VirtualHost *:80> ServerName www.gjm123.cn ServerPath /musicResource DocumentRoot 阅读全文
posted @ 2011-11-04 22:42 永哥 阅读(384) 评论(0) 推荐(0) 编辑
摘要:功能说明:检查、设定系统的各种服务。语法:chkconfig [--add][--del][--list][系统服务]或chkconfig [--level<等级代号>][系统服务][on/off/reset]补充说明:这个是redhat公司遵循gpl规则所开发的程序,它可以查询操作系统在每一个执行等级(runlevel)中,会执行哪些系统服务,其中包括各种daemon。linux os 将操作环境分为以下7个等级:0:开机(请不要切换到此等级)1:单人使用者模式的文字界面2:多人使用者模式的文字界面,不具有网络档案系统(NFS)功能3:多人使用者模式的文字界面,具有网络档案系统( 阅读全文
posted @ 2011-11-04 22:39 永哥 阅读(219) 评论(0) 推荐(0) 编辑
摘要:病症表现感觉生活每天忙忙碌碌,碌碌无为,时间一天天重复,物价一天天飞涨,自己只能艰难靠自己的工资生活,每当夜晚来临的时候,晚上睡觉前的时候,总感觉生活总是少了些什么,惊慌和忧虑困扰着自己。病人情况今年7月份毕业于某非著名城市某非著名本科院校,专业方向是计算机师范类,但是选择了传说中牛逼叉叉的程序员这个行业,放弃了去初中或者高中的当一 枚伟大的人类灵魂工程师(教师)的职业,而且还选择据说门槛最低的PHP语言,去年十月份,南漂于据说是人间天堂的杭州,真正的程序员生涯大概是在快毕业 的时候(5月份),喝罢散伙酒,吃完散伙饭,大学四年同学感情的点点滴滴只能存在记忆,现有女友一枚,蜗居于杭。病人的一天活 阅读全文
posted @ 2011-11-04 21:02 永哥 阅读(179) 评论(0) 推荐(0) 编辑
摘要:linux下使用yum安装Apache+php+Mysql+phpMyAdmin适用redhat于32位及64位,前提架设好本地源。在这里不再赘述。 1 安装Apache+php+Mysql a、安装Apahce, PHP, Mysql, 以及php连接mysql库组件 yum -y install httpd php mysql mysql-server php-mysql(------------------添加新yum源升级php5.1到5.2---------------------------# rpm –import http://www.jasonlitka.com/media/ 阅读全文
posted @ 2011-11-04 07:35 永哥 阅读(234) 评论(0) 推荐(0) 编辑
摘要:Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE、CentOS中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。软体包来源 可供Yum下载的软体包包括Fedora本 身的软体包以及源自rpmfusion和rpm.livna.org的Fedora Extras,全部是由Linux社区维护的,并且基本是自由软体。所有的包都有一个独立的GPG签名,主要是为了您的系统安全。而对於Fedora core... 阅读全文
posted @ 2011-11-04 06:55 永哥 阅读(260) 评论(0) 推荐(0) 编辑
摘要:引言:这篇文章是小柒、墨轩、淡月、和我4个人一起工作的成果,在今年9月的STS设计分享会上演讲过一次。我们的设计分享会一共有4个演讲主题,另外几个话题稍后会陆续在这里和大家见面~一个新的网络产品,或者一个全新的功能要想吸引用户的使用兴趣,就需要让用户在刚一接触到的时候能够快速地了解它是什么,能做些什么,并且能马上开始一些简单的操作。如果看了很久还没弄明白这些,那么很可能就彻底放弃了。所以,设计新手用户引导,就是设计用户前一、两次使用产品时的体验,设计目标是让新手用户快速、无痛苦地成为中间用户。一、设计时的注意事项无论是什么类型的产品,新手用户在尝试时都会经历一些共同的情感历程:他们会对新产品和 阅读全文
posted @ 2011-11-03 18:29 永哥 阅读(304) 评论(0) 推荐(0) 编辑
摘要:jQuery插件是网页设计师最喜欢的。从图像滑块,图像画廊和导航插件,它们是如此众多,如此多样,如此惊人的和互动可以制作美化网站。在本文的在30个插件中,我认为必须在网站建设时用到。当然你现在可能不善于用,但我敢肯定你会发现他们在你未来的项目中使用!Nivo滑块毫无疑问,这个插件是世界上最真棒jQuery的滑块图片,并配有超过15个过渡效果。Anything Slider任何滑块从所有最通用的滑块。您可以添加绝对的东西,从视频到简单的文字和图像,这是真棒。幻灯片幻灯片是,本着简约的jQuery幻灯片插件。挤满了一套有用的功能,以帮助新手和高级开发人员创造优雅和用户友好的幻灯片。jQuery的周 阅读全文
posted @ 2011-11-03 18:27 永哥 阅读(232) 评论(0) 推荐(0) 编辑
摘要:setsebool命令 2011-03-14 12:37配置VSFTPD时本地用户无法切换用到命令setsebool -P allow_ftpd_anon_write=1 allow_ftpd_full_access=1 ftp_home_dir=1 ftpd_disable_trans=1 ftpd_is_daemon=1setsebool命令查询了相关的资料是selinux的相关设置项这是SELinux的设置命令.其实 man 一下setsebool也知道了:NAMEsetsebool – set SELinux boolean value在不熟悉SELnux前,把SELinux关掉也可以 阅读全文
posted @ 2011-11-03 05:50 永哥 阅读(487) 评论(0) 推荐(0) 编辑
摘要:I yum installed httpd* ,then vim /etc/httpd/conf/httpd.conf ,create a new NameVirutalhostthen service httpd restart , it shows me : Documentroot [/www] does not exist I thought that is the permission issue . so chown 777 /wwwthen service httpd restart , it still shows me the msg .so I have to ask fo 阅读全文
posted @ 2011-11-03 05:49 永哥 阅读(600) 评论(0) 推荐(0) 编辑
摘要:一、创建虚拟用户的步骤: 1.创建虚拟用户的口令文件(奇数行是用户名,偶数行是用户名的密码) #cat logins.txt zhang3 123 li4 456 2.使用db_load生成vsftpd的认证文件 #db_load -T -t hash -f logins.txt /etc/vsftpd/vsftpd_login.db 设置认证文件的权限 #chmod 600 /etc/vsftpd/vsftpd_login.db 3.建议用户所需要的PAM配置文件 #cat /etc/pam.d/vsftpd.vu auth required /lib/security/pam_userdb 阅读全文
posted @ 2011-11-03 03:41 永哥 阅读(350) 评论(0) 推荐(0) 编辑
摘要:既然强调快速, 我们就马上开始,环境是centos5安装vsftpd,一下所有的java代码均是Linux命令,抱歉,改变了 第一步:安装vsftpd,在终端允许 Java代码 #yum-yinstallvsftpd没什么问题就直接安装好啦 第二步:编辑vsftpd的配置文件 Java代码 #vi/etc/vsftpd/vsftpd.conf 第三步:清空文件, 然后添加如下内容: Java代码 listen=YESbackground=YESanonymous_enable=NOlocal_enable=YESwrite_enable=YESlocal_umask=022anon_uplo. 阅读全文
posted @ 2011-11-03 03:40 永哥 阅读(253) 评论(0) 推荐(0) 编辑
摘要:偶然看到以前写过的这篇帖子《小规模低性能低流量网站设计原则》 ,重新发到微博上引起了一点反响,觉得有必要以 Linode VPS 为例再做个简单的优化实践说明,免得总有人问我,也顺便赚点点击量。假定现在你已经有了一个基本的 VPS 可用,基本内存 512MB 。参考官方提供的各种安装指导将 LAMP 这个组合运行了起来,操作系统一般 Ubuntu ,Web 服务器 Apache ,数据库 MySQL ,然后是 PHP ,以及需要安装的应用软件,WordPress 、Drupal 或是 OpenCart 什么的,一步一步配置好,能够正常的浏览页面。按照官方指导文档操作的一个好处是会包括一些基本的 阅读全文
posted @ 2011-11-02 22:27 永哥 阅读(186) 评论(0) 推荐(0) 编辑
摘要:我现在是自己做,但我此前有多年在从事软件开发工作,当回过头来想一想自己,觉得特别想对那些初学JAVA/DOT .NET技术的朋友说点心里话,希望你们能从我们的体会中,多少受点启发(也许我说的不好,你不赞同但看在我真心的份上别扔砖头啊)。一、在中国你千万不要因为学习技术就可以换来稳定的生活和高的薪水待遇,你千万更不要认为哪些从事市场开发,跑腿的人,没有前途。不知道你是不是知道,咱们中国有相当大的一部分软件公司,他们的软件开发团队都小的可怜,甚至只有1-3个人,连一个项目小组都算不上,而这样的团 队却要承担一个软件公司所有的软件开发任务,在软件上线和开发的关键阶段需要团队的成员没日没夜的加班,还需 阅读全文
posted @ 2011-11-01 18:18 永哥 阅读(115) 评论(0) 推荐(0) 编辑