OPOSは、POS固有のコンピューターハードウェアをより互換性のあるものにするために、メンバー企業の理事会によって合意された標準ですべてのPOSAPIを実際に開始しました。OPOS情報これは、POSソフトウェアを購入した場合、ソフトウェアのコーディング方法が原因でベンダーロックインが発生するとは限らないというものでした。
JavaPOS仕様は、単に古いOLEベースのAPIをJavaに変えただけであり、これは一部の人々が好む開発環境である可能性があります。JavaPOS情報
もちろん、誰もがJavaを愛しているわけではありません。OPOSのもう1つの子であるEnter POS.netは、Microsoftによって.NETフレームワーク上に構築されています。POS.net情報POS.netはOPOSドライバーと下位互換性があります。したがって、OPOSで動作するデバイスはすべてPOS.netでも動作します。(多くのハードウェアベンダーは、OPOSドライバーのみを提供している場合でもPOS.netの互換性を主張しています。)
これらすべてのライブラリのポイントは、さまざまなベンダーのハードウェアデバイスへのアクセスを標準化することです。ライブラリの選択は、開発環境の選択に大きく依存します。これらのライブラリを形成した標準化団体のいくつかの主要なハードウェアベンダーの影響により、実際には100%ベンダーにとらわれないことに注意する価値があります。そのため、多くのPOS開発者は独自のハードウェア抽象化レイヤーを構築し、POS.netを呼び出すか、RS232またはTCP/IPを介してPOSハードウェアと直接通信することができます。
また、POS業界は一般的にテクノロジーに遅れをとっており、低コストと最新の強力なハードウェアの必要性の一般的な欠如によって推進されています。POS.net SDKは、.NET 3.5 / 4.0の機能を必要としないため、それに対して再コンパイルされることはありません。代わりに、POSベンダーは、低電力のコモディティハードウェアでソフトウェアを実行したいと考えることがよくあります。これらのシステムは、多くの場合、WindowsXPまたはWindowsXP Embedded(消費者向けのものを含まないXP)を実行します。これは、ストレージとRAMの両方でのメモリフットプリントが低く、Vistaと比較して一般的な速度が速いためです(Win7はそれを変える可能性がありますが、前述したように、POS業界には遅れがあります他の業界と比較したソフトウェアの採用)。