ãªã©ã¯ã«ã®åŒè·å£«ã¯ãAndroid ã§ã® Java API ã®åå®è£
ããããªãŒã»ããã¿ãŒãã®ã³ã³ãã³ãã®ã³ããŒãšæ¯èŒããŠããŸãã
ç±³åœæé«è£å€æã¯ä»å¹Žåãã«éèŠãªèšŽèšã審çããäºå®ã ã
åæã«ãOracle ã®ããžãã¹ã¯åœåãIBM ãéçºãã SQL ããã°ã©ãã³ã°èšèªã®å®è£
ã«åºã¥ããŠæ§ç¯ãããŠãããçŸåšã§ãå瀟㯠Amazon S3 ã® API ã䜿çšããŠã¯ã©ãŠã ãµãŒãã¹ãæäŸããŠãããããã¯ãŸã£ããæ®éã®ããšã§ãã API ã®åå®è£
ã¯ãæ¥çã®åæããã³ã³ãã¥ãŒã¿ãŒ ãµã€ãšã³ã¹ã®çºå±ã®èªç¶ãªéšåã§ããã
Oracleã¯ãææ³æ§é ã«é¢é£ä»ããããååä»ãã³ãã³ãã®ãªã¹ããå«ãJava APIãéæ³ã«ã³ããŒãããšããŠGoogleãéé£ããŠããã Android ãªãã¬ãŒãã£ã³ã° ã·ã¹ãã ã¯ç¹ã« Java API ãšäºææ§ããããJava ããã°ã©ããŒããœãããŠã§ã¢ãšç¥èãæ°ãããã©ãããã©ãŒã ã«ç°¡åã«ç§»è¡ã§ããããã«ããŸãã ãããè¡ãããã«ãAndroid ã¯å¯Ÿå¿ãã Java API ã³ãã³ããšææ³æ§é ãæ£ç¢ºã«ã³ããŒããŸããã
ãã ããJava API ãå¯äžã® API ã§ã¯ãªããAndroid ãå¯äžã®åå®è£
ã§ã¯ãããŸããã ä»æ¥ã® IT æ¥çã§ã¯ API ãéåšããŠããã倧äŒæ¥ã«ããç¬å ãé²ãããã«ç«¶äºãç¶æããã«ã¯ API ã®åå°å
¥ãäžå¯æ¬ ã§ãã
Duane æ°ã¯ã人æ°ã®ãã Amazon S3 ã¹ãã¬ãŒãž ãã©ãããã©ãŒã ã®äŸãæããŠããŸãã S3 ãžã®ãã¡ã€ã«ã®æžã蟌ã¿ãšååŸãå¯èœã«ããããã«ãAmazon ã¯å
æ¬çãªã
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 ã¯ã¯ã©ãŠã ãµãŒãã¹åžå Žã®æ確ãªãªãŒããŒã§ããã競åä»ç€Ÿã¯ S3 API ã®åå®è£ ãæäŸããŠããŸãããã³ãã³ãåããã©ã¡ãŒã¿ ã¿ã°ãã¿ã€ã ãã¬ãã£ãã¯ã¹ãæš¡å£ããå¿ èŠããããŸãã x-amzãS3 API ã®ææ³æ§é ãšäžè¬çãªæ§æã èšãæããã°ãOracle ã䞻匵ãããã®ã¯ãã¹ãŠèäœæš©ã§ä¿è·ãããŠãããšããããšã§ãã
Amazon S3 API ã®ã³ããŒãæäŸããŠããäŒæ¥ã«ã¯æ¬¡ã®ãããªãã®ããããŸãã
Oracleã¯ãèªç€Ÿã®è¡çºã®åæ³æ§ã¯ãã³ãŒãã®èªç±ãªã³ããŒãšå€æŽãèš±å¯ãããªãŒãã³ãœãŒã¹ã®Apache 2.0ã©ã€ã»ã³ã¹ã«åºã¥ããŠãããšäž»åŒµããŠããã äŸãã°ã
ãããåé¡ã¯ãç¥ç財ç£æ³ã API ãªã©ã«ãé©çšããããã©ããã§ãã ããã¯æé«è£å€æãå€æããªããã°ãªããªãããšã§ãã
API ãçºæããã®ã¯èª°ã§ãã?
ããµãã«ãŒãã³ ã©ã€ãã©ãªããšããçšèªãšæŠå¿µã¯ãããŒãã³ ãŽãŒã«ãã¹ã¿ã€ã³ãšãžã§ã³ ãã©ã³ ãã€ãã³ã«ããèæžãé»åèšç®æ©ã®èšç»ãšã³ãŒãã£ã³ã°åé¡ - ããŒã IIãããªã¥ãŒã III (ããªã³ã¹ãã³å€§åŠé«çç 究æã1948 幎)ãã«åããŠç»å ŽããŸããã
ããã¯ãããã°ã©ã ãã¡ã¢ãªã«ä¿åããã³ã³ãã¥ãŒã¿ã®ããã°ã©ãã³ã°æ¹æ³è«ã®æåã®èª¬æã§ã (以åã¯ãã®æ¹æ³ã¯ååšããŸããã§ãã)ã ããã¯ãåœæç¬èªã®ã³ã³ãã¥ãŒã¿ãéçºããããšããŠãã倧åŠã«åºãé
åžãããŸããã ãããŠæãéèŠãªããšã¯ããã®æ¬ã«ã¯éèŠãªã¢ã€ãã¢ãå«ãŸããŠããããšã§ãã ã»ãšãã©ã®ããã°ã©ã ã¯å
±éã®æäœã䜿çšããã«ãŒãã³ãå«ãã©ã€ãã©ãªã«ããæ°ããã³ãŒããšãšã©ãŒã®éãåæžãããŸããã ãã®ã¢ã€ãã¢ã¯ã¢ãŒãªã¹ ãŠã£ã«ã¯ã¹ã«ãã£ãŠããã«æŽç·ŽãããEDSAC ãã·ã³ã§å®è·µããã1967 幎ã«ãã¥ãŒãªã³ã°è³ãåè³ããŸããã
EDSAC ãµãã«ãŒãã³ ã©ã€ãã©ãªã¯å·ŠåŽã«ãããŸã
次ã®ã¹ãããã¯ãMaurice Wilkes ãš David Wheeler ããé»åããžã¿ã« ã³ã³ãã¥ãŒã¿ã®ããã®ããã°ã©ã ã®æºåã (1951 幎) ã§è¡ã£ãããã«ãé«æ¬¡é¢æ°ãšæ¬æ ŒçãªãœãããŠã§ã¢ ã€ã³ã¿ãŒãã§ã€ã¹ãäœæããããšã§ããã
çšèª ã¢ããªã±ãŒã·ã§ã³ããã°ã©ã ã€ã³ã¿ãŒãã§ã€ã¹ (API) 㯠60 幎代åŸåã«ç»å ŽããŸããã
ãã¬ãŒã³ããŒã·ã§ã³ã®äœæè
API
ã¯ãªãšã€ã¿ãŒ
幎
åå®è£
幎
FORTRAN ã©ã€ãã©ãª
IBM
1958
ãŠãããã¯
1961
IBM S/360 ISA
IBM
1964
ã¢ã ããŒã«ç€Ÿ
1970
æšæº C ã©ã€ãã©ãª
AT&T/ãã«ç 究æ
1976
ããŒã¯ã»ãŠã£ãªã¢ã ãºç€Ÿ
1980
Unixã·ã¹ãã ã³ãŒã«
AT&T/ãã«ç 究æ
1976
ããŒã¯ã»ãŠã£ãªã¢ã ãºç€Ÿ
1980
VT100 Esc ã·ãŒã±ã³ã¹
12æ
1978
ããŒã¹ããã
1980
IBM PC BIOS
IBM
1981
Phoenix Technologies
1984
MS-DOS CLI
Microsoft
1981
FreeDOS ãããžã§ã¯ã
1998
ãã€ãºATã³ãã³ãã»ãã
ãã€ãºãã€ã¯ã
1982
ã¢ã³ã«ãŒã®èªåå
1985
PostScriptã®
Adobe
1985
GNU/ãŽãŒã¹ãã¹ã¯ãªãã
1988
SMB
Microsoft
1992
ãµã³ããããžã§ã¯ã
1993
Win32
Microsoft
1993
ã¯ã€ã³ãããžã§ã¯ã
1996
Java 2 ã¯ã©ã¹ ã©ã€ãã©ãª
æ¥
1998
ã°ãŒã°ã«/ã¢ã³ããã€ã
2008
Web API ãããã
ãããã
2003
ãã³ããŒã
2009
åºæïŒ
API (ã©ã€ãã©ãªãåœä»€ã»ãã) ãã³ããŒããŠåå©çšããããšã¯æ£ããã ãã§ãªãããã®ããã°ã©ãã³ã°æ¹æ³è«ã¯ã³ã³ãã¥ãŒã¿ ãµã€ãšã³ã¹ã®èŠç¯ã«ãããŠçŽæ¥æšå¥šãããŠããŸãã S3 ããã°ã©ãã³ã° ã€ã³ã¿ãŒãã§ã€ã¹ãã³ããŒããåã§ãããOracle èªäœããããäœåºŠãè¡ã£ãŠããŸããã ããã«ãOracle ã®ããžãã¹ã¯åœåãIBM ãéçºãã SQL ããã°ã©ãã³ã°èšèªã®å®è£ ã«åºã¥ããŠæ§ç¯ãããŸããã Oracle ã®æåã®äž»å補å㯠DBMS ã§ããã®å€§éšå㯠IBM System R ããã³ããŒãããŸããããã®å ŽåãDBMS ã®ãæšæº APIããšããŠã® SQL ã®åå®è£ ã«ã€ããŠè©±ããŠããŸãã
API ã«ç¥ç財ç£æš©ã課ãããšã¯ããã¹ãŠã®äººã«åœ±é¿ãäžããæ³çå°é·åãçã¿åºãå¯èœæ§ããããŸãã API ã®å®è£
ãš
ããããåºç¯å²ã«ããã圱é¿ãåé¿ããããã«ãOracle ãšãã®äž»åŒµãæ¯æããæ§èšŽè£å€æã¯ãèäœæš©äŸµå®³ããå
ã® API ãšãäºææ§ããªããç¹å®ã® API ã®åå®è£
ã«éå®ããããšè©Šã¿ãŠããŸããã ãã ãéšåçãªåå®è£
ã
ãªã©ã¯ã«ã®èšŽèšã®äž»ãªå±éºæ§ã¯ãäžå°äŒæ¥ãS3ãªã©ã®äž»èŠãªãã©ãããã©ãŒã ãšäºææ§ã®ããããŒãžã§ã³ã®ã·ã¹ãã ãäœæã§ããªããªãå¯èœæ§ãããããšã ã ãã®ãããªäºææ§ããªããã°ãããã°ã©ãã¯äºå®äžããã®äŒç€Ÿã®è£œåããç· ãåºãããããšã«ãªããŸãã
æ¥çã®ä»£è¡šè
ãéçºè
ã¯ãããã§ã¯çæ§ãåã€ããšãé¡ãã°ããã§ãã
åºæïŒ habr.com