å é±ã®æ¥ææ¥ã«DevFest Tokyo 2016ã«è¡ã£ã¦ããï¼èãããã»ãã·ã§ã³ãå¤ãã¦çµãè¾¼ãã®ã大å¤ã ã£ãï¼TensorFlowã§ã®æ©æ¢°å¦ç¿ã®ã»ãã·ã§ã³ãæ°ã«ãªã£ã¦ããããã©ï¼ä»åã¯Webæè¡ç³»ä¸å¿ã«ã¾ãã£ã¦ã¿ãï¼èããã»ãã·ã§ã³ã®ã¡ã¢ãææ³ãã¾ã¨ãã¦ããï¼ï¼ç¢ºå®ã§æ£ç¢ºãªæ å ±ã¯ãªã³ã¯å ã®ã¹ã©ã¤ããèªãã®ãããã§ãï¼ï¼
Modern CSS: architecture, future specs and build flow
- ã¹ã©ã¤ã
- CSSãã½ããã¦ã§ã¢ã®ä¸é¨ï¼é©å½ã«æ¸ãã¦ãã¦ã¯ãããªãï¼
- CSSã¯æ¸ãã®ã¯ç°¡åã ãã©å ¨é¨ã°ãã¼ãã«ã¹ã³ã¼ããªã®ã§è¡çªãã¦å£ããï¼
- æ½è±¡åã»æ§é åã§ããªãã®ãåé¡ã§ï¼è²ã ãªè§£æ±ºçãæå±ããã¦ããï¼... OOCSS (Object Oriented CSS)ã¨ãBEM (Block, Element, Modifier) ã¨ã
- CSSã®ææ°ä»æ§ã§ï¼ã§ããããã«ãªããã¨
- flexbox:
display: flex
ãä»ãã¦ããè¦ç´ ãFlexã³ã³ããã§ï¼ãã®åè¦ç´ ãã¡ãFlexã¢ã¤ãã ï¼Flexã³ã³ããã¨Flexã¢ã¤ãã ãæã¤ããããã£ãæèãã¦ï¼ããããä½ãå¶å¾¡ããã®ããç解ãã¦ããï¼ - CSS Custom Property (Cascading Variables): ãã¼ãã³ã¼ãã£ã³ã°ã極åé¿ãããã¨ãã§ããï¼æ£æ¹å½¢ã®
.icon
ãå®ç¾©ãããå ´åã¯ï¼ä»¥ä¸ã®ããã«æ¸ããï¼
- flexbox:
:root { --squareSize: "48px"; /* å¤æ°ã¨ãã¦æ¯ãèã */ } .icon { width : var(--squareSize, "30px"); /* 第äºå¼æ°ã¯ããã©ã«ãå¤ */ height: var(--squareSize, "30px"); }
Firebaseã®ã¹ã¹ã¡ï¼ä»®ï¼/ ã¯ããã¦ã®Firebase Analytics
- ã¹ã©ã¤ã / ã¹ã©ã¤ã
- åè ã¯ãFirebaseãªã¢ã«ã¿ã¤ã ãã¼ã¿ãã¼ã¹ãã®è©±ã§ï¼å¾è ã¯ãFirebase Analyticsãã®è©±ï¼
- ãã¼ã¿å½¢å¼ãJSONã§æã¤NoSQLãã¼ã¿ãã¼ã¹ï¼ãã¼ã¿ã¯ãã¹ãããªãã§æã£ãã»ããè¯ãï¼
- è¤æ°ç«¯æ«éã§ï¼ãªã¢ã«ã¿ã¤ã ã§ãã¼ã¿ãã¼ã¹ã®å 容ãSyncãããï¼
- Realtime Database SDK ãå
¥ãã¦ããã ãã§æºåå®äºï¼CLIãã¼ã«ã¯
npm
ä¸çºã§å ¥ãï¼REST APIãããï¼ - ãã¢ãè¦ãã¨ããï¼ã¦ã§ãã¢ããªã®å ´åã¯scriptã¿ã°ã«configæ¸ãã¦ï¼initAppããã ãã§åãã¦ããè¨æ¶ãããï¼ç°¡åããï¼
- Firebase Analyticsã¯åºæ¬çãªè§£æãã¼ã«ãå©ç¨ããã ããªãç¡æï¼åéãããã¼ã¿ãBigQueryã¨é£æºãã¦è§£æããã¨ææï¼
- ãã¾ã®ã¨ãããªã¢ã«ã¿ã¤ã ãµããªã¼ããªããããªã®ã§ï¼ã¢ããªã®ã¢ã¯ã»ã¹è§£æã¯Firebase Analytics 㨠Google Analytics ãåããã¦ä½¿ãã®ãããï¼
Web Components 2016 & Polymer v2
- ã¹ã©ã¤ã
- HTML, CSS, JavaScriptãåå©ç¨ãããã¨ã®é£ããã解決ããæè¡
- æåã®CSSã®ã¨ãã¨åæ§ï¼HTMLï¼CSSåå空éã«ã¹ã³ã¼ãããªããã¨ãåé¡ï¼
- æ¢åã®Webæè¡ãçµã¿åããã¦åå©ç¨å¯è½ãªã³ã³ãã¼ãã³ããä½ãï¼Component Driven Developmentï¼
- âWeb Componentâ: Custom Elements, Shadow DOM, HTML Imports,
Templates
- Shadow DOM v0 -> v1, Custom Element v1
- Shadow Rootã¯1ã¤ã¾ã§
- Shadow Hostã«ãªããè¦ç´ ã®å¶é追å
- Shadow Rootã¯ï¼v0ã§ã¯å¸¸ã«openedã§ãã£ããï¼v1ãã㯠opened / closed ãé¸æã§ããï¼ï¼çææã«å¿
é æå®ï¼ï¼closed ãé¸æããå ´åã¯ï¼Shadow Rootãçæããæç¹ã§è¿ãããåç
§ã失ã£ãã以éã¯åå¾åç
§ã§ããªãï¼â ãµã¼ããã¼ãã£ã®Componentãªã©ããShadow Rootãå®ããï¼ãã®æ¹æ³ã§å®è£
ããã¦ããHTMLè¦ç´ ã®ä¾ã
<video>
è¦ç´ ï¼ - ã³ã¼ãä¾ãå«ãã¦è§£èª¬ãããè³æ: http://hayato.io/2016/shadowdomv1/
- Insertion Pointsã®å¤æ´ï¼ããã¾ã§
<content>
ã¨è¨è¿°ãã¦ãããã®ã<slot>
ã«ç½®ãæããï¼ã¾ãï¼æ¿å ¥æã¯slotè¦ç´ ã®name
å±æ§ã®å®å ¨ä¸è´ã§å¤æããï¼ - ã«ã¹ã¿ã ã¨ã¬ã¡ã³ããä½ãã¨ãã®æ°ãã宣è¨æ¹æ³ï¼
HTMLElement
ãextendsããããã¡ã§ä½ããããã«ãªã£ãï¼ããã¯æ試ãããã¨ããã£ã¦ï¼ãã®ã¨ããï¼å¾æ¥æ³ã®document.registerElementãããã¤ããèªç¶ãªæè¦ã§è¯ãã¨æããï¼ãã®ã¨ãã®è¨äºï¼ãã®ã¨ãã®ã³ã¼ã
- Polymer v2 Preview!
- Shadow DOMã¨Custom Elementsããã«ãµãã¼ã!!
- ã«ã¹ã¿ã ã¨ã¬ã¡ã³ããä½ãã¨ãã®æ°ãã宣è¨æ¹æ³ï¼
Polymer.Element
ãextendsããããã¡ã§ã¤ãããï¼ - æ£å¼ã«v2ãåºããæ¬æ ¼çã«è§¦ãããï¼
å°è¦æ¨¡ã§ãGKEï¼ / ã¤ãããã®GAE
- ã¹ã©ã¤ã
- æè¿ Google Apps Engine ã®æ©è½è¿½å ãæ®ã©ç¡ããã©å¤§ä¸å¤«ãªã®ãæ°ã«ãªã£ã¦ãããï¼å¤§ä¸å¤«ã ããã¨ãããã¨ãªã®ã§å®å¿ããï¼
- GAE Flexible Environment: ã³ã³ããã¨ãã¦åããã°Rubyããããï¼
- Cloud Endpoints v2: Google API Keyãå©ç¨ããèªè¨¼ä»ãAPIãæä¾å¯è½ã«ãªã£ãï¼
楽ããã¤ãã³ãããããã¨ããããã¾ãã!!