éèŠãªæ
å ±ããå§ããŸããããææãªèšèªã¯å¿
ãããæ°ãããã®ã§ã¯ãããŸããã ããªãã®ææã®PythonãRubyã»ã©å€ããªãã人æ°ã®é«ãäžäœ10ã®
ã©ã³ã¯ ïŒ
GitHut ã
RedMonk ã
TIOBE Index ïŒã®
ãããã«ã
å±ããããããã®èšèªã®ç¥èã¯çµŠäžã®å€§å¹
ãªå¢å ãæäŸããŸããïŒSwiftãé€ãïŒ ã ãããã圌ããé©åœãšåŒã³ãéžæ人ã®éã§å¢ããåŸãããšãäžå¯èœã§ãã ãã¡ãããç¬èªã®ããããç¹å®ã®åžå Žã·ã§ã¢ïŒæ倧2ïŒ
ïŒã確ç«ãããã³ãã¥ããã£ããããŸãã ããã©ãã¯ã¹ã¯ã³ãã®ãããªã€ãã³ããçºçããªãå Žåãå°æ¥çã«ã¯ããã5ã®ææ¡æš¹ã«äŸµå
¥ã§ããã®ã¯åœŒãã ãã§ãã
è¿å¹Žãèšèªã®äººæ°è©äŸ¡ã«ã»ãšãã©å€åã¯ãããŸãããäžéšã¯äœäžããäžéšã¯äžæããŸãããããã¹ãã»ãªãã»ã¶ã»ãã¹ãããšããã¹ããŒã¬ã³ã®äžã§ãããã«äŸµå
¥ãã人ã¯ããŸããã èšèªã®æ°ããé åããã£ããã£ããããã»ã¹ã¯ãã»ãšãã©ã®å Žåäœå¹Žããããããã®éã«å¿
èŠãªéçºããŒã¹ã圢ã«ãªããŸãã ãã®ãããã¬ãã¥ãŒã§æšå€æžãããæä»çãªèšèªãç¬èªã®èšèªã¯ãããŸãããåã«åœŒãã®æéããŸã å°çããŠããªãããã§ãã ããããä»åŸæ°å¹Žã®ãã¡ã«ãJavaïŒãã¹ãŠïŒãJavaScriptãPHPãªã©ã®æºãããªãæ±ã®äººæ°ã¯äœäžãããããã®å Žæã¯åŸã
ã«ãæ°åè
ãã«åã£ãŠä»£ããããã§ãããã
ã¹ã€ãã
ããã°ã©ããŒChris Luttnerã¯ã2010幎以æ¥ã誰ããèªåã®ããã°ã©ãã³ã°èšèªã«å¯ãã«åãçµãã§ããŸããéçºéå§ããçŽ1幎ååŸãä»ã®ããã°ã©ããŒãé¢äžããŸããããLuttnerãå€åããAppleããããžã§ã¯ãã«éäžãããŸã§ã«ããã«1幎ããããŸããã
2014幎ãAppleã¯OOPèšèªSwiftãå°å
¥ããŸãããããã¯ãObjective-Cã眮ãæããå¿
èŠããããŸããããã¯ãObjective-Cã§èšè¿°ãããã¢ããªã±ãŒã·ã§ã³ãæ°ããèšèªã«ç¿»èš³ããæ©èœã«ãã£ãŠä¿é²ãããŸãã äž»ã«iOSããã³OS Xéçºè
åãã«èšèšãããSwiftã¯ãObjective-Cãããå®å
šã§é«éãªèšèªãšèŠãªãããŠããŸãã
ä»èªããã®
æé«ã®èšèªã®æ¬ã¯ãAppleã®å
¬åŒåºçç©ã
Swift for Programmersã§ãã èåãªæåž«ãšããã°ã©ããŒã®ããŒãŽã§ã€ã»ãã€ãã«ãšããŒã«ã»ãã€ãã«ã«ããæ¬ã¯ç¹å¥ãªãã¬ãŒã³ããŒã·ã§ã³ãå¿
èŠãšããŸãã-圌ãã¯è€éãªçŽ æã®ç°¡åãªãã¬ãŒã³ããŒã·ã§ã³ã§æåã§ãã ãSwift for Programmersãã«ã¯ãç¬èªã®ã¢ããªã±ãŒã·ã§ã³ãäœæããããã®åºæ¬ãåŠã¶ã®ã«åœ¹ç«ã€å®éã®ããã°ã©ã ã®å€ãã®äŸãå«ãŸããŠããŸãã ãã®æ¬ã®æŽæ°çã¯1幎åã«ãªãªãŒã¹ãããŸããã
2014幎ã«åºçãããæ¬ã
åå¿è
åãã®SwiftïŒéçºãšèšèš ãã§ã¯ãSwiftã®åºæ¬ã«ã€ããŠèª¬æããã ãã§ãªããXcodeç°å¢ã玹ä»ããŠããŸãã ãã®åºçç©ã¯ãå°ãªããšãé«æ°Žæºèšèªã®ããã°ã©ãã³ã°ç¥èãå°ãªããšããããiOSãOS XããŸãã¯watchOSçšã®ããã°ã©ã ã®äœææ¹æ³ãåŠã³ãã人ã«é©ããŠããŸãã
ãã ãããã¹ãŠã®æŽæ°ã«ãããããããæ¬ã¯èšèªã®å€æŽã«ããå¿
ç¶çã«é³è
åããã§ãããã ããã«å¯ŸåŠããã«ã¯ãããã€ãã®æ¹æ³ããããŸããããšãã°ãè¿ãå°æ¥ã©ã®é¢é£èšèªã®æ¬ãåºçãããããäºåã«ç¥ãããšã§ãã
ããããèªããã®
Swift 2ã¯ãã¯ããã¯ã«ã¯ãSwift 2ã§ã¢ããªã±ãŒã·ã§ã³ãäœæããã®ã«åœ¹ç«ã€50以äžã®ã¬ã·ããå«ãŸããŠããŸãããã¥ãŒããªã¢ã«ã§ã¯ãXcodeã®ã€ã³ã¹ããŒã«ã®åºæ¬ã«ã€ããŠèª¬æããXcodeã䜿çšããŠã³ãŒããSwift 1.2ããSwift 2.0ã«ã¢ããã°ã¬ãŒãããäŸã瀺ããXcodeãã³ãŒãã®ãã¹ãã«ã©ã®ããã«åœ¹ç«ã€ãã瀺ããŸãã Objective-CãŸãã¯Swiftãæåã«ç解ããŠãããšåœ¹ç«ã¡ãŸãããSwiftã®äºåç¥èããªããŠãããã®æ¬ã«èšèŒãããŠããè³æãåŠç¿ã§ããŸãã ãã®æ¬ã¯ä»å¹Ž4æã«ãªãªãŒã¹ãããŸãã
ã¹ã«ã©
Scalaã¯ãå®å
šã§é«éãªããã°ã©ãã³ã°ã®ããã«èšèšããã匷åãªãã«ããã©ãã€ã ããã°ã©ãã³ã°èšèªã§ãã Scalaã¯é¢æ°åããã°ã©ãã³ã°æ©èœãå®å
šã«ãµããŒãããŠããŸãã 圌ã¯ã¢ã«ãããã¯ãªç°å¢ã®ä»£è¡šã§ããããã®ããã«é床ã®è€éãã§éé£ãããããšããããŸãã ãã®èšèªã¯2001幎ãã2004幎ã«äœæãããŸããã ãšãŒãããã§æãæš©åšã®ããæè²æ©é¢ã®1ã€ã§ããããŒã¶ã³ãé£éŠå·¥ç§å€§åŠã§åŠãã ã Scalaã¯ãã³ã³ããŒãã³ããœãããŠã§ã¢ã®æ¹åãããèšèªãµããŒãã®éçºãç®çãšãã調æ»ã®çµæã§ãã
ä»æ¥ãScalaã¯å€ãã®å€§èŠæš¡ãããžã§ã¯ãã§äœ¿çšãããŠããŸããããšãã°ããµãŒããŒåŽã®Twitterã³ãŒãã®ã»ãšãã©ã¯ãã®èšèªã§æžãããŠããŸãã Scalaã¯ãJavaã®èšèšã§è¡ãããå€ãã®ééããèæ
®ã«å
¥ããŠãããããJavaã眮ãæããããšãã§ããŸãã
ä»èªããã®
Programming in ScalaïŒA Comprehensive Step-by-Step Guideã2nd Editionã®èè
ã§ããMartin Oderskyã¯ãScalaã®äœæè
ã§ãã ããã«ã圌ã¯JavaïŒGenericsïŒã§ã®æ±çšããã°ã©ãã³ã°ã®ãµããŒããéçºããJavaã³ã³ãã€ã©ãŒã§ããjavacã®çŸåšã®ããŒãžã§ã³ãäœæããŸããã
ã€ã¿ãªã¢èªãã翻蚳ãããšããscalaãã¯ãé段ããæå³ããŸãã Oderskyã®æ¬ã¯ãããæå³ã§ã¯ç»å±±é段ã«äŒŒãŠããŸããåºæ¬çãªèŠçŽ ããå§ããŠãèšèªã®è¿œå æ©èœã§çµããScalaããã¹ã¿ãŒããŸãã
Scala in Depth ïŒJoshua D. SuerethèïŒã圹ç«ã€ãããããŸããã ãã¡ãããå€ãã®é¢ã§ãã§ã«å€ããªã£ãŠããŸããããã¿ãŒã³ãšã¢ã«ãŽãªãºã ãåŠç¿ããå Žåã¯ãè³æã®é¢é£æ§ãåœãŠã«ããããšãã§ããŸãã
ã
Scala in Action 1st Edition ã-ææ°ã®æç§æžïŒ2013ïŒã èšèªãæ¡åŒµããããŒã«ã®æŠèŠãæäŸããŸãã
MongoDB ã
SBT ã
Scalaz ã
Squeryl ã
H2 ã
jQuery UI ã
ScalaCheck ã
Specs ã
Akka ã
Lift ãDSLã«ã€ããŠè©³ãã説æããå解ããŸãã
ããããèªããã®
ã
Scala High Performance Programming ãã¯ãèè
ã«ãããšãé«æ§èœã¢ããªã±ãŒã·ã§ã³ãäœæããScalaã®èœåã調æ»ããæåã®æ¬ã§ãã ãã®åºçç©ã¯ãLiftãç¥ã£ãŠããScalaéçºè
ããScalaãžã®åãæ¿ãã«é¢å¿ããããJavaã³ãŒãã®ããã©ãŒãã³ã¹ãæŸæ£ããããªãJavaããã°ã©ããŒã«åœ¹ç«ã¡ãŸãã
æ¬ã®ãªãªãŒã¹ã¯6æã«äºå®ãããŠããŸãã
ã
Scala Design Patterns ãã¯ãScalaããã°ã©ãåãã®ãã1ã€ã®æ¬ã§ãç¥èã掻çšããŠå®éã®ã¢ããªã±ãŒã·ã§ã³ãäœæããã®ã«åœ¹ç«ã¡ãŸããããã¯äžçš®ã®ã¯ã€ãã¯ãªãã¡ã¬ã³ã¹ã¬ã€ãã§ãã ãã®æ¬ã§ã¯ãèšèšãã¿ãŒã³ã«ããç¥ãããŠããæ¥çæšæºã䜿çšããå¯èœæ§ã«ã€ããŠèª¬æããéžæãããã¿ãŒã³ã䜿çšããå¿
èŠãããææãšãããé©åãªãã®ãæ¢ãææã瀺ããŠããŸãã
ã«ã¢
Luaã¯ã1993幎ã«ãªãªããžã£ãã€ãã«ããªãã¯å€§åŠã®ã¹ã¿ããã«ãã£ãŠéçºãããã¹ã¯ãªããèšèªã§ãã Luaã®æ©èœã¯JavaScriptã«è¿ãã§ããããã匷åã§æè»ãªèšèšãç¹åŸŽã§ãã å€ãã®ã²ãŒã ïŒWorld of Warcraftãå«ãïŒã®ããã°ã©ãã³ã°èšèªãšããŠå声ãåŸãŠããŸãããã²ãŒã ã ãã§ãªããä»ã®ãã¡ã€ã«ã«ä¿åãããŠããããŒã¿ã®äœ¿çšãå¿
èŠãªå Žåã«ã䜿çšã§ããŸãã
Luaã¯ãäžçã§æãçç£çãªã¹ã¯ãªããèšèªã®1ã€ã§ãã RedisãnginxãTarantoolãOpenResãªã©ã®ãããžã§ã¯ãã§äœ¿çšãããŸãã
ä»èªããã®
å€å
žãèªãã§ãã ããã
Luaã®ããã°ã©ãã³ã° ïŒç¬¬3çïŒã¯ãèšèªã®äœæè
ã®äžäººã§ããRoberto Jeruzalimskyã«ãã£ãŠæžãããæ¬ã§ãã ã²ãŒã éçºè
ã«ãšã£ãŠããã®åºçç©ã¯åèæžã«ãªããããããŸããã Cãšã®å¯Ÿè©±ã«å¿
èŠãªã¹ãã«ãªã©ãLuaã䜿çšããã»ãŒãã¹ãŠã®åŽé¢ãã«ããŒããŠããŸãã
Luaãç¿åŸããæãç°¡åãªæ¹æ³ã®1ã€ã¯ã次ã®ãªã³ã¯ã§ãïŒ
Luaã15åã§åŠã¶ ã
ããããèªããã®
æ®å¿µãªãããè¿ãå°æ¥ãèå³æ·±ãçºè¡šã¯ãããŸããã æ¯èŒçæ°ããïŒä»ã®ãšãã£ã·ã§ã³ãšæ¯èŒããŠïŒæ¬ã2015幎ã«çºè¡ãããŸãã-â
Lua Game Development Cookbook âã ãã®æ¬ã®åå¿è
ã®ã²ãŒã éçºè
ã«ãšã£ãŠãåçŽãª2Dã²ãŒã ã®æŠå¿µãç 究ããŠãããææ°ã®3Dãããžã§ã¯ãã«é²ããšåœ¹ç«ã¡ãŸãã ããã«ãLuaã®ã¹ã¯ãªããæ©èœã䜿çšãããšãã²ãŒã ãå®å
šã«å¶åŸ¡ã§ããŸãã
ãã ãããã®æ¬ã¯Luaã®åå¿è
åãã§ã¯ãããŸãããã«ã¹ã¿ã ã®Luaã¢ãžã¥ãŒã«ãäœæããã«ã¯ãC / C ++ã®ç¥èãå¿
èŠã§ãã
è¡ã
ãããŒãã»ã°ãªãŒã¹ããŒãããã»ãã€ã¯ãã±ã³ã»ãã³ããœã³ã¯2007-2009幎ã«GoãäœæããŸããã ãã®èšèªã¯ã倧èŠæš¡ãªãœãããŠã§ã¢éçºã®åé¡ã解決ããããã«äœæãããŸããã Goã¯ãéçºããã»ã¹ãããå¹ççã«ããå¿
èŠããããŸããã ããã¢ã«ãããã¯ãªããã°ã©ãã³ã°èšèªãšã¯ç°ãªããGoã¯äœåãªãã®ããã¹ãŠåé€ããããšããŸããã èšèªã®ç°¡æœããšçŽ æŽãã®ãããã§ãåŠç¿ã¯éåžžã«ç°¡åã«ãªããŸãã
Goã®ã¢ããªã±ãŒã·ã§ã³ã¯å€æ§ã§ãã ãã®ãããVKontakteã®ããã·ã¥éç¥
ã¯Goèšèªã§å®è£
ãããŠããŸã ã Goã§ã¯ãiOSããã³Androidçšã®ã¢ããªã±ãŒã·ã§ã³ãäœæããç¬èªã®
æå·é貚ãäœæããããšãã§ããŸãã äžè¬ã«ãGoãèªåã§ã©ãã§äœ¿çšãããã決ããããšãã§ããŸããç¹ã«ãè±èªã®ç¥èããªããŠãåŠç¿ã§ãããã
ãHabréã®
ããã«ã¯å€ãã®ç¿»èš³ãšè±å¯ãªèšäºããããŸãã
ä»èªããã®
ãã®æ¬ã®èè
ã®äžäººã§ãããã©ã€ã¢ã³ã»ã«ãŒãã¬ã³ã¯ãçã®ããã°ã©ãã³ã°ã®äŒèª¬ã§ãã 圌ã¯Unixã®å
±èè
ã®äžäººã§ããã1978幎ã«Dennis Ritchieãšå
±åå·çããThe C Programming Languageã®èè
ã§ããditroffãcronãå«ãå€ãã®Unixããã°ã©ã ã®äœæè
ã§ãã
çŸæç¹ã§ã¯ã
Goããã°ã©ãã³ã°èšèªã¯æãèå³æ·±ãGoèšèªã®æç§æžã§ãã JavaScriptãRubyãPythonãJavaããŸãã¯C ++ã®å°ãªããšãåºæ¬çãªç¥èãããã°ããã®èšèªãç¿åŸã§ããŸãã ãã®æ¬ã¯ãèšèªã®ãã¥ã¢ã³ã¹ãæãéèŠãªã©ã€ãã©ãªã網çŸ
ããå¹
åºãèšèªã®äœ¿çšæ³ã瀺ãGoã³ãŒãã®å®éã®äŸãäœçŸãæ瀺ããŠããŸãã
ããããèªããã®
Go Web Programmingã®äœè
ã§ããSau Sheong Changã¯ãRuby on Rails Webããã·ã¥ã¢ãããããžã§ã¯ããRubyã§ã®ã€ã³ã¿ãŒãããã¢ããªã±ãŒã·ã§ã³ã®ã¯ããŒã³äœæãããã³Rubyã«é¢ãããã®ä»ã®éèŠãªæžç±ãããã€ãå·çããŸããã ã·ã³ã¬ããŒã«ã®HP Labsã®ç 究æã®ãã£ã¬ã¯ã¿ãŒãšå¿çšç 究ããRubyã®åŸã«Goã§ãããžã§ã¯ããæžãå§ããçç±ãç¥ãããšã¯ãããã«èå³æ·±ãããšã§ãã Go Webããã°ã©ãã³ã°ã¯ãææ°ã®èšèšååã䜿çšããŠGoã§Webã¢ããªã±ãŒã·ã§ã³ãäœæããåé¡ã«å¯ŸåŠããŸãã ãªãªãŒã¹ã¯5æ31æ¥ã«äºå®ãããŠããŸãã
ãã³
Rustã¯ã2006幎以éã«éçºããããã«ããã©ãã€ã ãæ©èœçãåœä»€åæç¶ãåããªããžã§ã¯ãæåããã°ã©ãã³ã°èšèªã§ãã2009幎以æ¥ãMozilla ResearchããŒã ã¯Rustã«åãçµãã§ããŸãã
Rustã¯ãäžå®ã¬ãã«ã®çŠæ¬²äž»çŸ©ãç¶æããªãããã³ã³ãã€ã«èšèªïŒC ++ãæ©èœã§ã¯å£ããªãïŒã®ããã©ãŒãã³ã¹ãšã»ãã¥ãªãã£ããåçèšèªïŒPythonïŒã®éçºé床ãšçµã¿åãããŸãã 倧èŠæš¡ã§ãªãŒãã³ãªéçºè
ã³ãã¥ããã£ã®æŽ»åã®ãããã§ãRustã¯C ++ããã³Javaã®èšèšã§ç¯ããå€ãã®ééããä¿®æ£ããŸããã
ä»èªããã®
ãã³ã¯æ¥éã«å€åãç¶ããŠããŸãã ãã¬ãŒãã³ã°è³æãæ°ãæé
ãããšãç¥èãå±éºã«ãããããå¯èœæ§ããããŸãã å
¬åŒããã¥ã¡ã³ãïŒ
ããã¥ã¢ã« ïŒãThe Rust Programming LanguageããšãåŒã°ããïŒããã³
ãã®ä»ã®ããã¥ã¡ã³ã ïŒã«ç²ŸéããŠããããšãäžå¯æ¬ ã§ãã
ããããèªããã®
GNU EmacsãšGNU Guileã®ãã€ããŒã§ãã
Programming Rustã®äœè
ã§ããJim Blandyã¯ãRustã®ãŠããŒã¯ãªé·æã«ã€ããŠèªã£ãŠããŸãã ãã®æ¬ã¯ãå€ãã®äžè¬çãªãšã©ãŒãåé¿ããæ確ã§è²»çšå¯Ÿå¹æã®é«ãããã°ã©ãã³ã°ã®äŸãæäŸããŸãã
Learning Rustã¯ãCïŒ/ C ++éçºè
ãããã©ãŒãã³ã¹ãšã¡ã¢ãªç®¡çãæ¹åã§ããããã«ãããã®ã§ããã®12æã«ãªãªãŒã¹ãããŸãã ãã®æ¬ã¯ã倧èŠæš¡ã§ã¹ã±ãŒã©ãã«ãªãœãããŠã§ã¢ã®éçºã«ãããRustã®æ©èœã瀺ããå€æ°ãæé ãã¡ã¢ãªç®¡çãªã©ãå«ãèšèªã®åºæ¬ã«ã€ããŠã説æããŠããŸãã ãã®æ¬ãèªãã åŸãRustã§è€éãªã¢ããªã±ãŒã·ã§ã³ãäœæã§ããŸãã
çµè«ã®ä»£ããã«
ãã©ãã€ã ã·ããããã»ã¹ã¯éåžžã«é
ãããããæ°ã«å
¥ãã®ããã°ã©ãã³ã°èšèªãå®å
šã«å€ããªããŸã§åŸ
ããã«ãé¿ããããªããã®ã®æºåãããã«éå§ã§ããŸãã ææ¥C ++ãå¿ãã人ã¯ããŸããããä»ããåé²ããŠæ°ããããšãåŠã¶å¿
èŠããããŸãã éžæããèšèªã®å©ç¹ã¯ããã©ã€çè«ã«éãããä»æ¥ã®ãããžã§ã¯ãã§å®éã«äœ¿çšã§ããããšã§ãã æãææãªèšèªã®1ã€ãèªåã§è©ŠããŠãçµæã«å€±æããããšã¯ã§ããŸããã