Web©Ê¯à¹ê¾Ô/¹ÏÆFµ{§Ç³]pÂO®Ñ
¤º®e¤j¿û
¦bWebÅܱo¶V¨Ó¶V½ÆÂøªº®É¥N¡A¸Ñ¨MWeb©Ê¯à°ÝÃD¥¿·í®É¡C¥»®Ñ¦®¦bÀ°§UŪªÌ³Ð«Ø§ó¥[§Ö³tªººô¯¸¡A¤º®e²[»\Web©Ê¯àªº°ò¦ª¾ÃÑ¡B©Ê¯àµû¦ô¤u¨ã¡BCSSÀu¤Æ¡B¹Ï¹³Àu¤Æ¡B¦rÅéÀu¤Æ¡BJavaScript¬ÛÃöªº¤º®e¡BBrotliÀ£ÁYºtºâªk¡B¸ê·½´£¥Ü¡B°t¸m½w¦sµ¦²¤¡BHTTP/2¡Aµ¥µ¥¡C
¥»®Ñ¾A¦X¼ô±xHTML¡BCSS©MJavaScriptªº«eºÝ¶}µo¤Hû¾\Ū¡C
§@ªÌ¤¶²Ð
(¬ü)³Ç¨½¦Ì¡P¥Ë®æ¯Ç|³d½s:©¨·sªY|ĶªÌ:±i«T¹F
¥Ø¿ý
²Ä1³¹ ²z¸ÑWeb©Ê¯à
1.1 ²z¸ÑWeb©Ê¯à
1.1.1 Web©Ê¯à©M¥Î¤áÅéÅç
1.1.2 WebÂsÄý¾¹¦p¦ó»PWeb¦øªA¾¹³q«H
1.1.3 Web¶±¦p¦ó¸ü¤J
1.2 ¤W¤â·Ç³Æ
1.2.1 ¦w¸ËNode.js©MGit
1.2.2 ¤U¸ü¨Ã¹B¦æ«È¤áªººô¯¸
1.2.3 ¼ÒÀÀºô¸ô³s±µ
1.3 Àˬd«È¤áºô¯¸
1.4 Àu¤Æ«È¤áºô¯¸
1.4.1 ÁY¤p¸ê·½
1.4.2 ¨Ï¥Î¦øªA¾¹À£ÁY
1.4.3 À£ÁY¹Ï¹³
1.5 ³Ì²×©Ê¯à´ú¸Õ
1.6 ¤pµ²
²Ä2³¹ ¨Ï¥Îµû¦ô¤u¨ã
2.1 ¨Ï¥ÎGoogle PageSpeed Insights¶i¦æµû¦ô
2.1.1 µû¦ôºô¯¸©Ê¯à
2.1.2 ¨Ï¥ÎGoogle Analytics¶i¦æ§å¶q³ø§i
2.2 ¨Ï¥Î°ò©óÂsÄý¾¹ªºµû¦ô¤u¨ã
2.3 Àˬdºô¸ô½Ð¨D
2.3.1 ¬d¬Ýp®É«H®§
2.3.2 ¬d¬ÝHTTP½Ð¨D©MÅTÀ³ÀY
2.4 ´è¬V©Ê¯àÀˬd¤u¨ã
2.4.1 ²z¸ÑÂsÄý¾¹¦p¦ó´è¬Vºô¶
2.4.2 ¨Ï¥ÎGoogle ChromeªºPerformance±ªO
2.4.3 ÃѧO°ÝÃD¨Æ¥ó¡Gjank¬O¤¸¤¿
2.4.4 ¥ÎJavaScript¦b®É¶¡½u¤¤¼Ð°OÂI
2.4.5 ¨ä¥LÂsÄý¾¹¤¤ªº´è¬V¤ÀªR¾¹
2.5 ¦bChrome¤¤¹ïJavaScript¶i¦æ°ò·Ç´ú¸Õ
2.6 ¼ÒÀÀ©MºÊ±±³]³Æ
2.6.1 ¦b®à±WebÂsÄý¾¹¤¤¼ÒÀÀ³]³Æ
2.6.2 ¦bAndroid³]³Æ¤W»·µ{½Õ¸Õºô¯¸
2.6.3 ¦biOS³]³Æ¤W»·µ{½Õ¸Õºô¯¸
2.7 ³Ð«Ø¦Û©w¸qºô¸ô¸`¬y°t¸m
2.8 ¤pµ²
²Ä3³¹ Àu¤ÆCSS
3.1 ª½¤J¥DÃD¡A«O«ùDRY
3.1.1 ²¼gCSS
3.1.2 ¨Ï¥ÎCSS²L¿ï¾Ü¾¹
3.1.3 ¬D¿ï²L¿ï¾Ü¾¹
3.1.4 LESS©MSASS¹w½s;¹¡G²³æ´N¬O¬ü
3.1.5 ¤£n«½Æ¦Û¤v
3.1.6 ¹ê²{DRY
3.1.7 ¨Ï¥Îcsscss¬d§ä¤¾§E
3.1.8 ¤À³ÎCSS
3.1.9 ¦Û©w¸q®Ø¬[¤U¸ü
3.2 ²¾°ÊÀu¥ý§Y¥Î¤áÀu¥ý
3.2.1 ²¾°ÊÀu¥ý»P®à±Àu¥ý
3.2.2 Mobilegeddonºtºâªk
3.2.3 ¨Ï¥ÎGoogleªº²¾°Ê¤Í¦n«ü«n
3.2.4 ÅçÃÒºô¯¸ªº²¾°Ê¤Í¦n©Ê
3.3 ¹ïCSS¶i¦æ©Ê¯à½Õ¾ã
3.3.1 Á×§K¨Ï¥Î@importÁn©ú
3.3.2 @import¦ê¦C½Ð¨D
3.3.3 ¨Ã¦æ½Ð¨D
3.3.4 ¦b¤¤©ñ¸mCSS
3.3.5 ¨¾¤îµL¼Ë¦¡¤º®e°{Ã{
3.3.6 ´£°ª´è¬V³t«×
3.3.7 ¨Ï¥Î§ó§Öªº¿ï¾Ü¾¹
3.3.8 ºc«Ø©M¹B¦æ°ò·Ç´ú¸Õ
3.3.9 Àˬd°ò·Ç´ú¸Õµ²ªG
3.3.10 ºÉ¥i¯à¨Ï¥Îflexbox
3.3.11 ¹ï¤ñ²°¤l¼Ò«¬©Mflexbox¼Ë¦¡
3.3.12 Àˬd°ò·Ç´ú¸Õµ²ªG
3.4 ¨Ï¥ÎCSS¹L´ç
3.4.1 ¨Ï¥ÎCSS¹L´ç
3.4.2 Æ[¹îCSS¹L´ç©Ê¯à
3.4.3 ¨Ï¥Îwill-changeÄÝ©ÊÀu¤Æ¹L´ç
3.5 ¤pµ²
²Ä4³¹ ²z¸ÑÃöÁäCSS
4.1 ÃöÁäCSS¤Î¨ä¸Ñ¨Mªº°ÝÃD
4.1.1 ²z¸ÑºPÅ|
4.1.2 ²z¸Ñ´è¬Vªý¶ë
4.2 ÃöÁäCSSªºì²z
4.2.1 ¸ü¤Jº«Ì¼Ë¦¡
4.2.2 ¸ü¤Jº«Ì¥H¥~¤º®eªº¼Ë¦¡
4.3 ¹ê²{ÃöÁäCSS
4.3.1 °t¸m¨Ã¹B¦æµæÃкô¯¸
4.3.2 ÃѧO©M¤ÀÂ÷º«ÌCSS
4.3.3 ¸ü¤Jº«Ì¥H¥~¤º®eªºCSS
4.4 Åv¿Å¦¬¯q
4.5 ´£¤É¥iºûÅ@©Ê
4.6 ¦h¶ºô¯¸ªºª`·N¨Æ¶µ
4.7 ¤pµ²
²Ä5³¹ ÅTÀ³¦¡¹Ï¹³
5.1 ¬°¤°»òn¦Ò¼{¹Ï¹³¶Ç¿é
5.2 ²z¸Ñ¹Ï¹³Ãþ«¬¤Î¨äÀ³¥Î
5.2.1 ¨Ï¥Î¥ú¬]¹Ï¹³
5.2.2 ¨Ï¥ÎSVG¹Ï¹³
5.2.3 ¿ï¾Ü¹Ï¹³®æ¦¡
5.3 CSS¤¤ªº¹Ï¹³¶Ç¿é
5.3.1 ¨Ï¥Î´CÅé¬d¸ß¦bCSS¤¤¾A°tÅã¥Ü¾¹
5.3.2 ³q¹L´CÅé¬d¸ß¾A°t°ªDPIÅã¥Ü¾¹
5.3.3 ¦bCSS¤¤¨Ï¥ÎSVGI´º¹Ï¹³
5.4 ¦bHTML¤¤¶Ç¿é¹Ï¹³
5.4.1 ¹Ï¹³ªº¥þ§½max-width³W«h
5.4.2 ¨Ï¥Îsrcset
5.4.3 ¨Ï¥Î¤¸¯À
5.4.4 ¨Ï¥ÎPicturefill´£¨Ñpolyfill¤ä«ù
5.4.5 ¦bHTML¤¤¨Ï¥ÎSVG
5.5 ¤pµ²
²Ä6³¹ ¹Ï¹³ªº¶i¤@¨B³B²z
6.1 ¨Ï¥Î¹Ï¹³³·ºÑ¹Ï
6.1.1 ·Ç³Æ¤u§@
6.1.2 ¥Í¦¨³·ºÑ¹Ï
6.1.3 ¨Ï¥Î¥Í¦¨ªº³·ºÑ¹Ï
6.1.4 ¨Ï¥Î³·ºÑ¹Ï®Éªº¦Ò¶q
6.1.5 ¨Ï¥ÎGrumpicon¦^°h¨ì¥ú¬]¹Ï¹³³·ºÑ¹Ï
6.2 ÁY¤p¹Ï¹³
6.2.1 ¨Ï¥ÎimageminÀu¤Æ¥ú¬]¹Ï¹³
6.2.2 Àu¤ÆSVG¹Ï¹³
6.3 ¨Ï¥ÎWebP½s½X¹Ï¹³
6.3.1 ¨Ï¥Îimagemin½s½X¦³·lWebP¹Ï¹³
6.3.2 ¨Ï¥Îimagemin½s½XµL·lWebP¹Ï¹³
6.3.3 ¤ä«ù¤£¤ä«ùWebPªºÂsÄý¾¹
6.4 Ãi¸ü¤J¹Ï¹³
6.4.1 °t¸m¼Ð°O
6.4.2 ½s¼gÃi¸ü¤Jµ{§Ç
6.4.3 ¦Ò¼{¤£¤ä«ùJavaScriptªº¥Î¤á
6.5 ¤pµ²
²Ä7³¹ §ó§Öªº¦rÅé
7.1 ©ú´¼¦a¨Ï¥Î¦rÅé
7.1.1 ¿ï¾Ü¦rÅé©M¦rÅéÅÜÅé
7.1.2 ºc«Ø§A¦Û¤vªº@font-face¯ÅÁp
7.2 À£ÁYEOT©MTTF¦rÅ鮿¦¡
7.3 ¨ú¦rÅé¤l¶°
7.3.1 ¤â°Ê¥Í¦¨¦rÅé¤l¶°
7.3.2 ¨Ï¥Îunicode-rangeÄݩʶǿé¦rÅé¤l¶°
7.4 Àu¤Æ¦rÅé¸ü¤J
7.4.1 ²z¸Ñ¦rÅé¸ü¤Jªº°ÝÃD
7.4.2 ¨Ï¥ÎCSS font-displayÄÝ©Ê
7.4.3 ¨Ï¥Î¦rÅé¸ü¤JAPI
7.4.4 ¨Ï¥ÎFont Face Observer§@¬°¦^°h
7.5 ¤pµ²
²Ä8³¹ «O«ùJavaScriptªºÂ²¼ä»P§Ö³t
8.1 ¼vÅT¸}¥»¸ü¤J¦æ¬°
8.1.1 ¦X²z©ñ¸mscript¤¸¯À
8.1.2 ¨Ï¥Î«D¦P¨B¸}¥»¸ü¤J
8.1.3 ¨Ï¥Îasync
8.1.4 ¦b¦h¸}¥»¸ü¤J¤¤¥i¾a¦a¨Ï¥Îasync
8.2 ¨Ï¥Î§ó²¼äªºÝ®ejQueryªº´À¥N¤è®×
8.2.1 ¤ñ¸û´À¥N¤è®×
8.2.2 ±´¯ÁÄv«~
8.2.3 ¤ñ¸û¤j¤p
8.2.4 ¤ñ¸û©Ê¯à
8.2.5 ¹ê²{´À¥N¤è®×
8.2.6 ¨Ï¥ÎZepto
8.2.7 ²z¸Ñ¨Ï¥ÎShoestring©ÎSprintªºª`·N¨Æ¶µ
8.3 ²æÂ÷jQuery½s½X
8.3.1 ÀˬdDOM¬O§_·Ç³Æ´Nºü
8.3.2 ¿ï¾Ü¤¸¯À¨Ã¸j©w¨Æ¥ó
8.3.3 ¨Ï¥ÎclassList¾Þ§@¤¸¯À¤WªºÃþ
8.3.4 Ū¨ú©Mק露¯ÀÄݩʻP¤º®e
8.3.5 ¨Ï¥ÎFetch APIµo°_AJAX½Ð¨D
8.3.6 ¨Ï¥ÎFetch API
8.3.7 Fetch API ªºpolyfill
8.4 ¨Ï¥ÎrequestAnimationFrame³]¸m°Êµe
8.4.1 requestAnimationFrame¤@Äý
8.4.2 p®É¾¹¨ç¼ÆÅX°Êªº°Êµe©MrequestAnimationFrame
8.4.3 ¤ñ¸û©Ê¯à
8.4.4 ¹ê²{requestAnimationFrame
8.4.5 ¤F¸ÑVelocity.js
8.5 ¤pµ²
²Ä9³¹ ¨Ï¥ÎService Worker´£¤É©Ê¯à
9.1 ¦ó¬°Service Worker
9.2 ½s¼g²Ä¤@ÓService Worker
9.2.1 ¦w¸ËService Worker
9.2.2 µù¥UService Worker
9.2.3 ÄdºI¨Ã½w¦sºô¸ô½Ð¨D
9.2.4 ¿Å¶q©Ê¯à¦¬¯q
9.2.5 Àu¤Æºô¸ô½Ð¨DªºÄdºI¦æ¬°
9.3 §ó·sService Worker
9.3.1 ¤å¥óª©¥»±±¨î
9.3.2 ²M²z½w¦s
9.4 ¤pµ²
²Ä10³¹ ·L½Õ¸ê·½¶Ç¿é
10.1 À£ÁY¸ê·½
10.1.1 ¿í´`À£ÁY«ü¾Éì«h
10.1.2 ¨Ï¥ÎBrotliÀ£ÁY
10.2 ½w¦s¸ê·½
10.2.1 ²z¸Ñ½w¦s
10.2.2 ¨î©w³Ì¨Î½w¦sµ¦²¤
10.2.3 ¨Ï½w¦s¸ê·½¥¢®Ä
10.3 ¨Ï¥ÎCDN¸ê·½
10.3.1 ¨Ï¥ÎCDN¦«ºÞ¸ê·½
10.3.2 CDNµo¥Í¬G»Ù«ç»ò¿ì
10.3.3 ¨Ï¥Î¤l¸ê·½§¹¾ã©ÊÅçÃÒCDN¸ê·½
10.4 ¨Ï¥Î¸ê·½´£¥Ü
10.4.1 ¨Ï¥Îpreconnect¸ê·½´£¥Ü
10.4.2 ¨Ï¥Îprefetch©Mpreload¸ê·½´£¥Ü
10.5 ¤pµ²
²Ä11³¹ HTTP/2¥¼¨Ó®i±æ
11.1 ²z¸ÑHTTP/2ªº¥²n©Ê
11.1.1 ²z¸ÑHTTP/1¤¤ªº°ÝÃD
11.1.2 ³q¹LHTTP/2¸Ñ¨M±`¨£ªºHTTP/1°ÝÃD
11.1.3 ¦bNode¤¤½s¼g¤@Ó²³æªºHTTP/2¦øªA¾¹
11.1.4 Æ[¹î¦¬¯q
11.2 ±´¯ÁHTTP/2¹ïÀ³ªºÀu¤Æ§Þ³NÅܤÆ
11.2.1 ¸ê·½²É«×»P½w¦s®Ä²v
11.2.2 ÃѧOHTTP/2ªº©Ê¯à¤Ï¼Ò¦¡
11.3 ¨Ï¥Î¦øªA¾¹±À°e·m¥ýµo°e¸ê·½
11.3.1 ²z¸Ñ¦øªA¾¹±À°e¤Î¨ä¤u§@ì²z
11.3.2 ¨Ï¥Î¦øªA¾¹±À°e
11.3.3 ´ú¶q¦øªA¾¹±À°e©Ê¯à
11.4 ¦P®ÉÀu¤ÆHTTP/1©MHTTP/2
11.4.1 HTTP/2¦øªA¾¹¦p¦ó³B²z¤£¤ä«ùHTTP/2ªºÂsÄ