ãã®ã¹ã©ã¤ãã¯Slidevã§ä½ããã¦ããã以ä¸ã®ã¬ãã¸ããªã§å ¬éãã¦ãã¾ã https://github.com/riya-amemiya/amemiya_riya_slide_data/tree/main/frontend_conf_tokyo_2025
Jamstackãæ¢åã®ã·ã¹ãã ã«å°å ¥ããããæ¤è¨ããæ©ä¼ããã£ãã ç´ä½æ²æãããã®ã®ãæªã ã«æ«å®çãªçµè«ããåºã¦ããªãã ã¨ã¯ãããããã¨é å¼µã£ãã ä»å㯠Jamstackã¨ã¯ãªãããï¼ Jamstackã®ç¹å¾´ Jamstackã®æè¡ å¼±ã¿ã解決ããç å®éã«æ¤è¨ãã話 ãéã«ç´¹ä»ãããã å人çãªã¡ã¢ãªã®ã§ãééã£ã¦ããã¨ãããããã®ãèæ ®é¡ãããã Jamstackã¨ã¯ï¼ Jamstackã®Jamã¯ä»¥ä¸ã®é æåãã¨ã£ã¦ããã JavaScript APIs Markup ã¾ããããã³ãã¨ã³ããæããªãAPI群ããããAPIã¯ãã©ã¦ã¶ã®JavaScriptããå©ããããããããªãããå¾è¿°ãããããªSSG =ãStatic Site Generatorãã®ãã¬ã¼ã ã¯ã¼ã¯ãå©ãããç¥ããªããã©ã¡ãã«ããã¦ã¼ã¶ã¼ã«é ä¿¡ãããã®ã¯SSGãåºåãããMarkupãã¤ã¾ãããªã¬ã³ããªã³ã°ããã
ãã®æç¨¿ã§ã¯JavaScriptã§æåæ°ãã§ããã ãæ£ç¢ºã«ã«ã¦ã³ãããæ¹æ³ã«ã¤ãã¦åãä¸ãã¾ãã æåæ°ã¨ã¯ï¼ è¦ä»¶ã§ãæåæ°ã表示ãã¦ã»ããããâæå以ä¸ã¯ããªãã¼ã·ã§ã³ã¨ã©ã¼ã«ããããã¨æåæ°ãèæ ®ããªãã¨ãªããªããã¨ãããã¾ãã ããããæåæ°ã¨ã¯ä½ã§ããããã ãã¨ãã°ãã¢ã«ãã¡ãããã®ãAãã¯1æåã¨æ°ãããããã§ãã æ¬¡ã®çµµæåã¯ã使åã«ãªãã§ããããï¼ ãã®çµµæåã¯iOSã§ããã°14.5ã®ç°å¢ã§ã¯ãUIä¸ã§ã¯ä¸ã®ããã«1æåã®ããã«è¡¨ç¤ºããã¾ãããããããã以åã®ãã¼ã¸ã§ã³ã§ã¯ãåãæååãã¼ã¿ã§ãðµð«ã®ããã«2æåã§è¡¨ç¤ºããã¾ãããªãããã®çµµæåã¯3ã¤ã®ã³ã¼ããã¤ã³ãU+1F635 U+200D U+1F4ABãããªãã¾ãããã®çµµæåã®ãæåæ°ãã¯ãã£ãã使åã¨ãã¦æ±ã£ããããã®ã§ããããã 以ä¸ã®ããã«ãã²ã¨ãã¨ã§æåæ°ã¨è¨ã£ã¦ããã¼ã¿ã¨è¦ãç®ã¨ç°å¢ã®3ã¤ã®ããã
ããåãã®ç©èªã§ãããåã¨åã®ç©èªã§ãããããããªãã æ°æ¥åãå人ãè¨ã£ãããä¹ ãã¶ãã« Rails ãæ¸ããããã©ãNode.js ã®è¯ãã«æµããªããã¨ã ãã®è¨èã«åæããªãããã仿¹ã§å°ã䏿è°ã«æãã ãã¤ããåã㯠Node.js ãã使ããªããªã£ãã®ããããã ã話ãã¦ãã Rails ãªã©ã®å¤ãã® Web æè¡ã«ã¨ããããªããªã£ãã®ããã¨ã ãã¡ããã使ããªãã¨ããããã§ã¯ãªãã寧ãä»ç¾å½¹ã§ååãªæ´»èºããã¦ããããã³ãã¨ã³ãã®äººéã¯ãçããçã主役ã§ããããã¯ã¨ã³ãã®ãµãã¨ãã¦åå¨ããããã³ãã¨ã³ãããçµé¨ãã¦ãã¦ããã æ¸ããã¨æãã°æ¸ãããã ããã®ä¸ã§ãæ¢ãã¦ããã³ãã¨ã³ãã¨ãã®æè¡ãé¸ãã§ããã ã ãã©ä»ã¯ã©ãã ãããããã³ãã¨ã³ãã¨ã³ã¸ãã¢ã¯ãã¯ããJavaScript ãæ±ãã½ããã¦ã§ã¢ã¨ã³ã¸ãã¢ãã¨ãªããä¸è¬çãªããã¯ã¨ã³ãã¯å¿è«ãNode.jsãä¸ç´å¸æ°ã¨ãã¦å
注æ ãã®è¨äºã¯ 2020 å¹´ 09 æ 24 æ¥ç¾å¨ãå¤ãæ å ±ã¨ãªãã¾ããã eslint-plugin-prettier ã®å©ç¨ã¯éæ¨å¥¨ã§ããã¨å ¬å¼ãã¢ãã¦ã³ã¹ãåºãã¦ãã¾ãã ãã®ãã¨ã«ã¤ãã¦ã¯ Prettier 㨠ESLint ã®çµã¿åããã®å ¬å¼æ¨å¥¨ãå¤ãã£ã ã«ã¦ã¾ã¨ãã¾ããã®ã§ããã¡ããã覧ãã ããã ã¾ã eslint-plugin-prettier ã¯å ¬å¼æ¨å¥¨ã§ã¯ãªããªãã¾ãããããã㯠Editor ãªã©ã®å¤é¨ç°å¢ã®é²åã«ãããã®ã§ãã®ãã©ã°ã¤ã³èªä½ã«ä½ãåé¡ãèµ·ããããã§ã¯ããã¾ããã ãã㦠eslint-plugin-prettier ãå©ç¨ããè¨å®æ¹æ³ãç¹ã« eslint-plugin-prettier 㨠eslint-config-prettier ãä½ã解決ãã¦ããããç¥ããªãã¨ãprettier-eslint ãä½ãã©ã解決ããããçè§£ã§ããªãã¯ããªã®ã§
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? ãã®ãªã¹ãã¯ä½ï¼ MDN web docs ããããããæ¸ç±ã®ç®æ¬¡ãã®ãã¨ãæ´çããªããããã®ã§ãããããã MDN web docs ã®è¨äºã¸ãªã³ã¯ãã¦ãã¾ãã ãªããããå¿ è¦ã«ãªã£ããã¨ããã¨ã人æå¸å ´ã§ããã³ãã¨ã³ãã¨ã³ã¸ãã¢ãå°ãªãããç¾ç¶ãã©ãã«ãããã¹ãæè²ä½å¶ãæ´ããã¨ããããèãå§ããã®ã§ããããããªãã¾ãã¯æ¥é ãä¸è©±ã«ãªã£ã¦ãã MDN web docs ãææã¨ãã¦æ±ããããªã¨æã£ãããã§ããæ £ãã¦ãã¦ãããåç §ããããã¢ã¬ã©ãã ã£ããªãï¼ãã軽æ¸ãããããããªã£ã¦ã MDN web docs ã¯å 容ãã®ãã®ã¯ããªã
V8ã®JSON.parseã«ã¤ã㦠æè¿(ã¡ãã£ã¨åã)話é¡ã®ãªãã¸ã§ã¯ããªãã©ã«ãããJSON.parseã®ã»ããæ©ãä»¶ã«ã¤ãã¦ã ãã®çç±ãå é¨å®è£ ã®è¦³ç¹ããæ¸ãã ã¾ã注æç¹ãæå¾ã«æ¸ããã 話é¡ã®ããã°ã¯ä»¥ä¸ãã https://v8.dev/blog/cost-of-javascript-2019 ãã¼ã¹ã«ã¤ã㦠V8ã¯javascriptã³ã¼ãããã¼ã¹ããã«ããã£ã¦ãLazy Parseãè¡ã£ã¦ããã Lazy Parse javascriptã¯ãã©ã¦ã¶ã¨ããç¹æ®ãªç°å¢ã§å®è¡ãããè¨èªã§ããããããã¼ã¹ã«ãå°ã 工夫ãå¿ è¦ã«ãªãã åºæ¬çã«V8ã¯ãã¹ã¦ã®ã½ã¼ã¹ã³ã¼ãããã¼ã¹ããªãã 䏿¦ã°ãã¼ãã«ã¹ã³ã¼ãã«ãããã®ã ããã¡ããã¨ãã¼ã¹ãã¦ããã以å¤ã¯PreParserã¨ãããã¼ãµã§é¢æ°ã ããããéããã function foo() { } function bar() { fu
JavaScriptã®ãããã°ã¯ãã¦ã§ãéçºã®å¿ é ã¹ãã«ã®ã²ã¨ã¤ã§ããããã°ã©ã ã®å®è¡ããããã°ãããã¨ã§ãç¾å¨ã®å¤æ°ã®å¤ããå¦çãã©ã®ããã«é²ãã§ããã®ãã確èªã§ãã¾ãããããã°ã«ãã£ã¦ããã°ã©ã ãæå³ããåä½ã«ãªã£ã¦ãããã®åæã«å½¹ç«ã¦ããã¾ãã æ¬è¨äºã§ã¯Chromeã»Edgeãã©ã¦ã¶ã¼ã®ãDeveloper Toolsãï¼ä»¥ä¸ããããããã¼ãã¼ã«ãããDevToolsããã»ãã¼ã«ãºãã¨ããç¥ç§°ãããã¾ãï¼ã使ç¨ãã¦JavaScriptããããã°ããéã®åºæ¬çãªä½¿ãæ¹ã解説ãã¾ãããä»ã¾ã§ãããããã¼ãã¼ã«ã使ã£ããã¨ã®ãªããã¨ããæ¹ã§ããã®è¨äºãèªãã°çè§£ã§ããããããã¥ã¼ããªã¢ã«å½¢å¼ã«ãªã£ã¦ãã¾ãã20åã»ã©ã§çè§£ã§ããããã¾ã¨ãã¦ããã®ã§ãé çªã«è©¦ããªããèªã¿é²ãã¦ãã ããã ãã®è¨äºã§å¦ã¹ãã㨠ãããããã¼ãã¼ã«ã®ä½¿ãæ¹ JavaScriptã®ãã¬ã¼ã¯ãã¤ã³ãã®ä½¿ãæ¹ å®è¡
[JavaScript]åæ Responsible JavaScript: Part I â A List Apart (English) åæèè Jeremy Wagner åæå ¬éæ¥ 2019-03-28 翻訳ä¾é ¼è 翻訳è meiq 翻訳ã¬ãã¥ã¢ã¼ doublemarket taka-h åèè ã¸ã®ç¿»è¨³å ±å 2465æ¥å ã¡ã¼ã«ã§å ±åæ¸ã¿ ç·¨é æ°å¤ããèªã¿åããããã«ãJavaScriptã¯ããã©ã¼ãã³ã¹ã大ããå·¦å³ããè¦ç´ ã§ãã ãã®å¾åãç¶ãã°ãWebãã¼ã¸ã®ãµã¤ãºã®ä¸éå¤ã¯è¿ããã¡ã«ã転é�ãããéã ãã§ãå°ãªãã¨ã400KBã«éããã§ãããã ä»ã®ããã¹ããã¼ã¹ã®ãªã½ã¼ã¹ã¨åæ§ãJavaScriptã¯ã»ã¼å¸¸ã«å§ç¸®ããã¦æä¾ããã¾ãããé ä¿¡æã«ãã¤ãæ£ããå®è·µããã¦ãããã¨ã¨ããã°ãããããããããã¾ããã ãªã½ã¼ã¹ã®è»¢éæéãæ¸ãããã¨èªä½ã¯ããã©ã¼ãã³ã¹å ¨ä½ããè¦ã¦é
追è¨: åæé¨å éçºç°å¢ã docker-compose ã§æ½è±¡ãããã¨ãæè¿ã®ãã¹ããã©ã¯ãã£ã¹ã ã¨ããã¦ããããããã³ãã¨ã³ããã³ã³ããã«çªã£è¾¼ãã¨ç¡è¦ã§ããªãIOããã«ããã¯ãçºçããã ã¨ãã«webpackã®ãã¡ã¤ã«ç£è¦ããã®ãã«ãã§çºçããé«é »åº¦ã®IOå¦çãæãããã«ãããã³ãã¨ã³ãã ãã¯ãã¹ãç°å¢ã«ç§»ããã»ãããããã¨ãã主張ã ããã«ã¤ã㦠speakerdeck.com èªåã®æè¦ Webéçºè ã®ä¸»è¦ãªéçºç°å¢ã§ãã Docker for Mac 㯠I/O ãã¨ã«ããé ã (3x~5x) data volume ã® driver ãã cache ã工夫ãã¦ãé ã npm install/webpack ã¯ åºæ¬çã« I/O ãã´ã£ã¼ ã¨ãã«å¤§è¦æ¨¡éçºæã® watch => build ãã¯ãªãã£ã«ã« webpack.conifg ã® entry ã§èªåãé¢ä¸ããé¨å以
ãªãåå¿è 㯠webpackãè§£ããªãã®ãï¼- Why canât you understand the webpack? - from å¥äºº äºé¢ www.slideshare.net ãã®è¨äºããºã£ã¦ããã©ãããããªã人ãããããããªããªããã¨ããç¹ã§åé¡ã ã¨æã£ã¦ãã¦ãwebpack ã®ç®çã®æ¬è³ªçãªé¨åããæ´çããå¿ è¦ãããã¨æãã¾ãã (ãã¨å人ã webpack ã«ææ¦ãã¦ããã®ã§å ¥éè³æãå ¼ãã¦ã) Webpack ã®æ¬è³ªçãªé¨åã¯æ¬¡ã®3ã¤ã§ãããã以å¤ã¯å ¨é¨ãã¾ãæ©è½ã ã¨æã£ã¦ããã§ãã ES Modules ã®ã¨ãã¥ã¬ã¼ã node_modules ã®ãªã³ã« æ¡å¼µåãã¨ã®å¤å½¢ Webpack ãæ¬å½ã«ããããã㨠ããããã³ã¼ããããã¨ãã¾ãã // src/a.js export default () => console.log('hello'); // src/in
çµæã¯ã©ããªã£ãã§ããããã èªåãä»ä½¿ã£ã¦ããGoogle Chromeã ã¨ãããªãã¾ããã çµæã¯{a: 10}ã¨ãããªãã¸ã§ã¯ãã§ããã¾ããããã¯å½ç¶ã§ããã3 + 5ã¨å ¥åããã°å®è¡ããã¦8ãè¿ã£ã¦ããã®ã§ãããã{a: 10}ã¨ãããªãã¸ã§ã¯ããªãã©ã«ãæ¸ãã°{a: 10}ã¨ãããªãã¸ã§ã¯ããä½ãããã®ã¯å½ç¶ã§ãã â¦â¦ã ããã§ãä¸é¨ã®äººã¯ããããµããããªããã¨æã£ã¦ããããããã¾ãããã¨ããã®ãããã®ä¾ã¯ç°å¢ã«ãã£ã¦ã¯éãçµæã«ãªãã®ã§ããå ·ä½çã«ã¯ãChrome以å¤2ã®ãã©ã¦ã¶ã®REPLï¼FirefoxãEdgeãªã©ï¼ã該å½ãã¾ãããã¨ãts-nodeã®REPLã該å½ãããããã§ãããããã®ç°å¢ã§ã¯ãçµæã¯{a: 10}ã§ã¯ãªã次ã®ããã«ãªãã¾ãã ãªãã¸ã§ã¯ããä½ã£ãã¯ããªã®ã«çµæã10ã¨ãæå³ä¸æã§ãããããããããããªç°¡åãªããã°ã©ã ã§çµæãå ¨ç¶éãã¨ããJavaSc
æç¤¾ã§èªåã React/Redux + TypeScript ãªã©ã®è¬ç¿ããã£ã¦ã¿ãçµæãTypeScript å ¥éç¨è³æãå¿ è¦ã ã¨æã£ã¦æ¸ãããã¤ã§ãã ãã®ããã¥ã¡ã³ãã®ã¿ã¼ã²ãã TypeScript ã§æ¸ãããããã¸ã§ã¯ãã«åå ãã人 TypeScript ãå°å ¥ããããã«ããã®äºåç¥èãå¿ è¦ãªäºº ãã®ããã¥ã¡ã³ãã®èªã¿æ¹ ES2015 for Beginners ES2015 for ES5 Programmers ES Modules éåæè¡¨ç¾: Promise 㨠async/await TypeScript ã¨ã³ã·ã¹ãã ç·¨ èªåã React/Redux ãªã©ã®è¬ç¿ã§ãããããã£ã¦ã¿ãçµæã ES2015 㨠TypeScript ãåæã«æããã¨ãåå¦è ã¯ä½ãã©ã®æ¦å¿µã«ç±æ¥ãããã®åºå¥ãåºæ¥ãã«æ··ä¹±ãã¾ãããªã®ã§ãES5 -> ES2015, ES2015 -> Ty
ããã«ã¡ããã¨ã³ã¸ãã¢ã®ãããã§ããç¾å¨ã¯ä¸»ã«ããã³ãã¨ã³ããæ å½ãã¦ãã¾ãã ä»åã¯ãSHOWROOMã®æ°è¦æ©è½éçºã«Hyperappã¨ããJavaScriptãã¬ã¼ã ã¯ã¼ã¯ãæ¡ç¨ããã®ã§ããã®ã話ããã¾ãã ã¯ããã« SHOWROOMã¯ãã¿ã¼ã²ããã®ãã©ãããã©ã¼ã ãPC / iOS / Androidã¨ãã¦ãã¾ããã iOS / Androidã§ã¯ã¢ããªå ã§WebViewã³ã³ãã¼ãã³ããå©ç¨ãWebãã¼ã¸ã表示ãã¦ããç»é¢ãã¾ã æ°å¤ãããã¾ãã æ¢åã®ãã¼ã¸ã¯ä»¥ä¸ã®JavaScriptãã¬ã¼ã ã¯ã¼ã¯ / ã©ã¤ãã©ãªã使ç¨ãã¦ãã¾ãã JQueryï¼https://jquery.com/ï¼ Underscore.jsï¼https://underscorejs.org/ï¼ Backbone.jsï¼http://backbonejs.org/ï¼ Marionette.jsï¼https://
ãã®è¨äºã¯ã2018å¹´6æ29æ¥ã«ãããã¤ã³ã¿ã¼ãããã§è¡ãããããããã®åå¼·ä¼ ããã³ãã¨ã³ããã¤ããã§çºè¡¨ããå 容ãæåèµ·ãããããã®ã®ãåç·¨ãã§ãã çºè¡¨ã¹ã©ã¤ãï¼SpeakerDeckï¼ åç·¨: ãã®è¨äº å¾ç·¨: ã±ãã¼ã éçºåå¿è ããæããããã©ã¦ãµãã±ãã¼ã ã®ã¤ããæ¹ â» [ãã£ã¬ã¯ã¿ã¼ãºã»ã«ããç]ã¨æ¸ãããã¹ã©ã¤ããããã®è¨äºãå ¬éããã«ããã追å ãããã®ã§ãã â» ãã®è¨äºã«ã¯å¤ãã®ç»åãè²¼ããã¦ãããããèªã¿è¾¼ã¿ã«æéããããå¯è½æ§ãããã¾ã ã±ãã¼ã éçºåå¿è ããæããããã©ã¦ãµãã±ãã¼ã ã®ã¤ããæ¹ ã¾ãã¯ãèªå·±ç´¹ä»ããããã¦ããã ãã¾ãã 2015å¹´æ«ã«SIerããããã³ãã¨ã³ãã¨ã³ã¸ãã¢ã«ã¸ã§ããã§ã³ã¸ãã¦ããããã¤ã³ã¿ã¼ãããã«å ¥ç¤¾ãã¾ããã ãã¾ã¯ããããã®ã¯ã©ã¦ãã®ãã¿æ©è½éçºããèªç¤¾ãµã¼ãã¹ã®ã¨ã´ãµãä¸»ãªæ¥åã¨ãã¦ãã¾ããã§ãã®ã§ãã¿ãªããããã¤ã¼ãããã
ä»ãèªåãã©ããã£ã¦CSSãæ¸ãã¦ããã®ãã«ã¤ãã¦ã¾ã¨ããã CSSãæ¸ãåã«ããã㨠æè«ã ããããã¶ã¤ã³ã®æå³ãæ£ç¢ºã«çè§£ããä¸ã§æ¸ãããCSSã¯ç ´ç¶»ããªããã¨æã£ã¦ããã ããããèªåã²ã¨ãã§ãµã¼ãã¹ãä½ãã¨ããããªããã¶ã¤ã³ã®æ±ºå®æ¨©ãæã¤äººã¨UIå®è£ è ãåãã§ããå ´åãé¤ãã¦ããã¶ã¤ã³ã®æå³ãæ£ç¢ºã«ä¼ããçè§£ãããã¨ã¯é£ããã åã1çªæéã使ãã®ããã®å·¥ç¨ã ã ä»ã®ä»äºã§ã¯ãã¶ã¤ãã¼ãSketchãã¡ã¤ã«ã使ããã¨ã³ã¸ãã¢ããããå ã«å®è£ ããã Sketchãã¡ã¤ã«ãéããã¢ã¼ããã¼ããã²ãããçºããã¶ã¤ã³ã®çç¾ããªããã確èªããããªããã®ãããªãã¶ã¤ã³ãªã®ããã質åãã¾ããã ããã§è¯ã質åã¨ææ¡ãããããã«ããã¨ã³ã¸ãã¢å´ã«æä½éã®ãã¶ã¤ã³ã«å¯¾ããç¥èãå¿ è¦ã ã¨æãã æè¿èªãã æ¬ã ã¨ããã¿ããªã§ã¯ããããã¶ã¤ã³æ¹è©âç®çéæã®ããã®ã³ã©ãã¬ã¼ã·ã§ã³&ã³ãã¥ãã±ã¼ã·ã§ã³æ¹å
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}