Gli avvocati di Oracle paragonano la reimplementazione dell'API Java in Android alla copia del contenuto di “Harry Potter”,
La Corte Suprema degli Stati Uniti esaminerà un caso importante all’inizio di quest’anno.
Allo stesso tempo, l'attività di Oracle è stata inizialmente basata sull'implementazione del linguaggio di programmazione SQL sviluppato da IBM, e anche adesso l'azienda offre un servizio cloud con un'API di Amazon S3, e questo è del tutto normale. La reimplementazione delle API è stata una parte naturale dello sviluppo dell’informatica sin dagli albori del settore.
Oracle accusa Google di aver copiato illegalmente l'API Java, incluso un elenco di comandi denominati legati a strutture grammaticali. Il sistema operativo Android è specificamente compatibile con l'API Java per facilitare ai programmatori Java il trasferimento di software e conoscenze sulla nuova piattaforma. Per fare ciò, Android ha copiato esattamente i comandi API Java e le strutture grammaticali corrispondenti.
Ma le API Java non sono le uniche API e Android non è l'unica reimplementazione. Nell’odierno settore IT, le API sono onnipresenti e la loro reintroduzione è fondamentale per mantenere la concorrenza ed evitare che le grandi aziende monopolizzino
Duane fa l'esempio della popolare piattaforma di storage Amazon S3. Per consentire la scrittura e il recupero di file da S3, Amazon ha sviluppato una soluzione completa,
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 è il leader indiscusso nel mercato dei servizi cloud e i suoi concorrenti offrono reimplementazioni dell'API S3, mentre devono imitare nomi di comandi, tag di parametri, prefissi di tipo x-amz, struttura grammaticale e organizzazione generale dell'API S3. In altre parole, tutto ciò che Oracle afferma è protetto da copyright.
Tra le aziende che offrono una copia dell'API Amazon S3 ci sono
Oracle sostiene che la legalità delle sue azioni si basa sulla licenza open source Apache 2.0, che consente la copia e la modifica gratuita del codice. Per esempio,
Ma la domanda è se la legge sulla proprietà intellettuale si applica anche a cose come le API. Questo è ciò che dovrà stabilire la Corte Suprema.
Chi ha inventato l'API?
Il termine e il concetto di "libreria di subroutine" sono apparsi per la prima volta nel libro Planning and Coding Problems for an Electronic Computing Instrument - Part II, Volume III (Princeton University Institute of Advanced Study, 1948) di Herman Goldstein e John von Neumann.
Questa è la prima descrizione di una metodologia di programmazione per computer che memorizza i programmi in memoria (prima non esisteva). Fu ampiamente distribuito alle università, che a quel tempo stavano cercando di creare i propri computer. E, cosa più importante, il libro contiene un'idea chiave: la maggior parte dei programmi utilizzerà operazioni comuni e le librerie con routine ridurranno la quantità di nuovo codice e di errori. Questa idea fu ulteriormente perfezionata da Maurice Wilkes e messa in pratica nella macchina EDSAC, per la quale ricevette il Premio Turing nel 1967.
La libreria delle subroutine EDSAC è sulla sinistra
Il passo successivo fu quello di creare funzioni di ordine superiore e interfacce software complete, come fecero Maurice Wilkes e David Wheeler in Preparing Programs for the Electronic Digital Computer (1951).
Il termine Interfaccia del programma applicativo (API) è apparso da qualche parte alla fine degli anni '60.
Autore della presentazione
API
Creatore
anno
Reimplementazione
anno
Biblioteca FORTRAN
IBM
1958
Univac
1961
IBM S/360ISA
IBM
1964
Amdahl Corp.
1970
Libreria C standard
AT&T/Bell Labs
1976
Mark Williams Co.
1980
Chiamate di sistema Unix
AT&T/Bell Labs
1976
Mark Williams Co.
1980
VT100 Esc Seq
Dicembre
1978
Heathkit
1980
BIOS del computer IBM
IBM
1981
Tecnologie Phoenix
1984
CLI di MS-DOS
Microsoft
1981
Progetto FreeDOS
1998
Set di comandi Hayes AT
Hayes Micro
1982
Automazione dell'ancora
1985
PostScript
Adobe
1985
GNU/GhostScript
1988
SMB
Microsoft
1992
Progetto Samba
1993
Win32
Microsoft
1993
Progetto Vino
1996
Librerie di classi Java 2
Dom.
1998
Google/Android
2008
API Web deliziosa
Delizioso
2003
Bacheca
2009
Fonte:
Copiare e riutilizzare le API (librerie, set di istruzioni) non solo è corretto, ma questa metodologia di programmazione è direttamente raccomandata nei canoni dell'informatica. Anche prima di copiare le interfacce di programmazione S3, Oracle stessa lo ha fatto molte volte. Inoltre, l'attività di Oracle è stata inizialmente basata sull'implementazione del linguaggio di programmazione SQL sviluppato da IBM. Il primo prodotto di punta di Oracle è stato un DBMS, in gran parte copiato da IBM System R. In questo caso, stiamo parlando della reimplementazione di SQL come "API standard" per un DBMS.
Imporre diritti di proprietà intellettuale sulle API può creare un campo minato legale che colpisce tutti. Le API implementano e
Per evitare queste conseguenze di vasta portata, Oracle e la corte d'appello che ha accolto le sue argomentazioni hanno tentato di limitare la violazione del copyright a determinate reimplementazioni dell'API che sono "incompatibili" con l'originale. Ma anche reimplementazioni parziali
Il pericolo principale della causa legale di Oracle è che potrebbe impedire alle aziende tecnologiche più piccole di creare versioni di sistemi compatibili con piattaforme dominanti come S3. Senza tale compatibilità, i programmatori saranno effettivamente esclusi dalle offerte di questa azienda.
I rappresentanti del settore e gli sviluppatori possono solo sperare che qui prevalga la ragione, e
Fonte: habr.com