

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 自訂組建 AWS SAM
<a name="building-lambda-functions"></a>

您可以自訂建置以包含特定 Lambda 函數或 Lambda 層。函數是您可以叫用以在 Lambda 中執行程式碼的資源。Lambda 層可讓您從 Lambda 函數擷取程式碼，然後在多個 Lambda 函數之間重複使用。當您想要專注於開發和部署個別的無伺服器函數，而無需管理共用相依性或資源的複雜性時，可以選擇使用特定 Lambda 函數自訂您的建置。此外，您可以選擇建置 Lambda 層，以協助您減少部署套件的大小、將核心函數邏輯與相依性分開，以及讓您在多個函數之間共用相依性。

本節中的主題會探索您可以使用的一些不同方式來建置 Lambda 函數 AWS SAM。這包括使用客戶執行時間建置 Lambda 函數，以及建置 Lambda 層。《 AWS Lambda 開發人員指南》中的自訂執行階段可讓您安裝和使用 Lambda 執行階段中未列出的語言。這可讓您建立專用執行環境，以執行無伺服器函數和應用程式。僅建置 Lambda 層 （而不是建置整個應用程式） 可以透過幾種方式使您受益。它可協助您減少部署套件的大小、將核心函數邏輯與相依性分開，並允許您在多個函數之間共用相依性。

如需 函數的詳細資訊，請參閱《 *AWS Lambda 開發人員指南*》中的 [Lambda 概念](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-concepts.html)。

**Topics**
+ [在 中使用 esbuild 建置 Node.js Lambda 函數 AWS SAM](serverless-sam-cli-using-build-typescript.md)
+ [在 中使用原生 AOT 編譯建置 .NET Lambda 函數 AWS SAM](build-dotnet7.md)
+ [在 Cargo Lambda中使用 建置 Rust Lambda 函數 AWS SAM](building-rust.md)
+ [在 uv中使用 建置 Python Lambda 函數 AWS SAM](building-python-uv.md)
+ [在 中使用自訂執行期建置 Lambda 函數 AWS SAM](building-custom-runtimes.md)
+ [在 中建置 Lambda 層 AWS SAM](building-layers.md)