
Οι δικηγόροι της Oracle συγκρίνουν την επαναεφαρμογή του Java API σε Android με αντιγραφή του περιεχομένου του "Χάρι Πότερ",
Το Ανώτατο Δικαστήριο των ΗΠΑ θα εκδικάσει μια μεγάλη υπόθεση στις αρχές του έτους , το οποίο θα καθορίσει το νομικό καθεστώς του API σύμφωνα με τη νομοθεσία περί πνευματικής ιδιοκτησίας. Εάν το δικαστήριο αποφασίσει για την αγωγή πολλών δισεκατομμυρίων δολαρίων της Oracle, θα μπορούσε να καταπνίξει τον ανταγωνισμό και να εδραιώσει την κυριαρχία των τεχνολογικών κολοσσών, συμπεριλαμβανομένης πιθανώς της ίδιας της Google.
Ταυτόχρονα, η επιχείρηση της Oracle βασίστηκε αρχικά στην εφαρμογή της γλώσσας προγραμματισμού SQL που αναπτύχθηκε από την IBM, και ακόμη και τώρα η εταιρεία προσφέρει μια υπηρεσία cloud με API από το Amazon S3 και αυτό είναι απολύτως φυσιολογικό. Η επανεφαρμογή API ήταν ένα φυσικό μέρος της ανάπτυξης της επιστήμης των υπολογιστών από την αρχή του πεδίου.
Η Oracle κατηγορεί την Google για παράνομη αντιγραφή του Java API, συμπεριλαμβανομένης μιας λίστας με εντολές που έχουν όνομα και συνδέονται με γραμματικές δομές. Το λειτουργικό σύστημα Android είναι ειδικά συμβατό με το Java API για να διευκολύνει τους προγραμματιστές Java να μεταφέρουν λογισμικό και γνώσεις στη νέα πλατφόρμα. Για να το κάνει αυτό, Android αντέγραψε με ακρίβεια τις σχετικές εντολές και τις γραμματικές δομές του Java API. Το θέμα της Oracle είναι ότι μια τέτοια «επαναυλοποίηση» του Java API μπορεί να συγκριθεί με την αντιγραφή του έργου ενός συγγραφέα, όπως το λογοτεχνικό μυθιστόρημα «Χάρι Πότερ» (αυτό είναι ), και Η Google παραβιάζει τα πνευματικά δικαιώματα της Oracle για τα ονόματα και τις δομές εντολών του Java API.
Αλλά τα Java APIs δεν είναι τα μόνα APIs, Android — δεν είναι η μόνη επαναεφαρμογή. Στη σύγχρονη βιομηχανία πληροφορικής, τα API είναι πανταχού παρόντα και η επαναεφαρμογή είναι θεμελιώδης για τη διατήρηση του ανταγωνισμού και την αποτροπή των μονοπωλίων από μεγάλες εταιρείες. Charles Duane, διευθυντής πολιτικής τεχνολογίας και καινοτομίας στο R Street Institute.
Ο Duane δίνει το παράδειγμα της δημοφιλούς πλατφόρμας αποθήκευσης δεδομένων Amazon S3. Για να καταστεί δυνατή η εγγραφή και η ανάκτηση αρχείων από το S3, η Amazon έχει αναπτύξει μια ολοκληρωμένη για αλληλεπίδραση με την υπηρεσία. Για παράδειγμα, για να λάβετε μια λίστα με αποθηκευμένα αρχεία () στέλνουμε μια εντολή GET με τις παραμέτρους host και type τύπος κωδικοποίησης, συμβολικό συνέχειας и x-amz-ημερομηνία. Για να εργαστείτε με το 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Η Amazon είναι ο ξεκάθαρος ηγέτης στην αγορά υπηρεσιών cloud και οι ανταγωνιστές της προσφέρουν εκ νέου υλοποίηση του S3 API, αλλά πρέπει να μιμούνται ονόματα εντολών, ετικέτες παραμέτρων, προθέματα τύπου x-amz, η γραμματική δομή και η γενική οργάνωση του S3 API. Με άλλα λόγια, όλα όσα ισχυρίζεται η Oracle προστατεύονται από πνευματικά δικαιώματα.
Μεταξύ των εταιρειών που προσφέρουν ένα αντίγραφο του Amazon S3 API είναι . Για συμβατότητα, το Amazon S3 Compatibility API αντιγράφει πολλά στοιχεία του Amazon API, μέχρι τις ετικέτες x-amz.

Η Oracle ισχυρίζεται ότι η νομιμότητα των ενεργειών της βασίζεται στην άδεια ανοιχτού κώδικα Apache 2.0, η οποία επιτρέπει δωρεάν αντιγραφή και τροποποίηση του κώδικα. Για παράδειγμα, έρχεται επίσης με άδεια Apache 2.0.
Αλλά το ερώτημα είναι εάν η νομοθεσία περί πνευματικής ιδιοκτησίας ισχύει καθόλου για πράγματα όπως τα API. Αυτό πρέπει να καθορίσει το Ανώτατο Δικαστήριο.
Ποιος επινόησε το API;
Ο όρος και η έννοια της «βιβλιοθήκης υπορουτίνας» εμφανίστηκε για πρώτη φορά στο βιβλίο των Herman Goldstine και John von Neumann, Planning and Coding Problems for Electronic Computing Instruments, Part II, Volume III (Princeton University Institute for Advanced Study, 1948). . Περιεχόμενα του τρίτου τόμου:

Αυτή είναι η πρώτη περιγραφή μιας μεθοδολογίας προγραμματισμού για υπολογιστές με προγράμματα αποθηκευμένα στη μνήμη (προηγουμένως δεν υπήρχε τέτοια μεθοδολογία). Διανεμήθηκε ευρέως στα πανεπιστήμια, τα οποία εκείνη την εποχή προσπαθούσαν να δημιουργήσουν τους δικούς τους υπολογιστές. Και το πιο σημαντικό, το βιβλίο περιέχει τη βασική ιδέα: τα περισσότερα προγράμματα θα χρησιμοποιούν κοινές λειτουργίες και οι βιβλιοθήκες με ρουτίνες θα μειώσουν τον όγκο του νέου κώδικα και των σφαλμάτων. Αυτή η ιδέα αναπτύχθηκε περαιτέρω από τον Maurice Wilkes και εφαρμόστηκε στη μηχανή EDSAC, για την οποία έλαβε το βραβείο Turing το 1967.

Η βιβλιοθήκη υπορουτίνας EDSAC βρίσκεται στα αριστερά
Το επόμενο βήμα ήταν να δημιουργηθούν λειτουργίες υψηλότερης τάξης και πλήρεις διεπαφές προγραμματισμού, κάτι που έγινε από τους Maurice Wilkes και David Wheeler στο βιβλίο τους, Preparing Programs for the Electronic Digital Computer (1951).
Ο ίδιος ο όρος Διεπαφή προγράμματος εφαρμογής (API) εμφανίστηκε κάπου στα τέλη της δεκαετίας του '60.
Συντάκτης της παρουσίασης Ο Joshua Block δίνει πολλά παραδείγματα διεπαφών προγραμματισμού, συνόλων εντολών και βιβλιοθηκών υπορουτίνων: πώς δημιουργήθηκαν και στη συνέχεια χρησιμοποιήθηκαν. Η ιδέα είναι ότι η επαναχρησιμοποίηση είναι η όλη ουσία ενός API. Αυτός ακριβώς είναι ο λόγος που δημιουργήθηκαν εξαρχής. Και οι προγραμματιστές είχαν πάντα την ευκαιρία να αντιγράψουν και να επεξεργαστούν ξανά τα API άλλων ατόμων:
API
Δημιουργός
Έτος
Επανεφαρμογή
Έτος
Βιβλιοθήκη FORTRAN
IBM
1958
Univac
1961
IBM S/360 ISA
IBM
1964
Amdahl Corp.
1970
Standard C Βιβλιοθήκη
AT&T / Bell Labs
1976
Mark Williams Co.
1980
Κλήσεις συστήματος Unix
AT&T / Bell Labs
1976
Mark Williams Co.
1980
VT100 Esc Seq
Δεκέμβριος
1978
Χίθκιτ
1980
IBM PC BIOS
IBM
1981
Φοίνιξ Τεχνολογίες
1984
MS-DOS CLI
Microsoft
1981
Έργο FreeDOS
1998
Σετ εντολών Hayes AT
Hayes Micro
1982
Αυτοματισμός άγκυρας
1985
Υστερόγραφο
πλίθα
1985
GNU/GhostScript
1988
SMB
Microsoft
1992
Samba Project
1993
Win32
Microsoft
1993
Wine Project
1996
Βιβλιοθήκες Java 2 Class
Κυρ.
1998
Google/Android
2008
Delicious Web API
Νόστιμο
2003
Πίνακας
2009
Πηγή:
Η αντιγραφή και η επαναχρησιμοποίηση API (βιβλιοθήκες, σύνολα εντολών) δεν είναι μόνο το σωστό, αλλά είναι μια μεθοδολογία προγραμματισμού που συνιστάται άμεσα στους κανόνες της επιστήμης των υπολογιστών. Ακόμη και πριν από την αντιγραφή των API του S3, η ίδια η Oracle το είχε κάνει σε πολλές περιπτώσεις. Επιπλέον, η επιχείρηση της Oracle βασίστηκε αρχικά στην εφαρμογή της γλώσσας προγραμματισμού SQL που αναπτύχθηκε από την IBM. Το πρώτο εμβληματικό προϊόν της Oracle ήταν ένα DBMS που αντιγράφηκε σε μεγάλο βαθμό από το IBM System R. Σε αυτήν την περίπτωση, μιλάμε για την επανεφαρμογή της SQL ως "τυποποιημένου API" για το DBMS.
Η τοποθέτηση δικαιωμάτων πνευματικής ιδιοκτησίας σε API μπορεί να δημιουργήσει ένα νόμιμο ναρκοπέδιο που βλάπτει όλους. Οι διεπαφές API υλοποιούν και . Πολλά τεχνικά πρότυπα, όπως τα πρωτόκολλα Wi-Fi και Internet, περιλαμβάνουν API. Τα API αναγκαστικά επαναδημιουργούνται με κάποια μορφή σε κάθε υπολογιστή και διακομιστή στο Διαδίκτυο. Η θεωρία πνευματικών δικαιωμάτων της Oracle μπορεί να κάνει σχεδόν οτιδήποτε κάνετε με τον υπολογιστή σας παράνομο.
Για να αποφύγουν αυτές τις εκτεταμένες συνέπειες, η Oracle και το δευτεροβάθμιο δικαστήριο που επικύρωσε τα επιχειρήματά της προσπάθησαν να περιορίσουν την παραβίαση πνευματικών δικαιωμάτων μόνο σε ορισμένες εκ νέου υλοποιήσεις API που είναι "ασύμβατες" με το πρωτότυπο. Αλλά και μερικές επαναλήψεις . Ακόμη και στο αντίγραφο του S3 API, η Oracle σημειώνει πολυάριθμες «διαφορές» και ασυμβατότητες με τα αρχικά API της Amazon.
Ο κύριος κίνδυνος της αγωγής της Oracle είναι ότι θα μπορούσε να εμποδίσει τις μικρότερες εταιρείες τεχνολογίας να δημιουργήσουν εκδόσεις των συστημάτων τους που είναι συμβατές με κυρίαρχες πλατφόρμες όπως το S3. Χωρίς τέτοια συμβατότητα, οι προγραμματιστές θα αποκλειστούν ουσιαστικά από τις προσφορές αυτής της εταιρείας.
Οι εκπρόσωποι του κλάδου και οι προγραμματιστές μπορούν μόνο να ελπίζουν ότι η κοινή λογική κυριαρχεί εδώ και .
Πηγή: www.habr.com
