抽象化

提供:MonoBook
2025年9月2日 (火) 01:14時点におけるAdministrator (トーク | 投稿記録)による版 (→‎利点)

抽象化とは、プログラミングにおいて、特定のプラットフォームや実装に依存する部分を直接扱わず、共通化されたインターフェースや概念で置き換えることで、コードをプラットフォーム非依存にする設計手法です。

利点

たとえば.NET for Android.NET for iOSの両方でほぼ同じ使い勝手のライブラリを実装したりすることをいいます。

  • Abstract = 共通
    • iOS
    • Android

欠点

基本的に抽象化を行うと「プラットフォーム依存機能の最小公倍数」となるため、細かい機能を利用できないなどの弊害が発生することがあります。とくにプラットフォームを増やしすぎると残念なことになります。抽象化ライブラリを作る際は「スマホに特化しiOSとAndroidだけ」などと絞り込むことが重要になります。ここにWindowsを加えたりすると悲惨なことになります。

結論

手を広げすぎないこと。バランスが重要です。