<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[iteye_1038的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/iteye_1038</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; iteye_1038]]></copyright><item><title><![CDATA[阅读笔记---------Effective Java]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82442256</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82442256</guid><author>iteye_1038</author><pubDate>Wed, 14 Nov 2012 09:59:00 +0800</pubDate><description><![CDATA[创建和销毁对象：
1.静态工厂方法：提供一个静态方法用于返回对应的实例。感觉就像简单的工厂。工厂可以持有一个集合，根据请求返回对应的对象。这种方法的缺点是：被创建的对象要提供可以让外部访问的构造函数（感觉不是非常大的缺点啊，出了单例不然提供构造函数不是挺正常的吗？），还有方法看起来和其他静态方法一样，不好识别是构造函数（写一个好的函数名可以解决吧）。
2.构建器Bulider:当类有很多属性，...]]></description><category></category></item><item><title><![CDATA[阅读笔记---------重构]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82440434</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82440434</guid><author>iteye_1038</author><pubDate>Tue, 06 Nov 2012 14:23:00 +0800</pubDate><description><![CDATA[ 重构是必要的，必要性体现在代码的可维护性上。在开发过程中，代码要能被他人容易的阅读。
从此基础上来看，可以发现一切重构的动作是很自然的。
 首先，应该找到过于长，逻辑比较复杂的代码，通过观察，找出可以分离的部分，将这部分功能抽出由方法来做。
这时候，我们会自然考虑到两个问题，参数的设置和返回值的选择，参数应该是这段代码中用到，却不必修改的值
而返回值一般是代码中临时变量所需要的值。如此，...]]></description><category></category></item><item><title><![CDATA[阅读笔记---------数学之美]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82439661</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82439661</guid><author>iteye_1038</author><pubDate>Fri, 02 Nov 2012 14:46:00 +0800</pubDate><description><![CDATA[ 花了几天时间终于把《数学之美》这本书看完了。之前看了浪潮之巅，觉得还比较有意思，于是这次买了这本书过来看。不过很明显的感觉看起来比较吃力。不禁感觉自己大学荒废了好多，在概率论和线性代数方面完全没有学进去。数学知识很不扎实的我，在书中的很多部分都没办法读懂。
 因此，读完了以后，给我的收获并没有想象中的大，只是对搜索方面的基础有了一定的了解而已。不过这方面的了解对我来说也是不错的，在信息传递上有...]]></description><category></category></item><item><title><![CDATA[阅读笔记---------黑客与画家3]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82438294</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82438294</guid><author>iteye_1038</author><pubDate>Mon, 29 Oct 2012 09:54:00 +0800</pubDate><description><![CDATA[
 第六章作者谈到了财富的问题，我最大的感受是财富不等于金钱，我们创造的价值就是财富，比如我自己设计出了软件，虽然没有给我带来收入，但是我一样创造了财富。不过有一点，创造的东西有价值就是说必须有人需要它。要致富有两点，可测量和可放大性，小团体能带来可测量性，可放大性体现在了高新技术方面，因此在这个时代，软件工作者是非常有优势了，虽然我们处在的是技术发展的中期，但是机会还是有的。我们可以通过长期的...]]></description><category></category></item><item><title><![CDATA[阅读笔记---------黑客与画家2]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82437439</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82437439</guid><author>iteye_1038</author><pubDate>Thu, 25 Oct 2012 14:12:00 +0800</pubDate><description><![CDATA[ 看了第二章黑客与画家。第一次这么明白作为一名软件工作者的定位。看了其中的分类，确实有那么些道理，现在在计算机方面的工作中，有数学家，计算机科学家和软件工作者。我以前就觉得在研究数学的人面前挺自卑的，认为他们才是货真价实的高手，于是在学习软件中十分迷茫，看着学习的专业知识仿佛是跑偏的，认为应该研究算法，底层的系统的工作原理这才是大牛，有前途的，其实研究这些的应该是计算机科学家。软件工作者不一样。按...]]></description><category></category></item><item><title><![CDATA[阅读笔记---------黑客与画家1]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82437358</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82437358</guid><author>iteye_1038</author><pubDate>Thu, 25 Oct 2012 10:04:00 +0800</pubDate><description><![CDATA[在看完第一章为什么书呆子不受欢迎。我个人觉得作者说话的还是比较偏激的，站在了自己的角度来说，不够有客观性。不过也许国家的环境不一样吧。起码在我的中学时期，并没有发现书呆子比较受欺负，相反由于比较重视学习的大环境来说，家长们普遍都重视成绩，因此，成绩好的人也会成为瞩目的焦点，而且也比较容易参加学校的活动。造成这样的差别主要是由于咱们应试教育的特点，不像美国一样完全让孩子的特点自由的发展，如果按Pau...]]></description><category></category></item><item><title><![CDATA[设计模式阅读笔记（14）---------------复合模式]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82437309</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82437309</guid><author>iteye_1038</author><pubDate>Wed, 24 Oct 2012 21:32:00 +0800</pubDate><description><![CDATA[复合模式其实就是混合使用了几种模式来解决一般性问题。这种解决方法一定成熟经过验证的。
其中大名鼎鼎的MVC模式就是一种复合模式，MVC是面试中经常问到的了，就算不是很了解的人也能说出一二来，虽然当时我对设计模式还不懂，但是就懂得胡扯些三层模型，展示层，模型层和控制层。
View视图：用来呈现数据，和用户进行交互，一般来说，视图是用来表示模型层的数据的。
controller控制器：用来取得用...]]></description><category></category></item><item><title><![CDATA[设计模式阅读笔记（13）-------------代理模式]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82436668</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82436668</guid><author>iteye_1038</author><pubDate>Mon, 22 Oct 2012 15:21:00 +0800</pubDate><description><![CDATA[代理模式：为另一个对象提供一个替身或占位符以控制这个对象的访问。
代理模式也是我们平常见到的。同样一个类，不同的人对这个类拥有不同的权限怎么控制？我们可以为这个类创建代理，客户通过代理来访问类，这样，我们就可以控制客户对类的访问。代理模式还有许多的用法，说到底就是为类提供了一个代表，客户通过代表来访问。

RealSubject实现了真正的业务逻辑，Proxy和RealSubject都实现S...]]></description><category></category></item><item><title><![CDATA[设计模式阅读笔记（12）--------------状态模式]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82436585</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82436585</guid><author>iteye_1038</author><pubDate>Mon, 22 Oct 2012 09:48:00 +0800</pubDate><description><![CDATA[状态模式：允许对象在内容状态改变时改变它的行为，对象看起来好像修改了它的类。
状态模式还是比较有意思的，将类在不同状态下的行为封装成一个类，在不同状态下调用对应状态类的方法，这样看起来似乎类在不断的变化，而且当要修改状态的行为时，也不用去修改原来的容器类。

Context中可以有多个state，图中为了简便就没有画出来了，currentState是当前状态的引用，指向某个state属性，当...]]></description><category></category></item><item><title><![CDATA[设计模式阅读笔记（11）--------------模板方法]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82436574</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82436574</guid><author>iteye_1038</author><pubDate>Mon, 22 Oct 2012 09:22:00 +0800</pubDate><description><![CDATA[模板方法模式：在一个方法中定义一个算法的骨架，而将一些步骤延迟到子类中。模板方法使得子类可以再不改变算法结构的情况下，重新定义算法中的某些步骤。
模板方法的作用是，我们可以规定一个方法执行一系列的步骤，比如打开机器，设定条件，执行机器。打开机器和执行机器的过程是一样的，但是设定条件的过程可能不一样，这样我们可以讲设定条件的实现留给子类来做。这样我们规定了模板，部分实现由子类来做。

temp...]]></description><category></category></item><item><title><![CDATA[设计模式阅读笔记（10）-----------------组合模式]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82436145</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82436145</guid><author>iteye_1038</author><pubDate>Fri, 19 Oct 2012 14:04:00 +0800</pubDate><description><![CDATA[组合模式：允许你将对象组合成树形结构来表现“整体/部分”层次结构。组合能让客户以一致的方式处理个别对象以及对象组合。

在我看来，组合模式是用来屏蔽节点与叶子的区别的，在实际使用中我还真没想出有用过这种做法。不过看书上的菜单的介绍确实还是挺符合这种情况的。我们在使用菜单的时候，菜单下面同时有菜单项和子菜单，子菜单下面又有菜单项，点击菜单项会展示对应功能，点击子菜单会显示子菜单下面的节点。组合模...]]></description><category></category></item><item><title><![CDATA[设计模式阅读笔记（9）----------------迭代器模式]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82436066</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82436066</guid><author>iteye_1038</author><pubDate>Fri, 19 Oct 2012 09:37:00 +0800</pubDate><description><![CDATA[迭代器模式：提供一种方法顺序访问一个聚合对象中的各个元素，而又不暴露其内部的表示。
使用java的应该对迭代器非常熟了，让集合返回iterator对象就可以很方便的遍历一个集合。初学java的时候我也对这个没什么概念，觉得很奇怪，用循环不就可以遍历集合了吗，而且也可以很方便的进行操作，为什么要有迭代器这个东西，过了很久我也没特别的感受。迭代器的作用是封装了遍历，比如linklist和arrayl...]]></description><category></category></item><item><title><![CDATA[应该对自己的目标]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82435821</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82435821</guid><author>iteye_1038</author><pubDate>Thu, 18 Oct 2012 09:31:00 +0800</pubDate><description><![CDATA[1.将本职工作做好
2.多与人交流，把握机会。其实这点我做得非常不好，由于性格关系，不太喜欢和人交往
3.对自己的人生有规划。
4.多尝试不同的事情。
5.我能为用户做什么
...]]></description><category></category></item><item><title><![CDATA[设计模式阅读笔记（8）----------------外观模式]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82434297</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82434297</guid><author>iteye_1038</author><pubDate>Wed, 10 Oct 2012 16:56:00 +0800</pubDate><description><![CDATA[ 外观模式：提供一个统一的接口，用来访问子系统中的一群接口。外观定义了一个高层几口，让子系统更容易使用。
 外观模式也很容易理解，子系统有很多接口，我们完成一个功能的时候可能要调用子系统的很多接口才能实现。这样客户理解起来就会非常困难，那我们就抽象出一个接口来完成这些复杂的流程。就像飞船起飞，要许多复杂的子系统来配合，我们提供给客户一个启动按钮，只要使用启动按钮，就可以让飞船起飞了。
 
 ...]]></description><category></category></item><item><title><![CDATA[设计模式阅读笔记（7）------------ 适配器模式]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82434294</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82434294</guid><author>iteye_1038</author><pubDate>Wed, 10 Oct 2012 16:41:00 +0800</pubDate><description><![CDATA[ 适配器模式：将一个类的接口，转换成客户期望的另一个接口。
 适配器模式的话还比较容易理解，生活中经常能看到类似的做法。我们的手机充电器是最常见的，手机通过数据线可以连在电脑上充电，但是如果需要连接插座上充电的时候我们就需要一个转换头，将USB口转换成插座口，这个零件就是我们所说的适配器了。
 理解起来比较容易画个图就很清楚了。

 Adapter通过持有的adaptee对象来执行客户所需...]]></description><category></category></item><item><title><![CDATA[每天一篇的随笔5]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82413392</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82413392</guid><author>iteye_1038</author><pubDate>Mon, 01 Oct 2012 10:19:00 +0800</pubDate><description><![CDATA[不知不觉就漏了好几天的，放假果然好舒服。
前天果然还是没能按计划执行，于是到几天应该是又过了两天，这两天倒在床上就觉得好困，一下子就睡着了，不过到半夜总是有睡不好的时候。这两天真是感觉把好久以来的睡眠都补足了，国庆外面很挤，不怎么想出去玩了，希望待在家里面多看看书，补充一些知识也好啊。
//------------------------------------6---------------...]]></description><category></category></item><item><title><![CDATA[设计模式阅读笔记（6）--------------命令模式]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82412994</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82412994</guid><author>iteye_1038</author><pubDate>Fri, 28 Sep 2012 17:39:00 +0800</pubDate><description><![CDATA[ 命令模式：将“请求”封装成对象，以便使用不同的请求、队列或日志来参数化其他对象。命令模式也支持可撤销的操作。
 为什么需要使用命令模式？使用命令模式有什么好处？按模式UML图来看，客户是知道需要调用哪些具体的命令的，为什么还要通过调用者来调用呢？看起来似乎有点多此一举啊。但是在实际操作中，客户的请求并不是马上被执行的，可是客户将请求提出后，由调用者来请求执行，然后执行者执行动作。动作多种多样，...]]></description><category></category></item><item><title><![CDATA[设计模式阅读模式（5）-------------单件模式]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82412878</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82412878</guid><author>iteye_1038</author><pubDate>Fri, 28 Sep 2012 12:17:00 +0800</pubDate><description><![CDATA[ 单件模式：确保一个类只有一个实例，并提供一个全局访问点。
 通过该模式的定义我们可以自己构想出这么一个类。这种模式存在有什么意义呢？根据实际情况如果有需要自然就会使用。比全局静态的好处是，可以延迟实例化的时间，当真正有需要用到的时候才创建。
 如何确保一个类只有一个实例，在其他地方不能随便的new一个对象，我的话会联想到工厂方法，但是工厂方法中我们还是可以new一个产品的。如何来限制呢？就是...]]></description><category></category></item><item><title><![CDATA[每天一篇随笔------------第四天]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82412794</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82412794</guid><author>iteye_1038</author><pubDate>Fri, 28 Sep 2012 08:33:00 +0800</pubDate><description><![CDATA[ 昨天是最近以来最堕落的一天了，完全没有做任何事情，而且又没用控制自己。为什么会这样呢？我会这么麻烦的突破种种我设置的困难去消耗我自己的时间和生命。怎么做才能控制住这种趋势呢？我觉得应该没有为自己鼓励，然后一旦有堕落的念头就去锻炼身体，这样，既有学习的时间又有锻炼的时间了。
 加油，今天一定 要做到！
1
...]]></description><category></category></item><item><title><![CDATA[设计模式阅读笔记（4）-----------工厂模式]]></title><link>https://blog.youkuaiyun.com/iteye_1038/article/details/82412717</link><guid>https://blog.youkuaiyun.com/iteye_1038/article/details/82412717</guid><author>iteye_1038</author><pubDate>Thu, 27 Sep 2012 17:25:00 +0800</pubDate><description><![CDATA[ 有些开发人员会把简单工厂认为是工厂模式，其实并不是，简单工厂是种习惯。这种做法是将类的实例化任务交予了其他类来实现，避免在代码中用new初始化类。
如图是简单工厂的使用：
 
 这样，User在使用Product的时候不用去new一个相应的Product类型，而是调用ProductFactory的createProduct方法来获得一个Product实例。那这种方法相比我们去使用new来创...]]></description><category></category></item></channel></rss>