出版时间:2009 出版社:机械工业出版社 作者:G.Pascal Zachary 页数:203 译者:张银奎
Tag标签:无
前言
译者序很多人都知道微软公司,它依靠软件变得非常富有。关于微软是如何从一个只有十来个人的小公司成长起来的故事,很多人都听过。听了后,不少人都觉得它很幸运。那么除了幸运之外,微软还有什么过人之处么?很基本的问题,它是如何开发软件的呢?这个问题容易回答,很多人都能讲上几句。但如果只是讲讲有哪些“工种”,立哪些规矩,也很乏味。要是能从头到尾的讲讲一个很大的产品是怎么从无到有开发出来的,该多有趣。微软的软件产品很多,但是在其产品线中,起着中流砥柱作用的当属操作系统,即Windows,中文称视窗。Windows有众多版本,但不论是Windows 2000、Windows XP、Windows Vista,还是即将问世的Windows 7,都是基于经典的Windows NT内核。NT内核从1988年开始酝酿,1989年开始编码,历时将近五年,于1993年7月正式发布,即Windows NT 3.1(在本书中简称NT)。通常,软件的版本号是从1.0开始的,但NT的第一个版本就是3.1。NT的最初开发计划是18个月,但实际用了快5年,是计划的好几倍。软件项目延迟是常有的事,但延迟了这么久还没有被枪毙掉也是有些不寻常的。在行业外的人看来,编写软件的人,特别是所谓的高手,大多有些古怪之处。NT团队最初只有几个人,结束时发展到两百多人,其中一定不乏特立独行或者离经叛道之士。这些人聚到一起,吃顿饭都可能争吵起来,何况要像绣花一样合作写软件呢,而且是写操作系统这样的复杂软件。弹指一挥间,距NT团队成立的日子差不多20年了。亲历过那段“美好的旧日时光(the good ole days)”的人,都早已声名显赫、腰缠万贯了。请他们讲一下从前的故事,不是一件容易的事。那么如何满足一下好奇心,或者冠冕堂皇一些,“师夷长技”呢?幸运的是,有一本书很好的记录了开发NT的全过程,它是用英文写的,名字叫《Showstopper》。 “Showstopper”这个英文单词很有趣,在观看戏剧或者其它演出时,人们使用这个词来形容节目格外精彩,让人拍手叫绝,以至于被观众的掌声和喝彩声所打断,不得不等人们安静下来后才能继续。在日常用语方面,它也是一个很好的词,人们用它来形容超乎寻常的美丽和迷人……但当这个词被引入到计算机特别是软件领域后,它的含义发生了根本性的变化,它代表的是最严重的问题。因为在软件领域,人们经常使用臭虫(英文为BUG)这个词来称呼软件中的瑕疵或者问题,并根据严重程度,将臭虫分成若干个等级,而“Showstopper”用来指最严重的那类臭虫,它如此严重,以至于影响了产品的核心功能,不解决它产品就不能用。如果是在开发阶段,Showstopper的存在会导致产品就不能发布,其它很多工作也无法进展,整个项目不得不延期……《Showstopper》一书以时间为主线,生动了描述了开发NT的整个过程,讲述了5年中的很多精彩故事,特别是NT团队如何解决开发中的Showstopper类问题的动人情节。开发软件不是一件简单的事。分析需求、定义功能、设计架构、编写代码、测试集成……,每个环节都不容易做。但难度最大的,最难以控制进度的,其难度又经常被低估的,就是定位和去除臭虫,也就是所谓的软件调试。如果把计算机系统中的每一个比特位看作是一个水滴,那么今天的典型计算机系统就都是一片海洋,定位臭虫的过程就好像是在这个海洋中捞针。而去除Showstopper类型的臭虫,更是难上加难,因为这样的问题往往关系着整个产品或项目的成败,关系着很多人的事业和命运。在介绍紧张的开发过程的同时,作者用简炼的笔法,为我们描绘了一大批个性鲜明的人物,包括他们的学习工作经历、性格、家庭、婚恋,以及他们面对困难和压力时的反应。在作者的妙笔之下,几十个人物跃然纸上。他们有些是公司的管理者,有些是项目经理,有些是团队的技术首领、小组长,有些是普通的程序员、测试员、构建员和技术编辑。他们各司其职,为共同的目标努力,尽管也有争执、摩擦、甚至冲突…… 我在四年前买了这本书,放在案头,有空的时候就拿起来读一读,有些内容读了很多遍,但是每一次都有新的感受,能受到不同的启发,有技术方面的,有项目管理方面的,也有处世和人生方面的。2005年的时候,我开始写一本软件调试方面的书,旨在帮助人们提高去除软件臭虫的效率。在写作过程中,我还经常拿起《Showstopper》,有时是为了小憩一下,有时是为了汲取灵感。有一天,我突然冒出一个想法,为什么不把这么好的一本书翻译成中文,让更多国内的读者可以看到呢?于是我开始想办法联系书的作者。费了些周折后,终于找到了两个邮件地址。于是便写了一封简单的邮件,发了出去,时间是在2007年的5月8日。信写的不是很长,因为担心作者收不到,白费功夫。没想到,第二天一早我就收到了回信。信落款处的署名是Gregg,也就是作者全名G. Pascal Zachary中G的完整形式。Gregg格说,他很高兴收到我的信,愿意让他的书在中国出版,末尾他还说:Plus, Chinese readers are keen on books about management of tech projects.(此外,中国的读者很喜欢如何管理科技项目的书。)是啊,这何尝不是一本软件工程管理方面的好书呢?尽管大多时候我是将其当作报告文学来读的。接下来的问题就是找一家国内的出版社。这并不像我预想的那样顺利。前两次尝试都很快就失败了。过了几个月后,又有了第三次机会,为了让这次机会成功的可能性大些,我特意邀请了两位编辑见面来谈。我先是花了些时间告诉他们这不是一本专门介绍技术的书。然后我讲了书中的一些精彩内容和这本书对于程序员、测试员、项目经理、公司老板以及历史爱好者的意义.在我滔滔不绝、激情澎湃的讲了一个多小时后,两位编辑有兴趣了,想看一下这本书,然后推荐给社里的领导来审判。过了几周后,我得到了答复:社里的领导不同意。这时已经是2007年底了。当时,我自己写的书已经完成了大半,在写第5篇——“软件的可调试性”时,我很自然地想到了《Showstopper》中的故事是一个很好的案例,征得了Gregg的同意后,在我的书中有了“Showstopper和未雨绸缪”这一节。2008年初,我又向另一家出版社推荐。这次很顺利,出版社很快决定购买版权。2008年3月,Gregg很高兴地发邮件告诉我他已经和中国的一家出版社签约了。之后的一些细节又花了些时间。2008年秋,《Showstopper》的翻译工作开始了。翻译难。尽管在打算翻译这本书的时候就预计了这个任务会很难,但是实际感受到的难度还是超出了预料。这本书的作者是《华尔街杂志》的著名记者,也许是因为写惯了针砭时弊的新闻稿,他的文笔很是犀利,用词泼辣,豪放不羁。不管是书中的小人物,还是大人物,作者都不加任何粉饰,直言其原貌,甚至缺点,毫不留情。另外,为了力求生动,作者在很多地方使用了口语化的描述方式,用了很多俚语和固定用法的短语。这些特点,使这本书让人读起来感觉很是过瘾,但是却给翻译带了很大的挑战。很多俚语和短语是词典里查找不到的,有些即使能查到,但是词典上给出的词意看起来也不符。更何况,如果完全照搬词典上的解释,翻译出来的东西就会失去原作的风采。就拿书名为例吧。作者使用Showstopper这个词作为书名,是有一语双关之妙的。一方面是使用了这个词在计算机领域的含义,即最严重的臭虫,这是对这本书主要内容的一种直白表达;另一方面当然还是使用了这个词的传统含义,把打造NT的过程比喻成一场“戏”;一场虽没有刀光剑影,但也绝对堪称紧张激烈的戏;一场发生在高科技领域,但也处处彰显人性光芒的戏;一场有欢乐,也有悲伤的戏;一场让人拍手叫绝的戏……如何翻译这个书名呢?从打算翻译这本书的时候,我就开始考虑这个问题,也与一些朋友一起探讨过,希望用“头脑风暴”激发出一个好的中文名字。关于这个词在计算机领域的用法,在我们尝试过的词典中,都没有包含这种用法。关于传统用法,词典中一般也只是一句说明,没有给出中文的对应词汇。在想出的很多种译法都被否决后,我们想到了保留这个词不译,这是最省事和稳妥的做法,但还是觉得那样做有些不好,特别是对于那些不太熟悉这个英文单词的人来说。最近几年,我越来越喜欢阅读古代的文学作品,尤其是当写作或者翻译中遇到困难时,我经常会翻看古人的作品寻找答案或者灵感。这一次,在翻看了几本书都没什么收获后,有一天,当我在书柜中搜索其它可看的书时,我看到了一本小小的书,128开本,大约一寸多厚,是典型的“口袋书”。拿起来一看,是上海古籍出版社出的袖珍本《古文观止》。在我很小的时候,就听说过这本书,但是当时还不知道这个书名的含义。后来慢慢明白,观止是“好到极致”的意思,出自著名的历史典籍《左传》。原文是说,吴国公子季札到鲁国访问,请求观赏一下周朝的音乐,于是鲁国派了乐队为他演奏,季札一边观赏,一边称赞。当看到歌舞《韶箾》时,他发出由衷的赞叹:“德至矣哉,大矣!如天之无不帱也,如地之无不载也!虽有盛德,其蔑以加于此矣。观止矣!若有他乐,吾不敢请已!”成语叹为观止就出自于此。看来汉语中的观止本来也是用来形容精彩的演出,“观”意为观赏、欣赏,“止”即停止。这与SHOWSTOPPER这个词何其相似,SHOW即表演,STOP即停止,二者加到一起就是令演出停止,后面的ER是英文中名词的常用后缀。看来,中国的古人和西方的圣贤不约而同的使用了同一种方式来表达他们对美好事物的终极赞叹,最由衷的情感和最美丽的语言是跨越地域差异的。想到这里,我如获至宝,决定将“SHOWSTOPPER”翻译为“观止”。除了封面上列出的译者外,还有很多人为翻译这本书倾注了智慧和汗水。刘颖翻译了第6章,王宇翻译了第1章的前半部分(初稿)。本书原作者Gregg在百忙中回答了我提出的很多问题。我的英文老师Barry October帮助我消除了很多疑问。高端调试网站(ADVDBG.ORG)的很多网友(KernelPanic、neilshu、dos、applepwc、merryzhao等)为翻译这本书提出了很多宝贵的意见,是与他们讨论后,才决定了本书中人名和地名的翻译方式(译为中文,但是在每章第一次出现时在中文后标注英文)。在此向上面的各位朋友以及曾关心过这本书的引进和翻译工作的所有人表示衷心的感谢!因为译者的水平有限,书中定有错误和不当之处,敬请读者批评指正。张银奎2009年2月
内容概要
本书讲述的是微软创建Windows NT这个计算机技术领域惊人突破背后的故事。揭示了成功创新的艰难和痛苦。集中表现了卡特勒的反复无常、激励和鞭策团队的能力,色彩鲜明地描述了这个巨大企业的人间戏剧,揭示了他们的压力、失望以及最终胜利。而胜利来自于战胜没完没了的最后期限,与对手的竞争,与不可避免又无处不在的程序缺陷的无休止的斗争——其中可能就包括致命的问题。
作者简介
作者:(美国)G.Pascal Zachary 译者:张银奎译者介绍:张银奎:《软件调试》一书的作者,英特尔亚太研发中心高级软件工程师,从事软件开发和研究工作十余年。对 IA-32 架构、操作系统内核、虚拟技术、尤其是软件调试有较深入研究。翻译(合译)作品有《数据挖掘原理》、《机器学习》、《人工智能:复杂问题求解的结构和策略》等。
书籍目录
译者序 引言 第一章 编码勇士第二章 代码之王第三章 部落第四章 死胡同第五章 嗥叫的熊第六章 狗粮第七章 交付模式 第八章 死亡行军 第九章 臭虫缠身 第十章 观止 后记 致谢
章节摘录
引言大卫•卡特勒,穿着白色的锐步鞋,白色的裤子和印着“Over the Line”图形的体恤衫。他突然出现在构建实验室,视察有史以来最大、最复杂的个人计算机程序。现在是早上10:20,这个称为Windows NT的程序最新的一次“构建”晚了数个小时。卡特勒是NT开发团队的负责人,他对这次延期很生气,对前一天粗糙的测试生气,对整个世界都很生气。他知道小的失误积累起来一定会拖延进度,而他在努力推动项目前进。卡特勒强调要经常对NT做构建或采样,这样他的250名程序员就可以“吃狗粮”了。那是一种糟糕的经历,就像你从头开始建一座房子,同时又住在里面。构建来的越早,他的团队就可以越早测试他们最新做出来的东西,发现问题,并进行改进。卡特勒皱着眉头,跌落进一个转椅中,怒视着面前的电脑屏幕。他敲了几个键,发出一阵叹息。卡特勒的不快也传染了其他人。三个构建员,他们负责在计算机的辅助下拼合NT,在卡特勒情绪激动的时候在他身后忙着自己的事情。一个没穿鞋的战战兢兢的年轻人,摆弄着三个像皮球。他被一堆计算机围在中间。艾瑞莎.弗兰克林的声音,透过“感觉良好医生”,从墙上的立体声音箱里传出来,充满了房间。卡特勒对杂耍和艾瑞莎没有兴趣,发出一阵怒吼。他跳起来,把椅子扔出老远,气冲冲地走出实验室。不穿鞋的杂耍者和首席构建员关于Rolaids陷入了剧烈的争吵,怒目相向。这天一早就充满了敌意。几分钟以后,卡特勒回到了构建实验室,甚至更加沮丧。他的罗圈腿和结实的胳膊让人想起大力水手。“你们在浪费该死的整个上午,还没有把这个该死的东西搞定,”他呵斥道。然后,他看起来很沮丧地告诉玩杂耍的人:“如果今天你能把这个[构建]搞定,给我电话”。他的脸更红了,卡特勒再次气呼呼地离开。他的粗线条让他无法掩饰自己的情绪。“你缓解压力的方法就是释放它,”他说。他的做法并没有什么独特之处。门边墙上画着的一个圈,那标记了有次他猛踢了一脚的现场,脚趾都踢破了。不久,他用拳头锤墙,本来没什么,但因为他刚好打到一个钉头上,结果折断了一根手指,引起一阵轰动。卡特勒急躁起来态度不佳,但也是可以理解的。对他来说,现在时间就是一切。他已经比原计划晚了一年,他的团队经过了数年的努力已经疲惫不堪,灰心丧气。现在只有那个巨大的目标在支持着他们。这个团队250名成员的目标是开发一个非常强大和通用的计算机软件,有朝一日每个人都会需要它。在他们面前的是数以千计的程序缺陷,或者称为编码错误,以及从未停止过的对NT基本设计的怀疑。这里NT的意思是“新技术”。NT不是一个单独的个体,它是有许多相互关联的程序组成的一个操作系统。这个软件将个人电脑变成了一个精密的思考工具,帮助个人或组织控制最有价值的资产:信息。NT通过一连串令人眼花缭乱的普通动作发挥其能力。好像一眨眼的功夫,它可以打开一个计算机文档,将文字和图片在屏幕上移来移去,打印一封信,计算一列数字,同时能保证好几个文字处理软件,电子表格和其他应用程序不会互相影响。NT最深奥的优点是隐藏起来的。正是那些不可见的动作在支撑着计算机,就像人类那些下意识的动作一样——比如呼吸、眨眼、听声音——正是他们维系了人类的生命。 NT异常的复杂。这个软件由六百万行代码构成,是最错综复杂的人类手工艺品之一。“没人能够完全理解它,”卡特勒说。像NT这样复杂的系统需要一个富有的资助人。有了威廉•盖茨,NT的资助人实际上是最富有的。盖茨是世界最大的软件制造商微软公司的共同创始人和首席执行官。盖茨希望利用NT将他的软件领域从其已经垄断的桌面软件扩展到网络。在1980年代,微软的DOS和Windows系统软件定义了大多数人使用计算机的方式。在1990年代,这个公司的目标是定义可以电子化的,能够将工人和商业、消费者和家庭联系起来的软件。盖茨希望,NT的开发将是实现这个伟大梦想的第一步。盖茨还想要给过去半个世纪以来的计算机革命带来全新的变化。NT揭开了数十年来将软件从硬件的控制下解放出来的最新篇章。直到现在,一台计算机的结构仍然决定了其软件的样子。如果某种特定型号的计算机消亡了,那么软件也会随之而消亡。NT将软件放在了计算的中心,通过利用当前最好的那些计算机的特性,给程序赋予了一定的通用性——即使在他们选择的那些硬件消亡之后,这些软件仍将存活下来。NT的成功立刻成了一个软件的入门读物,一个程序员社区的肖像,以及关于信息时代坚韧的管理复杂而危险任务的情节剧。随着人类和机器都变得完全而毫无保留的依赖于计算机,从空中交通管制到医疗诊断,好的代码对社会的平稳发展至关重要。而编写优秀的代码逐渐成了大团队的工作。然而这样的团队经常会沦为平庸,因为单就其大小就足以滋生官僚主义,没有结果。每个大的团队都面临这样的挑战:在组织好那些才华横溢的成员的同时,又要鼓励领导能力和灵活性。卡特勒在这种平衡术上表现杰出;他是能够让盖茨梦想成真的唯一合适人选。他既是明星球员,又是明星教练;他设定优先级,亲自编写关键代码,评审其他人的工作。但是他的领导也是有代价的。大多数他的跟随者们过着一维的生活:工作就是他们的全部。朋友退居幕后;婚姻紧张甚至破裂;孩子们被忽视,或者推迟生孩子的计划;业余爱好也没有了。计算机代码意味着一切。如果还能照顾到什么个人的梦想,那也只是为了减轻创造NT的痛苦。那些不愿意沉浸在卡特勒世界中的人——有些人顽固地这样做——可能冒着引起他们领导愤怒的风险,也许更糟,失去他的尊重。那些屈从于他的愿望的人则获得了丰厚的回报,赚到价值数百万美元的微软股票奖金。然而即使这些人也无法确保自己的饭碗。技术变化的步伐以及竞争的压力让他们的工作生死攸关。他们在工作上倾注了所有的精力,因为别无选择。卡特勒体现了今天工作场所里冷静的一面。他拒绝承认工作和休闲,职业和家庭,住宅和办公室之间的差别。他非常严厉的道德规范奇怪地令其助手们兴奋。在他带来的世界里,伟大的成就在阴冷的背景下出现。对手们是懒散的、困惑的、没有竞争力的。每个团队成员都渴望超越自己的弱点。“我们的工作非常非常艰苦,”卡特勒说。“若干年以后,这个团队的人回过头来看的时候将充满自豪。他们会说,这是我有生以来最大的成就,我的生活从来没有如此简单。我不用担心自己的职业生涯,不用担心自己的幸福,也不用担心能否处理好与老板和朋友的关系。我只有一件事情需要关心——那就是交付这个产品。并且尽己所能做到最好。”最初构思Windows NT的时候,卡特勒只是模糊地看到前面的道路。开发这个最复杂的计算机软件将他和他的忠实追随者们带入了一个数字荒原的深处。他们一度好像永远也不会在这次探险中找到出口。有些人一度在路上迷失了自己。另外一些则看到他们的生活处在已知和未知的模糊边界之上。直到最后,他们终于知道,每个有价值的创造都交织着爱和狂热。这就是他们的故事。
媒体关注与评论
“《观止》是计算机革命所激励出的最好的报告文学作品之一。G. 帕斯卡•扎卡里完成了一件很困难而且罕见的工作:他是非常复杂的过程变得很清晰、生动和具有戏剧性,而且没有把事实做过分的简化。所有对计算机感兴趣或者受其影响的人都会喜欢这本书所呈现出的计算机魔法后面的痛苦挣扎。” ——詹姆斯•法洛斯(James Fallows) 《关注东亚(Looking at the Sun)》作者 “采访设计软件的男子汉、编写代码的泰米尔勇士和一帮热情澎湃的臭虫杀手,看他们如何在一个刚愎自用的亿万富翁的驱动下创造未来的计算机程序。这本书描写了软件巫师们构建下一代操作系统时的战斗、压力和欢呼。扎卡里为我们带来了二十世纪九十年代的《新机器灵魂》。” ——克里夫•斯托尔(Cliff Stoll) 《杜鹃蛋》作者 “G. 帕斯卡•扎卡里设法进入到了微软的神秘编程世界,他充分利用了这样的机会,记录下了这个世界上最神奇企业的内幕。不论是黑客还是计算机新手,这本书都很值得一读。” ——史蒂文•利维(Steven Levy) 《黑客》、《人工生命》和《苹果传奇》作者 “观止,真的像名字所说的!这是对一场超乎寻常的商业冒险的真实再现。更重要的是,它为所有追求巨大创新的商界人士提供了很多意味深长的训诫。” ——汤姆•彼得斯(Tom Peters) 《追求卓越》作者 合上这本书的时候你会发现,软件不仅是智慧的结晶,也是信仰、尊严和魅力的代名词。 ——张亚勤博士 微软公司全球资深副总裁 这本书讲述了Windows NT开发的背后跌宕起伏的故事。任何与NT环境相关的人,或者对系统软件开发过程感兴趣的人,都应该阅读本书。 ——熊平 51CTO总裁
编辑推荐
比尔•盖茨和他的微软公司之所以能够取得巨大的成功,最重要的原因就是他们能够展望未来。微软既不满足于在应用软件方面不错的市场份额,也不满足于在关键的操作系统业务上依靠DOS和Windows获得的显著优势,他们一直在展望未来。而现在微软的未来被称为Windows NT。作为最先进的软件创新,NT也许会在全世界直到下个世纪的范围内重新定义计算的标准。NT赋予廉价的个人计算机的能力堪比庞大的大型机——而且并没有牺牲其内在的灵活性和个人计算机的优点。 本书讲述的就是这个计算机技术领域惊人突破背后的故事。掀开一层层神秘的面纱,这个惊人的故事揭示了成功创新的艰难和痛苦。如今,通过编写最先进的代码,依靠少数具有远见卓识的天才的想象力,以及巨大而昂贵的程序员和测试员团队的合作,美国已经主宰了全球软件产业。盖茨——既是一个管理天才,也是一个有技术远见的人——他在微软内推动了一种可控的混乱气氛,而Windows NT的故事极佳的表现了这种风气。大卫.卡特勒是盖茨在1988年招募的传奇程序员,他设计的NT用了5年时间、15亿美金才得以完成。在那大部分时间里,有超过200名测试员、开发员和技术员为这个巨大的软件工作。 本书集中表现了卡特勒的反复无常,激励和鞭策团队的能力,色彩鲜明地描述了这个巨大企业的人间戏剧,揭示了他们的压力、失望以及最终胜利。而胜利来自于战胜没完没了的最后期限,与对手的竞争,与不可避免又无处不在的程序缺陷的无休止的斗争——其中可能就包括致命的“showstopper”类问题。 本书吸引入胜、生动形象、通俗易懂,展示了重大进展背后各种不同寻常的人物:闹独立的人,组织活动的人,解决问题的人,激起行动的人。即使是扭打在一起威胁要把他们拆开的时候,卡特勒和他的团队仍然在兴奋地搜寻关于计算的圣杯。
名人推荐
“《观止》是计算机革命所激励出的最好的报告文学作品之一。G. 帕斯卡•扎卡里完成了一件很困难而且罕见的工作:他是非常复杂的过程变得很清晰、生动和具有戏剧性,而且没有把事实做过分的简化。所有对计算机感兴趣或者受其影响的人都会喜欢这本书所呈现出的计算机魔法后面的痛苦挣扎。”——詹姆斯•法洛斯(James Fallows) 《关注东亚(Looking at the Sun)》作者“采访设计软件的男子汉、编写代码的泰米尔勇士和一帮热情澎湃的臭虫杀手,看他们如何在一个刚愎自用的亿万富翁的驱动下创造未来的计算机程序。这本书描写了软件巫师们构建下一代操作系统时的战斗、压力和欢呼。扎卡里为我们带来了二十世纪九十年代的《新机器灵魂》。”——克里夫•斯托尔(Cliff Stoll) 《杜鹃蛋》作者 “G. 帕斯卡•扎卡里设法进入到了微软的神秘编程世界,他充分利用了这样的机会,记录下了这个世界上最神奇企业的内幕。不论是黑客还是计算机新手,这本书都很值得一读。”——史蒂文•利维(Steven Levy) 《黑客》、《人工生命》和《苹果传奇》作者“观止,真的像名字所说的!这是对一场超乎寻常的商业冒险的真实再现。更重要的是,它为所有追求巨大创新的商界人士提供了很多意味深长的训诫。” ——汤姆•彼得斯(Tom Peters) 《追求卓越》作者
图书封面
图书标签Tags
无
评论、评分、阅读与下载