2007年3月1日(周四)上午10:00-12:00Joshua Kerievsky,资深软件设计专家,Industrial Logic的创始人,极限编程(XP)先锋之一。
http://pan.baidu.com/share/link?shareid=73683&uk=1795750932UMLChina早期的很多国外专家讲座是通过越洋电话举行,所以音质和后来的讲座相比稍差。
Refactoring to Patterns,下载>>http://www.umlchina.com/chat/slide/RtP.ppt
(2007.03.01)(09:58:16)Joshua enter this room.(2007.03.01)(09:58:20)11_261与所有人说:还是没有声音。。。(2007.03.01)(09:58:25)B2♂Pencil与所有人说:小柱子喘气,哈哈(2007.03.01)(09:58:26)edge enter this room.(2007.03.01)(09:58:30)诗人笑与所有人说:。。。。。。(2007.03.01)(09:58:30)碧空天与所有人说:没有声音(2007.03.01)(09:58:37)*工业化人与所有人说:喘气声没听到吗(2007.03.01)(09:58:38)jdskyy与所有人说:呼呼呼(2007.03.01)(09:58:56)lakedai与所有人说:这次讲座怎么没有幻灯?(2007.03.01)(09:58:59)*Jerryhjf与所有人说:及时进来了(2007.03.01)(09:59:01)iceboat与所有人说:(2007.03.01)(09:59:03)*工业化人与所有人说:http://webseminar.unix105.cn4e.com/webseminar/RtP.ppt(2007.03.01)(09:59:16)炊烟几许 enter this room.(2007.03.01)(09:59:34)lakedai与所有人说:谢谢2位,正下载(2007.03.01)(10:00:10)baberson与所有人说:hello(2007.03.01)(10:00:20)lakedai与所有人说:好了^_^(2007.03.01)(10:00:46)*umlchina2与*umlchina2说:ertt(2007.03.01)(10:00:54)*Jerryhjf与所有人说:没有声音(2007.03.01)(10:01:13)umlkb24与所有人说:没有声音(2007.03.01)(10:01:20)11_480 enter this room.(2007.03.01)(10:01:23)*工业化人与所有人说:有(2007.03.01)(10:01:32)*umlchina2与*umlchina2说:can you hear(2007.03.01)(10:01:36)*umlchina2与*umlchina2说:yes(2007.03.01)(10:01:37)炊烟几许与所有人说:no(2007.03.01)(10:01:41)*Jerryhjf与所有人说:no(2007.03.01)(10:01:44)诗人笑与所有人说:yes(2007.03.01)(10:01:44)umlkb24与所有人说:no(2007.03.01)(10:01:49)kkk enter this room.(2007.03.01)(10:01:50)*工业化人与所有人说:YES(2007.03.01)(10:01:52)umlkb24与所有人说:ok了(2007.03.01)(10:01:54)Joshua与所有人说:Hello World!(2007.03.01)(10:01:57)lakedai与marsjin说:我这里正常(2007.03.01)(10:01:59)*umlchina2与*umlchina2说:小柱子请关麦克(2007.03.01)(10:01:59)*工业化人与所有人说:有声音(2007.03.01)(10:02:14)Joshua与所有人说:System.out.println("Hello World!");(2007.03.01)(10:02:26)*umlchina_seminar enter this room.(2007.03.01)(10:02:41)robert1234567 enter this room.(2007.03.01)(10:02:48)kkk enter this room.(2007.03.01)(10:02:57)Joshua与所有人说:Code that uses too many patterns!(2007.03.01)(10:03:07)*Jerryhjf与所有人说:只有沙沙声(2007.03.01)(10:03:12)*umlchina2与*umlchina2说:flychen请关麦克(2007.03.01)(10:03:28)lion heart与所有人说:有视频吗?(2007.03.01)(10:03:37)kkk enter this room.(2007.03.01)(10:03:38)*Jerryhjf enter this room.(2007.03.01)(10:03:39)*工业化人与所有人说:flychen请关麦克(2007.03.01)(10:03:55)*umlchina2与*umlchina2说:yes(2007.03.01)(10:03:57)jdskyy与所有人说:flychen 关麦(2007.03.01)(10:03:58)baberson与所有人说:点击右边的小话筒关闭.(2007.03.01)(10:04:09)tangyeyang与所有人说:222(2007.03.01)(10:04:21)诗人笑与所有人说:kick(2007.03.01)(10:04:26)lion heart与所有人说:有视频吗?(2007.03.01)(10:04:28)kkk enter this room.(2007.03.01)(10:04:29)*工业化人与所有人说:flychen请关麦克 谢谢(2007.03.01)(10:04:35)umlkb24与所有人说:kick(2007.03.01)(10:04:43)jdskyy与所有人说:flychen getout(2007.03.01)(10:04:50)tangyeyang与所有人说:怎么还没关...(2007.03.01)(10:04:51)umlchina_semina_691 enter this room.(2007.03.01)(10:04:53)lakedai与marsjin说:怎么回事(2007.03.01)(10:04:55)test03与所有人说:还没有开始吗?(2007.03.01)(10:05:13)lysming enter this room.(2007.03.01)(10:05:15)炊烟几许与所有人说:节约时间,该踢就踢(2007.03.01)(10:05:17)marsjin与所有人说:有点乱(2007.03.01)(10:05:33)baberson与所有人说:开始了.但有些同学的麦没关...(2007.03.01)(10:05:34)ken enter this room.(2007.03.01)(10:05:35)iceboat与所有人说:快点!(2007.03.01)(10:05:39)gll76与ll说:我关了(2007.03.01)(10:05:44)iceboat与所有人说:上班时间(2007.03.01)(10:05:45)*工业化人与所有人说:开始了(2007.03.01)(10:05:48)gll76与所有人说:我关了(2007.03.01)(10:05:50)flyingchen与所有人说:我关了吗?sorry(2007.03.01)(10:06:05)sunmm_miss enter this room.(2007.03.01)(10:06:11)小柱子与*umlchina2说:我关了吧?(2007.03.01)(10:06:22)*umlchina_seminar与所有人说:请大家关麦(2007.03.01)(10:06:23)iceboat与所有人说:continue(2007.03.01)(10:06:23)kkk enter this room.(2007.03.01)(10:06:39)*umlchina_seminar与所有人说:我的管理页面突然打不开(2007.03.01)(10:06:50)*umlchina_seminar与所有人说:所以麻烦大家配合一下(2007.03.01)(10:07:05)*umlchina_seminar与所有人说:请大家关麦(2007.03.01)(10:07:09)*umlchina_seminar与所有人说:我的管理页面突然打不开(2007.03.01)(10:07:09)小柱子与*umlchina2说:全双工上面的小话筒可以点击的,点击后为红色叉(2007.03.01)(10:07:14)*umlchina_seminar与所有人说:所以麻烦大家配合一下(2007.03.01)(10:07:15)小柱子与所有人说:全双工上面的小话筒可以点击的,点击后为红色叉(2007.03.01)(10:07:32)*工业化人与所有人说:。。。。。。。(2007.03.01)(10:07:57)*legming与所有人说:全双工上面的小话筒可以点击的,点击后为红色叉(2007.03.01)(10:08:08)*legming与所有人说:全双工上面的小话筒可以点击的,点击后为红色叉!(2007.03.01)(10:08:11)test03与所有人说:没有翻译吗(2007.03.01)(10:08:16)*legming与所有人说:全双工上面的小话筒可以点击的,点击后为红色叉!!(2007.03.01)(10:08:35)小柱子与所有人说:请大家先关闭语音一下吧,1分钟后打开(2007.03.01)(10:08:37)*umlchina_seminar与所有人说:Zhang Songwei: are the(2007.03.01)(10:08:55)*umlchina_seminar与所有人说:design patterns in this seminar different from those in the book of(2007.03.01)(10:08:59)*cisumer enter this room.(2007.03.01)(10:09:13)*umlchina_seminar与所有人说:GOF in 1994 in content? Any new updates?(2007.03.01)(10:09:20)yyj enter this room.(2007.03.01)(10:10:23)marsjin与所有人说:sound OK ?(2007.03.01)(10:10:28)*工业化人与所有人说:OK(2007.03.01)(10:10:31)炊烟几许与所有人说:nothing(2007.03.01)(10:10:32)iceboat与所有人说:OK(2007.03.01)(10:10:37)lysming与所有人说:no voice(2007.03.01)(10:10:40)*umlchina_seminar与所有人说:麻烦大家把右下角的麦克关掉,谢谢(2007.03.01)(10:10:42)炊烟几许与所有人说:I can't hear(2007.03.01)(10:10:43)碧空天 enter this room.(2007.03.01)(10:10:51)yyjlinux enter this room.(2007.03.01)(10:10:55)*umlchina_seminar与所有人说:听不见声音请手工安装http://www.bliao.com/help/Bluesky.exe,讲座室帮助:http://www.umlchina.com/Chat/cn_guide.htm(2007.03.01)(10:10:57)marsjin与所有人说:sound is OK(2007.03.01)(10:11:01)*umlchina_seminar与所有人说:Zhang Songwei: are th(2007.03.01)(10:11:08)*umlchina_seminar与所有人说:design patterns in this seminar different from those in the book of(2007.03.01)(10:11:13)*umlchina_seminar与所有人说:GOF in 1994 in content? Any new updates?(2007.03.01)(10:11:36)lysming enter this room.(2007.03.01)(10:11:51)sunmm_miss enter this room.(2007.03.01)(10:12:06)Joshua与所有人说:same patterns, some new ones(2007.03.01)(10:12:11)lysming enter this room.(2007.03.01)(10:12:29)*umlchina_seminar与所有人说:Hankai: your book talks about how to refactor from pattern a to(2007.03.01)(10:12:43)*umlchina_seminar与所有人说:pattern b. But since I often begin my work with a batch of structurely(2007.03.01)(10:12:44)Joshua与所有人说:yes, we are about to get to that part(2007.03.01)(10:12:55)Joshua与所有人说:refactoring to patterns(2007.03.01)(10:12:57)*umlchina_seminar与所有人说:mixed up but workable codes, how I can write the testing for them?(2007.03.01)(10:13:25)Joshua与所有人说:yes, this is a very common problem(2007.03.01)(10:13:40)Joshua与所有人说:so the question is(2007.03.01)(10:13:43)yyjlinux enter this room.(2007.03.01)(10:13:46)Joshua与所有人说:do we refactor before or after writing test code?(2007.03.01)(10:13:47)*umlchina_seminar与所有人说:Jia Zongrui: in what cases that design patterns & refactoring could be used?(2007.03.01)(10:14:00)Joshua与所有人说:in my opinion(2007.03.01)(10:14:01)世上有双 enter this room.(2007.03.01)(10:14:06)*umlchina_seminar与所有人说:大家有问题请随时提问(2007.03.01)(10:14:14)Joshua与所有人说:writing tests is more important than refactoring or patterns!!(2007.03.01)(10:14:28)Joshua与所有人说:writing tests is a core part of what we programmers do(2007.03.01)(10:14:29)*umlchina_seminar与所有人说:Jia Zongrui: in what cases that design patterns & refactoring could be used?(2007.03.01)(10:14:44)*umlchina_seminar与所有人说:Jia Zongrui: in what cases that design patterns & refactoring could be used? 1(2007.03.01)(10:14:46)Joshua与所有人说:Jia -- to refactor , we must begin with tests(2007.03.01)(10:14:55)Joshua与所有人说:so for legacy code(2007.03.01)(10:15:02)sunmm_miss与所有人说:sound unavailable(2007.03.01)(10:15:03)Joshua与所有人说:code that is working but not well designed(2007.03.01)(10:15:13)Joshua与所有人说:we must write test code(2007.03.01)(10:15:20)umlchina_semina_320 enter this room.(2007.03.01)(10:15:23)Joshua与所有人说:how do we do that?(2007.03.01)(10:15:32)Joshua与所有人说:we look at what the code does(2007.03.01)(10:15:39)炊烟几许_339 enter this room.(2007.03.01)(10:15:41)Joshua与所有人说:and we write small (micro) tests for it(2007.03.01)(10:15:48)Joshua与所有人说:or(2007.03.01)(10:15:59)umlchina_semina_320与所有人说:大家听得见声音吗(2007.03.01)(10:16:04)marsjin与所有人说:thanks(2007.03.01)(10:16:05)lamono与所有人说:what's wrong ?(2007.03.01)(10:16:05)Joshua与所有人说:we write large tests -- at the User Interface level(2007.03.01)(10:16:06)*放下舍得与所有人说:no(2007.03.01)(10:16:08)*工业化人与所有人说:NO(2007.03.01)(10:16:08)marsjin与所有人说:no sound(2007.03.01)(10:16:09)*Jerryhjf与所有人说:no(2007.03.01)(10:16:10)碧空天与所有人说:听不见(2007.03.01)(10:16:11)ww enter this room.(2007.03.01)(10:16:12)arwin与所有人说:no(2007.03.01)(10:16:17)baberson与所有人说:i can't get the sound now(2007.03.01)(10:16:20)*工业化人与所有人说:no sound(2007.03.01)(10:16:20)iceboat与所有人说:no(2007.03.01)(10:16:27)mani与所有人说:no(2007.03.01)(10:16:29)zengwei enter this room.(2007.03.01)(10:16:50)mani enter this room.(2007.03.01)(10:16:55)sunmm_miss enter this room.(2007.03.01)(10:16:57)碧空天与所有人说:ok(2007.03.01)(10:17:02)umlchina_semina_320与所有人说:OK(2007.03.01)(10:17:03)zengwei_423 enter this room.(2007.03.01)(10:17:04)baberson与所有人说:ok.(2007.03.01)(10:17:08)arwin与所有人说:ok(2007.03.01)(10:17:12)lakedai与所有人说:OK(2007.03.01)(10:17:17)marsjin与所有人说:断续(2007.03.01)(10:17:22)*工业化人与所有人说:hehe(2007.03.01)(10:17:32)umlchina_semina_320与所有人说:大家有问题随时提(2007.03.01)(10:17:52)umlchina_semina_320与所有人说:a kind of food?(2007.03.01)(10:17:59)*cisumer enter this room.(2007.03.01)(10:18:02)baberson与所有人说:鱼香匣子(2007.03.01)(10:18:04)tangyeyang与所有人说:鱼香茄子(2007.03.01)(10:18:07)flyingchen与所有人说:哈哈(2007.03.01)(10:18:11)*工业化人与所有人说:...(2007.03.01)(10:18:14)Joshua与所有人说:eggplant with fish sauce(2007.03.01)(10:18:17)umlchina_semina_320与所有人说:I got it(2007.03.01)(10:18:18)iceboat与所有人说:鱼香茄子(2007.03.01)(10:18:24)yyj enter this room.(2007.03.01)(10:18:26)marsjin与所有人说:能否说明一下,模式的实际应用方面的(2007.03.01)(10:19:24)炊烟几许与炊烟几许说:刚刚能听到,现在已经长时间没有声音了(2007.03.01)(10:19:36)Joshua与所有人说:Working Effectively With Legacy Code, by Michael Feathers(2007.03.01)(10:19:57)Joshua与所有人说:assume that tests exist(2007.03.01)(10:20:21)umlchina_semina_320与所有人说:that's(2007.03.01)(10:20:22)marsjin与所有人说:请问,对于不同语言的设计模式有什么区别?(2007.03.01)(10:20:28)isaachan与所有人说:Could Kerievsky talk about more how to control the unit test granularity?(2007.03.01)(10:20:39)isaachan与所有人说:If I write coarse grain unit test, I always worry about some details go wrong.(2007.03.01)(10:20:40)Joshua与所有人说:sure(2007.03.01)(10:20:46)umlchina_semina_320与所有人说:that's great, speaking with typing(2007.03.01)(10:21:04)Joshua与所有人说:5 lines of code(2007.03.01)(10:21:15)ww_675 enter this room.(2007.03.01)(10:21:22)sunmm_miss与所有人说:请问怎么听不到声音?(2007.03.01)(10:21:35)umlchina_semina_320与所有人说:听不见声音请手工安装http://www.bliao.com/help/Bluesky.exe,讲座室帮助:http://www.umlchina.com/Chat/cn_guide.htm(2007.03.01)(10:21:41)Joshua与所有人说:microtests (a.k.a. Unit Tests)(2007.03.01)(10:21:52)Joshua与所有人说:test a small piece of functionality(2007.03.01)(10:21:55)Joshua与所有人说:micro means small(2007.03.01)(10:22:45)Joshua与所有人说:Say we have a List class(2007.03.01)(10:22:53)Joshua与所有人说:List.add(2007.03.01)(10:23:14)Joshua与所有人说:if we test List.add(2007.03.01)(10:23:19)Joshua与所有人说:we can write many tests for it(2007.03.01)(10:23:21)Joshua与所有人说:microtests(2007.03.01)(10:23:28)Joshua与所有人说:testAddGrowsCapacity(2007.03.01)(10:23:38)Joshua与所有人说:testAddAllowsDuplicates(2007.03.01)(10:24:01)Joshua与所有人说:testAddAtCapacity(2007.03.01)(10:24:05)Joshua与所有人说:and do on(2007.03.01)(10:24:15)Joshua与所有人说:List.add(2007.03.01)(10:24:33)*工业化人与所有人说:???(2007.03.01)(10:24:39)baberson与所有人说:yeah.(2007.03.01)(10:24:45)碧空天与所有人说:yes, go on(2007.03.01)(10:24:49)umlchina_semina_320与所有人说:yeah(2007.03.01)(10:25:11)iceboat与所有人说:Continue(2007.03.01)(10:25:14)Joshua与所有人说:A good Writing Is Based Upon Revision(2007.03.01)(10:25:18)Joshua与所有人说:Revision(2007.03.01)(10:25:23)Joshua与所有人说:to improve something(2007.03.01)(10:25:50)zengwei enter this room.(2007.03.01)(10:26:05)umlchina_semina_320与所有人说:slide number 12(2007.03.01)(10:26:05)Joshua与所有人说:go to slide # 12(2007.03.01)(10:26:14)baberson与所有人说:ok.(2007.03.01)(10:26:34)ll enter this room.(2007.03.01)(10:26:49)Joshua与所有人说:the true valuye(2007.03.01)(10:26:55)Joshua与所有人说:of Refactoring to Patterns, the book(2007.03.01)(10:27:00)Joshua与所有人说:is about the Thought Process(2007.03.01)(10:27:08)Joshua与所有人说:that is to say(2007.03.01)(10:27:14)*工业化人与所有人说:???no sound?(2007.03.01)(10:27:15)mani与*umlchina2说:where can I get the slide ppt(2007.03.01)(10:27:15)Joshua与所有人说:When Do We Refactor To A Pattern?(2007.03.01)(10:27:20)umlchina_semina_320与所有人说:robert1234567请关麦(2007.03.01)(10:27:20)Joshua与所有人说:and(2007.03.01)(10:27:29)Joshua与所有人说:How DO We Refactor?(2007.03.01)(10:27:36)robert1234567 enter this room.(2007.03.01)(10:27:46)*sumanli enter this room.(2007.03.01)(10:27:50)碧空天与所有人说:no sound(2007.03.01)(10:27:53)iceboat与所有人说:???????(2007.03.01)(10:28:02)Joshua与所有人说:after writing the book(2007.03.01)(10:28:03)iceboat与所有人说:sound ?/////(2007.03.01)(10:28:10)Joshua与所有人说:I found new things that I did not know(2007.03.01)(10:28:13)mani1 enter this room.(2007.03.01)(10:28:13)umlchina_semina_320与所有人说:soond is back(2007.03.01)(10:28:24)碧空天与所有人说:ok(2007.03.01)(10:28:24)umlchina_semina_320与所有人说:yes(2007.03.01)(10:28:25)arwin与所有人说:yes(2007.03.01)(10:28:26)lakedai与所有人说:yes(2007.03.01)(10:28:26)诗人笑与所有人说:yes(2007.03.01)(10:29:13)Joshua与所有人说:Patterns of Refactoring(2007.03.01)(10:29:26)umlchina_semina_320与所有人说:麻烦大家把聊天室右下角的麦克都关掉(2007.03.01)(10:29:41)Joshua与所有人说:Piecemeal Change(2007.03.01)(10:29:44)*工业化人与所有人说:麻烦大家把聊天室右下角的麦克都关掉(2007.03.01)(10:29:52)Joshua与所有人说:Patterns of Refactoring: Piecemeal Change(2007.03.01)(10:29:52)marsjin与所有人说:麻烦大家把聊天室右下角的麦克都关掉(2007.03.01)(10:30:19)sunmm_miss与umlchina_semina_320说:请问我所有的插件都装了,显示的也和说明文档描述的一样正常,为什么还是听不到声音呢?(2007.03.01)(10:30:19)B2♂Pencil与所有人说:怎么是我拿的麦?????(2007.03.01)(10:30:26)ww_675与11说:1(2007.03.01)(10:30:55)Joshua与所有人说:picture a Looooooon Method(2007.03.01)(10:31:01)Joshua与所有人说:Long Method(2007.03.01)(10:31:24)yyj enter this room.(2007.03.01)(10:31:25)ww_675与11说:你点 ww-675(2007.03.01)(10:31:53)Joshua与所有人说:A Long Method is any method that you have to work hard to understand(2007.03.01)(10:32:19)ww_675与11说:再点私聊 分屏(2007.03.01)(10:32:22)*umlchina_seminar enter this room.(2007.03.01)(10:32:24)tangyeyang enter this room.(2007.03.01)(10:32:57)*umlchina_seminar enter this room.(2007.03.01)(10:33:29)Joshua与所有人说:beginners at Refactoring(2007.03.01)(10:33:33)Joshua与所有人说:often do too much work(2007.03.01)(10:33:38)Refactoring enter this room.(2007.03.01)(10:33:56)marsjin与所有人说:重构(2007.03.01)(10:33:59)Joshua与所有人说:small step, run the tests(2007.03.01)(10:34:06)*umlchina2与*umlchina2说:麻烦大家把聊天室右下角的麦克都关掉(2007.03.01)(10:34:16)lakedai与所有人说:are you mean to do refactoring while coding?(2007.03.01)(10:34:39)Joshua与所有人说:if you write a sentence(2007.03.01)(10:34:49)Joshua与所有人说:do you ever refactor your words before sending the sentence?(2007.03.01)(10:35:01)Joshua与所有人说:I do(2007.03.01)(10:35:03)baberson与所有人说:me too(2007.03.01)(10:35:03)ww_675与11说:你点 ww-675(2007.03.01)(10:35:06)Joshua与所有人说:all the time(2007.03.01)(10:35:13)Joshua与所有人说:so refactoring is PART of coding(2007.03.01)(10:35:20)lakedai与所有人说:i do ,but not seem to be a refactoring(2007.03.01)(10:35:25)Joshua与所有人说:we refactor while we code(2007.03.01)(10:35:46)Joshua与所有人说:What is the definition of Refactoring?(2007.03.01)(10:35:54)Joshua与所有人说:It is(2007.03.01)(10:36:08)Joshua与所有人说:Behavior Preserving Transformations(2007.03.01)(10:36:19)Joshua与所有人说:We preserve behavior and improve design(2007.03.01)(10:36:35)Joshua与所有人说:so if you change the name of a variable(2007.03.01)(10:36:39)Joshua与所有人说:it is trivial(2007.03.01)(10:36:45)Joshua与所有人说:yet that is a tiny refactroing(2007.03.01)(10:36:51)Joshua与所有人说:refactoring(2007.03.01)(10:37:03)ww_675与11说:我是往往 点 ww-675 再点 私聊 分屏(2007.03.01)(10:37:03)Joshua与所有人说:does that answer your question?(2007.03.01)(10:37:14)mmsteam enter this room.(2007.03.01)(10:37:15)lakedai与所有人说:thanks. but that seem to be the result of not sufficient design(2007.03.01)(10:37:19)marsjin与所有人说:我认为重构是模式的进一步升华,是否正确?(2007.03.01)(10:37:22)Refactoring与所有人说:有问题随时提(2007.03.01)(10:37:34)Joshua与所有人说:yes, refactoring is something we do(2007.03.01)(10:37:43)Joshua与所有人说:when we see that our design is not sufficient(2007.03.01)(10:37:49)ll与所有人说:11(2007.03.01)(10:38:03)Joshua与所有人说:It is not important to think very very hard(2007.03.01)(10:38:10)Joshua与所有人说:to come up with a design that is perfect(2007.03.01)(10:38:18)Joshua与所有人说:so you don't need to refactor(2007.03.01)(10:38:27)Joshua与所有人说:because no design is perfect(2007.03.01)(10:38:41)Joshua与所有人说:my first idea for a variable name will not be good(2007.03.01)(10:38:47)Joshua与所有人说:my 7th idea may be good(2007.03.01)(10:38:56)Joshua与所有人说:and my colleague's 8th idea may be better(2007.03.01)(10:39:05)Joshua与所有人说:do you see lakedai?(2007.03.01)(10:39:22)*工业化人与所有人说:??(2007.03.01)(10:39:32)lakedai与所有人说:thanks. that is true.(2007.03.01)(10:39:42)Joshua与所有人说:ok, so Piecemeail Change(2007.03.01)(10:39:49)Joshua与所有人说:is a very basic Pattern of Refactoring(2007.03.01)(10:39:49)*sunmm_miss enter this room.(2007.03.01)(10:39:57)ww_675与11说:099来了(2007.03.01)(10:40:02)Joshua与所有人说:we do all refactoring in small, safe steps(2007.03.01)(10:40:18)Joshua与所有人说:1 - 2 minutes(2007.03.01)(10:40:27)Joshua与所有人说:before your tests are running correct(2007.03.01)(10:40:45)Joshua与所有人说:the next pattern of refactoring(2007.03.01)(10:40:50)Joshua与所有人说:I call it(2007.03.01)(10:40:52)Joshua与所有人说:Narrowed Change(2007.03.01)(10:40:57)raineviolet enter this room.(2007.03.01)(10:41:05)Joshua与所有人说:who uses Eclipse?(2007.03.01)(10:41:12)lakedai与所有人说:me(2007.03.01)(10:41:20)gll76与所有人说:me(2007.03.01)(10:41:25)Refactoring与所有人说:No, vS2005(2007.03.01)(10:41:27)碧空天与所有人说:I use .net(2007.03.01)(10:41:43)Joshua与所有人说:VS2005 -- do you use Resharper?(2007.03.01)(10:41:44)ww_675与11说:0793怎么半????????????????????????(2007.03.01)(10:41:52)iceboat与所有人说:ME(2007.03.01)(10:41:55)iceboat与所有人说:c#(2007.03.01)(10:42:07)Refactoring与所有人说:Resharper , no(2007.03.01)(10:42:07)Joshua与所有人说:Resharper is for C# and includes tools for Refactoring(2007.03.01)(10:42:14)Joshua与所有人说:You MUST use it(2007.03.01)(10:42:21)Joshua与所有人说:Resharper is an EXCELLENT product(2007.03.01)(10:42:30)Joshua与所有人说:it gives you the ability to do lots of Refactoring in C#(2007.03.01)(10:42:39)Joshua与所有人说:I highly recommend that product(2007.03.01)(10:42:47)碧空天与所有人说:yes,it's very good and easy to use(2007.03.01)(10:42:58)Joshua与所有人说:when you make an error(2007.03.01)(10:43:08)Joshua与所有人说:you see little red marks in the scroll bar(2007.03.01)(10:43:16)Joshua与所有人说:have you seen them?(2007.03.01)(10:43:21)yyj enter this room.(2007.03.01)(10:43:27)碧空天与所有人说:yes(2007.03.01)(10:43:38)iceboat与所有人说:yes(2007.03.01)(10:43:45)isaachan与所有人说:yes(2007.03.01)(10:43:50)诗人笑与所有人说:always(2007.03.01)(10:44:06)Joshua与所有人说:so what if you change 1 line of code(2007.03.01)(10:44:13)Joshua与所有人说:and then you see 30 red marks(2007.03.01)(10:44:24)Joshua与所有人说:I call that(2007.03.01)(10:44:28)Joshua与所有人说:a Refactoring Rash(2007.03.01)(10:44:43)Joshua与所有人说:a Rash is when you have little red bumps on your skin(2007.03.01)(10:44:56)Joshua与所有人说:Refactoring Rash is little red lines in your IDE(2007.03.01)(10:44:58)iceboat与所有人说:I KNOW(2007.03.01)(10:45:06)Joshua与所有人说:If you get a Refactoring RASH(2007.03.01)(10:45:12)Joshua与所有人说:then you took TOO BIG A STEP!!!(2007.03.01)(10:45:30)Joshua与所有人说:You did something TOO BIG(2007.03.01)(10:45:42)Joshua与所有人说:and you must a way to Narrow the Change(2007.03.01)(10:46:00)Joshua与所有人说:Narrow the change(2007.03.01)(10:46:03)Joshua与所有人说:for example(2007.03.01)(10:46:05)yyj enter this room.(2007.03.01)(10:46:12)Joshua与所有人说:if you have a field in a class(2007.03.01)(10:46:19)Joshua与所有人说:of type String(2007.03.01)(10:46:20)11111 enter this room.(2007.03.01)(10:46:28)Joshua与所有人说:and you want to change the type to be a class(2007.03.01)(10:46:33)Joshua与所有人说:that you made(2007.03.01)(10:46:36)Joshua与所有人说:a new class(2007.03.01)(10:46:46)Joshua与所有人说:if you just change the type(2007.03.01)(10:46:52)Joshua与所有人说:you may get a refactoring rash(2007.03.01)(10:47:02)Joshua与所有人说:instead(2007.03.01)(10:47:09)Joshua与所有人说:you can implement a Narrowed CHange(2007.03.01)(10:47:11)Joshua与所有人说:how?(2007.03.01)(10:47:15)Joshua与所有人说:first(2007.03.01)(10:47:22)Joshua与所有人说:encapsulate the change(2007.03.01)(10:47:36)Joshua与所有人说:find where the code references the String(2007.03.01)(10:47:50)Joshua与所有人说:and apply the refactoring Encapsulate Field(2007.03.01)(10:48:02)Joshua与所有人说:that will make(2007.03.01)(10:48:08)Joshua与所有人说:a Getter and Setter methid(2007.03.01)(10:48:10)Joshua与所有人说:method(2007.03.01)(10:48:29)Joshua与所有人说:then you can try to make the change again from String to your class(2007.03.01)(10:48:36)Joshua与所有人说:and this time(2007.03.01)(10:48:42)Joshua与所有人说:you will have a narrower change(2007.03.01)(10:48:51)Joshua与所有人说:does this make sense to you?(2007.03.01)(10:48:58)lakedai与所有人说:i see(2007.03.01)(10:49:01)baberson与所有人说:yes(2007.03.01)(10:49:20)asd enter this room.(2007.03.01)(10:49:27)Joshua与所有人说:in other words -- do work prior to the change to make the rash very small(2007.03.01)(10:49:34)Joshua与所有人说:so maybe you see 3-5 red lines(2007.03.01)(10:49:37)*umlchina_seminar与*umlchina2说:有时没声音就是没有说话(2007.03.01)(10:49:38)Joshua与所有人说:in your IDE(2007.03.01)(10:49:42)Joshua与所有人说:not 30!(2007.03.01)(10:50:02)Joshua与所有人说:Is anyone confused?(2007.03.01)(10:50:14)Joshua与所有人说:(2007.03.01)(10:50:23)marsjin与所有人说:yes(2007.03.01)(10:50:28)iceboat与所有人说:(2007.03.01)(10:50:30)Joshua与所有人说:good, ask a question!(2007.03.01)(10:50:32)flyingchen与所有人说:yes(2007.03.01)(10:50:37)Joshua与所有人说:I like questions(2007.03.01)(10:51:00)tangyeyang与所有人说:are these ideas all in your book?(2007.03.01)(10:51:14)Joshua与所有人说:these ideas are implicit in my book(2007.03.01)(10:51:28)Joshua与所有人说:implicit -- there but not explicit(2007.03.01)(10:51:29)gsailor enter this room.(2007.03.01)(10:51:29)iceboat与所有人说:continue(2007.03.01)(10:51:39)marsjin与所有人说:book?(2007.03.01)(10:51:44)Joshua与所有人说:you must read the examples very carefully(2007.03.01)(10:51:48)Joshua与所有人说:to find these ideas(2007.03.01)(10:51:58)tangyeyang与所有人说:ok(2007.03.01)(10:52:00)arwin与所有人说:yes please continue(2007.03.01)(10:52:01)Joshua与所有人说:Narrowed Change(2007.03.01)(10:52:08)Joshua与所有人说:is from the refactoring in my book(2007.03.01)(10:52:10)Joshua与所有人说:called(2007.03.01)(10:52:16)Joshua与所有人说:Replace Type Code with Class(2007.03.01)(10:52:25)Joshua与所有人说:if you study how I refactor the code(2007.03.01)(10:52:32)Joshua与所有人说:you will see how it uses a Narrowed Change(2007.03.01)(10:52:38)Joshua与所有人说:but I never use the words Narrowed Change(2007.03.01)(10:52:41)gsailor enter this room.(2007.03.01)(10:52:42)Joshua与所有人说:that is a new term for me(2007.03.01)(10:52:58)Joshua与所有人说:so on this chat you are getting the very latest new stuff from Kerievsky!!(2007.03.01)(10:52:59)wzg enter this room.(2007.03.01)(10:53:12)Joshua与所有人说:BTW, I have never been to China(2007.03.01)(10:53:17)Joshua与所有人说:and would like to come some day(2007.03.01)(10:53:19)ww_675与11说:0585(2007.03.01)(10:53:22)诗人笑与所有人说:welcome(2007.03.01)(10:53:30)hank_xu enter this room.(2007.03.01)(10:53:32)iceboat与所有人说:==(2007.03.01)(10:53:35)marsjin enter this room.(2007.03.01)(10:53:46)marsjin enter this room.(2007.03.01)(10:53:52)*sunmm_miss与*umlchina_seminar说:不好意思(2007.03.01)(10:53:58)Joshua与所有人说:Evolved Target(2007.03.01)(10:54:03)marsjin_643 enter this room.(2007.03.01)(10:54:07)Joshua与所有人说:this is another Pattern of Refactoring(2007.03.01)(10:54:16)aaaaa enter this room.(2007.03.01)(10:54:19)Joshua与所有人说:Evolve -- means to grow into something(2007.03.01)(10:54:22)flowerpp enter this room.(2007.03.01)(10:54:30)Joshua与所有人说:You know what TArget means?(2007.03.01)(10:54:33)marsjin与所有人说:What is Narrowed Change ?(2007.03.01)(10:54:41)Joshua与所有人说:Target -- the place we want to go to(2007.03.01)(10:54:49)*sunmm_miss与*umlchina_seminar说:我的语音上面显示的发言者都是我自己,所以我听不到语音(2007.03.01)(10:54:59)Joshua与所有人说:Marsjin -- what do you think Narrowed Change is?(2007.03.01)(10:55:32)fei545 enter this room.(2007.03.01)(10:55:33)flowerpp enter this room.(2007.03.01)(10:55:35)Refactoring与所有人说:关了再开看看(2007.03.01)(10:55:36)marsjin与所有人说:I Can't know it(2007.03.01)(10:56:31)Joshua与所有人说:A narrowed change is a way to make your # of refactorings smaller(2007.03.01)(10:56:44)Joshua与所有人说:when you need to change the design of something(2007.03.01)(10:56:51)Joshua与所有人说:you can do some pre-world(2007.03.01)(10:56:54)Joshua与所有人说:pre-work(2007.03.01)(10:56:58)Joshua与所有人说:to narrow the change(2007.03.01)(10:57:01)h enter this room.(2007.03.01)(10:57:04)Joshua与所有人说:to a smaller number of change points(2007.03.01)(10:57:11)Joshua与所有人说:i.e. places to change the code(2007.03.01)(10:57:33)Joshua与所有人说:does that help?(2007.03.01)(10:57:51)Joshua与所有人说:in other words(2007.03.01)(10:57:57)Joshua与所有人说:when you try to refactor(2007.03.01)(10:58:05)marsjin与所有人说:Parrterns For C#?(2007.03.01)(10:58:05)Joshua与所有人说:sometimes you break the code too much(2007.03.01)(10:58:23)wzg enter this room.(2007.03.01)(10:58:29)ab enter this room.(2007.03.01)(10:58:39)ab enter this room.(2007.03.01)(10:58:43)Joshua与所有人说:Narrowed Change is a way to make it easier to change the code(2007.03.01)(10:58:53)Joshua与所有人说:you can do it in C#, C++, Java, etc.(2007.03.01)(10:59:01)sunshineormer enter this room.(2007.03.01)(10:59:06)ll enter this room.(2007.03.01)(10:59:14)ll与所有人说:11(2007.03.01)(10:59:16)flowerpp与所有人说:yes,JAVA(2007.03.01)(10:59:19)Joshua与所有人说:Evolved Target is the next topic(2007.03.01)(10:59:22)wzg enter this room.(2007.03.01)(10:59:32)ll与所有人说:1(2007.03.01)(10:59:34)Joshua与所有人说:Do you all know the Visitor pattern?(2007.03.01)(10:59:39)lakedai与所有人说:yes(2007.03.01)(10:59:40)baberson与所有人说:yes.(2007.03.01)(10:59:48)wzg enter this room.(2007.03.01)(10:59:51)aaaaa与所有人说:no(2007.03.01)(10:59:53)flyingchen与所有人说:y(2007.03.01)(11:00:15)jesse01 enter this room.(2007.03.01)(11:00:17)Joshua与所有人说:Slide #24(2007.03.01)(11:00:29)jesse01 enter this room.(2007.03.01)(11:00:49)Joshua与所有人说:A method accumulates information from heterogeneous classes(2007.03.01)(11:00:58)ab enter this room.(2007.03.01)(11:01:08)Joshua与所有人说:We can refactor such code(2007.03.01)(11:01:15)Joshua与所有人说:to use a Visitor pattern(2007.03.01)(11:01:34)Joshua与所有人说:how do we do such a refactoring?(2007.03.01)(11:01:40)Joshua与所有人说:in small pieces!(2007.03.01)(11:01:45)Joshua与所有人说:and we do so(2007.03.01)(11:01:50)Joshua与所有人说:by Evolving the Target(2007.03.01)(11:02:32)Hanson enter this room.(2007.03.01)(11:03:31)Joshua与所有人说:is that clear to understand?(2007.03.01)(11:03:44)baberson与所有人说:yeah(2007.03.01)(11:03:46)K501 enter this room.(2007.03.01)(11:04:11)Joshua与所有人说:baberson -- how many years have you been programming?(2007.03.01)(11:04:16)baberson与所有人说:5 years(2007.03.01)(11:04:19)flyingchen与所有人说:2(2007.03.01)(11:04:21)arwin与所有人说:almost 2(2007.03.01)(11:04:24)Joshua与所有人说:and Refactoring -- how many?(2007.03.01)(11:04:32)flyingchen与所有人说:0.5-(2007.03.01)(11:04:34)baberson与所有人说:just 1 year(2007.03.01)(11:04:53)Joshua与所有人说:ok, well I didn't know this stuff after 10 years of programming!(2007.03.01)(11:05:04)Joshua与所有人说:well, that isn't exactly right(2007.03.01)(11:05:15)Joshua与所有人说:my point about Evolved Target(2007.03.01)(11:05:20)K501 enter this room.(2007.03.01)(11:05:28)Joshua与所有人说:is that sometime you refactor a design(2007.03.01)(11:05:30)lanling_007@sohu.com enter this room.(2007.03.01)(11:05:34)Joshua与所有人说:into a known target(2007.03.01)(11:05:53)Joshua与所有人说:to make the design look like the target(2007.03.01)(11:06:00)Joshua与所有人说:you need to make small steps(2007.03.01)(11:06:14)Joshua与所有人说:small steps is at the heart of what we edo(2007.03.01)(11:06:36)lanling_007@sohu.com enter this room.(2007.03.01)(11:06:39)Joshua与所有人说:let me talk about the Template Method pattern(2007.03.01)(11:06:43)Joshua与所有人说:who know that one?(2007.03.01)(11:06:46)baberson与所有人说:i do(2007.03.01)(11:06:52)tangyeyang与所有人说:what is a know target? a pattern?(2007.03.01)(11:07:03)Joshua与所有人说:yes, a known target could be a pattern(2007.03.01)(11:07:06)ab与jesse01说:你说话我都听到了.(2007.03.01)(11:07:26)Joshua与所有人说:who does not know the Template Method pattern?(2007.03.01)(11:07:31)Joshua与所有人说:it is ok to not know it(2007.03.01)(11:07:35)Joshua与所有人说:you will learn it now(2007.03.01)(11:07:47)诗人笑与所有人说:me(2007.03.01)(11:07:47)ab与jesse01说:刚才咳嗽我听到了.从耳机里(2007.03.01)(11:07:54)*wangming66 enter this room.(2007.03.01)(11:07:58)lc enter this room.(2007.03.01)(11:07:59)jesse01与ab说:你是阿波?(2007.03.01)(11:07:59)java enter this room.(2007.03.01)(11:08:07)Joshua与所有人说:say I have a class called Vehicle(2007.03.01)(11:08:08)ab与jesse01说:是啊(2007.03.01)(11:08:15)Joshua与所有人说:and a subclass called CAr(2007.03.01)(11:08:18)Joshua与所有人说:Car(2007.03.01)(11:08:25)Joshua与所有人说:and a subclass called Bus(2007.03.01)(11:08:50)Joshua与所有人说:say that Vehicle has a method called Drive(2007.03.01)(11:08:57)Joshua与所有人说:or drive() in Java(2007.03.01)(11:09:15)Joshua与所有人说:to drive the car and bus is similar(2007.03.01)(11:09:21)Joshua与所有人说:but slightly different(2007.03.01)(11:09:25)Joshua与所有人说:we do this(2007.03.01)(11:09:31)Joshua与所有人说:startMotor();(2007.03.01)(11:10:02)Joshua与所有人说:announcementToPassengers();(2007.03.01)(11:10:21)Joshua与所有人说:we only have announcementToPassengers on a Bus, not a Car(2007.03.01)(11:10:34)Joshua与所有人说:"Ladies and Gentlemen, we are now going to ShengHai"(2007.03.01)(11:10:48)isaachan与所有人说:;)(2007.03.01)(11:10:51)Joshua与所有人说:so part of the drive method(2007.03.01)(11:11:00)Joshua与所有人说:is specific to the Bus(2007.03.01)(11:11:17)Joshua与所有人说:pressGas()(2007.03.01)(11:11:25)Joshua与所有人说:is a method that is the same in Car or Bus(2007.03.01)(11:11:34)Joshua与所有人说:steer()(2007.03.01)(11:11:41)Joshua与所有人说:is also in both subclasses(2007.03.01)(11:12:09)Joshua与所有人说:so the method, drive(), in Car, is 3 lines of code(2007.03.01)(11:12:22)ab与jesse01说:网络不太好.(2007.03.01)(11:12:25)Joshua与所有人说:and the drive() method in Bus is 4 lines of code(2007.03.01)(11:12:36)Joshua与所有人说:now -- 3 of the lines of code are DUPLICATED(2007.03.01)(11:12:40)Joshua与所有人说:in Car and Bus(2007.03.01)(11:13:08)Joshua与所有人说:how can we get rid of the Duplication?(2007.03.01)(11:13:21)lakedai与所有人说:move it to parent class?(2007.03.01)(11:13:28)Joshua与所有人说:yes, move to parent(2007.03.01)(11:13:30)Joshua与所有人说:but(2007.03.01)(11:13:44)Joshua与所有人说:what about the announceToPassengers()(2007.03.01)(11:13:52)Joshua与所有人说:that is specific to Bus(2007.03.01)(11:13:56)Joshua与所有人说:and is not on CAr(2007.03.01)(11:14:00)lakedai与所有人说:use a new method in parent(2007.03.01)(11:14:13)*flyang2001与所有人说:inherited(2007.03.01)(11:14:15)Joshua与所有人说:can we have a drive method in Vehicle(2007.03.01)(11:14:20)111 enter this room.(2007.03.01)(11:14:23)Joshua与所有人说:that is a Template Method?(2007.03.01)(11:14:35)Joshua与所有人说:in other words(2007.03.01)(11:14:38)isaachan与所有人说:to 管理员:稍后有关于敏捷开发的内容么?(2007.03.01)(11:14:45)Joshua与所有人说:the drive() method Vehicle(2007.03.01)(11:14:50)Joshua与所有人说:could say(2007.03.01)(11:15:07)*umlchina_seminar与*umlchina2说:直接问joshua即可(2007.03.01)(11:15:28)lakedai与所有人说:drive in parent composed of several steps?(2007.03.01)(11:15:35)Joshua与所有人说:could say do this, do that, do that(2007.03.01)(11:15:37)Joshua与所有人说:in other words(2007.03.01)(11:15:44)Joshua与所有人说:do the steps of the algorithm(2007.03.01)(11:15:58)Joshua与所有人说:and then subclasses decide what to override(2007.03.01)(11:16:27)Joshua与所有人说:so Template Method removes duplication(2007.03.01)(11:16:43)Joshua与所有人说:because we put what is unique into subclasses(2007.03.01)(11:16:50)Joshua与所有人说:and what is common into superclasses(2007.03.01)(11:17:05)Joshua与所有人说:so if I see code with duplication in subclasses(2007.03.01)(11:17:14)Joshua与所有人说:I often refactor to Template Method(2007.03.01)(11:17:29)Joshua与所有人说:I refactor the code to a known Target(2007.03.01)(11:17:40)Joshua与所有人说:so I am Evolving the code to a Target(2007.03.01)(11:17:49)Joshua与所有人说:make sense?(2007.03.01)(11:17:54)lakedai与所有人说:yes(2007.03.01)(11:18:19)baberson与所有人说:yes.(2007.03.01)(11:18:25)Joshua与所有人说:Refactoring -- do you have a question?(2007.03.01)(11:19:36)isaachan与所有人说:no(2007.03.01)(11:19:38)Joshua与所有人说:yes, I will talk about Agile Development near the end(2007.03.01)(11:19:41)Joshua与所有人说:thanks for asking(2007.03.01)(11:19:51)Joshua与所有人说:please go to slide #22(2007.03.01)(11:20:02)isaachan与所有人说:Question:Several days ago, I just learned Toyota Lean Production.(2007.03.01)(11:20:03)诗人笑与所有人说:ok(2007.03.01)(11:20:16)isaachan与所有人说:My understanding of "lean" to software development is giving more attention to source code.(2007.03.01)(11:20:26)isaachan与所有人说:How to Kerievsky think so?(2007.03.01)(11:20:43)Joshua与所有人说:we make code Lean when we remove duplication(2007.03.01)(11:20:55)Joshua与所有人说:we make code lean, when we don't over-engineer(2007.03.01)(11:21:04)Joshua与所有人说:over-engineer means to do TOO MUCH design(2007.03.01)(11:21:09)Joshua与所有人说:too flexible(2007.03.01)(11:21:12)Joshua与所有人说:to elegant(2007.03.01)(11:21:26)Joshua与所有人说:we strive for just the right amount of design(2007.03.01)(11:21:35)kkk enter this room.(2007.03.01)(11:21:56)Joshua与所有人说:does that make sense?(2007.03.01)(11:21:57)isaachan与所有人说:yes, thanks(2007.03.01)(11:22:01)wzg与所有人说:yes(2007.03.01)(11:22:08)Joshua与所有人说:slide #22(2007.03.01)(11:22:19)Joshua与所有人说:have any of you ever seen a class with too many constructors?(2007.03.01)(11:22:36)isaachan与所有人说:yes(2007.03.01)(11:22:43)baberson与所有人说:no.(2007.03.01)(11:22:45)Joshua与所有人说:do you see how the Loan class has many constructors?(2007.03.01)(11:23:07)Joshua与所有人说:first of all(2007.03.01)(11:23:15)Joshua与所有人说:is it clear what a Loan is?(2007.03.01)(11:23:18)kkk enter this room.(2007.03.01)(11:23:24)Joshua与所有人说:not all of us may know what a Loan is(2007.03.01)(11:24:00)Joshua与所有人说:a Loan is when a back gives us money and we must pay it back over time(2007.03.01)(11:24:20)Joshua与所有人说:The Loan you see on page 22(2007.03.01)(11:24:20)wzg与所有人说:clear(2007.03.01)(11:24:36)Joshua与所有人说:can represent different kinds of loans(2007.03.01)(11:25:06)Joshua与所有人说:so it has many constructors for the different kinds of loans(2007.03.01)(11:25:23)Joshua与所有人说:yet it isn't clear(2007.03.01)(11:25:30)Joshua与所有人说:what those constructors do(2007.03.01)(11:26:03)Joshua与所有人说:clarify our intention(2007.03.01)(11:26:21)Joshua与所有人说:the Creation Method allows us to use an intention-revealing name(2007.03.01)(11:26:22)angushine enter this room.(2007.03.01)(11:26:33)Joshua与所有人说:instead of a constructor(2007.03.01)(11:26:48)Joshua与所有人说:clear?(2007.03.01)(11:26:55)mmsteam与所有人说:y(2007.03.01)(11:27:06)angushine enter this room.(2007.03.01)(11:27:10)lakedai与所有人说:y(2007.03.01)(11:27:12)aaaaa与所有人说:n(2007.03.01)(11:27:13)baberson与所有人说:yes(2007.03.01)(11:27:22)Joshua与所有人说:Ok, so when we refactor to a pattern(2007.03.01)(11:27:29)Joshua与所有人说:like Creation Method or Template Method(2007.03.01)(11:27:34)Joshua与所有人说:is it important to know(2007.03.01)(11:27:44)Joshua与所有人说:that there are Many Ways To Implement The Pattern(2007.03.01)(11:28:17)Joshua与所有人说:slide 18(2007.03.01)(11:28:29)Joshua与所有人说:you will see a Factory Method example(2007.03.01)(11:28:33)angushine enter this room.(2007.03.01)(11:28:53)Joshua与所有人说:that diagram is a classic(2007.03.01)(11:29:00)chin enter this room.(2007.03.01)(11:29:01)Joshua与所有人说:structure for a Factory Method(2007.03.01)(11:29:05)Joshua与所有人说:do you all know UML?(2007.03.01)(11:29:22)lakedai与所有人说:yes(2007.03.01)(11:29:31)baberson与所有人说:y(2007.03.01)(11:29:59)Joshua与所有人说:the Creator and the Product are abstract(2007.03.01)(11:30:07)Joshua与所有人说:because they are in Italics!(2007.03.01)(11:30:32)Joshua与所有人说:slide 19(2007.03.01)(11:30:43)Joshua与所有人说:you will see other ways to implement Factory Method(2007.03.01)(11:31:35)Joshua与所有人说:is that clear?(2007.03.01)(11:32:02)lakedai与所有人说:y(2007.03.01)(11:32:18)K501 enter this room.(2007.03.01)(11:32:20)Joshua与所有人说:the same is true for Slide #20(2007.03.01)(11:32:39)Joshua与所有人说:there are different ways to refactor to a Composite(2007.03.01)(11:32:53)Joshua与所有人说:the way I show in my book(2007.03.01)(11:32:56)Joshua与所有人说:is to produce a(2007.03.01)(11:33:02)Joshua与所有人说:Leafless Composite(2007.03.01)(11:33:03)出售嘛嘞佬 enter this room.(2007.03.01)(11:33:08)Joshua与所有人说:a Composite with no Leaf(2007.03.01)(11:34:02)Joshua与所有人说:please go to slide #15(2007.03.01)(11:35:12)Joshua与所有人说:Smells Are Important To Refactoring(2007.03.01)(11:35:17)Joshua与所有人说:Code Smells(2007.03.01)(11:35:20)Joshua与所有人说:it is a funny term(2007.03.01)(11:35:34)Joshua与所有人说:to help us understand that it is important(2007.03.01)(11:35:37)Joshua与所有人说:to knwo abotu Bad Designs(2007.03.01)(11:35:55)Joshua与所有人说:A code smell is a design that duplicates, complicates, bloats or tightly couples code.(2007.03.01)(11:36:29)Joshua与所有人说:have you heard of this before?(2007.03.01)(11:36:29)baberson与所有人说:no.(2007.03.01)(11:36:30)*苍林红宇 enter this room.(2007.03.01)(11:37:30)*Jerryhjf与所有人说:y(2007.03.01)(11:37:42)Joshua与所有人说:Refactoring, by Martin Fowler(2007.03.01)(11:37:49)Joshua与所有人说:who has studied it?(2007.03.01)(11:38:20)isaachan与所有人说:a little(2007.03.01)(11:38:34)Joshua与所有人说:In that book, Fowler discusses Code Smells(2007.03.01)(11:38:44)Joshua与所有人说:but it is only a small chapter(2007.03.01)(11:39:11)Joshua与所有人说:I have written a whole new book on Code Smells(2007.03.01)(11:39:16)Joshua与所有人说:in C#, C++ and Java(2007.03.01)(11:39:36)Joshua与所有人说:it explains each smell and discusses how to clean it up by Refactoring(2007.03.01)(11:40:06)Joshua与所有人说:so on slide 15-16(2007.03.01)(11:40:11)Joshua与所有人说:I describe the Code Smell(2007.03.01)(11:40:24)Joshua与所有人说:and what Pattern-Directed Refactorings help to clean it up(2007.03.01)(11:40:57)Joshua与所有人说:If you find a Smell(2007.03.01)(11:41:07)Joshua与所有人说:you may not know Refactoring to use(2007.03.01)(11:41:10)Joshua与所有人说:to clean it up(2007.03.01)(11:41:21)Joshua与所有人说:if you study my book or Fowler's book(2007.03.01)(11:41:25)Joshua与所有人说:you can get an idea(2007.03.01)(11:41:37)Joshua与所有人说:for what pattern to use(2007.03.01)(11:41:42)Joshua与所有人说:just be careful(2007.03.01)(11:41:48)Joshua与所有人说:not to use patterns too much(2007.03.01)(11:42:00)Joshua与所有人说:especially once you learn a pattern(2007.03.01)(11:42:12)Joshua与所有人说:you will be wanting to use it(2007.03.01)(11:42:18)Joshua与所有人说:only use it where it makes sense(2007.03.01)(11:42:51)Joshua与所有人说:on slide 30(2007.03.01)(11:42:55)zhanglu enter this room.(2007.03.01)(11:43:00)Joshua与所有人说:you will find more places to learn about Refactoring(2007.03.01)(11:43:08)Joshua与所有人说:do any of you code in C++?(2007.03.01)(11:43:24)诗人笑与所有人说:y(2007.03.01)(11:43:28)isaachan与所有人说:no(2007.03.01)(11:43:40)baberson与所有人说:me(2007.03.01)(11:44:00)Joshua与所有人说:if you code in C++, and you use VisualStudio, then look at Ref++(2007.03.01)(11:44:11)Joshua与所有人说:Ref++ is a tool for refactoring in C++(2007.03.01)(11:44:17)Joshua与所有人说:but it only works in Visual Studio(2007.03.01)(11:44:34)tangyeyang与所有人说:what about java(2007.03.01)(11:44:36)Joshua与所有人说:Now I'd like to hear more questions(2007.03.01)(11:44:41)Joshua与所有人说:for Java, use Eclipse(2007.03.01)(11:44:48)Joshua与所有人说:is has the best Refactoring tools anywhere(2007.03.01)(11:44:54)tangyeyang与所有人说:what about netbeans?(2007.03.01)(11:44:57)baberson与所有人说:does ref++ work in visualstudio 6.0?(2007.03.01)(11:44:58)Joshua与所有人说:IntelliJ is also good for refactoring Java(2007.03.01)(11:45:18)Joshua与所有人说:Ref++ works in Visual Studio 2003 and VS2005(2007.03.01)(11:45:26)baberson与所有人说:thanks.(2007.03.01)(11:45:42)Joshua与所有人说:Questions for me?(2007.03.01)(11:46:09)flyingchen与所有人说:thanks a lot Joshua(2007.03.01)(11:46:16)mmsteam与所有人说:thanks joshua..(2007.03.01)(11:46:17)Joshua与所有人说:my pleasure(2007.03.01)(11:46:27)abin819与lakedai说:thanks(2007.03.01)(11:46:33)诗人笑与所有人说:thanks(2007.03.01)(11:46:34)isaachan与所有人说:thanks(2007.03.01)(11:46:35)tangyeyang与所有人说:thanks(2007.03.01)(11:46:46)Joshua与所有人说:I hope you learned something(2007.03.01)(11:46:54)Joshua与所有人说:you can learn about my new book(2007.03.01)(11:46:58)Joshua与所有人说:in a few months(2007.03.01)(11:47:04)Joshua与所有人说:if you go to IndustrialLogic.com(2007.03.01)(11:47:14)baberson与所有人说:what's the name of your new book?(2007.03.01)(11:47:24)Joshua与所有人说:the name isn't decided yet(2007.03.01)(11:47:27)Joshua与所有人说:but it should be(2007.03.01)(11:47:31)Joshua与所有人说:something like(2007.03.01)(11:47:39)Joshua与所有人说:Code Smells and Refactoring Interactive(2007.03.01)(11:47:47)Joshua与所有人说:or just(2007.03.01)(11:47:53)Joshua与所有人说:Code Smells and Refactoring(2007.03.01)(11:47:57)baberson与所有人说:I expect for that.(2007.03.01)(11:48:11)Joshua与所有人说:it will be an online book(2007.03.01)(11:48:15)Joshua与所有人说:not in paper(2007.03.01)(11:48:28)isaachan与所有人说:cool(2007.03.01)(11:48:32)Joshua与所有人说:Industrial Logic, my company, will now write all books on the web(2007.03.01)(11:48:48)Joshua与所有人说:because we can do much more on the web than in a book(2007.03.01)(11:48:57)Joshua与所有人说:especially with Web 2.0(2007.03.01)(11:49:26)Joshua与所有人说:thank you(2007.03.01)(11:49:30)huanbin enter this room.(2007.03.01)(11:49:32)*umlchina_seminar与Joshua说:Thank you(2007.03.01)(11:49:33)*flyang2001与所有人说:thank you(2007.03.01)(11:49:37)诗人笑与所有人说:thank you(2007.03.01)(11:49:39)baberson与所有人说:thanks, and welcome to china!(2007.03.01)(11:49:39)fxg007与所有人说:thank you(2007.03.01)(11:49:41)Joshua与所有人说:Best of luck with your Refactoring!(2007.03.01)(11:49:41)flyingchen与所有人说:thanks!(2007.03.01)(11:49:43)fxg007与所有人说:谢谢(2007.03.01)(11:49:43)arwin与所有人说:Thank you(2007.03.01)(11:49:48)Joshua与所有人说:thanks everyone(2007.03.01)(11:49:57)诗人笑与Joshua说:thanks(2007.03.01)(11:50:45)flyingchen与Joshua说:can i konw your mail ?(2007.03.01)(11:50:50)huanbin enter this room.(2007.03.01)(11:51:02)*umlchina_seminar与Joshua说:讲座结束,谢谢大家(2007.03.01)(11:51:03)baberson与所有人说:也要感谢umlchina组织这样的活动让大家学习.(2007.03.01)(11:51:31)fxg007与所有人说:看来我得好好学习英语了.......(2007.03.01)(11:51:36)*umlchina_seminar与所有人说:如果有希望关心的主题,我们会想办法安排(2007.03.01)(11:52:22)rlhname enter this room.(2007.03.01)(11:54:03)huanbin与所有人说:有事,刚来,结果一来就说结束了…………(2007.03.01)(12:04:34)rlhname与所有人说:me tooUMLChina建模竞赛题大全-题目全文+分卷自测(10套100题)
《软件方法》书中自测题-题目全文+分卷自测(1-8章)16套111题
6月27-28、7月4-5晚网络软件需求设计方法学全程实例剖析公开课
建模示范视频(2020年6月)增加公开课真实案例-合同管理系统(催款)
UMLChina视频哔哩哔哩频道(20200322更新)