美文网首页我爱编程
开源应用程序的体系结构

开源应用程序的体系结构

作者: imacoder | 来源:发表于2018-03-19 09:24 被阅读21次

原名:The Architecture of Open Source Applications

链接:http://aosabook.org/en/index.html

Architects look at thousands of buildings during their training, and study critiques of those buildings written by masters. In contrast, most software developers only ever get to know a handful of large programs well—usually programs they wrote themselves—and never study the great programs of history. As a result, they repeat one another's mistakes rather than building on one another's successes.

Our goal is to change that. In these two books, the authors of four dozen open source applications explain how their software is structured, and why. What are each program's major components? How do they interact? And what did their builders learn during their development? In answering these questions, the contributors to these books provide unique insights into how they think.

If you are a junior developer, and want to learn how your more experienced colleagues think, these books are the place to start. If you are an intermediate or senior developer, and want to see how your peers have solved hard design problems, these books can help you too.

建筑师们在他们的训练过程中观察了成千上万的建筑,并对大师们所写的评语进行了研究。相比之下,大多数软件开发人员只了解少数几个大型程序——通常是他们自己编写的程序——而且从来没有研究过历史上的伟大项目。因此,他们重复别人的错误,而不是建立在彼此的成功之上。

我们的目标是改变这种状况。在这两本书中,近50位开源软件的作者解释了他们的软件是如何构造的,以及为什么这么构造。每个程序的主要组件是什么?它们如何相互作用?他们的建设者在他们的发展过程中学到了什么?在回答这些问题时,这些书的作者提供了独特的见解,他们如何思考。

如果你是一名初级开发人员,想要了解你的经验丰富的同事们的想法,那么这些书就是开始的地方。如果你是一名中级或高级的开发人员,并且想看看你的同行是如何解决设计难题的,这些书也可以帮助你。

500 Lines or Less

经验丰富的开发者解决有趣的问题

Introduction Michael DiBernardo

介绍

1    Blockcode: A visual programming toolkit    Dethe Elza

块代码:可视化编程工具包

2    A Continuous Integration System    Malini Das

持续集成系统

3    Clustering by Consensus    Dustin J. Mitchell

集群的共识

4    Contingent: A Fully Dynamic Build System    Brandon Rhodes and Daniel Rocco

特遣队:完全动态的构建系统

5    A Web Crawler With asyncio Coroutines    A. Jesse Jiryu Davis and Guido van Rossum

一名网络爬虫,带着asyncio coroutines

6    Dagoba: an in-memory graph database    Dann Toliver

dagoba:一个内存中的图形数据库

7    DBDB: Dog Bed Database    Taavi Burns

dbdb:Dog Bed数据库

8    An Event-Driven Web Framework    Leo Zovic

事件驱动web框架

9    A Flow Shop Scheduler    Dr. Christian Muise

10    An Archaeology-Inspired Database    Yoav Rubin

11    Making Your Own Image Filters    Cate Huston

12    A Python Interpreter Written in Python    Allison Kaptur

Python编写的解释器

13    A 3D Modeller    Erick Dransch

14    A Simple Object Model    Carl Friedrich Bolz

15    Optical Character Recognition (OCR)    Marina Samuel

16    A Pedometer in the Real World    Dessy Daskalov

17    The Same-Origin Policy    Eunsuk Kang, Santiago Perez De Rosso, and Daniel Jackson

18    A Rejection Sampler    Jessica B. Hamrick

一个拒绝的人

19    Web Spreadsheet    Audrey Tang

网络电子表格

20    Static Analysis    Leah Hanson

静态分析

21    A Template Engine    Ned Batchelder

 一个模板引擎

22    A Simple Web Server    Greg Wilson

一个简单的Web服务器


The Performance of Open Source Applications

IntroductionTavish Armstrong

1High Performance Networking in ChromeIlya Grigorik

2From SocialCalc to EtherCalcAudrey Tang

3NinjaEvan Martin

4Parsing XML at the Speed of LightArseny Kapoulkine

5MemShrinkKyle Huey

6Applying Optimization Principle Patterns to Component Deployment and Configuration ToolsDoug C. SchmidtWilliam R. Otte, and Aniruddha Gokhale

7InfinispanManik Surtani

8TalosClint Talbert and Joel Maher

9ZotonicArjan Scherpenisse and Marc Worrell

10Secrets of Mobile Network PerformanceBryce Howard

11WarpKazu YamamotoMichael Snoyman, and Andreas Voellmy

12Working with Big Data in BioinformaticsEric McDonald and C. Titus Brown

The Architecture of Open Source Applications Volume Ⅱ

Buy Volume II

IntroductionAmy Brown and Greg Wilson

1.Scalable Web Architecture and Distributed SystemsKate Matsudaira

2.Firefox Release EngineeringChris AtLeeLukas BlakkJohn O'Duinn, and Armen Zambrano Gasparnian

3.FreeRTOSChristopher Svec

4.GDBStan Shebs

5.The Glasgow Haskell CompilerSimon Marlow and Simon Peyton-Jones

6.GitSusan Potter

7.GPSDEric Raymond

8.The Dynamic Language Runtime and the Iron LanguagesJeff Hardy

9.ITKLuis Ibanez and Brad King

10.GNU MailmanBarry Warsaw

11.matplotlibJohn Hunter and Michael Droettboom

12.MediaWikiSumana Harihareswara and Guillaume Paumier

13.MoodleTim Hunt

14.nginxAndrey Alexeev

15.Open MPIJeff Squyres

16.OSCARJennifer Ruttan

17.Processing.jsMike Kamermans

18.PuppetLuke Kanies

19.PyPyBenjamin Peterson

20.SQLAlchemyMichael Bayer

21.TwistedJessica McKellar

22.YesodMichael Snoyman

23.YoctoElizabeth Flanagan

24.ZeroMQMartin Sústrik

Bibliography

The Architecture of Open Source Applications Volume Ⅰ

IntroductionAmy Brown and Greg Wilson

1.AsteriskRussell Bryant

2.AudacityJames Crook

3.The Bourne-Again ShellChet Ramey

4.Berkeley DBMargo Seltzer and Keith Bostic

5.CMakeBill Hoffman and Kenneth Martin

6.EclipseKim Moir

7.GraphiteChris Davis

8.The Hadoop Distributed File SystemRobert ChanslerHairong KuangSanjay RadiaKonstantin Shvachko, and Suresh Srinivas

9.Continuous IntegrationC. Titus Brown and Rosangela Canino-Koning

10.JitsiEmil Ivov

11.LLVMChris Lattner

12.MercurialDirkjan Ochtman

13.The NoSQL EcosystemAdam Marcus

14.Python PackagingTarek Ziadé

15.Riak and Erlang/OTPFrancesco CesariniAndy Gross, and Justin Sheehy

16.Selenium WebDriverSimon Stewart

17.SendmailEric Allman

18.SnowFlockRoy Bryant and Andrés Lagar-Cavilla

19.SocialCalcAudrey Tang

20.TelepathyDanielle Madeley

21.Thousand ParsecAlan Laudicina and Aaron Mavrinac

22.VioletCay Horstmann

23.VisTrailsJuliana FreireDavid KoopEmanuele SantosCarlos ScheideggerClaudio Silva, and Huy T. Vo

24.VTKBerk Geveci and Will Schroeder

25.Battle For WesnothRichard Shimooka and David White

Bibliography

相关文章

网友评论

    本文标题:开源应用程序的体系结构

    本文链接:https://www.haomeiwen.com/subject/ysneqftx.html