그 대단하신 위키를 기준으로

http://en.wikipedia.org/wiki/Windows_API


일반적으로 Windows API라고 하면 Windows API Core set을 의미하는 이유


The Windows API, informally WinAPI, is Microsoft's core set of application programming interfaces (APIs) available in the Microsoft Windows operating systems. The name Windows API collectively refers to a number of different platform implementations that are often referred to by their own names (for example, Win32 API); see the versions section. Almost all Windows programs interact with the Windows API; on the Windows NT line of operating systems, a small number (such as programs started early in the Windows startup process) use the Native API.[1]


윈도우즈 API, 줄여서 WinAPI는 마이크로소프트의 윈도우즈 운영체제에서 사용가능한 어플리케이션 프로그래밍 인터페이스(APIs)의 Core set입니다. Windows API라는 이름은 그들만의 이름을 참고해서 다른 플래폼 구현들을 구분합니다. (예를들면 Win32 API) 버젼섹션을 살펴보세요. 대부분의 모든 윈도우즈 프로그램들이 Windows API와 상호작용합니다. 블라블라~

DirectX가 Windows API (core set)가 아닌이유


Multimedia[edit]

Microsoft has provided the DirectX set of APIs as part of every Windows installation since Windows 95 OSR2. DirectX provides a loosely related set of graphics and gaming services, including:

멀티미디어

  마이크로소프트는 Windows 95 OSR2이후에 모든 윈도우즈 설치의 일부로서 DirectX Set을 제공합니다. 블라블라


MFC가 윈도우즈 API가 아닌이유


The Windows API (Win32) is primarily focused on the C programming language[2] in that its exposed functions and data structures are described in that language in recent versions of its documentation. However, the API may be used by any programming language compiler or assembler capable of handling the (well defined) low level data structures along with the prescribed calling conventions for calls and callbacks. Similarly, the internal implementation of the API's functionality has been developed in several languages, historically.[3] Despite the fact that C lacks any notion of object-oriented programming, the Windows API as well as Windows itself has sometimes been described as object-oriented. There have also been many wrapper classes and extensions (from Microsoft or other sources) for object oriented languages that makes this object oriented structure more explicit (MFC, VCL, GDI+, etc.). For instance,Windows 8, while still providing the Windows API, also provides the WinRT API which is implemented in C++[4] and is object-oriented by its design.[4]


윈도우즈 API (Win32)는 주로 C 프로그래밍 언어에 초점을 맞추고 있고, 거기서 등장하는 함수들이나 데이터 구조들이 최신 버젼의 언어로 기술되어 있습니다. 그러나 API는 저수준 데이터 구조(호출 구조나 콜백등)를 지원하는 대부분의 다른 언어 컴파일러나 어셈블러에 의해 사용될 수 있습니다. 유사하게 API의 기능적인 면에서 내부적인 구현은 몇몇 언어들로 개발되어 있습니다. C언어가 객체지향적인 측면에서 부족함에도 불구하고 윈도우즈 API는 윈도우즈 그 자신으로서 객체 지향적으로 기술되어 있습니다. 또한 마이크로소프트 또는 다른 3자가 개발한 많은 객체 지항적인 언어와 구조로 작성된 Wrapper 클래스나 확장(MFC, VCL, GDI+, etc.)들도 있습니다.

 윈도우즈 8에서도 Windows API를 여전히 지원하지만, 설계 자체가 객체지향적인 C++로 구현된 WinRT API도 지원합니다.