「ライブラリ」「フレームワーク」「API」「SDK」

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
垢版 |
2018/07/04(水) 12:15:40.02ID:svZz0DKH
全部同じなの?
https://monobook.org/wiki/Framework
2デフォルトの名無しさん
垢版 |
2018/07/04(水) 12:16:21.22ID:xijnAjFW
同じに決まってるだろ
2018/07/04(水) 12:17:15.19ID:Ifh69YLu
SDKだけはちょっと違う
2018/07/04(水) 12:17:24.57ID:xijnAjFW
方言だよ方言
5デフォルトの名無しさん
垢版 |
2018/07/04(水) 12:17:56.45ID:gYVmeypi
モジュールなんて呼び方もある
2018/07/04(水) 12:18:43.23ID:5b4mSIQU
スパコンやってた時代は全部ライブラリだった
2018/07/04(水) 12:19:36.22ID:GD7/+qqA
新しい言葉を作らないとご飯が食べられない人もいるんです
2018/07/04(水) 12:20:46.32ID:xijnAjFW
この業界は言葉を作って素人さんを騙して仕事を確保し続けているからな
9デフォルトの名無しさん
垢版 |
2018/07/04(水) 12:21:20.26ID:gYVmeypi
もうさ、モジュールで統一しようぜ
2018/07/04(水) 12:22:12.35ID:OMlBhl4v
>>9
ruby信者かよ
2018/07/04(水) 12:23:24.01ID:39Xl6R4c
コボルもモジュールじゃなかったか?
2018/07/04(水) 12:23:47.96ID:ELwJQM9F
SDKというライブラリ群がある。
ライブラリにはAPIがある。
APIからフレームワークを作られてる。

こんな感じ?
2018/07/04(水) 12:23:49.82ID:NdUzdTsB
統一なんて無理
2018/07/04(水) 12:25:03.62ID:HMG6xt0q
API OSに近い
ライブラリ 汎用的
フレームワーク でかい

こんなイメージ
2018/07/04(水) 12:27:45.15ID:3edJAjAe
>>9-11
モジュールはなんか嫌
2018/07/04(水) 12:28:19.93ID:FfQfqGkT
真ん中とってライブラリで統一しようぜ
2018/07/04(水) 12:28:58.32ID:HMG6xt0q
このスレは荒れる
なんとなくそんな感じがする
2018/07/04(水) 12:30:36.85ID:/fy1c4Za
>>11
Perlもそう
perl moduleで拡張子pm
2018/07/04(水) 12:31:28.46ID:mAIXM3sP
SDKはツール類も付属しているイメージ
2018/07/04(水) 12:33:00.23ID:kLDcXF0s
まあただのランタイムを仮想マシンと言い張って初心者を騙して高揚させてる業界ですから
2018/07/04(水) 15:02:45.50ID:rYQuTGUK
ライブラリの英語の意味を考えよう

1 図書館。図書室。
2 映画・写真・レコードなどで、資料として収集し保管してあるもの。また、その施設。
3 個人の蔵書。文庫。
4 叢書?(そうしょ)?。文庫。シリーズものの出版物の名称に用いる語。「世界名作ライブラリー」


つまりは「なにか」を "集めた" ものだ
2018/07/04(水) 15:04:43.97ID:rYQuTGUK
インターフェースの英語の意味を考えよう

1(境)界面.
2 (複数の学問・研究分野の)共通問題,学際事項
3 (異なる種類のものの間の)境界,接触面,接点
4 (異種のものの間の)対話,連絡,意思疎通
5 (複数のものを)円滑につなぐもの,仲介するもの,仲立ち;橋渡し

つまりは「なにか」と「なにか(あなた)」をつなぐものだ
2018/07/04(水) 15:05:57.51ID:rYQuTGUK
フレームワークの英語の意味を考えよう

1 骨組み,構造物.
2 枠組み;(組織の)構成,構造,体制
3 額縁の製造[販売].
4 枠を用いて作った作品(刺繍ししゅうなど);枠細工品.
5 (工事用)足場;骨組みの工事.
6 (果樹の)枝;主枝.
7 =frame of reference.

つまりはなにかのための「枠組み」だ
2018/07/04(水) 16:43:44.34ID:7aH0kDWz
APIはあくまでインターフェース
インターフェースが同じでも実装が異なることはあり得る
例えばlibeditはreadlineのBSD版として作られた。これらは別のライブラリだが同じAPIを持つ

SDKは、プラットフォーマーがサードパーティに向けて提供する開発キット
APIの定義やそれを実際に使うためのライブラリは勿論だが、その他のツール類やドキュメント諸々も含む

フレームワークは……曖昧だが
アプリケーション全体の構造を決めてしまうような大掛かりなライブラリみたいなイメージ?
25デフォルトの名無しさん
垢版 |
2018/07/04(水) 16:52:49.84ID:n4h9hTEh
このゲームオネシャス
https://goo.gl/2UVYAA
26デフォルトの名無しさん
垢版 |
2018/07/04(水) 21:45:55.85ID:gFgZc5FG
U7R
27デフォルトの名無しさん
垢版 |
2018/07/04(水) 21:58:47.50ID:gYVmeypi
よし、モジュールで統一しよう
2018/07/04(水) 23:52:29.67ID:9tme3F9y
フレームワークは「穴埋め式」。
ライブラリは「呼び出し式」。
APIは、それとは独立して動いているものを呼び出すよってこと。
SDKは、何かを作るときにいるものの一式。
2018/07/05(木) 00:40:26.56ID:Qp1VFJM+
.NET FrameworkはSDK?
2018/07/05(木) 00:47:16.95ID:YJbjvjoP
>>28
独立して動いているものを呼ぶのは一般にRPCだ
WebAPI想定なんだろうが、WindowsのAPIには単なるライブラリ関数でしかないものも結構ある
APIは呼び出し方の規約であって中身は関係ない
2018/07/06(金) 12:44:34.17ID:qfsO8gqd
SDK!SDK!
2018/07/06(金) 13:42:12.50ID:F9o4Pz4O
>>30
> WindowsのAPIには単なるライブラリ関数でしかないものも結構ある
それお前がAPIとライブラリをごっちゃにしてるだけだろ

例えばWindows APIであれば、C言語からではなく例えばVBなどから呼び出すこともできる
だから特定の言語には依存しない。それがAPIであって他の言語から呼び出せないようなものは
単なるライブラリ関数であってAPIではない
2018/07/06(金) 17:10:33.48ID:hXRi+HHi
他言語向けラッパーを書けばライブラリからAPIに昇格するのか
2018/07/06(金) 18:46:57.36ID:F9o4Pz4O
するわけないだろ。ライブラリはいくら頑張ってもAPIにはなれない
2018/07/06(金) 18:51:18.22ID:F9o4Pz4O
例えば、Windows APIというものがある。
それをある言語から呼び出すための "ライブラリ" を作ったとする。

その場合、"Windows API" は "API" だし、
その "ライブラリ" は、当然 Windows APIを呼び出すための "ライブラリ"
ライブラリは API ではない

また、この場合は、Windows APIであるが、これが何かしらの "ライブラリ" であったとする。
その場合、"ライブラリ" は "ライブラリ" であり、
その "ライブラリを呼び出すためのライブラリ" も、"ライブラリ"
2018/07/06(金) 19:50:40.61ID:dSjMYi7e
>>14
それAPIについては誤解してる
2018/07/06(金) 21:46:46.96ID:TCsDXX8V
>>32
はあ、.dllはなんの略だ?
2018/07/07(土) 15:28:21.86ID:8TH/j15j
>>37
DLLは同一プロセス上で動作する。
一方RPCは他プロセスと通信する仕組み。
2018/07/07(土) 17:00:03.56ID:i11AJyJz
まずWindowsSDKはそもそもC/C++向けにしか提供されていない
ヘッダファイルの中を見ればわかるがインライン関数も結構あるし.libにある関数もある
マクロも一杯あって、全部がWindowsSDKの提供するWindows API

VBがDLLを呼び出す能力があるからといってC向けに用意されたAPIの全部が使えるわけでもない
VC++とABI互換なツールチェインを用いる処理系なら.libもリンクして使えるが
ヘッダにしか無いインライン関数やマクロはC/C++と文法互換な言語(Objective-C等)からしか使えない
こんなのは単に各処理系のFFI機能経由で使える使えないの話で、あくまでSDKはC/C++用

Javaのライブラリの定義もJava APIと呼ばれているし
もっと言えばWeb APIだってソケットにアクセスできない処理系からは使えんし

つまりAPIの定義の話とどの処理系から使えるかは別の話で
APIだからといって言語から独立していなきゃならないなんてことはない
40デフォルトの名無しさん
垢版 |
2018/07/07(土) 17:50:03.02ID:rLNXLDeE
全部違うぞ
2018/07/07(土) 18:06:09.50ID:8TH/j15j
>>39
Windows APIをVBから呼び出すための定義ファイルがSDKに含まれてた時期もあった気がするが、まあそれはいいとして。

まず、Windows APIを提供しているのはWindowsというOS自体であってSDKではない。ここ重要。

Windows SDKはOSのAPIをC言語等から呼び出すための支援ツールや定義をまとめたキットなのであれば便利だが、APIの仕様さえ分かればSDKなしでもAPIを呼び出すことも原理的には可能だ。
2018/07/07(土) 18:53:54.86ID:LxSGsocZ
インライン関数やマクロをWindows APIって言うのは違和感しかない
2018/07/07(土) 18:56:21.27ID:kQbc54yB
インライン関数やマクロはWindows APIには含まれないよ
2018/07/07(土) 19:43:01.67ID:i11AJyJz
感覚的にはそうなんだろうが、GetCurrentFiberやExの付かないCreateWindowだってマクロだからな?
Interlocked系関数もインライン関数、ライブラリ実装とVC++のintrinsicが混じってて.dllには行かない
2018/07/07(土) 20:22:08.26ID:ssl663eK
>>44
いつからCreateWindowがAPIだと勘違いした?
2018/07/07(土) 20:54:21.63ID:8TH/j15j
ああそうか。
真のAPIはCreateWindowWとかなんだな。
SDKやコンパイラが薄いラッパーや代替実装を用意して、そっちをAPIと称してる感じ。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況