第二版“重构”188足球比分直播

For the past two years,I've been working on a我的书“重构”的第二版188足球比分直播.Here I have details about the new edition and some memos describing my thoughts in the last months of this project.

The book is now available and you can buy it from知悉 icon(出版商的网络存在)亚马逊,或者你最喜欢的书商。买书给你访问规范Web版本-它包含物理或电子书版本中没有的附加材料。

It may take a while for the book to work its way through the various distribution channels.尤其是到其他国家的速度往往很慢,电子格式的国际可用性可能变得复杂,因为它与各国的图书发行协议有关。

如果你找不到副本,你最好的选择是联系人信息,as my publisher knows much more than me about the complications of book distribution.

细节

我很幸运能和肯特·贝克合作C3项目that birthed Extreme Programming.我从肯特学到了很多东西(现在还在学)。但有一件事是,他采取了一种方法来不断地修改代码库以保持其健康,一种使用当时未知的名称“重构”的方法。188足球比分直播在我的其他咨询工作中,我强调了这项技术的价值,但不能让人们看一本书来了解它,so I ended up writing it myself.它是在20世纪末出版的。

差不多二十年前,这项技术现在更广为人知,虽然往往没有执行得那么好。这本书也写得很好,我认为你可以拿着这本旧书,在这么多年前,仍然可以学习如何尽可能地重构。但这本书显示了它的时代,像皱纹一样使用java.util.vector矢量.

这么多年来我一直在考虑修改它,but I have also been reluctant.毕竟,它仍然能很好地教授这项技术,第二版有一个可怕的习惯,就是不改进原版。但一股更大的力量一直在拉我。在我写的时候,it was becoming mainstream to consider classes as the dominant structuring the mechanism for code.These days,然而,我们看到其他结构发挥着更大的作用。课程仍然很有价值,在我看来,but our 188足球比分直播refactoring needs to be less centered around them,意识到它们可以随着代码被训练成新的形状来来去去去。

在2015年和2016年初,我写了一系列文章,探讨重构的各种情况,188足球比分直播这让我有了一种感觉,如果我应该处理一个重写,如果是这样,how.到2016年中期,我准备愤怒地开始这项工作。如果你一直在想为什么我没有像以前那样为www.hdxh168.com写那么多东西,it was because my writing energy has been focused on the book since then.

第二版的变更

The changes are both very minor and all-encompassing.它们很小,因为这本书的基本结构没有改变。I begin with an opening example,一章原则,“代码气味”调查,以及对测试的介绍。这本书的主要部分是重构和68个重构的目录,188足球比分直播除了10个仍然存在,and I've added 17 new ones.(details here)

尽管整个图书结构没有变化,页面上的单词变化很大。每一章和重构都被改写了,188足球比分直播mostly from near scratch.我很少有像样的机会从旧版本中剪切和粘贴文本。

对一个不那么以类为中心的视图的重新定位是其中很大一部分。尽管这听起来像将“extract method”的名称改为“extract function”一样简单,它确实需要重新思考每个重构的各个方面。188足球比分直播我需要重新考虑动机,often feeling that it needed to be reframed.机械师至少需要详细的审查,often a complete rewrite.我没有详细记录这件事,but my feel is that for every relatively simple import of an old 188足球比分直播refactoring,有两个问题需要彻底反思。

However there is another change,这在某种程度上并不重要,但肯定会引起很多关注。这些示例不再在Java中使用。

当我在写作中选择一种语言作为例子时,我主要考虑读者。我问“什么语言能帮助大多数读者理解书中的概念?”188足球比分直播不是语言专著,它的建议可能是用Java中的例子来解释的,但是重构适用于大188足球比分直播多数语言。I picked Java because I felt the most people would be able to understand the code examples if they were written in Java.1997年就是这样,但2017年呢?

我考虑过使用多种语言,这将强调本书的语言中性意图。但我觉得这会让读者更加困惑,最好使用一种语言,这样他们就可以习惯于一致的表达形式。那么,哪一个是读者最容易接近的呢?Such a language needed to be widely popular,在语言人气调查的前六名中。使用基于C的语法真的很有帮助,因为大多数程序员都会认识到基本的代码结构。鉴于此,两个人站了起来。一个是Java,仍被广泛使用且易于理解。But I went for the alternative: JavaScript.

选择javascript对我来说很讽刺,正如许多读者所知,我不喜欢。它有太多令人尴尬的边缘案例和笨拙的成语。ECMAScript 2015(ES6)引入了一个相当好的类模型,which makes many object-oriented 188足球比分直播refactorings much easier to express,但从最早的时代起,语言结构中仍然存在着一些令人讨厌的漏洞。But the compelling reason for choosing it over Java is that isn't wholly centered on classes.有顶级功能,使用一流的功能是很常见的。这使得显示类上下文之外的重构更容易。188足球比分直播

网络第一本书

The world-wide web has made an enourmous impact on our society,尤其影响我们收集信息的方式。当我写第一版的时候,most of the knowledge about software development was transferred through print.现在我在网上收集了大部分信息。这给像我这样的作家带来了挑战,is there still a role for books,它们应该是什么样子?

I believe there still is role for books like this,but they need to change.一本书的价值是一个庞大的知识体系,以连贯的方式组合在一起。在写这本书的时候,我需要收集大量的重构,188足球比分直播并以一致和综合的方式进行组织。

但这个完整的整体是一部抽象的文学作品,while traditionally represented by a paper book,不必在未来。大多数图书行业仍然把纸质图书作为主要代表,虽然我们热衷于采用电子书,这些只是基于纸质书籍概念的原创作品的电子表现。

用这本书,我正在探索一种不同的方法。我认为这本书的规范形式就是网站。The paper book is a selection of material from the web site,arranged in a manner that makes sense for print.它不会试图将所有重构都包含在规范书中,188足球比分直播尤其是因为将来我可能会在规范的Web书籍中添加更多的重构。188足球比分直播

我们的目的是当您购买重构的副本时,188足球比分直播第二Ed,你可以在书店以实体形式购买它,或者任何形式的在线。最重要的是你可以永久访问网站。You can read the physical book,and access the web site whenever you need.

This raises a question of what role ebooks (such as epubs and kindle books) should play.有一个强有力的论据认为它们应该包含网站上的所有信息,after all physical size isn't a factor,and ebooks can be updated easily if I add new material.然而,图书行业并不这么认为,他们希望电子书的内容和实体书一样,所以重构的电子书版本将遵循这一原则,188足球比分直播至少现在是这样。

早期备忘录

Keeping the scope the same (28 March 2018)

One of the things I want to stress about this edition,那是它没有超出现有的书的范围.从纯粹的基于类的结构中有一些转变,但我的目标是不要太多地改变书的范围。虽然有很多吸引人的地方我可以去探索,我的时间和精力有限。所以我遵循了一条规则,不让第二版进入新的主题领域。即使只想复制第一版的内容,it's still two yearsof solid work.我不想增加我花在这上面的时间,毕竟第一版非常成功,所以我的目标是保持有用性,不要尝试创造新事物。

我的总体计划是在第一版中进行每一次重构,188足球比分直播并要求对它做些什么,使它在这个稍微改变的上下文中具有相关性。在一些(高兴的)情况下,我可以像以前一样进行重构,188足球比分直播简单地将示例重写为javascript,完成它。通常情况下,它需要对力学和例子进行重大的反思。Sometimesit meant the original 188足球比分直播refactoring was replaced by something similar.

There's a good chance that in the future,我将探讨一些新的主题,添加到网站上的重构语料库。188足球比分直播当然,我想在第一版之前,但大部分都没有,so take that thought with anappropriate amount of salt.But I did explore some essays on using 188足球比分直播refactoring tohelp explore various architectural problems in 2015 and early 2016.我很乐意写下来,他们还指出我将来可以更容易地使用一辆车。

γ

通过审查意见进行工作(2018年4月3日)

我已经度过了过去的几天(是的,包括周末)。Early in February my editor at Pearson sent out thecurrent state of the book to various people for a technical review.This is avital part of the process for writing a book,any author will make mistakes,我赚了很多。审稿人帮助捕捉,也要强调那些解释不清楚的事情。

这不是这本书材料的第一篇评论。当我开始写这本书的时候,我召集了一个小组来做持续的回顾。Every time I finisheda chapter,或者几个重构,188足球比分直播我会把它寄给他们征求意见。Theirfeedback has helped enormously.但有时我需要有人退后一步重新审视整本书,这就是这些最近的评论人的切入点。目前我正在浏览四位这样的评论人的评论:威廉·查金,Michael HungerBob Martin,还有比尔·威克(他也是我正在进行的审查小组的一员)。

我喜欢一章一章地这样做,以第一章为例,看看每个人的评论,并在本章中对它们进行处理。“处理”是指重新读取每个注释,决定如何处理。每一条评论都是评论人不加考虑的,有些可能表示建议的更改,也许有些事情不清楚,代码中可能有错误。通常我对评论没有任何反应,我可能不同意别人的建议,perhaps because I feel it's out of scope for the book.Michael (whohas reviewed previous books for me) feeds me lots of good suggestions foradditional material that would take years to follow up on,所以我必须让大多数人过去。但我不介意,因为有时候这些建议真的需要存在,我很高兴有人鼓励我加入他们。

Errors are the obvious things to fix,当观众发现细微的代码错误时,我经常感到惊讶。我通过我的自动代码导入系统避免了很多这样的问题,但汽车进口存在漏洞,and they've already savedme some embarrassing mistakes.Michael is particularly good at this,he musthave installed several compilers into his wetware,这就是为什么我认为他是一个好的评论家的原因之一。威廉·查金正在挑战他,所以我加倍祝福。

Clarifications are often the hardest to figure out.Sometimes a reviewer justsays "I don't understand this",有时这是间接的——他们暗示他们不明白我在说什么。处理这些很困难,因为我必须判断这是否只是一次性的事情,或者更深入。人们总是会对一本书中的一些内容感到困难,试图解决每一个个体的困难会比疾病更糟糕——这本书必须要大得多,这篇散文会变得很呆板,读起来会很乏味。当一个以上的评审员具有相同的启发性时,它会有所帮助,然后我可以确信这是我需要解决的问题。这方面的一个例子是我在第一个示例中对嵌套函数的布局方式混淆了面板的三个部分,所以我知道我必须尝试一种不同的方法。

I always rather enjoy working through review comments.It's good to get somefeedback on whether what I'm doing is making sense.This stage is particularlygood as it forces me to step back too.近两年来,我一直在关注细节,cranking chapter by chapter.现在我可以把材料看成是一个锥孔,但仍要深入研究,找出重要的细节。

γ

188足球比分直播重构需要红色和黑色(2018年4月5日)

When I wrote the first edition of 188足球比分直播Refactoring,它进入了Addison-Wesley的ObjectTechnology系列。我从来没有认真对待图书系列,所以我只是听从了我编辑的建议。从那时起,我已经形成了自己的系列(“签名系列”),and put a fair amount of effort into curating it so itonly contains books I can firmly recommend.So it's natural for the book to moveinto my own series.

It isn't,然而,an inevitable decision.这部连续剧不是一网打尽,它是关于我认为是编程技术方面的基础书籍的书籍。I submitted my most recent book,NoSQL蒸馏,用于系列,but I rejected it - because I didn't think it fit inwith the flavor of the series.听起来很复杂,but there is aprocess here.提交给该系列的每一本候选书都会发送给该系列的所有作者,我征求他们的意见。在那种情况下,他们帮助医学院拒绝了我自己。这一次他们觉得这很容易融入,这让我觉得这很合身。

γ

Pause in Review Updates (06 April 2018)

As I said in an earlier memo,I'm enjoying going through review comments.However I'm about to put this work on a long pause.I have travel commitmentscoming up that means that today is the last day I'll get at my desk for fiveweeks.虽然我可以在路上做一些写作工作,我多半忙于别的事情,没法投入太多精力。(这里有个假期,我希望这能让我恢复活力。)这是一次令人沮丧的休息,因为我真的很想把课文整理好,以便更好地集中精力做其他事情。我希望现在能处理所有的评论。但是书面计划比软件开发计划要好一点(原因大致相同)。

γ

Back at my desk (18 May 2018)

This week was the week I finally got back to my desk in New England after fiveweeks on the road.It was a long time away,but I can't complain too much sincethe last couple of weeks were an excellent vacation in Croatia.Highlights wereSplit,杜布罗夫尼克这个Paklenica nationalpark,尤其是PlitviceLakes.

我希望在我离开之前写完课文,但仍有一些评论需要工作。在我离开之前,我还收到了最后一批评论。所以这周我第一次通过了最后一批,现在只有来自评论的出色的待办事项。The bad news is that allthese todos take a bit of effort to fix,因为他们变成了托多,因为我在浏览评论时不能很快地修复他们。好消息是我只有十四个。我希望能在接下来的两周内通过他们,然后再上路。

本周这本书的另一个主题是开始考虑封面。封面设计已经确定,bet188足球as it will be part of my signature series,but it does mean I have to pick a photo of a bridge.我们现在正在整理,hopefully I'll be able to share that next week.

γ

返工示例(2018年5月25日)

As with last week,这周我看到我在写评论,所以我可以在开始生产流程之前确定这本书的技术内容。I went through all the comments last week,doing all the easy ones thatI could deal with in less than an hour or so.这就留下了一些复杂的问题,在比赛的最后阶段,这些问题很有压力,但是(不可否认的是,有点自我强加)期限盯着我看。

本周工作的核心是改写两个例子。Both were oneswhere a couple of reviewers found difficult to follow,所以我需要考虑外包,我认为这会更容易。这不仅仅是改变proseaText,it's also about reworking the code.我发现代码示例是我写作中最困难的方面之一。I try to create examples thatare just complicated enough to show the main point,但这并不复杂。它们仍然是人为地简单化的——任何现实的例子都足以让大多数读者产生共鸣——但我希望它们能与读者的日常体验产生共鸣。今天我花了一整天的时间想出一个大约50行代码的例子。I think it captures whatI'm trying to say,但我将在重构过程中了解到更多,我对这段代码进行了深入研究,并了解我的散文是如何188足球比分直播处理这段代码的。我很乐观它会起作用,but there's still a fair bit of uncertainty.

前面的示例特别复杂,因为它是大型重构示例的一部分,188足球比分直播这本书未来的开篇范例。这个例子分为三个阶段,审查人员指出了中间阶段的问题。我修改了重构的顺序,188足球比分直播希望事情现在更清楚了。有趣的是,这个重构围绕着一个重构(拆分188足球比分直播阶段),我在OpeningExample的第一个草稿之前还没有写过这个重构。改变的本质是遵循这个新重构的现有书面机制,188足球比分直播我很高兴地看到,遵循这些机制可以使操作和理解变得更加容易。我书中的力学部分并不是唯一的重构机制,188足球比分直播它们不能是所有环境中最好的。My aim is that they should work pretty well,大部分时间。所以我很高兴跟随他们帮助我通过这个例子。

像这样改写重构示例使188足球比分直播我非常熟悉Git。我喜欢保留我的代码示例“live”,以便我可以更改代码,运行测试以确保它仍然有效,and mark sections of it to automatically flow into the booktext.我用代码示例做了很多年,它让生活变得更美好。但是这样做很难重构,188足球比分直播因为我对代码有一系列的更改。为了解决这个问题,我将重构序列存储在一个gitreposit188足球比分直播ory中(必须是存储书籍文本的一个单独的repo),并将重构捕获为一个提交序列。I then import the codeinto the book text with tags that indicate the ref of the commit,以及代码片段的名称。When reworking a sequence of 188足球比分直播refactorings like this,我经常摘樱桃,我在这里更改了对7号师父的承诺,然后,CherryPick将我从那时起对变更提交188足球比分直播所做的所有重构更改。当它运行良好时,即使没有,这也远远好于我对这本书的第一版所做的。

I have one more week at my desk before I'd like to declare "done".目标似乎仍然合理,although much will depend on how the fifty lines I wrotetoday works as I write about the 188足球比分直播refactoring steps that go with it.

γ

发布生产(2018年6月1日)

As May ended,我达到了一个重要的里程碑,referred to by my publisher as"release to production".In the days of traditional publishing,这意味着作者把她的手稿交给了制作团队。在这一点上,本书的核心材料没有显著变化。会有变化的:当这本书进入复制编辑阶段时,as well as things like indexing - butthey won't be material changes to the essence of the book.

在我早期的书中,I'd send electronic files over to Pearson,在以后的某个时候,我会从副本编辑器标记的更改中得到一个大的打印。除了经历这些变化,看看我是否同意他们的意见,在这本书上架之前,我和它没有多大关系。这个过程更具互动性,复制编辑器和我将共享一个Git存储库,我将查看diff以查看他建议的更改。但跨越一座重要桥梁的感觉仍然存在。我不想再重复任何例子,或添加任何重要材料。在某种程度上,the book is done.(Although,因为这是一本网络第一本书,I intend tocontinue to evolve its web representation).

我有一种解脱感,although there is still much to be done with the book,this is still a big milestone,我对这本书的关注将会开始的迹象。I don't have too much relief,因为我下周要去马德里谈几次,对我来说,口语旅行比牙医旅行更不吸引人。但这是我头脑中的一些负担。

γ

新封面(2018年6月13日)

当我们开始做签名系列的时候,封面设计师设计了一个bet188足球基本设计,其中包括了每本书中不同照片的空间。我决定这些照片应该遵循一个系列中所有书籍的主题。当时我妻子,结构工程师,was bet188足球designing bridges;从那时起,她已经从水平(桥梁和隧道)移动到垂直(建筑物)。她对布里奇的参与促使我把它们作为这本书的共同主题。所以每当一个作者在我的签名系列中写一本书,我请他们选择一座桥来装饰这件衣服。Ideally the bridge should have some personal connection for them.

为我系列中的第一本书(Patterns of Enterprise ApplicationArchitecture)I picked the Zakim bridge in Boston.连接很清楚-他们在路的另一边建起了桥,在我写这本书的同一年里。我的第二本系列书(Domain-Specific Languages)我选择了铁桥- this was a connection to the Black Country where I grew up,以及历史上重要的桥梁。

那么,重构书应该选择什么呢?188足球比分直播我想到的一个想法是,如果我能在重构和桥梁工程之间做某种类比的话——但是与我认识的桥梁工程师的讨论清楚地表明,在桥梁工程中没有什么比得上重构。188足球比分直播Soinstead my mind turned to a non-professional association.In this case I startedthinking about one of my favorite places that I'd visited many times in thetwo-plus decades I've lived in New England -阿卡迪亚国家公园.这立刻建议选择在货运道路上的许多有吸引力的桥梁之一。

但我也想到了另一种可能的阿卡迪亚。在去阿卡迪亚的路上,我们过了彭诺布斯科河。在我写第一本重构书的时候,188足球比分直播这条路穿过佩诺布斯科特瓦尔多汉考克大桥由著名桥梁工程师大卫·斯坦曼设计的悬索桥。bet188足球在新世纪的头几年,然而,他们发现70岁的大桥需要更换,到了2007年,这条路在新的PenobscotNarrows Bridge.

On one of our trips up to Acadia,我们停下来,好让我拍下两条桥的照片。我很高兴我们终于做到了,because a year later the Waldo-Hancockwas demolished.(It's a shame that I took my photos on such an overcast day.)

封面照片

尽管我无法在桥梁工程和分解之间进行类比,188足球比分直播我可以敦促自己总结重构书的两个条件和这两个桥梁之间的创造性类比。188足球比分直播

尽管许多Twitter评论说第二版的分解书“重构”是第一版,188足球比分直播that isn't true.(Indeed,as with bridge engineering,I don't think there is any analogy from 188足球比分直播refactoringto book writing.) This second edition is a replacement to the old one,以同样的方式,Penobscot窄桥取代了Waldo Hancock。沃尔多·汉考克展示了降低桥梁建设成本的创新技术,与重构书描述的一样,重构书描述了一种新技术,它降低188足球比分直播了构建软件系统的成本。这本书的第一版被我的签名系列中的一个新版本所取代。and the newPenobscot Narrows bridge is a similar bet188足球design to the Zakim bridge that was thecover bridge for the first book in that signature series.

γ

两种读者(2018年6月27日)

在构建软件时,从用户的角度考虑软件是很重要的。所以我们有创建角色的概念,并使用这些角色来帮助指导软件系统的特性和用户体验。Similarly with books,对我来说,重要的是要想一想我的读者,并对那些应该指导我写作的人物有一些概念。

The most obvious persona for a piece of writing is the student reader - he haslittle or no knowledge of the topic in the book,正在读这本书来获取素材。This is my primary persona,我尽我最大的努力去理解这个读者的想法,以及如何最好地向他传达信息。

但还有另一个重要人物——老师。这个人已经知道的最多,如果不是书中所有的材料。她用这本书来指导更多的初级开发人员。从本质上讲,这本书是帮助她提高团队技能的工具。

有时她可以直接用这本书,对一个下级说,他需要将一个特定的类更改为一个值对象,从而使用Change Referenceto Value188足球比分直播重构。在更高的层次上,她可能会专注于阿斯梅尔。One technique I've heard is of a team lead to bet188足球designate a "smell of theweek" and get the team to identify and fix examples of that smell.这个bothim证明了代码,并教会开发人员如何在将来发现和修复类似的问题。

Even if the book isn't used directly,我希望它在间接形式上仍然很方便。高级开发人员可能具有重构知识,188足球比分直播但这并不意味着她知道怎么教。讲授一个话题是一种技巧,somewhat independent from knowledge of a topic or skill in carrying out atask.我经常遇到有天赋的从业者,他们对别人的工作不是很好。一本好书可以帮助这些领导者如何解释一个话题。“更改参考值”的“力学”部分不是执行重构的唯一方法,188足球比分直播但是遵循这些步骤可以让一个熟练的同事更容易向别人展示新的方法。

像这样的第二版的一个有趣的结果是,大多数对这本书感到兴奋的人是教师读者而不是学生读者。教师很可能是多年来第一版的学生读者。If you're such a reader,记住,这本书不会教你任何关于重构的新知识。188足球比分直播如果它教会你什么,it is how to teach it to thoseyou are leading.当你评价这本书是否对你有用时,这不是为了你能从中学到什么,但是它如何帮助你加速你周围的人的学习。

γ

一些隐藏的英雄(2018年7月10日)

我认识的所有技术书籍作者都提到了他们有图腾技术评论家的巨大债务。We've all written works with big flaws that were caught byour peers acting as reviewers.我做的技术审查工作不多,partlybecause I don't think I'm very good at it,因此,对那些接受它的人有很多钦佩。看别人的书连一点钱都没有,这样做是一种慷慨的行为。

当我开始认真地写这本书时,我整理了一份顾问的邮件列表来给我提供反馈。随着我的进步,我把新材料的草稿发给这个小组,并要求他们提供反馈。我要感谢以下人员在邮件列表中发布此类反馈:Arlo BelsheeAvdi Grimm贝安德斯·贝克,Bill Wake,Brian Guthrie,Brian MarickChad Wathington,戴夫·法利,大卫·赖斯,Don RobertsFred GeorgeGiles Alexander,Greg Doench胡戈科布奇伊万·摩尔,James ShoreJay FieldsJessica KerrJoshua Kerievsky,Kevlin Henney,卢西亚诺·拉马尔霍,Marcos Brizeno,迈克尔·费瑟,Patrick Kua,皮特·霍奇森,Rebecca Parsons,Trisha Gee.

本组中,我特别想强调一下我在javascriptfrom上得到的特殊帮助贝丝·安德斯·贝克,杰姆斯海岸,和皮特·霍奇森.

一旦我有了一个相当完整的初稿,I sent it out for further review,because I wanted to have some fresh eyes look at the draft as a whole.WilliamChargin米迦勒饥饿症both delivered incredibly detailed review comments.我收到了很多有用的评论鲍伯马丁斯科特·戴维斯.比尔尾流addedto his contributions on the mailing list by doing a full review of the firstdraft.

我发现通过邮件列表进行的增量审阅和最终的完全审阅的组合效果非常好。Leaving all the review to the end (as was the casewith my earlier books,包括第一版)结果我得到有用的评论太晚了。I was able to take early comments on board and react to themas I continued with the book.The final review was still helpful because it'seasy for incremental reviewers to lose the overall context of the book - indeedit's easy for me to lose that context when in the depths of working on it.Having fresh eyes look at the whole can make a big difference.

γ

完成文案编辑(2018年7月25日)

我刚刚完成了对copyEdits的重构检查。188足球比分直播在这个阶段,我完美的散文被发送给一个检查它是否像我想象的那样精彩的人,并返回更正列表。在我的例子中是一个大名单。

作者对copyedit过程的反应非常广泛。一些作者如果改变了他们完美文本中的一个字符,他们就会勃然大怒。Otherauthors are so sick of the manuscript that they wave all the changes through.至于后者,但是仍然要回顾每一个变化——主要是为了确保副本编辑器不会无意中改变文本的含义,有这样一本技术书的真正危险人物。

我觉得这篇评论既有趣又令人沮丧。It's frustrating because bythis point I'm really done with the text and don't want to read it again.Manyof the copyedits seem rather arbitrary to me - changing some punctuation orwording in ways that don't seem to make a significant difference to me.例如,我从来没有真正看到分号的意义,所以几乎不使用它们。但是像这样的copyedit更改是为读者准备的,不适合我。德米特里基尔萨诺夫,我现在的文案编辑,说:“文案编辑(不是简单地修正错误语法)是一个问题语调.Authors don'talways hear their own intonation,就像我们听不到自己的声音一样,在录音中听到这种声音往往会感到惊讶(通常令人不快)。

Authors vary with their reaction to copyeditors,但是不同的文案编辑也有不同的工作。I appreciated the first decent copyeditor I worked with becauseshe believed that it was crucial that she should preserve the author's voice asmuch as possible.My main memory from her work was adding lots of commas -unsurprisingly I don't tend to put them in unless I feel I really need to.因为她是英国人,所以萨德利不能用她来写我的书,美国出版商认为英国人不可能按照美国的标准进行复制。Dmitry hasbeen my copyeditor for my last two books and I enjoy his work too.Although manyof his changes make me shrug,其中许多都是对我的措辞(包括这句话中的一个)的明显改进。有时他突然出现了一个听起来比我更像我的变化,同时又让人毛骨悚然。

我遇到过一些文案编辑,他们对如何修改文本提出了看法。对的,an attitude that does make my eyes roll.毕竟,“正确英语”的许多规则都是19世纪发明的,用来区分受过良好教育的上层阶级和我这样的平民。(Thesplit-infinitive rule only exists to ape latin,for example.)

在一些情况下,我看到一个复制编辑器copyedit文本已经被不同的复制编辑器进行了复制编辑,and ends up making as many changes as they did withuncopyedited text.(我觉得自鸣得意)

This site isn't copyedited - you get my raw text.我没见过很多人抱怨过,so I've been happy to get away with the convenienceof skipping a copyedit stage.

γ

Trimming the Print Edition (07 August 2018)

Of all the changes I'm making for the second edition,perhaps the mostsignificant is that I'm writing it as a web-first book.我的意思是,这本书的典型代表是生活在一个网站上,overriding other representations of the book,比如纸质的。皮尔森正在整理东西,这样当你拿到一本实体书时,您可以在Pearson中注册它并访问该书的Web版本。作为这本书的第二种表现形式,纸质版本的内容将更少。Furthermore I hope to add more material to the web version of thebook in the future,当然,纸质版本不能更新。

几周前,我不得不决定报纸上会出现什么,只有在网络版上才会出现。对我自己来说,一个限制是这本书的第二版不会比以前的版本大。(这也是我用UML为自己制定的一条规则)我这么做是因为我发现第二版有膨胀的危险。I can seewhy - after all an author learns more about a subject and wants to put all thenew stuff in - but a bigger book isn't usually a better book.因为重构遵循188足球比分直播双重形式,主要是参考目录,增加规模不是什么大问题,但我仍然不信任一个大的,physical book - soI've kept the constraint.

第一版共412页(不包括参考文献和索引)。所以我把它作为我的目标。我们做了一个初步的页面证明,而这本新书有440页,所以我需要剪至少28页来满足我自己的限制。当我开始琢磨在哪里切的时候,我很担心自己的选择,但我很欣慰地说,这比我担心的要容易。

我在新书中有63个重188足球比分直播构,我把它们分为两个优先级。然后我进行了低优先级的重构,并寻找那些书中其他地方没有提到的重188足球比分直播构。这确定了包含19页的五个索引-我可以很容188足球比分直播易地从打印版中删除这些。我仍然,当然,还有9页。我可以删除更多的重构,188足球比分直播但相反,我注意到了一个能印出十页纸的例子。This was a second example for the Split Phase 188足球比分直播refactoring,a niceexample but not strictly necessary as I already had one example in place.Furthermore this second example was one I'd done early on in Java,and didn'tfeel like rewriting in JavaScript.它将是印刷本中唯一的Java例子,所以把它去掉,会让它看起来很奇怪。

我们用这些剪纸重新制作了这本书,共有410页。So,虽然thearithmetic没有完全正确,我在自己设定的限度之内。(我还应重申:这五个重构将提供给所有的书主,188足球比分直播你只需要去网站上看看它们,而不是把它们写在纸上。)

I realize that a few readers might be wondering,what are those five 188足球比分直播refactoringvictims?稍后我将列出名称-到目前为止,我还没有在第二版中讨论重构的内容,188足球比分直播也不关心所有第一次编辑重构的命运。188足球比分直播I'll get to all of that in a later memo.

This last two weeks has been very busy,因为我不得不为这本书的制作做一系列的工作。我希望能很快结束这本书的工作,但现在我承认还有很多事情要做,部分正在为Web版本进行准备。I'll talk about all that more in later memos too.

γ

撰写印刷本(2018年8月24日)

在过去的几周里,我在重构书上的工作集中在为印刷188足球比分直播书修复各种松散的末端。我们现在正处于生产工作交由Alina Kirsanova负责的阶段,他整理了这本书的组成部分,以及校对。Composing a book meanspaying attention to the look of each page,各种各样的问题都是围绕着分页而出现的。

当我写作的时候,我不太担心分页符。Most of my publishedwriting these days goes on the web,so I don't have to think about physicalpages.But with a book,physical pages are important.示例问题区域是代码示例。我不希望在代码示例中出现错误的分页符,理想情况下,我希望我精心编写的小函数不要在分页符上运行。所以每一页都有Alinalooks,确保分页符出现在正确的位置。支持这一点,我需要调整代码示例的自动导入,以便她可以在需要时插入分页符。

Line lengths are also something she pays attention to.当我查看源文件时,我现在看到了新的XML标记:例如 clarity to indicatetext that we don't want split over two lines.这是使用XML而不是将其标记为源文本的优点之一,Alina很容易为我的工具链可以传递给她的文本添加新标记。

I've also prepared reference pages: filling out the bibliography,并为内盖生成重构和气味列表。188足球比分直播Next I have to gothrough the final proofs of the pages,处理Alina的一些合成问题。许多作者更愿意交出他们的手稿,然后就这样——我现在肯定很同情这种做法。但是参与这项活动的一个好处是,我能欣赏到这本书的写作。

γ

Rough Cut available on Safari (29 August 2018)

订阅了Safari在线图书服务的用户现在可以获得第二版粗剪.这是通过复制编辑,但不是校对或定稿。

γ

大多数人会对第二版(2018年8月30日)感到失望。

当我即将出版一本新书时,我的感觉通常是兴奋和恐惧的混合体。Excitement because I'm releasing into the world somethingI've spent months or years working on,我想看看人们是怎么反应的。害怕,因为我正在向世界释放我花了几个月或几年的时间在努力的东西,and I worry about how people respond to it.人们会喜欢还是不喜欢?所有这些工作是否值得?

有了这第二版,我的感觉更像是接受了大多数人会失望的事实。

不是我觉得我在这里做得不好。就像我的写作项目一样,我为此付出了很多努力和精力。I think theresult is a worthy refresh of the book I'm most proud of writing.但即使是ifthat的话,我预计这本书会有负面反应。That's becausepeople who are familiar with the first edition will naturally compare it to thatfirst edition,and most people will find the new edition wanting - despite myview that I've improved it.

人们熟悉第一版,已经习惯了它的缺点,and like elements in the original that I decided to change.We know that loss aversion means that people feel the loss of somethingtwice as much as they appreciate a corresponding gain.So any improvements inthe new edition have to be twice as good as any perceived faults in order for meto break even - that's a hard target to achieve.

最重要的是,很多人不会把第二版和第一版相比较,他们会把它和第二版的想象相比较。通常这些想象是不现实的——我有很多想法听起来不错,但是我写下来的时候没有用,即使坚持现实的,他们中有很多人。In the end Ihave to pick one path,即使我选择了最受欢迎的道路,they divergeso much that it would still only match a small minority of the opinions that areout there.

(我怀疑我在这里的感受是由其他作者分享的,这也许可以解释为什么许多人在修订版上挣扎,或多卷作品的后期部分。)

鉴于这种不可避免的失望,为什么我要费心做第二版?(在过去的几年里,我问过自己很多次这个问题。)答案是,对这个新版本的真正判断并不是它发布后几个月内的即时反应。Instead it's whether it helps people learnabout 188足球比分直播refactoring in five,ten,二十年时间。本版的大部分目标受众甚至还不了解这本书,many haven't yet written aprogram,most will never care about the first edition.The impact on thosereaders is the test for whether this effort was worthwhile.可悲的是,在我能够评估过去几年我的劳动力价值之前,这将是一件很痛苦的事情。

γ

去印刷厂(2018年9月28日)

第二版的文件今天已发送到打印机。This completesall the work we needed to do on producing the print edition.感谢阿金托·阿琳娜·基尔萨诺娃,她是这本书的作者,做校对(发现一些特别令人尴尬的错误)做了索引。Julie Nahil来自皮尔逊,是这本书的制作编辑,coordinating all this production work.

我们预计印刷书籍将于10月底或11月初出现在皮尔逊的仓库。在那之后,他们应该尽快进入零售渠道。

But one hiccup may be the web edition.我们不希望印刷版出现在我们整理好网络版之前,我没有那么多时间来解决这个问题。我已经休了几个星期的假(在森林里徒步旅行,伦敦的一些剧院,和朋友玩游戏,and some pleasantlyextravagant food),and now have a couple of business trips over the next twoweeks.I've now got most of the elements of the pipeline for the web editionsorted out,but won't be able to start work on it properly until mid October.Hopefully it won't take too long to come together,但因为我以前没有这样做过,我不知道哪里会出问题。除了软件,我们现在都知道这是多么容易预测!

γ

网络版工作(2018年10月20日)

On my last update,a few weeks ago,我提到那本书已经送到印刷厂去了,大概他们正忙于印刷。Since then my number onepriority with the book is to finalize the web edition.尽管所有的文书都写了,我仍然需要准备文件并进行布局。我不能马上开始,因为我有几次深思熟虑的会议要参加:Inatlanta决定下一个雷达,and a global management meeting in Beijing.

But this week I've been back at my desk and able to work on the book again.第一个任务是了解Web版是如何发布的。Pearson has aweb book viewer,它基本上采用一个epub文件夹,并通过一个简单的web应用程序进行投影。The good thing about this is that that mostof the book is just web pages,which I'm familiar with generating (and indeedthis is how I looked at the book for most of the time I was writing it).然而,每一次我都必须整理出各种需要的东西,including generating theappropriate epub manifest files and fixing things that are valid html in a webcontext but not in an epub context.

Once the bare bones were in place,I needed to apply the right css,要执行类似的操作,请确保已删除的代码正确标记为删除线,生成目录和重构列表。188足球比分直播有一些有趣的并发症,例如,查找我用来突出显示代码的SPAN类名是由查看器用于其他用途的。

但是现在我很快就要完成了(我的组织模式检查表显示9/13任务已经完成),所以我非常高兴网络版将在我从多伦多的“范式转换”会议返回后不久于下周完成。That will mean thatwe'll be able start selling the physical books soon after they come back fromthe printer.

我还是做不到,然而。The next task is to rework188足球比分直播重构网站,特别是目录,用新的重构更新它。188足球比分直播我还想把印刷本上没有的网络版上的东西放在一起。

(我通常不喜欢说“快完成了”,but I haven't writtenany progress notes for a while,and felt I owe everyone an update.)

γ

印刷书籍(2018年11月19日)

本书最新播放状态的快速更新。The books have beenprinted and are on their way to Pearson's warehouse.我已经完成了Web版的文件,但我们需要在皮尔逊的基础设施上测试它们。一旦方法完成,我们可以发行这本书供人们购买。我们希望在下周早些时候打开Informit(Pearson的网站)。亚马逊应该在那之后不久推出。感恩节可能会增加一些延迟,所有这些土库曼人都把补给线给堵住了。但我会让每个人知道更多,因为我发现更多。

γ

发布于Informit(2018年11月26日)

感恩节期间,188足球比分直播重构是在Informit上发布的。你现在可以直接订购物理和电子书了。实体书正在去亚马逊的路上,andthey should start delivering them in the next week or so.亚马逊的Kindle版本应该在那时出现。其他书商应该很快收到他们的副本。书籍应该逐渐找到通向国际出版商的路,but I don't have any visibility into how long that will take.

118金宝博官方网站

最新备忘录:与书面对面

10 December 2018

face to face picture

我在欧洲呆了几周,所以当它到达房子时,我错过了重构的交付。188足球比分直播Now I'm back,我终于能看到真正的书了。It's still a thrill to see the physical books,即使在做了这么多年的作家之后。

The first thing that really struck me about the book is how薄的它与第一版相比较,

photo of first and second edition spines

That's not the result of a drastic drop in page count,(新的是416页,共430页)只是更薄的纸。当我打开它时,我很惊讶它是彩色的。显然这并不奇怪,但它仍然引人注目,因为它是我的第一本彩色书。这对本书特别有用,因为它允许我更好地突出显示重构过程中发生的更改。188足球比分直播

γ


Share:
如果你觉得这篇文章有用,请分享。感谢您的反馈和鼓励

有关类似主题的文章…

…take a look at the tag:188足球比分直播