39399


macOSで
Windowが持つタイトルから特定のWindowのIDを取得して色々と操作を行いたいと思ったのですが、調べているとWindowを扱うクラスとして
`NSWindow`と`CGWindow`の2つがあることがわかりました。

それぞれ`NeXTSTEP`, `Core
Graphic`の頭文字であることはわかったのですが、どちらをどのような時に使うのか基本的な使い分けの基準がわかりませんでした。

何か指針となるものはあるでしょうか？


CC BY-SA 3.0
2017-11-07T19:29:49.973
39397
2017-11-07T23:10:03.923
3271
question
swift swift3 macos
NSWindowとCGWindowの違いについて


基本的には`NSWindow`を使います。macOSには歴史的な理由により、Objective-
CのAPIとCのAPIがあります（それぞれ、もっとも基本的なフレームワークをFoundationとCore
Foundationといいます。）。`NSWindow`はFoundationのクラスでObjective-
CのAPIになります。CGWindowを扱うAPI群はCのAPIになります。２つはほぼ同一の操作が可能です。ほぼ、というのは多少異なることがあるからです。一般的に、より低レベルな操作がCのAPIでは可能になっていたりします。


CC BY-SA 3.0
2017-11-07T23:10:03.923
39399
2017-11-07T23:10:03.923
5519
39397
answer