• ベストアンサー

プログラミングの勉強をしているんですが、ライブラリ

プログラミングの勉強をしているんですが、ライブラリはすでに誰かが作ったよく使う機能等と聞いたことがあるんですが、だとしたら何かのアプリで同じライブラリを使っているアプリがあるということですよね? 例えばlineの友達リストとフェイスブックの友達リストのライブラリが同じだとか そういうアプリやソフトで同じライブラリを使っているだろうと予想されるアプリは何がありますか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#252332
noname#252332
回答No.1

 DraftSight、IJCAD、ZWCAD、CorelCADなどAUTOCAD互換のCADが無数にありますが、DWGファイルの読み書きにはみな > 非営利団体「Open Design Alliance(オープン・デザイン・ > アライアンス)」(以下:ODA)が開発したDWG入出力 > ライブラリー「Teigha」を利用することで高いデータ互換 > 性を実現し https://www.cad100.jp/dwg/ ているのだそうです。

okwaveokw
質問者

お礼

ありがとうございます

その他の回答 (4)

  • Kaneyan-R
  • ベストアンサー率42% (1340/3126)
回答No.5

>そういうアプリやソフトで同じライブラリを使っているだろうと予想されるアプリは何がありますか? 昨今のスマホのゲームアプリは同じシステムを使っていることが多いですね。 と言うのも、とある企業が開発したゲームの基幹システムをパッケージ販売していて、それを利用することによってゲームの開発コストが押さえられるので、一時期似たようなゲーム性のアプリが大量に出てきたことがありましたね。 今でもUIや演出は全く異なる(オリジナル要素)けど、アイテムやスキル等々の管理システムなどを考えると、同じシステムで出来ているだろうなと思う物は多いですね。

okwaveokw
質問者

お礼

ありがとうございます

回答No.4

ライブラリの理想は貴殿が記述されているとおりです。 しかし現実問題として、様々なアプリが同時に同様な アップデートを出来る訳ではないので、 アプリごとにライブラリを持っているのが実情です。 Windowsの場合ライブラリは通常dllファイルを指しますが、 これを別々のアプリで共有しているのは稀でしょう。 (dll hellとも言います) むしろライブラリとは「システムコールを集約して、  プログラマが一括処理を出来る機能」くらいに 認識しておけば十分です。

okwaveokw
質問者

お礼

ありがとうございます

回答No.3

誤解がないように補足です。 先の回答は、 WindowsならDLLファイルや、LinuxなどでのSOファイル などの、ライブラリが単体で別ファイルになっているケースの話です。 ライブラリを本体に組み込む(スタティックリンク) 方式では、説明に矛盾がでるので。 あくまで、後から取り込んで実行する(ダイナミックリンク) 概念での説明になります。 後で誤解がないように、補足でした!

okwaveokw
質問者

お礼

ありがとうございます

回答No.2

>ライブラリはすでに誰かが作ったよく使う機能等と聞いたことがある ちょっと変わった使い方で、 本体のプログラムを変えずにライブラリだけをアップデートできる という、部分更新のために使われることもあります。 一番大きい部分を変更したのでは、 例えば、AとBのバグがある時、 Aのバグを直した人が本体を更新。→治った 別の人がBのバグを直した!更新→治ったが、Aのバグが治ってない! みたいになることがあり、 可能な限り細かい単位にすることで メンテナンス性を高めることがあります。 ただ、Microsoftのライブラリは仕様が公開されていますが。 他のベンダーは独自開発なので、他社に対してわざわざ 自社の技術を公開するメリットがないので。 ソフトベンダー間でのライブラリ共有はほぼほぼないと 思います。(私は見たことがない) ただし、GPLライセンスの、共有ライブラリなどは 結構有名で使われることはあります。 例えばLHAの解凍ライブラリなど。 これらも、仕様が公開されていて、他の人が使えるように 作ってある物ですね。(他の人が使うことが目的なので) なので、今回の質問では、 ニュアンスとして「全く違う敵対企業同士で、わざわざライブラリを共有してるか?」という意味が近いので、 私の回答としては、「みたことはないです」 などで、回答になりますでしょうか?

okwaveokw
質問者

お礼

ありがとうございます

関連するQ&A