قامت شركة Oracle نفسها بنسخ واجهة برمجة التطبيقات من Amazon S3، وهذا أمر جيد تمامًا

قامت شركة Oracle نفسها بنسخ واجهة برمجة التطبيقات من Amazon S3، وهذا أمر جيد تمامًا
يقارن محامو شركة أوراكل بين إعادة تنفيذ واجهة برمجة تطبيقات جافا في Android مع نسخ محتوى "هاري بوتر"، pdf

ستنظر المحكمة العليا الأمريكية في قضية كبرى في وقت مبكر من هذا العام أوراكل ضد جوجل، والتي ستحدد الوضع القانوني للواجهة البرمجية للتطبيقات وفقًا لقانون الملكية الفكرية. إذا أصدرت المحكمة حكمها في الدعوى القضائية التي رفعتها شركة أوراكل بمليارات الدولارات، فقد يؤدي ذلك إلى خنق المنافسة وتعزيز هيمنة شركات التكنولوجيا العملاقة، وربما بما في ذلك جوجل نفسها.

في الوقت نفسه، تم بناء أعمال Oracle في الأصل على تنفيذ لغة البرمجة SQL التي طورتها IBM، وحتى الآن تقدم الشركة خدمة سحابية مع واجهة برمجة التطبيقات من Amazon S3، وهذا أمر طبيعي تمامًا. لقد كان إعادة تنفيذ واجهة برمجة التطبيقات (API) جزءًا طبيعيًا من تطوير علوم الكمبيوتر منذ نشأة هذا المجال.

تتهم شركة أوراكل شركة جوجل بنسخ واجهة برمجة تطبيقات جافا بشكل غير قانوني، بما في ذلك قائمة بالأوامر المسماة المرتبطة بالبنى النحوية. نظام التشغيل Android يتوافق هذا النظام تحديدًا مع واجهة برمجة تطبيقات جافا (Java API) لتسهيل نقل البرامج والمعرفة إلى المنصة الجديدة لمبرمجي جافا. ولتحقيق ذلك، Android نسخ بدقة أوامر واجهة برمجة تطبيقات جافا ذات الصلة وهياكل القواعد النحوية. حجة إن الهدف من Oracle هو أن مثل هذا "إعادة التنفيذ" لواجهة برمجة تطبيقات Java يمكن مقارنته بنسخ عمل مؤلف، مثل الرواية الأدبية "هاري بوتر" (هذا هو السبب في أن Oracle لا تزال تستخدم هذا النوع من "إعادة التنفيذ"). مثال حقيقي قدمه محامو أوراكلم)، و تنتهك Google حقوق الطبع والنشر الخاصة بشركة Oracle فيما يتعلق بأسماء وهياكل أوامر Java API.

لكن واجهات برمجة تطبيقات جافا ليست واجهات برمجة التطبيقات الوحيدة، Android — ليست إعادة التنفيذ الوحيدة. في صناعة تكنولوجيا المعلومات الحديثة، أصبحت واجهات برمجة التطبيقات (APIs) منتشرة في كل مكان، وتُعد إعادة التنفيذ أساسية للحفاظ على المنافسة ومنع احتكار الشركات الكبيرة. قال تشارلز دوان، مدير سياسة التكنولوجيا والابتكار في معهد آر ستريت.

ويقدم دوان مثالاً لمنصة تخزين البيانات الشهيرة Amazon S3. لتمكين كتابة واسترجاع الملفات من S3، قامت أمازون بتطوير نظام شامل، واجهة برمجة التطبيقات التفصيلية للتفاعل مع الخدمة. على سبيل المثال، للحصول على قائمة بالملفات المحفوظة (قائمة الكائنات) نرسل أمر GET مع معلمات المضيف والنوع نوع الترميز, رمز الاستمرار и x-amz-date. للعمل مع Amazon S3، يجب على البرنامج استخدام هذه الأسماء والعديد من أسماء المعلمات المحددة الأخرى بدقة.

GET /?Delimiter=Delimiter&EncodingType=EncodingType&Marker=Marker&MaxKeys=MaxKeys&Prefix=Prefix HTTP/1.1
Host: Bucket.s3.amazonaws.com
x-amz-request-payer: RequestPayer

أمازون هي الرائدة الواضحة في سوق خدمات الحوسبة السحابية، ويقدم منافسوها إعادة تنفيذ واجهة برمجة التطبيقات S3، ولكن يتعين عليهم تقليد أسماء الأوامر وعلامات المعلمات وبادئات النوع x-amz، البنية النحوية والتنظيم العام لواجهة برمجة التطبيقات S3. بعبارة أخرى، كل ما تدعيه شركة Oracle محمي بحقوق الطبع والنشر.

ومن بين الشركات التي تقدم نسخة من واجهة برمجة تطبيقات Amazon S3: هناك أيضًا Oracle نفسها. من أجل التوافق، تقوم واجهة برمجة تطبيقات التوافق الخاصة بـ Amazon S3 بنسخ العديد من عناصر واجهة برمجة تطبيقات Amazon، بما في ذلك علامات x-amz.

قامت شركة Oracle نفسها بنسخ واجهة برمجة التطبيقات من Amazon S3، وهذا أمر جيد تمامًا

تزعم شركة أوراكل أن قانونية تصرفاتها تعتمد على ترخيص Apache 2.0 مفتوح المصدر، والذي يسمح بالنسخ والتعديل المجاني للكود. على سبيل المثال، مجموعة أدوات تطوير البرامج من Amazon لـ Java ويأتي أيضًا مع ترخيص Apache 2.0.

لكن السؤال هو ما إذا كان قانون الملكية الفكرية ينطبق على أشياء مثل واجهات برمجة التطبيقات على الإطلاق. وهذا ما يجب على المحكمة العليا أن تقرره.

من اخترع API؟

ظهر مصطلح ومفهوم "مكتبة البرامج الفرعية" لأول مرة في كتاب هيرمان جولدستين وجون فون نيومان، مشاكل التخطيط والترميز للأجهزة الحاسوبية الإلكترونية، الجزء الثاني، المجلد الثالث (معهد جامعة برينستون للدراسات المتقدمة، 1948). نسخة على archive.org. محتويات المجلد الثالث:

قامت شركة Oracle نفسها بنسخ واجهة برمجة التطبيقات من Amazon S3، وهذا أمر جيد تمامًا

هذا هو أول وصف لمنهجية برمجة لأجهزة الكمبيوتر التي تحتوي على برامج مخزنة في الذاكرة (في السابق لم تكن مثل هذه المنهجية موجودة). وقد انتشر على نطاق واسع بين الجامعات، التي كانت تحاول في ذلك الوقت إنشاء أجهزة الكمبيوتر الخاصة بها. والأهم من ذلك أن الكتاب يحتوي على الفكرة الرئيسية: ستستخدم معظم البرامج عمليات شائعة، وستعمل المكتبات التي تحتوي على روتينات على تقليل كمية التعليمات البرمجية الجديدة والأخطاء. وقد تم تطوير هذه الفكرة من قبل موريس ويلكس ووضعها موضع التنفيذ في آلة EDSAC، والتي حصل عليها على جائزة تورينج في عام 1967.

قامت شركة Oracle نفسها بنسخ واجهة برمجة التطبيقات من Amazon S3، وهذا أمر جيد تمامًا
توجد مكتبة البرامج الفرعية EDSAC على اليسار

وكانت الخطوة التالية هي إنشاء وظائف من الدرجة الأعلى وواجهات برمجة كاملة، وهو ما قام به موريس ويلكس وديفيد ويلر في كتابهما، إعداد البرامج للكمبيوتر الرقمي الإلكتروني (1951).

على المدى واجهة برنامج التطبيق ظهرت (API) في وقت ما في أواخر الستينيات.

مؤلف العرض التقديمي "تاريخ موجز لواجهات برمجة التطبيقات" يقدم جوشوا بلوك العديد من الأمثلة على واجهات البرمجة ومجموعات التعليمات ومكتبات البرامج الفرعية: كيف تم إنشاؤها واستخدامها لاحقًا. الفكرة هي أن إعادة الاستخدام هي الهدف الكامل من واجهة برمجة التطبيقات. وهذا هو بالضبط السبب الذي جعلهم يتم إنشاؤها في المقام الأول. وكان لدى المطورين دائمًا الفرصة لنسخ وإعادة صياغة واجهات برمجة التطبيقات الخاصة بالأشخاص الآخرين:

API
الخالق
عام
إعادة التنفيذ
عام

مكتبة فورتران
IBM
1958
يونيفاك
1961

IBM S/360 ISA
IBM
1964
شركة أمدال
1970

مكتبة C القياسية
AT&T / مختبرات بيل
1976
شركة مارك ويليامز
1980

مكالمات نظام يونكس
AT&T / مختبرات بيل
1976
شركة مارك ويليامز
1980

تسلسلات VT100 Esc
ديسمبر
1978
هيثكيت
1980

BIOS لجهاز كمبيوتر IBM الشخصي
IBM
1981
تقنيات العنقاء
1984

واجهة سطر أوامر MS-DOS
Microsoft
1981
مشروع FreeDOS
1998

مجموعة أوامر Hayes AT
هايز مايكرو
1982
أتمتة المرساة
1985

بوستسكريبت
أدوبي
1985
جنو/جوست سكريبت
1988

SMB
Microsoft
1992
مشروع سامبا
1993

Win32
Microsoft
1993
مشروع النبيذ
1996

مكتبات فئة Java 2
الأحد
1998
جوجل/Android
2008

واجهة برمجة تطبيقات الويب اللذيذة
لذيذ
2003
وحة لحفظ المقتطفات
2009

المصدر: "تاريخ موجز لواجهات برمجة التطبيقات"

إن نسخ وإعادة استخدام واجهات برمجة التطبيقات (المكتبات ومجموعات التعليمات) ليس فقط الشيء الصحيح الذي ينبغي فعله، بل إنه منهجية برمجة موصى بها بشكل مباشر في قواعد علوم الكمبيوتر. حتى قبل نسخ واجهات برمجة التطبيقات الخاصة بـ S3، قامت شركة Oracle بنفسها بذلك في مناسبات عديدة. علاوة على ذلك، تم بناء أعمال شركة Oracle في الأصل على تنفيذ لغة البرمجة SQL التي طورتها شركة IBM. كان المنتج الرئيسي الأول لشركة Oracle هو نظام إدارة قواعد البيانات (DBMS) الذي تم نسخه إلى حد كبير من نظام IBM System R. في هذه الحالة، نتحدث عن إعادة تنفيذ SQL باعتباره "واجهة برمجة تطبيقات قياسية" لنظام إدارة قواعد البيانات.

إن وضع حقوق الملكية الفكرية على واجهات برمجة التطبيقات (APIs) من شأنه أن يؤدي إلى إنشاء حقل ألغام قانوني يضر بالجميع. تنفذ واجهات برمجة التطبيقات خدمات سحابية أخرى. تتضمن العديد من المعايير التقنية، مثل بروتوكولات Wi-Fi والإنترنت، واجهات برمجة التطبيقات. من الضروري إعادة تنفيذ واجهات برمجة التطبيقات (APIs) في شكل ما على كل جهاز كمبيوتر وخادم على الإنترنت. يمكن لنظرية حقوق الطبع والنشر الخاصة بشركة Oracle أن تجعل أي شيء تفعله بجهاز الكمبيوتر الخاص بك غير قانوني تقريبًا.

لتجنب هذه العواقب بعيدة المدى، حاولت شركة أوراكل ومحكمة الاستئناف التي أيدت حججها الحد من انتهاك حقوق الطبع والنشر لتشمل فقط بعض عمليات إعادة تنفيذ واجهة برمجة التطبيقات "غير المتوافقة" مع الأصل. ولكن هناك أيضًا عمليات إعادة تنفيذ جزئية هي شائعة. حتى في نسختها من واجهة برمجة التطبيقات S3، تلاحظ Oracle العديد من "الاختلافات" وعدم التوافق مع واجهات برمجة التطبيقات الأصلية الخاصة بشركة Amazon.

الخطر الرئيسي الذي تشكله دعوى شركة أوراكل هو أنها قد تمنع شركات التكنولوجيا الأصغر من بناء إصدارات من أنظمتها متوافقة مع المنصات المهيمنة مثل S3. بدون هذا التوافق، سيتم استبعاد المبرمجين فعليًا من عروض هذه الشركة.

لا يمكن لممثلي الصناعة والمطورين إلا أن يأملوا في أن يسود الحس السليم هنا، القضاة يعرفون أساسيات البرمجة.

المصدر: www.habr.com

شراء استضافة موثوقة للمواقع مع حماية DDoS وخوادم VPS VDS 🔥 اشترِ استضافة مواقع ويب موثوقة مع حماية من هجمات DDoS، وخوادم VPS وVDS | ProHoster