.NET 字彙表.NET Glossary

此字彙表的主要目標是釐清經常出現在 .NET 文件中但沒有定義之特定詞彙和縮略字的意義。The primary goal of this glossary is to clarify meanings of selected terms and acronyms that appear frequently in the .NET documentation without definitions.

AOTAOT

預先編譯器。Ahead-of-time compiler.

此編譯器類似於 JIT,也會將 IL 轉譯成機器碼。Similar to JIT, this compiler also translates IL to machine code. 相較於 JIT 編譯,AOT 編譯會在執行應用程式之前發生,而且通常會在不同的電腦上執行。In contrast to JIT compilation, AOT compilation happens before the application is executed and is usually performed on a different machine. 由於 AOT 工具鏈不在執行階段編譯,因此不需要縮短花在編譯的時間。Because AOT tool chains don't compile at runtime, they don't have to minimize time spent compiling. 這表示它們可以花更多的時間在最佳化。That means they can spend more time optimizing. 由於 AOT 的內容是整個應用程式,因此 AOT 編譯器也會執行跨模組連結和整個程式分析,這表示會追蹤所有參考並產生單一可執行檔。Since the context of AOT is the entire application, the AOT compiler also performs cross-module linking and whole-program analysis, which means that all references are followed and a single executable is produced.

請參閱 CoreRT.NET NativeSee CoreRT and .NET Native.

ASP.NETASP.NET

隨附於 .NET Framework 的原始 ASP.NET 實作。The original ASP.NET implementation that ships with the .NET Framework.

有時 ASP.NET 是指包括 ASP.NET Core 在內之兩個 ASP.NET 實作的籠統名詞。Sometimes ASP.NET is an umbrella term that refers to both ASP.NET implementations including ASP.NET Core. 該詞彙在任何指定的執行個體中所代表的意義取決於內容。The meaning that the term carries in any given instance is determined by context. 當想要澄清您不是使用 ASP.NET 來表示這兩種實作時,請參閱 ASP.NET 4.x。Refer to ASP.NET 4.x when you want to make it clear that you’re not using ASP.NET to mean both implementations.

請參閱 ASP.NET 文件See ASP.NET documentation.

ASP.NET CoreASP.NET Core

建置於 .NET Core 之 ASP.NET 的跨平台、高效能、開放原始碼實作。A cross-platform, high-performance, open source implementation of ASP.NET built on .NET Core.

請參閱 ASP.NET Core 文件See ASP.NET Core documentation.

組件assembly

可以包含可由應用程式或其他組件呼叫之 API 集合的 .dll/.exe 檔案。A .dll/.exe file that can contain a collection of APIs that can be called by applications or other assemblies.

一個組件可以包含介面、類別、結構、列舉和委派等類型。An assembly may include types such as interfaces, classes, structures, enumerations, and delegates. 專案的 bin 資料夾中的組件有時稱為「二進位檔」。Assemblies in a project's bin folder are sometimes referred to as binaries. 另請參閱程式庫See also library.

CLRCLR

Common Language Runtime。Common Language Runtime.

確切意義取決於內容,但這通常是指 .NET Framework 的執行階段。The exact meaning depends on the context, but this usually refers to the runtime of the .NET Framework. CLR 會處理記憶體配置和管理。The CLR handles memory allocation and management. CLR 也是虛擬機器,它不只會執行應用程式,也會使用 JIT 編譯器即時產生和編譯程式碼。The CLR is also a virtual machine that not only executes apps but also generates and compiles code on-the-fly using a JIT compiler. 目前的 Microsoft CLR 實作僅限 Windows。The current Microsoft CLR implementation is Windows only.

CoreCLRCoreCLR

.NET Core Common Language Runtime。.NET Core Common Language Runtime.

此 CLR 是從與 CLR 相同的程式碼基底所建置。This CLR is built from the same code base as the CLR. 一開始,CoreCLR 是 Silverlight 的執行階段,其設計目的是為了在多個平台上執行,特別是 Windows 和 OS X。CoreCLR 現在是 .NET Core 的一部分,代表 CLR 的簡化版本。Originally, CoreCLR was the runtime of Silverlight and was designed to run on multiple platforms, specifically Windows and OS X. CoreCLR is now part of .NET Core and represents a simplified version of the CLR. 它仍然是跨平台執行階段,現在支援許多 Linux 發行版本。It's still a cross-platform runtime, now including support for many Linux distributions. CoreCLR 也是具有 JIT 和程式碼執行功能的虛擬機器。CoreCLR is also a virtual machine with JIT and code execution capabilities.

CoreFXCoreFX

.NET Core 基底類別庫 (BCL).NET Core Base Class Library (BCL)

由 System.* (以及一定範圍內的 Microsoft.*) 命名空間組成的一組程式庫。A set of libraries that comprise the System.* (and to a limited extent Microsoft.*) namespaces. BCL 是 ASP.NET Core 等較高層級的應用程式架構建置所在之較低層級的一般目的架構。The BCL is a general purpose, lower-level framework that higher-level application frameworks, such as ASP.NET Core, build on. .NET Core BCL 的原始程式碼包含在 CoreFX 存放庫中。The source code of the .NET Core BCL is contained in the CoreFX repository. 不過,大多數的 .NET Core API 也適用於 .NET Framework;因此您可以將 CoreFX 視為 .NET Framework BCL 的分支。However, the majority of the .NET Core APIs are also available in the .NET Framework, so you can think of CoreFX as a fork of the .NET Framework BCL.

CoreRTCoreRT

.NET Core 執行階段。.NET Core runtime.

相較於 CLR/CoreCLR,CoreRT 不是虛擬機器,這表示它不會包含即時產生和執行程式碼的功能,因為它不包含 JITIn contrast to the CLR/CoreCLR, CoreRT is not a virtual machine, which means it doesn't include the facilities to generate and run code on-the-fly because it doesn't include a JIT. 不過,它包含 GC,以及執行階段類型識別 (RTTI) 和反映功能。It does, however, include the GC and the ability for runtime type identification (RTTI) and reflection. 不過,其型別系統已設計成不需要反映的中繼資料。However, its type system is designed so that metadata for reflection isn't required. 這讓 AOT 工具鏈能夠抽離不必要的中繼資料,更重要的是,它能夠識別應用程式未使用的程式碼。This enables having an AOT tool chain that can link away superfluous metadata and (more importantly) identify code that the app doesn't use. CoreRT 正在開發中。CoreRT is in development.

請參閱 Intro to .NET Native and CoreRT (.NET Native 和 CoreRT 簡介)See Intro to .NET Native and CoreRT

跨平台cross-platform

能夠開發和執行可在多個不同的作業系統 (例如 Linux、Windows 和 iOS) 上使用的應用程式,而無需特別針對每個作業系統重新撰寫。The ability to develop and execute an application that can be used on multiple different operating systems, such as Linux, Windows and iOS, without having to re-write specifically for each one. 這樣可讓程式碼在不同平台的應用程式之間重複使用並維持一致性。This enables code re-use and consistency between applications on different platforms.

生態系統ecosystem

用來建置及執行適用於指定技術之應用程式的所有執行階段軟體、開發工具和社群資源。All of the runtime software, development tools, and community resources that are used to build and run applications for a given technology.

「.NET 生態系統」一詞與「.NET 堆疊」等類似詞彙的不同之處在於,前者包含協力廠商應用程式和程式庫。The term ".NET ecosystem" differs from similar terms such as ".NET stack" in its inclusion of third-party apps and libraries. 以下是用於句子中的範例:Here's an example in a sentence:

  • .NET Standard 背後的動機是在 .NET 生態系統中建立更高的一致性。」"The motivation behind the .NET Standard is to establish greater uniformity in the .NET ecosystem."

架構framework

一般而言,一組功能齊全的 API 可加快開發和部署以特定技術為基礎的應用程式。In general, a comprehensive collection of APIs that facilitates development and deployment of applications that are based on a particular technology. ASP.NET Core 和 Windows Forms 即為此一般意義的應用程式架構範例。In this general sense, ASP.NET Core and Windows Forms are examples of application frameworks. 另請參閱程式庫See also library.

「架構」一字在下列詞彙中有更特定的技術意義:The word "framework" has a more specific technical meaning in the following terms:

在現有的文件中,「架構」有時是指 .NET 實作In the existing documentation, "framework" sometimes refers to an implementation of .NET. 例如,某篇文章可能會將 .NET Core 稱為架構。For example, an article may call .NET Core a framework. 我們計劃從文件中排除這個令人混淆的用法。We plan to eliminate this confusing usage from the documentation.

GCGC

記憶體回收行程。Garbage collector.

記憶體回收行程是自動記憶體管理的實作。The garbage collector is an implementation of automatic memory management. GC 會釋放不再使用之物件所佔用的記憶體。The GC frees memory occupied by objects that are no longer in use.

請參閱記憶體回收See Garbage Collection.

ILIL

中繼語言。Intermediate language.

較高階的 .NET 語言 (例如 C#) 可向下編譯成硬體無從驗證的指令集,稱為中繼語言 (IL)。Higher-level .NET languages, such as C#, compile down to a hardware-agnostic instruction set, which is called Intermediate Language (IL). IL 有時稱為 MSIL (Microsoft IL) 或 CIL (Common IL)。IL is sometimes referred to as MSIL (Microsoft IL) or CIL (Common IL).

JITJIT

Just-in-Time 編譯器。Just-in-time compiler.

此編譯器類似於 AOT,會將 IL 轉譯成處理器了解的機器碼。Similar to AOT, this compiler translates IL to machine code that the processor understands. 不同於 AOT,JIT 編譯會視需要發生,而且會在必須執行程式碼的相同電腦上執行。Unlike AOT, JIT compilation happens on demand and is performed on the same machine that the code needs to run on. 由於 JIT 編譯會在應用程式執行期間發生,因此編譯時間會是執行階段的一部分。Since JIT compilation occurs during execution of the application, compile time is part of the run time. 因此,JIT 編譯器必須在最佳化程式碼所花費的時間與結果程式碼可能省下的時間之間取得平衡。Thus, JIT compilers have to balance time spent optimizing code against the savings that the resulting code can produce. 但 JIT 知道實際硬體,因此開發人員不需要提供不同的實作。But a JIT knows the actual hardware and can free developers from having to ship different implementations.

.NET 實作implementation of .NET

.NET 實作包括:An implementation of .NET includes the following:

  • 一或多個執行階段。One or more runtimes. 例如:CLR、CoreCLR、CoreRT。Examples: CLR, CoreCLR, CoreRT.
  • 實作 .NET Standard 版本並可能包含其他 API 的類別庫。A class library that implements a version of the .NET Standard and may include additional APIs. 範例:.NET Framework 基底類別庫、.NET Core 基底類別庫。Examples: .NET Framework Base Class Library, .NET Core Base Class Library.
  • (選擇性) 一或多個應用程式架構。Optionally, one or more application frameworks. 例如:ASP.NET、Windows Forms 和 WPF 會包含在 .NET Framework 中。Examples: ASP.NET, Windows Forms, and WPF are included in the .NET Framework.
  • (選擇性) 開發工具。Optionally, development tools. 某些開發工具可在多個實作之間共用。Some development tools are shared among multiple implementations.

.NET 實作的範例:Examples of .NET implementations:

程式庫library

可由應用程式或其他程式庫呼叫的 API 集合。A collection of APIs that can be called by apps or other libraries. .NET 程式庫是由一或多個組件組成。A .NET library is composed of one or more assemblies.

程式庫和架構等字在使用時通常同義。The words library and framework are often used synonymously.

中繼套件metapackage

沒有自己的程式庫,而只是一份相依性清單的 NuGet 套件。A NuGet package that has no library of its own but is only a list of dependencies. 內含的套件可以選擇性地建立目標 Framework 的 API。The included packages can optionally establish the API for a target framework.

請參閱套件、中繼套件和架構See Packages, Metapackages and Frameworks

MonoMono

Mono 是開放原始碼、跨平台的 .NET 實作,主要用於需要小型執行階段時。Mono is an open source, cross-platform .NET implementation that is mainly used when a small runtime is required. 它是支援 Android、Mac、iOS、tvOS 和 watchOS 版 Xamarin 應用程式的執行階段,而且主要著重在資源使用量較少的應用程式。It is the runtime that powers Xamarin applications on Android, Mac, iOS, tvOS and watchOS and is focused primarily on apps that require a small footprint.

它支援目前發行的所有 .NET Standard 版本。It supports all of the currently published .NET Standard versions.

在過去,Mono 實作較大型的 .NET Framework API,並模擬 UNIX 上最熱門的其中一些功能。Historically, Mono implemented the larger API of the .NET Framework and emulated some of the most popular capabilities on Unix. 它有時可用來執行依賴這些 UNIX 功能的 .NET 應用程式。It is sometimes used to run .NET applications that rely on those capabilities on Unix.

Mono 通常可搭配 Just-In-Time 編譯器使用,但也提供適用於 iOS 等平台的完整靜態編譯器 (預先編譯)。Mono is typically used with a just-in-time compiler, but it also features a full static compiler (ahead-of-time compilation) that is used on platforms like iOS.

若要深入了解 Mono,請參閱 Mono 文件To learn more about Mono, see the Mono documentation.

.NET.NET

.NET Standard 以及所有 .NET 實作和工作負載的籠統詞彙。The umbrella term for .NET Standard and all .NET implementations and workloads. 一律為大寫,絕對不會是 ".Net"。Always capitalized, never ".Net".

請參閱 .NET 指南See the .NET Guide

.NET Core.NET Core

.NET 的跨平台、高效能、開放原始碼實作。A cross-platform, high-performance, open source implementation of .NET. 包括 Core Common Language Runtime (CoreCLR)、Core AOT 執行階段 (CoreRT 開發中)、Core 基底類別庫,以及 Core SDK。Includes the Core Common Language Runtime (CoreCLR), the Core AOT Runtime (CoreRT, in development), the Core Base Class Library, and the Core SDK.

請參閱 .NET CoreSee .NET Core.

.NET Core CLI.NET Core CLI

用於開發 .NET Core 應用程式的跨平台工具鏈。A cross-platform toolchain for developing .NET Core applications.

請參閱 .NET Core 命令列介面 (CLI) 工具See .NET Core command-line interface (CLI) tools.

.NET Core SDK.NET Core SDK

可讓開發人員建立 .NET Core 應用程式和程式庫的一組程式庫和工具。A set of libraries and tools that allow developers to create .NET Core applications and libraries. 包括用於建置應用程式的 .NET Core CLI、用於建置及執行應用程式的 .NET Core 程式庫和執行階段,以及執行 CLI 命令及執行應用程式的 dotnet 可執行檔 (dotnet.exe)。Includes the .NET Core CLI for building apps, .NET Core libraries and runtime for building and running apps, and the dotnet executable (dotnet.exe) that runs CLI commands and runs applications.

請參閱 .NET Core SDK 概觀See .NET Core SDK Overview.

.NET Framework.NET Framework

只會在 Windows 上執行的 .NET 實作。An implementation of .NET that runs only on Windows. 包括 Common Language Runtime (CLR)、基底類別庫,以及 ASP.NET、Windows Forms 和 WPF 等應用程式架構程式庫。Includes the Common Language Runtime (CLR), the Base Class Library, and application framework libraries such as ASP.NET, Windows Forms, and WPF.

請參閱 .NET Framework 指南See .NET Framework Guide.

.NET Native.NET Native

產生機器碼預先編譯 (AOT) 而不是 Just-In-Time (JIT) 的編譯器工具鏈。A compiler tool chain that produces native code ahead-of-time (AOT), as opposed to just-in-time (JIT).

編譯會在開發人員的電腦上發生,其運作方式類似於 C++ 編譯器和連結器。Compilation happens on the developer's machine similar to the way a C++ compiler and linker works. 它會移除未使用的程式碼,並花更多時間在最佳化。It removes unused code and spends more time optimizing it. 它會從程式庫擷取程式碼,並將其合併成可執行檔。It extracts code from libraries and merges them into the executable. 結果會是代表整個應用程式的單一模組。The result is a single module that represents the entire app.

UWP 是 .NET Native 第一個支援的應用程式架構。UWP was the first application framework supported by .NET Native. 現在,我們支援建置適用於 Windows、macOS 和 Linux 的原生主控台應用程式。Now, we support building native console apps for Windows, macOS, and Linux.

請參閱 Intro to .NET Native and CoreRT (.NET Native 和 CoreRT 簡介)See Intro to .NET Native and CoreRT

.NET Standard.NET Standard

可用於每個 .NET 實作之 .NET API 的型式規格。A formal specification of .NET APIs that are available in each .NET implementation.

.NET Standard 規格在文件中有時稱為程式庫。The .NET Standard specification is sometimes called a library in the documentation. 由於程式庫不只包含規格 (介面),還包含 API 實作,因此將 .NET Standard 稱為「程式庫」會造成誤導。Because a library includes API implementations, not only specifications (interfaces), it's misleading to call .NET Standard a "library." 我們計劃從文件中排除該用法,只有參考 .NET Standard 中繼套件的名稱 (NETStandard.Library) 時除外。We plan to eliminate that usage from the documentation, except in reference to the name of the .NET Standard metapackage (NETStandard.Library).

請參閱 .NET StandardSee .NET Standard.

NGENNGEN

原生 (映像) 產生。Native (image) generation.

您可以將這項技術視為永續性 JIT 編譯器。You can think of this technology as a persistent JIT compiler. 它通常會在執行程式碼的電腦上編譯程式碼,但編譯通常會發生在安裝期間。It usually compiles code on the machine where the code is executed, but compilation typically occurs at install time.

套件package

NuGet 套件 (簡稱套件) 是 .zip 檔案,其中包含一或多個同名組件及其他中繼資料 (例如作者名稱)。A NuGet package — or just a package — is a .zip file with one or more assemblies of the same name along with additional metadata such as the author name.

.zip 檔案包含一個 .nupkg 延伸模組和許多特定資產 (例如 .dll 檔案和 .xml 檔案),可搭配多個架構和版本使用。The .zip file has a .nupkg extension and may contain assets, such as .dll files and .xml files, for use with multiple target frameworks and versions. 安裝於應用程式或程式庫時,會根據應用程式或程式庫所指定的目標 Framework 來選取適當的資產。When installed in an app or library, the appropriate assets are selected based on the target framework specified by the app or library. 定義介面的資產位於 ref 資料夾中,而定義實作的資產則位於 lib 資料夾中。The assets that define the interface are in the ref folder, and the assets that define the implementation are in the lib folder.

platformplatform

作業系統及其執行所在的硬體,例如 Windows、macOS、Linux、iOS 和 Android。An operating system and the hardware it runs on, such as Windows, macOS, Linux, iOS, and Android.

以下是用於句子中的範例:Here are examples of usage in sentences:

  • 「.NET Core 是 .NET 的跨平台實作。」".NET Core is a cross-platform implementation of .NET."
  • 「PCL 設定檔代表 Microsoft 平台,而 .NET Standard 則無從驗證平台。」"PCL profiles represent Microsoft platforms, while the .NET Standard is agnostic to platform."

.NET 文件經常使用「.NET 平台」來表示 .NET 實作或包含所有實作的 .NET 堆疊。The .NET documentation frequently uses ".NET platform" to mean either an implementation of .NET or the .NET stack including all implementations. 這兩種用法通常會與主要 (OS/硬體) 意義混淆,因此我們計劃從文件中排除這些用法。Both of these usages tend to get confused with the primary (OS/hardware) meaning, so we plan to eliminate these usages from the documentation.

執行階段runtime

受管理程式的執行環境。The execution environment for a managed program.

OS 是執行階段環境的一部分,但不是 .NET 執行階段的一部分。The OS is part of the runtime environment but is not part of the .NET runtime. 以下是 .NET 執行階段的一些範例:Here are some examples of .NET runtimes:

  • Common Language Runtime (CLR)Common Language Runtime (CLR)
  • Core Common Language Runtime (CoreCLR)Core Common Language Runtime (CoreCLR)
  • .NET Native (適用於 UWP).NET Native (for UWP)
  • Mono 執行階段Mono runtime

.NET 文件有時會使用「執行階段」來表示 .NET 實作。The .NET documentation sometimes uses "runtime" to mean an implementation of .NET. 例如,在下列句子中,「執行階段」應該取代成「實作」:For example, in the following sentences "runtime" should be replaced with "implementation":

  • 「不同的 .NET 執行階段會實作特定版本的 .NET Standard。」"The various .NET runtimes implement specific versions of .NET Standard."
  • 「要在多個執行階段上執行的程式庫應以此架構為目標。」"Libraries that are intended to run on multiple runtimes should target this framework." (指的是 .NET Standard)(referring to .NET Standard)
  • 「不同的 .NET 執行階段會實作特定版本的 .NET Standard。"The various .NET runtimes implement specific versions of .NET Standard. 每個 .NET 執行階段版本會宣佈它所支援的最高 .NET Standard 版本...」Each .NET runtime version advertises the highest .NET Standard version it supports …"

我們計劃排除這個不一致的用法。We plan to eliminate this inconsistent usage.

堆疊stack

可搭配使用以建置及執行應用程式的一組程式設計技術。A set of programming technologies that are used together to build and run applications.

「.NET 堆疊」是指 .NET Standard 和所有 .NET 實作。"The .NET stack" refers to the .NET Standard and all .NET implementations. 「一個 .NET 堆疊」一詞可能是指 .NET 的一項實作。The phrase "a .NET stack" may refer to one implementation of .NET.

Target Framework - 目標 Frameworktarget framework

.NET 應用程式或程式庫依賴的 API 集合。The collection of APIs that a .NET app or library relies on.

應用程式或程式庫可以將目標設為某個版本的 .NET Standard (例如 .NET Standard 2.0),這會是跨所有 .NET 實作之一組標準化 API 的規格。An app or library can target a version of .NET Standard (for example, .NET Standard 2.0), which is specification for a standardized set of APIs across all .NET implementations. 應用程式或程式庫也可以將目標設為某個版本的特定 .NET 實作;在此情況下,它可以存取實作特定的 API。An app or library can also target a version of a specific .NET implementation, in which case it gets access to implementation-specific APIs. 例如,以 Xamarin.iOS 為目標的應用程式可以存取 Xamarin 提供的 iOS API 包裝函式。For example, an app that targets Xamarin.iOS gets access to Xamarin-provided iOS API wrappers.

針對某些目標 Framework (例如 .NET Framework),可用的 API 是由 .NET 實作安裝在系統上的組件所定義,這可能包含應用程式架構 API (例如 ASP.NET、WinForms)。For some target frameworks (for example, the .NET Framework) the available APIs are defined by the assemblies that a .NET implementation installs on a system, which may include application framework APIs (for example, ASP.NET, WinForms). 針對以套件為基礎的目標 Framework (例如 .NET Standard 和 .NET Core),架構 API 是由安裝在應用程式或程式庫中的套件所定義。For package-based target frameworks (such as .NET Standard and .NET Core), the framework APIs are defined by the packages installed in the app or library. 在此情況下,目標 Framework 會隱含指定一個中繼套件,該套件會參考組成架構的所有套件。In that case, the target framework implicitly specifies a metapackage that references all the packages that together make up the framework.

請參閱目標 FrameworkSee Target Frameworks.

TFMTFM

目標 Framework Moniker。Target framework moniker.

用於指定 .NET 應用程式或程式庫之目標 Framework 的標準化語彙基元格式。A standardized token format for specifying the target framework of a .NET app or library. 目標 Framework 通常會由簡短名稱參考,例如 net462Target frameworks are typically referenced by a short name, such as net462. 雖然有完整格式的 TFM (例如 .NETFramework,Version=4.6.2),但通常不會用來指定目標 Framework。Long-form TFMs (such as .NETFramework,Version=4.6.2) exist but are not generally used to specify a target framework.

請參閱目標 FrameworkSee Target Frameworks.

UWPUWP

通用 Windows 平台。Universal Windows Platform.

用於建置適用於物聯網 (IoT) 之現代化觸控式 Windows 應用程式和軟體的 .NET 實作。An implementation of .NET that is used for building modern, touch-enabled Windows applications and software for the Internet of Things (IoT). 其設計目的是為了整合您可能想要設為目標的不同裝置類型,包括電腦、平板電腦、平板手機、手機,甚至是 Xbox。It's designed to unify the different types of devices that you may want to target, including PCs, tablets, phablets, phones, and even the Xbox. UWP 提供許多服務 (例如集中式應用程式存放區)、一個執行環境 (AppContainer),以及用來取代 Win32 (WinRT) 的一組 Windows API。UWP provides many services, such as a centralized app store, an execution environment (AppContainer), and a set of Windows APIs to use instead of Win32 (WinRT). 您可以使用 C++、C#、VB.NET 和 JavaScript 來撰寫應用程式。Apps can be written in C++, C#, VB.NET, and JavaScript. 使用 C# 和 VB.NET 時,.NET API 是由 .NET Core 所提供。When using C# and VB.NET, the .NET APIs are provided by .NET Core.

另請參閱See also