<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                ### 顯式聲明依賴關系(?*dependency*?) 大多數編程語言都會提供一個打包系統,用來為各個類庫提供打包服務,就像 Perl 的?[CPAN](http://www.cpan.org/)?或是 Ruby 的?[Rubygems](http://rubygems.org/)?。通過打包系統安裝的類庫可以是系統級的(稱之為 “site packages”),或僅供某個應用程序使用,部署在相應的目錄中(稱之為 “vendoring” 或 “bunding”)。 **12-Factor規則下的應用程序不會隱式依賴系統級的類庫。**?它一定通過?*依賴清單*?,確切地聲明所有依賴項。此外,在運行過程中通過?*依賴隔離*?工具來確保程序不會調用系統中存在但清單中未聲明的依賴項。這一做法會統一應用到生產和開發環境。 例如, Ruby 的?[Gem Bundler](http://gembundler.com/)?使用?`Gemfile`?作為依賴項聲明清單,使用?`bundle exec`?來進行依賴隔離。Python 中則可分別使用兩種工具 –?[Pip](http://www.pip-installer.org/en/latest/)?用作依賴聲明,?[Virtualenv](http://www.virtualenv.org/en/latest/)?用作依賴隔離。甚至 C 語言也有類似工具,?[Autoconf](http://www.gnu.org/s/autoconf/)?用作依賴聲明,靜態鏈接庫用作依賴隔離。無論用什么工具,依賴聲明和依賴隔離必須一起使用,否則無法滿足 12-Factor 規范。 顯式聲明依賴的優點之一是為新進開發者簡化了環境配置流程。新進開發者可以檢出應用程序的基準代碼,安裝編程語言環境和它對應的依賴管理工具,只需通過一個?*構建命令*?來安裝所有的依賴項,即可開始工作。例如,Ruby/Bundler 下使用`bundle install`,而 Clojure/[Leiningen](https://github.com/technomancy/leiningen#readme)?則是?`lein deps`。 12-Factor 應用同樣不會隱式依賴某些系統工具,如 ImageMagick 或是`curl`。即使這些工具存在于幾乎所有系統,但終究無法保證所有未來的系統都能支持應用順利運行,或是能夠和應用兼容。如果應用必須使用到某些系統工具,那么這些工具應該被包含在應用之中。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看