[svnbook] r5866 committed - branches/1.8/zh/book/ch08-embedding-svn.xml

wuzhouhui at users.sourceforge.net wuzhouhui at users.sourceforge.net
Sat Jan 19 07:00:48 CST 2019


Revision: 5866
          http://sourceforge.net/p/svnbook/source/5866
Author:   wuzhouhui
Date:     2019-01-19 13:00:43 +0000 (Sat, 19 Jan 2019)
Log Message:
-----------
1.8/zh: translation of chapter 8 in progress

Modified Paths:
--------------
    branches/1.8/zh/book/ch08-embedding-svn.xml

Modified: branches/1.8/zh/book/ch08-embedding-svn.xml
===================================================================
--- branches/1.8/zh/book/ch08-embedding-svn.xml	2019-01-13 11:51:25 UTC (rev 5865)
+++ branches/1.8/zh/book/ch08-embedding-svn.xml	2019-01-19 13:00:43 UTC (rev 5866)
@@ -138,50 +138,81 @@
       </varlistentry>
       <varlistentry>
         <term>libsvn_ra</term>
+      <!--
+           ### TODO
         <listitem><para>Repository Access commons and module
           loader</para></listitem>
+      -->
+        <listitem><para>仓库访问公共例程和模块加载例程</para></listitem>
       </varlistentry>
       <varlistentry>
         <term>libsvn_ra_local</term>
+      <!--
         <listitem><para>The local Repository Access
           module</para></listitem>
+      -->
+        <listitem><para>本地仓库访问模块</para></listitem>
       </varlistentry>
       <varlistentry>
         <term>libsvn_ra_serf</term>
+      <!--
         <listitem><para>Another (experimental) WebDAV Repository
           Access module</para></listitem>
+      -->
+        <listitem><para>另一个 WebDAV 仓库访问模块 (试验性的)</para></listitem>
       </varlistentry>
       <varlistentry>
         <term>libsvn_ra_svn</term>
+      <!--
         <listitem><para>The custom protocol Repository Access
           module</para></listitem>
+      -->
+        <listitem><para>使用定制协议的仓库访问模块</para></listitem>
       </varlistentry>
       <varlistentry>
         <term>libsvn_repos</term>
+      <!--
         <listitem><para>Repository interface</para></listitem>
+      -->
+        <listitem><para>仓库接口</para></listitem>
       </varlistentry>
       <varlistentry>
         <term>libsvn_subr</term>
+      <!--
         <listitem><para>Miscellaneous helpful
           subroutines</para></listitem>
+      -->
+        <listitem><para>各种辅助例程</para></listitem>
       </varlistentry>
       <varlistentry>
         <term>libsvn_wc</term>
+      <!--
         <listitem><para>The working copy management
           library</para></listitem>
+      -->
+        <listitem><para>工作副本管理函数库</para></listitem>
       </varlistentry>
       <varlistentry>
         <term>mod_authz_svn</term>
+      <!--
         <listitem><para>Apache authorization module for Subversion
           repositories access via WebDAV</para></listitem>
+      -->
+        <listitem><para>Apache 授权模块, 用于借助 WebDAV 的 Subversion
+            仓库访问</para></listitem>
       </varlistentry>
       <varlistentry>
         <term>mod_dav_svn</term>
+      <!--
         <listitem><para>Apache module for mapping WebDAV operations to
           Subversion ones</para></listitem>
+      -->
+      <listitem><para>Apache 模块, 用于将 WebDAV 操作映射到 Subversion 的
+          对应操作</para></listitem>
       </varlistentry>
     </variablelist>
 
+      <!--
     <para>The fact that the word <quote>miscellaneous</quote>
       appears only once in the previous list is a good sign.  The
       Subversion development team is serious about making sure that
@@ -191,7 +222,14 @@
       you can quickly formulate that kind of <quote>big
       picture</quote> that allows you to pinpoint the location of
       certain pieces of functionality with relative ease.</para>
+      -->
+    <para>在上面的介绍中, <quote>各种</quote> 这个词只出现了一次, 这是一个
+      好现象, 因为 Subversion 开发团队总是尽量将功能放到正确的层次和函数库
+      中实现. 站在开发人员的角度来看, 模块化设计最大的好处可能是降低了复杂
+      度, 于是你就可以快速地勾勒出 <quote>整体面貌</quote>, 更加容易地功能
+      的位置.</para>
 
+      <!--
     <para>Another benefit of modularity is the ability to replace a
       given module with a whole new library that implements the same
       API without affecting the rest of the code base.  In some sense,
@@ -208,7 +246,18 @@
       libraries that implement the same functionality in different
       ways—both are plug-ins to the common
       <filename>libsvn_fs</filename> library.</para>
+      -->
+    <para>模块化设计的另一个好处是允许我们重新实现给定的模块, 只要保持 API 兼容
+      性, 就不会影响其他模块. 在某种意义上, Subversion 已经在这样做了. 函数库
+      <filename>libsvn_ra_local</filename>, <filename>libsvn_ra_serf</filename>
+      和 <filename>libsvn_ra_svn</filename> 各自都实现的一套相同的接口, 它们都
+      是作为 <filename>libsvn_ra</filename> 的插件与仓库访问层通信—
+      <filename>libsvn_ra_local</filename> 与仓库直接通信, 另外两个通过网络与
+      仓库通信. <filename>libsvn_fs_base</filename> 和
+      <filename>libsvn_fs_fs</filename> 是另一对用不同方式实现了相同接口的函数
+      库—它们是作为 <filename>libsvn_fs</filename> 的插件.</para>
 
+      <!--
     <para>The client itself also highlights the benefits of modularity
       in the Subversion design.  Subversion's
       <filename>libsvn_client</filename> library is a one-stop shop
@@ -223,6 +272,13 @@
       proliferation of available Subversion clients and IDE
       integrations and, by extension, to the tremendous adoption rate
       of Subversion itself.</para>
+      -->
+    <para>客户端本身也突出了 Subversion 模块化设计的优越性. 函数库
+      <filename>libsvn_client</filename> 是开发 Subversion 客户端的一站式商店
+      (见 <xref linkend="svn.developer.layerlib.client"/>). 所以说虽然
+      Subversion 发行版提供了命令行客户端工具 <command>svn</command>, 但还有
+      一些第三方程序提供了图形化的客户端工具, 这些图形化工具使用了和命令行工具
+      相同的 API. 模块化设计在 Subversion 的推广中起到了非常重要的作用.</para>
 
     <!-- =============================================================== -->
     <sect2 id="svn.developer.layerlib.repos">




More information about the svnbook-dev mailing list