ãã£ãã·ã¥ç®¡çæè¡ãçšããCSSã³ã³ããã¯ãšãªã®ããã©ãŒãã³ã¹æé©åãæ·±ãæãäžããŸããå¹ççãªãã£ãã·ã¥å©çšãç¡å¹åãWebã¢ããªã±ãŒã·ã§ã³ã®å¿çæ§ãžã®åœ±é¿ã«é¢ããæŠç¥ãæ¢ããŸãã
CSSã³ã³ããã¯ãšãªãã£ãã·ã¥ç®¡çãšã³ãžã³ïŒã¯ãšãªãã£ãã·ã¥ã®æé©å
ã³ã³ããã¯ãšãªã¯ããã¥ãŒããŒãã§ã¯ãªããã³ã³ããèŠçŽ ã®ãµã€ãºã«åºã¥ããŠã³ã³ããŒãã³ããã¹ã¿ã€ã«ãé©å¿ã§ããããã«ããããšã§ãã¬ã¹ãã³ã·ãWebãã¶ã€ã³ã«é©åœããããããŠããŸããããã«ãããåçã§åå©çšå¯èœãªUIèŠçŽ ãäœæããäžã§æ¯é¡ã®ãªãæè»æ§ãåŸãããŸããããããä»ã®åŒ·åãªãã¯ãããžãŒãšåæ§ã«ãå¹ççãªå®è£ ãšæé©åãäžå¯æ¬ ã§ããèŠéããããã¡ãªéèŠãªåŽé¢ã®1ã€ããã³ã³ããã¯ãšãªè©äŸ¡ã®ãã£ãã·ã¥ç®¡çã§ãããã®èšäºã§ã¯ãCSSã³ã³ããã¯ãšãªãã£ãã·ã¥ç®¡çãšã³ãžã³ã®éèŠæ§ãæãäžããæé©ãªããã©ãŒãã³ã¹ã確ä¿ããããã®ã¯ãšãªãã£ãã·ã¥æé©åæŠç¥ãæ¢ããŸãã
ã³ã³ããã¯ãšãªãšãã®ããã©ãŒãã³ã¹ãžã®åœ±é¿ãçè§£ãã
åŸæ¥ã®ã¡ãã£ã¢ã¯ãšãªã¯ããã¥ãŒããŒãã®å¯žæ³ã«äŸåããŠç°ãªãã¹ã¿ã€ã«ãé©çšããŸãããã®ã¢ãããŒãã¯ãç¹ã«è€éãªã¬ã€ã¢ãŠãããç°ãªãã³ã³ããã¹ãå ã§é©å¿ããå¿ èŠãããåå©çšå¯èœãªã³ã³ããŒãã³ããæ±ãå Žåã«ãå¶éãããå¯èœæ§ããããŸããã³ã³ããã¯ãšãªã¯ãã³ã³ããŒãã³ãã芪ã³ã³ããã®ãµã€ãºãšã¹ã¿ã€ã«ã«å¿çã§ããããã«ããããšã§ãã®å¶éã«å¯ŸåŠããçã«ã¢ãžã¥ãŒã«åŒã§ã³ã³ããã¹ããæèãããã¶ã€ã³ãäœæããŸãã
è£œåæ å ±ã衚瀺ããã«ãŒãã³ã³ããŒãã³ããèããŠã¿ãŸããããã¡ãã£ã¢ã¯ãšãªã䜿çšãããšãç»é¢ãµã€ãºã«å¿ããŠã«ãŒãã«ç°ãªãã¹ã¿ã€ã«ãèšå®ããããšããããŸããã³ã³ããã¯ãšãªã䜿çšãããšãã«ãŒãã¯é 眮ãããŠããã³ã³ããïŒãµã€ãããŒãã¡ã€ã³ã³ã³ãã³ããšãªã¢ãããã«ã¯ããå°ããªãŠã£ãžã§ãããšãªã¢ïŒã®å¹ ã«åºã¥ããŠã¬ã€ã¢ãŠããé©å¿ãããããšãã§ããŸããããã«ãããåé·ãªã¡ãã£ã¢ã¯ãšãªããžãã¯ãäžèŠã«ãªããã³ã³ããŒãã³ãã®åå©çšæ§ãã¯ããã«é«ãŸããŸãã
ãããããã®è¿œå ãããæè»æ§ã«ã¯ãæœåšçãªããã©ãŒãã³ã¹ã³ã¹ãã䌎ããŸããã³ã³ããã®ãµã€ãºã倿Žããããã³ã«ãé¢é£ããã³ã³ããã¯ãšãªãåè©äŸ¡ããå¿ èŠããããŸãããããã®è©äŸ¡ãèšç®ã³ã¹ããé«ãããé »ç¹ã«å®è¡ãããå Žåãç¹ã«è€éãªã¬ã€ã¢ãŠãããªãœãŒã¹ãéãããããã€ã¹ã§ã¯ãããã©ãŒãã³ã¹ã®ããã«ããã¯ã«ã€ãªããå¯èœæ§ããããŸãã
äŸãã°ãå©çšå¯èœãªã¹ããŒã¹ã«åºã¥ããŠã¬ã€ã¢ãŠããšã³ã³ãã³ããé©å¿ãããè€æ°ã®ã«ãŒãã³ã³ããŒãã³ããåãããã¥ãŒã¹Webãµã€ããæ³åããŠã¿ãŠãã ãããé©åãªãã£ãã·ã¥ç®¡çããªããã°ããªãµã€ãºãã¬ã€ã¢ãŠãã®å€æŽã®ãã³ã«ã³ã³ããã¯ãšãªè©äŸ¡ã®ã«ã¹ã±ãŒããããªã¬ãŒãããé¡èãªé å»¶ããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã®äœäžã«ã€ãªããå¯èœæ§ããããŸãã
CSSã³ã³ããã¯ãšãªãã£ãã·ã¥ç®¡çãšã³ãžã³ã®åœ¹å²
CSSã³ã³ããã¯ãšãªãã£ãã·ã¥ç®¡çãšã³ãžã³ã¯ãã³ã³ããã¯ãšãªè©äŸ¡ã®çµæãä¿åããããã®äžå€®ãªããžããªãšããŠæ©èœããŸããã³ã³ããã®ãµã€ãºã倿Žããããã³ã«ã¯ãšãªãåè©äŸ¡ãã代ããã«ããšã³ãžã³ã¯çµæããã§ã«ãã£ãã·ã¥ãããŠãããã©ããã確èªããŸãããã£ãã·ã¥ãããçµæãèŠã€ããããŸã æå¹ã§ããå Žåã¯ããããçŽæ¥äœ¿çšãããå€§å¹ ãªåŠçæéãç¯çŽããŸãã
ãã£ãã·ã¥ç®¡çãšã³ãžã³ã®ã³ã¢æ©èœã¯æ¬¡ã®ãšããã§ãïŒ
- ãã£ãã·ã¥ïŒã³ã³ããã¯ãšãªè©äŸ¡ã®çµæãä¿åããããããã³ã³ããèŠçŽ ãšè©äŸ¡ãããŠããç¹å®ã®ã¯ãšãªã«é¢é£ä»ããŸãã
- ã«ãã¯ã¢ããïŒã³ã³ããèŠçŽ ãšã¯ãšãªã«åºã¥ããŠããã£ãã·ã¥ãããçµæãå¹ççã«ååŸããŸãã
- ç¡å¹åïŒãã£ãã·ã¥ãããçµæããã¯ãæå¹ã§ãªããåè©äŸ¡ãå¿ èŠãªå ŽåïŒäŸïŒã³ã³ããã®ãµã€ãºã倿Žãããããåºç€ãšãªãCSSã倿Žããããããå ŽåïŒã倿ããŸãã
- ãšãã¯ã·ã§ã³ïŒéå°ãªã¡ã¢ãªäœ¿çšãé²ãããã«ãå€ããªã£ãããŸãã¯æªäœ¿çšã®ãã£ãã·ã¥ãšã³ããªãåé€ããŸãã
å ç¢ãªãã£ãã·ã¥ç®¡çãšã³ãžã³ãå®è£ ããããšã§ãéçºè ã¯ã³ã³ããã¯ãšãªè©äŸ¡ã«é¢é£ãããªãŒããŒããããå€§å¹ ã«åæžã§ããããã¹ã ãŒãºãªã¢ãã¡ãŒã·ã§ã³ãããéãããŒãžèªã¿èŸŒã¿æéãããå¿çæ§ã®é«ããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ãå®çŸããŸãã
ã¯ãšãªãã£ãã·ã¥ãæé©åããããã®æŠç¥
ã¯ãšãªãã£ãã·ã¥ã®æé©åã¯ãã³ã³ããã¯ãšãªã®ããã©ãŒãã³ã¹äžã®å©ç¹ãæå€§åããããã«äžå¯æ¬ ã§ãã以äžã«èæ ®ãã¹ãããã€ãã®æŠç¥ã瀺ããŸãïŒ
1. ãã£ãã·ã¥ããŒã®èšèš
ãã£ãã·ã¥ããŒã¯ããã£ãã·ã¥ãããåçµæãäžæã«èå¥ããããã«äœ¿çšãããŸããé©åã«èšèšããããã£ãã·ã¥ããŒã¯ã次ã®ããã§ããã¹ãã§ãïŒ
- å æ¬çïŒã³ã³ããèŠçŽ ã®å¯žæ³ãã¹ã¿ã€ã«ããããã£ãè©äŸ¡ãããŠããç¹å®ã®ã³ã³ããã¯ãšãªãªã©ãã³ã³ããã¯ãšãªã®çµæã«åœ±é¿ãäžãããã¹ãŠã®èŠå ãå«ããŸãã
- å¹ççïŒè»œéã§çæãããããè€éãªèšç®ãæååæäœãé¿ããŸãã
- ãŠããŒã¯ïŒåãŠããŒã¯ãªã¯ãšãªãšã³ã³ããã®çµã¿åããã«ãããããç°ãªãããŒãããããšãä¿èšŒããŸãã
åçŽãªãã£ãã·ã¥ããŒã¯ãã³ã³ããã®IDãšã³ã³ããã¯ãšãªæååã®çµã¿åããã«ããããšãã§ããŸãããã ããã³ã³ããã®ã¹ã¿ã€ã«ããããã£ãã¯ãšãªã®çµæã«åœ±é¿ãäžããå Žåããã®ã¢ãããŒãã§ã¯äžååãªå ŽåããããŸããããå ç¢ãªã¢ãããŒãã¯ãé¢é£ããã¹ã¿ã€ã«ããããã£ãããŒã«å«ããããšã§ãã
äŸïŒ
IDããproduct-cardãã®ã³ã³ãããšãã³ã³ããã¯ãšãª `@container (min-width: 300px)` ããããšããŸããåºæ¬çãªãã£ãã·ã¥ããŒã¯æ¬¡ã®ããã«ãªããŸãïŒ `product-card:@container (min-width: 300px)`ãããããã³ã³ããã® `padding` ãã¬ã€ã¢ãŠãã«åœ±é¿ãäžããå Žåã¯ããããããŒã«å«ããã¹ãã§ãïŒ `product-card:@container (min-width: 300px);padding:10px`ã
2. ç¡å¹åæŠç¥
ãã£ãã·ã¥ãããçµæãé©åãªã¿ã€ãã³ã°ã§ç¡å¹åããããšã¯éåžžã«éèŠã§ããç¡å¹åãé »ç¹ããããšäžèŠãªåè©äŸ¡ã«ã€ãªãããç¡å¹åãå°ãªããããšå€ãããŒã¿ãäžæ£ç¢ºãªã¬ã³ããªã³ã°ã«ã€ãªãããŸãã
äžè¬çãªç¡å¹åã®ããªã¬ãŒã¯æ¬¡ã®ãšããã§ãïŒ
- ã³ã³ããã®ãªãµã€ãºïŒã³ã³ããèŠçŽ ã®å¯žæ³ã倿Žããããšãã
- ã¹ã¿ã€ã«ã®å€æŽïŒã³ã³ããèŠçŽ ã®é¢é£ããã¹ã¿ã€ã«ããããã£ã倿Žããããšãã
- DOMã®å€æŽïŒã³ã³ããèŠçŽ ãŸãã¯ãã®åã®æ§é ã倿Žããããšãã
- JavaScriptã«ããæäœïŒJavaScriptã³ãŒããã³ã³ããã®ã¹ã¿ã€ã«ãã¬ã€ã¢ãŠããçŽæ¥æäœãããšãã
- ã¿ã€ã ã¢ãŠãããŒã¹ã®ç¡å¹åïŒæç€ºçãªç¡å¹åããªã¬ãŒãçºçããªããŠããå€ãããŒã¿ãé²ãããã«æå®ãããæéåŸã«ãã£ãã·ã¥ãç¡å¹åããŸãã
ãããã®å€æŽãæ€åºããããã«å¹ççãªã€ãã³ããªã¹ããŒãšãã¥ãŒããŒã·ã§ã³ãªãã¶ãŒããŒãå®è£ ããããšãéèŠã§ããResizeObserverãMutationObserverã®ãããªã©ã€ãã©ãªã¯ãããããã³ã³ããã®ãªãµã€ãºãDOMã®å€æŽã远跡ããããã®è²ŽéãªããŒã«ãšãªãåŸãŸãããããã®ã€ãã³ããªã¹ããŒããããŠã³ã¹ãŸãã¯ã¹ããããªã³ã°ããããšã§ãç¡å¹åã®é »åºŠãæžãããããã©ãŒãã³ã¹ã®ããã«ããã¯ãé²ãã®ã«åœ¹ç«ã¡ãŸãã
3. ãã£ãã·ã¥ãµã€ãºãšãšãã¯ã·ã§ã³ããªã·ãŒ
ãã£ãã·ã¥ã®ãµã€ãºã¯ããã®ããã©ãŒãã³ã¹ã«çŽæ¥åœ±é¿ããŸãã倧ããªãã£ãã·ã¥ã¯ããå€ãã®çµæãä¿åã§ããåè©äŸ¡ã®å¿ èŠæ§ãæžãããŸããããããé床ã«å€§ããªãã£ãã·ã¥ã¯å€§éã®ã¡ã¢ãªãæ¶è²»ããã«ãã¯ã¢ããæäœãé ãããå¯èœæ§ããããŸãã
ãšãã¯ã·ã§ã³ããªã·ãŒã¯ããã£ãã·ã¥ãæå€§ãµã€ãºã«éãããšãã«ã©ã®ãã£ãã·ã¥ãšã³ããªãåé€ããããæ±ºå®ããŸããäžè¬çãªãšãã¯ã·ã§ã³ããªã·ãŒã¯æ¬¡ã®ãšããã§ãïŒ
- Least Recently Used (LRU): æãæè¿ã¢ã¯ã»ã¹ãããªãã£ããšã³ããªãåé€ããŸããããã¯äžè¬çã§ãéåžžã¯å¹æçãªãšãã¯ã·ã§ã³ããªã·ãŒã§ãã
- Least Frequently Used (LFU): ã¢ã¯ã»ã¹åæ°ãæãå°ãªããšã³ããªãåé€ããŸãã
- First-In-First-Out (FIFO): æåã«ãã£ãã·ã¥ã«è¿œå ããããšã³ããªãåé€ããŸãã
- Time-to-Live (TTL): 䜿çšç¶æ³ã«é¢ä¿ãªããäžå®æéãçµéãããšã³ããªãåé€ããŸãã
æé©ãªãã£ãã·ã¥ãµã€ãºãšãšãã¯ã·ã§ã³ããªã·ãŒã¯ãã¢ããªã±ãŒã·ã§ã³ã®ç¹å®ã®ç¹æ§ã«äŸåããŸãããã£ãã·ã¥ãããçãã¡ã¢ãªäœ¿çšéãã«ãã¯ã¢ããããã©ãŒãã³ã¹ã®éã®é©åãªãã©ã³ã¹ãèŠã€ããã«ã¯ãå®éšãšã¢ãã¿ãªã³ã°ãäžå¯æ¬ ã§ãã
4. ã¡ã¢åæè¡
ã¡ã¢åã¯ãã³ã¹ãã®é«ã颿°åŒã³åºãã®çµæããã£ãã·ã¥ããåãå ¥åãå床çºçãããšãã«ãã£ãã·ã¥ãããçµæãè¿ãæè¡ã§ããããã¯ãåé·ãªèšç®ãé¿ããããã«ã³ã³ããã¯ãšãªè©äŸ¡ã«é©çšã§ããŸãã
LodashãRamdaã®ãããªã©ã€ãã©ãªã¯ãã¡ã¢åã®å®è£ ãç°¡çŽ åã§ããã¡ã¢å颿°ãæäŸããŸãããããã¯ãåçŽãªãã£ãã·ã¥ãªããžã§ã¯ãã䜿çšããŠç¬èªã®ã¡ã¢å颿°ãå®è£ ããããšãã§ããŸãã
äŸ (JavaScript):
function memoize(func) {
const cache = {};
return function(...args) {
const key = JSON.stringify(args);
if (cache[key]) {
return cache[key];
}
const result = func.apply(this, args);
cache[key] = result;
return result;
};
}
const calculateContainerQuery = (containerWidth) => {
// ã³ã¹ãã®é«ãèšç®ãã·ãã¥ã¬ãŒã
let result = 0;
for (let i = 0; i < containerWidth * 1000; i++) {
result += Math.random();
}
return result;
};
const memoizedCalculateContainerQuery = memoize(calculateContainerQuery);
console.time('First call');
console.log(memoizedCalculateContainerQuery(500));
console.timeEnd('First call');
console.time('Second call');
console.log(memoizedCalculateContainerQuery(500));
console.timeEnd('Second call');
ãã®äŸã§ã¯ã`memoize` 颿°ã `calculateContainerQuery` 颿°ãã©ããããŠããŸãã`memoizedCalculateContainerQuery` ãç¹å®ã®å¹ ã§åããŠåŒã³åºããããšãèšç®ãå®è¡ããçµæããã£ãã·ã¥ã«ä¿åããŸããåãå¹ ã§ã®åŸç¶ã®åŒã³åºãã¯ããã£ãã·ã¥ããçµæãååŸããã³ã¹ãã®é«ãèšç®ãåé¿ããŸãã
5. ãããŠã³ã¹ãšã¹ããããªã³ã°
ã³ã³ããã®ãªãµã€ãºã€ãã³ãã¯ãç¹ã«ãŠã£ã³ããŠã®ãµã€ãºãæ¥æ¿ã«å€æŽããŠãããšãã«ãéåžžã«é »ç¹ã«ããªã¬ãŒãããå¯èœæ§ããããŸããããã«ããã倧éã®ã³ã³ããã¯ãšãªè©äŸ¡ãçºçãããã©ãŠã¶ã«éè² è·ããããããã©ãŒãã³ã¹ã®åé¡ãåŒãèµ·ããå¯èœæ§ããããŸãããããŠã³ã¹ãšã¹ããããªã³ã°ã¯ããããã®è©äŸ¡ãå®è¡ãããã¬ãŒããå¶éããã®ã«åœ¹ç«ã€æè¡ã§ãã
ãããŠã³ã¹ïŒé¢æ°ãæåŸã«åŒã³åºãããŠããäžå®æéãçµéãããŸã§ããã®é¢æ°ã®å®è¡ãé å»¶ãããŸããããã¯ãæ¥éã«å€åããå ¥åã®æçµçãªå€ã«ã®ã¿å¿çããå¿ èŠãããã·ããªãªã§åœ¹ç«ã¡ãŸãã
ã¹ããããªã³ã°ïŒé¢æ°ãå®è¡ã§ããã¬ãŒããå¶éããŸããããã¯ã倿Žã«å¿çããå¿ èŠããããããã¹ãŠã®å€æŽã«å¿çããå¿ èŠã¯ãªãã·ããªãªã§åœ¹ç«ã¡ãŸãã
Lodashã®ãããªã©ã€ãã©ãªã¯ããããã®æè¡ã®å®è£ ãç°¡çŽ åã§ãã `debounce` ããã³ `throttle` 颿°ãæäŸããŸãã
äŸ (JavaScript):
const debouncedResizeHandler = _.debounce(() => {
// ã³ã³ããã¯ãšãªã®è©äŸ¡ãå®è¡
console.log('Container resized (debounced)');
}, 250); // æåŸã®ãªãµã€ãºã€ãã³ããã250msåŸ
æ©
window.addEventListener('resize', debouncedResizeHandler);
ãã®äŸã§ã¯ã`debouncedResizeHandler` 颿°ã¯Lodashã® `debounce` 颿°ã䜿çšããŠãããŠã³ã¹ãããŸããããã¯ã颿°ãæåŸã®ãªãµã€ãºã€ãã³ããã250msåŸã«ã®ã¿å®è¡ãããããšãæå³ããŸããããã«ããããŠã£ã³ããŠã®ãµã€ãºãæ¥æ¿ã«å€æŽããŠããéã«é¢æ°ãé »ç¹ã«å®è¡ãããã®ãé²ããŸãã
6. é å»¶èªã¿èŸŒã¿ãšåªå é äœä»ã
ãã¹ãŠã®ã³ã³ããã¯ãšãªè©äŸ¡ãåãããã«éèŠã§ããããã§ã¯ãããŸãããããšãã°ãçŸåšç»é¢å€ã«ããèŠçŽ ãé衚瀺ã®èŠçŽ ã«å¯Ÿããè©äŸ¡ã¯ãããã«å®è¡ããå¿ èŠããªããããããŸãããé å»¶èªã¿èŸŒã¿ãšåªå é äœä»ãã¯ãã³ã³ããã¯ãšãªè©äŸ¡ãå®è¡ãããé åºãæé©åããã®ã«åœ¹ç«ã¡ãŸãã
é å»¶èªã¿èŸŒã¿ïŒçŸåšè¡šç€ºãããŠããªãèŠçŽ ã®ã³ã³ããã¯ãšãªã®è©äŸ¡ãå»¶æããŸããããã«ãããåæããŒãžã®èªã¿èŸŒã¿ããã©ãŒãã³ã¹ãåäžããããã©ãŠã¶ãžã®å šäœçãªè² è·ã軜æžã§ããŸãã
åªå é äœä»ãïŒãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã«ãšã£ãŠéèŠãªèŠçŽ ïŒãã¡ãŒã¹ããã¥ãŒã«ããèŠçŽ ãçŸåšæäœãããŠããèŠçŽ ãªã©ïŒã®ã³ã³ããã¯ãšãªè©äŸ¡ãåªå ããŸãã
Intersection Observer APIã䜿çšãããšãèŠçŽ ã衚瀺ãããããšãå¹ççã«æ€åºããããã«å¿ããŠã³ã³ããã¯ãšãªè©äŸ¡ãããªã¬ãŒã§ããŸãã
7. ãµãŒããŒãµã€ãã¬ã³ããªã³ã°ïŒSSRïŒãšéçãµã€ãçæïŒSSGïŒ
ã¢ããªã±ãŒã·ã§ã³ããµãŒããŒãµã€ãã¬ã³ããªã³ã°ïŒSSRïŒãŸãã¯éçãµã€ãçæïŒSSGïŒã䜿çšããŠããå Žåããã«ãããã»ã¹äžã«ã³ã³ããã¯ãšãªãäºåã«è©äŸ¡ãããã®çµæãHTMLã«å«ããããšãã§ããŸããããã«ãããåæããŒãžã®èªã¿èŸŒã¿ããã©ãŒãã³ã¹ãå€§å¹ ã«åäžããã¯ã©ã€ã¢ã³ããµã€ãã§è¡ãå¿ èŠãããäœæ¥éãåæžã§ããŸãã
ãã ããSSRãšSSGã¯åæã³ã³ãããµã€ãºã«åºã¥ããŠã³ã³ããã¯ãšãªãäºåè©äŸ¡ããããšããã§ããªãç¹ã«æ³šæããŠãã ãããããŒãžãèªã¿èŸŒãŸããåŸã«ã³ã³ãããµã€ãºã倿Žãããå Žåã¯ãåŒãç¶ãã¯ã©ã€ã¢ã³ããµã€ãã§ã³ã³ããã¯ãšãªè©äŸ¡ãåŠçããå¿ èŠããããŸãã
ãã£ãã·ã¥ããã©ãŒãã³ã¹ãç£èŠããããã®ããŒã«ãšæè¡
ã³ã³ããã¯ãšãªãã£ãã·ã¥ã®ããã©ãŒãã³ã¹ãç£èŠããããšã¯ãããã«ããã¯ãç¹å®ãããã®æ§æãæé©åããããã«äžå¯æ¬ ã§ãããã®ç®çã®ããã«ãããã€ãã®ããŒã«ãšæè¡ã䜿çšã§ããŸãïŒ
- ãã©ãŠã¶ã®éçºè ããŒã«ïŒãã©ãŠã¶ã®éçºè ããŒã«ã䜿çšããŠãã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ããããã¡ã€ãªã³ã°ããã³ã³ããã¯ãšãªè©äŸ¡ãé å»¶ãåŒãèµ·ãããŠããé åãç¹å®ããŸããChrome DevToolsã®ããã©ãŒãã³ã¹ã¿ãã¯ããã®ç®çã§ç¹ã«åœ¹ç«ã¡ãŸãã
- ã«ã¹ã¿ã ãã®ã³ã°ïŒãã£ãã·ã¥ç®¡çãšã³ãžã³ã«ãã®ã³ã°ã远å ããŠããã£ãã·ã¥ãããçãç¡å¹åé »åºŠããšãã¯ã·ã§ã³æ°ã远跡ããŸããããã«ããããã£ãã·ã¥ã®åäœã«é¢ãã貎éãªæŽå¯ãåŸãããšãã§ããŸãã
- ããã©ãŒãã³ã¹ç£èŠããŒã«ïŒGoogle PageSpeed InsightsãWebPageTestãªã©ã®ããã©ãŒãã³ã¹ç£èŠããŒã«ã䜿çšããŠãã³ã³ããã¯ãšãªãã¢ããªã±ãŒã·ã§ã³ã®å šäœçãªããã©ãŒãã³ã¹ã«äžãã圱é¿ã枬å®ããŸãã
å®äžçã®äŸãšã±ãŒã¹ã¹ã¿ãã£
ã³ã³ããã¯ãšãªãã£ãã·ã¥ç®¡çãæé©åããå©ç¹ã¯ãããŸããŸãªå®äžçã®ã·ããªãªã§æããã§ãïŒ
- Eã³ããŒã¹ãµã€ãïŒå€æ°ã®ã¬ã¹ãã³ã·ããªååã«ãŒããæã€ååäžèЧããŒãžã¯ããã£ãã·ã¥ã®æé©åãã倧ããªæ©æµãåããèªã¿èŸŒã¿æéã®ççž®ãšããã¹ã ãŒãºãªãã©ãŠãžã³ã°äœéšã«ã€ãªãããŸãããã倧æEã³ããŒã¹ãã©ãããã©ãŒã ã®èª¿æ»ã§ã¯ãæé©åãããã³ã³ããã¯ãšãªãã£ãã·ã¥ãå®è£ ããåŸãããŒãžèªã¿èŸŒã¿æéã20%åæžãããããšã瀺ãããŸããã
- ãã¥ãŒã¹ãµã€ãïŒããŸããŸãªç»é¢ãµã€ãºã«é©å¿ãã倿§ãªã³ã³ãã³ããããã¯ãæã€åçãªãã¥ãŒã¹ãã£ãŒãã¯ããã£ãã·ã¥ã掻çšããŠå¿çæ§ãšã¹ã¯ããŒã«ããã©ãŒãã³ã¹ãåäžãããããšãã§ããŸãããã倧æãã¥ãŒã¹ã¡ãã£ã¢ã¯ããã£ãã·ã¥ç®¡çãå®è£ ããåŸãã¢ãã€ã«ããã€ã¹ã§ã®ã¹ã¯ããŒã«ã®æ»ãããã15%åäžãããšå ±åããŸããã
- è€éãªã¬ã€ã¢ãŠãã®Webã¢ããªã±ãŒã·ã§ã³ïŒã³ã³ããã¯ãšãªã«å€§ããäŸåããããã·ã¥ããŒããè€éãªã¬ã€ã¢ãŠããæã€ã¢ããªã±ãŒã·ã§ã³ã¯ããã£ãã·ã¥ã®æé©åããå€§å¹ ãªããã©ãŒãã³ã¹åäžãåŸãããšãã§ããããå¿çæ§ãé«ãã€ã³ã¿ã©ã¯ãã£ããªãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã«ã€ãªãããŸããããéèåæã¢ããªã±ãŒã·ã§ã³ã§ã¯ãUIã¬ã³ããªã³ã°æéã25%åæžãããŸããã
ãããã®äŸã¯ãã³ã³ããã¯ãšãªãã£ãã·ã¥ç®¡çãžã®æè³ãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãšã¢ããªã±ãŒã·ã§ã³å šäœã®ããã©ãŒãã³ã¹ã«å ·äœçãªåœ±é¿ãäžããããšã瀺ããŠããŸãã
ãã¹ããã©ã¯ãã£ã¹ãšæšå¥šäºé
CSSã³ã³ããã¯ãšãªãã£ãã·ã¥ç®¡çãšã³ãžã³ã®æé©ãªããã©ãŒãã³ã¹ã確ä¿ããããã«ã次ã®ãã¹ããã©ã¯ãã£ã¹ãèæ ®ããŠãã ããïŒ
- å å®ãªãã£ãã·ã¥ããŒèšèšããå§ããïŒã³ã³ããã¯ãšãªã®çµæã«åœ±é¿ãäžãããã¹ãŠã®èŠå ãæ éã«æ€èšãããããããã£ãã·ã¥ããŒã«å«ããŸãã
- å¹ççãªç¡å¹åæŠç¥ãå®è£ ããïŒã€ãã³ããªã¹ããŒãšãã¥ãŒããŒã·ã§ã³ãªãã¶ãŒããŒã䜿çšããŠãã£ãã·ã¥ãç¡å¹åãã倿Žãæ€åºãããããã®ã€ãã³ããªã¹ããŒããããŠã³ã¹ãŸãã¯ã¹ããããªã³ã°ããŠããã©ãŒãã³ã¹ã®ããã«ããã¯ãé²ããŸãã
- é©åãªãã£ãã·ã¥ãµã€ãºãšãšãã¯ã·ã§ã³ããªã·ãŒãéžæããïŒããŸããŸãªãã£ãã·ã¥ãµã€ãºãšãšãã¯ã·ã§ã³ããªã·ãŒã詊ããŠããã£ãã·ã¥ãããçãã¡ã¢ãªäœ¿çšéãã«ãã¯ã¢ããããã©ãŒãã³ã¹ã®é©åãªãã©ã³ã¹ãèŠã€ããŸãã
- ã¡ã¢åæè¡ãæ€èšããïŒã¡ã¢åã䜿çšããŠã³ã¹ãã®é«ã颿°åŒã³åºãã®çµæããã£ãã·ã¥ããåé·ãªèšç®ãåé¿ããŸãã
- ãããŠã³ã¹ãšã¹ããããªã³ã°ã䜿çšããïŒç¹ã«ãŠã£ã³ããŠã®ãµã€ãºãæ¥æ¿ã«å€æŽããŠããéã¯ãã³ã³ããã¯ãšãªè©äŸ¡ãå®è¡ãããã¬ãŒããå¶éããŸãã
- é å»¶èªã¿èŸŒã¿ãšåªå é äœä»ããå®è£ ããïŒçŸåšè¡šç€ºãããŠããªãèŠçŽ ã®ã³ã³ããã¯ãšãªè©äŸ¡ãå»¶æãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ã«ãšã£ãŠéèŠãªèŠçŽ ã®è©äŸ¡ãåªå ããŸãã
- SSRãšSSGãæŽ»çšããïŒã¢ããªã±ãŒã·ã§ã³ãSSRãŸãã¯SSGã䜿çšããŠããå Žåã¯ããã«ãããã»ã¹äžã«ã³ã³ããã¯ãšãªãäºåè©äŸ¡ããŸãã
- ãã£ãã·ã¥ããã©ãŒãã³ã¹ãç£èŠããïŒãã©ãŠã¶ã®éçºè ããŒã«ãã«ã¹ã¿ã ãã®ã³ã°ãããã©ãŒãã³ã¹ç£èŠããŒã«ã䜿çšããŠãã³ã³ããã¯ãšãªãã£ãã·ã¥ã®ããã©ãŒãã³ã¹ã远跡ããæ¹åã®äœå°ãããé åãç¹å®ããŸãã
çµè«
CSSã³ã³ããã¯ãšãªã¯ãã¬ã¹ãã³ã·ãã§ã¢ãžã¥ãŒã«åŒã®Webãã¶ã€ã³ãäœæããããã®åŒ·åãªããŒã«ã§ãããããããã®ããã³ã·ã£ã«ãæå€§éã«åŒãåºãã«ã¯ãå¹ççãªãã£ãã·ã¥ç®¡çãäžå¯æ¬ ã§ããå ç¢ãªCSSã³ã³ããã¯ãšãªãã£ãã·ã¥ç®¡çãšã³ãžã³ãå®è£ ãããã®èšäºã§æŠèª¬ããæé©åæŠç¥ã«åŸãããšã§ãWebã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãå€§å¹ ã«åäžãããäžçäžã®ãŠãŒã¶ãŒã«ãããã¹ã ãŒãºã§å¿çæ§ã®é«ããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãæäŸã§ããŸãã
ã¢ããªã±ãŒã·ã§ã³ãé²åããã«ã€ããŠãããã©ãŒãã³ã¹ãšå¿çæ§ãç¶æãç¶ããããã«ããã£ãã·ã¥ã®ããã©ãŒãã³ã¹ãç¶ç¶çã«ç£èŠããå¿ èŠã«å¿ããŠæé©åæŠç¥ãé©å¿ãããããšãå¿ããªãã§ãã ããã