ããã³ããšã³ãã¢ããªã±ãŒã·ã§ã³ã§ã¡ã¢ãªã¬ãã«ããªã¬ãŒãèšå®ããããã©ãŒãã³ã¹ãç£èŠã»æé©åããæ¹æ³ãåŠã³ãŸããæ§ã ãªã¡ã¢ãªå¶çŽãæã€ããã€ã¹ã§ã®ã¯ã©ãã·ã¥ãé²ããã¹ã ãŒãºãªãŠãŒã¶ãŒäœéšãä¿èšŒããŸãã
ããã³ããšã³ãããã€ã¹ã®ã¡ã¢ãªãããå€ïŒã¡ã¢ãªã¬ãã«ããªã¬ãŒèšå®ã«ããããã©ãŒãã³ã¹ã®æé©å
仿¥ã®å€æ§ãªããžã¿ã«ç°å¢ã«ãããŠãWebã¢ããªã±ãŒã·ã§ã³ã¯ããããç°ãªãã¡ã¢ãªå®¹éãæã€å€çš®å€æ§ãªããã€ã¹ããã¢ã¯ã»ã¹ãããŸãããã®åºç¯ãªããã€ã¹å šäœã§ã¹ã ãŒãºãã€å¿çæ§ã®é«ããŠãŒã¶ãŒäœéšãä¿èšŒããã«ã¯ãã¡ã¢ãªç®¡çã«å¯Ÿããç©æ¥µçãªã¢ãããŒããå¿ èŠã§ãã匷åãªææ³ã®1ã€ããç¹ã«ã¡ã¢ãªã¬ãã«ããªã¬ãŒã®èšå®ãéãããããã³ããšã³ãããã€ã¹ã®ã¡ã¢ãªãããå€ã®æŽ»çšã§ãããã®ã¢ãããŒãã«ãããéçºè ã¯ããã€ã¹ã®ã¡ã¢ãªäœ¿çšéãç£èŠããã¢ããªã±ãŒã·ã§ã³ã®åäœãåçã«èª¿æŽããŠã¯ã©ãã·ã¥ãé²ããããã©ãŒãã³ã¹ãæé©åã§ããŸããæ¬èšäºã§ã¯ããã®ææ³ã广çã«çè§£ãå®è£ ããããã®å æ¬çãªã¬ã€ããæäŸããŸãã
ããã€ã¹ã¡ã¢ãªãšãããããã³ããšã³ãã®ããã©ãŒãã³ã¹ã«äžãã圱é¿ãçè§£ãã
ããã€ã¹ã¡ã¢ãªãšã¯ããŠãŒã¶ãŒã®ããã€ã¹ã§å®è¡ãããŠãããã©ãŠã¶ãWebã¢ããªã±ãŒã·ã§ã³ãå©çšã§ããã©ã³ãã ã¢ã¯ã»ã¹ã¡ã¢ãªïŒRAMïŒã®éãæããŸããã¢ããªã±ãŒã·ã§ã³ãéå°ãªã¡ã¢ãªãæ¶è²»ãããšã以äžã®ãããªè€æ°ã®æªåœ±é¿ã«ã€ãªããå¯èœæ§ããããŸãïŒ
- äœéåãšã©ã°ïŒ ã¢ããªã±ãŒã·ã§ã³ãé ããªããå¿çæ§ã倱ãããŸãã
- ã¯ã©ãã·ã¥ïŒ ã¡ã¢ãªäžè¶³ã«ããããã©ãŠã¶ãã¢ããªã±ãŒã·ã§ã³ãçªç¶ã¯ã©ãã·ã¥ããããšããããŸãã
- 壿ªãªãŠãŒã¶ãŒäœéšïŒ å šäœçã«ãŠãŒã¶ãŒäœéšãæãªããããã©ã¹ãã¬ãŒã·ã§ã³ãå©çšã®äžæ¢ã«ã€ãªããå¯èœæ§ããããŸãã
ãããã®åé¡ã¯ãæ°èåžå Žãå€ãããŒããŠã§ã¢ã§ããèŠããããRAMãéãããããŒãšã³ãã®ããã€ã¹ã§ç¹ã«é¡èã§ãããããã£ãŠãã°ããŒãã«ã«ã¢ã¯ã»ã¹å¯èœã§ããã©ãŒãã³ã¹ã®é«ãWebã¢ããªã±ãŒã·ã§ã³ãäœæããããã«ã¯ãããã€ã¹ã®ã¡ã¢ãªäœ¿çšéãçè§£ã管çããããšãäžå¯æ¬ ã§ãã
Device Memory APIã®ç޹ä»
çŸä»£ã®ãã©ãŠã¶ã¯ãããã€ã¹ã®ç·RAMãã®ã¬ãã€ãåäœã§æšå®å€ãšããŠæäŸããdeviceMemory APIïŒNavigatorã€ã³ã¿ãŒãã§ãŒã¹ã®äžéšïŒãå
¬éããŠããŸããå®å
šã«æ£ç¢ºã§ã¯ãããŸããããã¢ããªã±ãŒã·ã§ã³ã®åäœã«ã€ããŠæ
å ±ã«åºã¥ããæ±ºå®ãäžãããã®è²ŽéãªææšãšãªããŸãã
äŸïŒ
```javascript if (navigator.deviceMemory) { const memoryInGB = navigator.deviceMemory; console.log(`Device Memory: ${memoryInGB} GB`); } else { console.log("Device Memory API not supported."); } ```
ãã®APIã¯ãã¡ã¢ãªã¬ãã«ããªã¬ãŒãå®è£ ããããã®åºç€ãšãªããŸãããã®APIã®å©çšå¯èœæ§ãšç²ŸåºŠã¯ããã©ãŠã¶ãããã€ã¹ã«ãã£ãŠç°ãªãå Žåãããããšã«çæããŠãã ããã
ã¡ã¢ãªã¬ãã«ããªã¬ãŒãšã¯äœãïŒ
ã¡ã¢ãªã¬ãã«ããªã¬ãŒãšã¯ãããã³ããšã³ãã¢ããªã±ãŒã·ã§ã³ãç°ãªãã¬ãã«ã®ããã€ã¹ã¡ã¢ãªã«åå¿ã§ããããã«ããã¡ã«ããºã ã§ãããããå€ãèšå®ããããšã§ãããã€ã¹ã®å©çšå¯èœãªã¡ã¢ãªãç¹å®ã®å¶éãäžåã£ããšãã«å®è¡ãããå ·äœçãªã¢ã¯ã·ã§ã³ãå®çŸ©ã§ããŸããããã«ãããã¡ã¢ãªã«å¶çŽã®ããããã€ã¹ã§ããã©ãŒãã³ã¹ãæé©åããã¯ã©ãã·ã¥ãé²ãããã«ã¢ããªã±ãŒã·ã§ã³ã®åäœãé©å¿ãããããšãã§ããŸãã
ããã¯è»ã®çæèšã®ãããªãã®ã ãšèããŠãã ãããçæã¬ãã«ãç¹å®ã®ãã€ã³ããŸã§äžãããšèŠåç¯ãç¹ç¯ãããã©ã€ããŒã«è¡åïŒäŸïŒçµŠæ²¹ïŒãä¿ããŸããã¡ã¢ãªã¬ãã«ããªã¬ãŒãåæ§ã«æ©èœããã¡ã¢ãªãªãœãŒã¹ãäžè¶³ããŠãããšãã«ã¢ããªã±ãŒã·ã§ã³ã«èŠåããŸãã
ã¡ã¢ãªã¬ãã«ããªã¬ãŒã®èšå®ïŒå®è·µã¬ã€ã
ãã¹ãŠã®ãã©ãŠã¶ã§ãã¡ã¢ãªã¬ãã«ããªã¬ãŒããšããååã§çµ±äžçã«ãµããŒããããŠããåäžã®APIã¯ååšããŸãããããããdeviceMemory APIãšç¬èªã®ã«ã¹ã¿ã ããžãã¯ããã³ã€ãã³ããã³ããªã³ã°ãçµã¿åãããããšã§ãåãæ©èœãå®çŸã§ããŸãã以äžã«ãã®å®è£
æ¹æ³ã解説ããŸãïŒ
1. ã¡ã¢ãªã®ãããå€ãå®çŸ©ãã
æåã®ã¹ãããã¯ãã¢ããªã±ãŒã·ã§ã³ã§ç¹å®ã®ã¢ã¯ã·ã§ã³ãããªã¬ãŒããã¡ã¢ãªã®ãããå€ãå®çŸ©ããããšã§ãããããã®ãããå€ã¯ãã¢ããªã±ãŒã·ã§ã³ã®ã¡ã¢ãªäœ¿çšãã¿ãŒã³ãšå¯Ÿè±¡ããã€ã¹ã®ä»æ§ã«åºã¥ããŠæ±ºå®ããå¿ èŠããããŸãããããå€ãèšå®ããéã«ã¯ã以äžã®èŠçŽ ãèæ ®ããŠãã ããïŒ
- ã¿ãŒã²ããããã€ã¹ïŒ ã¢ããªã±ãŒã·ã§ã³ã䜿çšãããããã€ã¹ã®ç¯å²ãç¹å®ããç¹ã«æå°ããã³å¹³åã¡ã¢ãªæ§æã«æ³šæãæããŸããäŸãã°ãæ°èåžå Žãã¿ãŒã²ããã«ããŠããå Žåã¯ãäœã¡ã¢ãªã®ããã€ã¹ïŒäŸïŒ1GBãŸãã¯2GB RAMïŒãèæ ®ããŸãã
- ã¢ããªã±ãŒã·ã§ã³ã®ã¡ã¢ãªãããããªã³ãïŒ æ§ã ãªã·ããªãªïŒäŸïŒåæããŒããè€éãªã€ã³ã¿ã©ã¯ã·ã§ã³ãããã¯ã°ã©ãŠã³ãããã»ã¹ïŒã«ãããã¢ããªã±ãŒã·ã§ã³ã®ã¡ã¢ãªäœ¿çšéãåæããŸãããã©ãŠã¶ã®éçºè ããŒã«ïŒäŸïŒChrome DevToolsã®ã¡ã¢ãªããã«ïŒãªã©ã®ããŒã«ã圹ç«ã¡ãŸãã
- ãããã¡ïŒ äºæãã¬ã¡ã¢ãªã¹ãã€ã¯ãããã€ã¹ã§å®è¡ãããŠããä»ã®ããã»ã¹ãèæ ®ããŠããããã¡ã確ä¿ããŸãã
以äžã¯ãJavaScriptã§ã¡ã¢ãªãããå€ãå®çŸ©ããäŸã§ãïŒ
```javascript const MEMORY_THRESHOLD_LOW = 1; // 1GBä»¥äž const MEMORY_THRESHOLD_MEDIUM = 2; // 2GBä»¥äž ```
2. ã¡ã¢ãªç£èŠãå®è£ ãã
次ã«ãããã€ã¹ã®ã¡ã¢ãªäœ¿çšéãç¶ç¶çã«ç£èŠããå®çŸ©ãããããå€ãšæ¯èŒããå¿
èŠããããŸããããã¯ãdeviceMemory APIãšã¿ã€ããŒïŒäŸïŒ`setInterval`ïŒãçµã¿åãããŠå®çŸã§ããŸãã
```javascript function checkMemoryLevel() { if (!navigator.deviceMemory) { console.warn("Device Memory API not supported."); return; } const memoryInGB = navigator.deviceMemory; if (memoryInGB <= MEMORY_THRESHOLD_LOW) { triggerLowMemoryAction(); } else if (memoryInGB <= MEMORY_THRESHOLD_MEDIUM) { triggerMediumMemoryAction(); } else { // éåžžã®ã¡ã¢ãªç¶æ } } // 宿çã«ãã§ãã¯ãå®è¡ setInterval(checkMemoryLevel, 5000); // 5ç§ããšã«ãã§ã㯠```
éèŠïŒ ã¡ã¢ãªãã§ãã¯ã®é »åºŠã«ã¯æ³šæããŠãã ãããé »ç¹ãªãã§ãã¯ã¯ãªãœãŒã¹ãæ¶è²»ããããã©ãŒãã³ã¹ã«æªåœ±é¿ãäžããå¯èœæ§ããããŸããå¿çæ§ãšå¹çã®ãã©ã³ã¹ãç®æããŠãã ããã
3. åãããå€ã«å¯Ÿããã¢ã¯ã·ã§ã³ãå®çŸ©ãã
ã¡ã¢ãªã¬ãã«ããªã¬ãŒã®æ žå¿ã¯ããããå€ã«éãããšãã«å®è¡ãããå ·äœçãªã¢ã¯ã·ã§ã³ãå®çŸ©ããããšã«ãããŸãããããã®ã¢ã¯ã·ã§ã³ã¯ãã¡ã¢ãªæ¶è²»ãåæžããããã©ãŒãã³ã¹ãåäžãããããã«èšèšãããã¹ãã§ããäžè¬çãªäŸã«ã¯ä»¥äžã®ãããªãã®ããããŸãïŒ
- ç»è³ªã®äœäžïŒ äœè§£å床ã®ç»åãæäŸããããæ¢åã®ç»åãå§çž®ããŸãã
- ã¢ãã¡ãŒã·ã§ã³ãšãã©ã³ãžã·ã§ã³ã®ç¡å¹åïŒ ã¢ãã¡ãŒã·ã§ã³ããã©ã³ãžã·ã§ã³ãåé€ãŸãã¯ç°¡çŽ åããŸãã
- ã³ã³ãã³ãã®é å»¶èªã¿èŸŒã¿ïŒ éèŠã§ãªãã³ã³ãã³ãã®èªã¿èŸŒã¿ããå¿ èŠã«ãªããŸã§å»¶æããŸãã
- ãã£ãã·ã¥ã®ã¯ãªã¢ïŒ ããŒã«ã«ã¹ãã¬ãŒãžãã¡ã¢ãªå ãã£ãã·ã¥ããäžèŠãªããŒã¿ãåé€ããŸãã
- åæãªã¯ãšã¹ãæ°ã®åæžïŒ åæã«è¡ããããããã¯ãŒã¯ãªã¯ãšã¹ãã®æ°ãå¶éããŸãã
- ã¬ããŒãžã³ã¬ã¯ã·ã§ã³ïŒ ã¬ããŒãžã³ã¬ã¯ã·ã§ã³ã匷å¶ããŸãïŒãã ããããã¯äžæã䌎ãå¯èœæ§ããããããæ éã«äœ¿çšããå¿ èŠããããŸãïŒãJavaScriptã§ã¯ã¬ããŒãžã³ã¬ã¯ã·ã§ã³ãçŽæ¥å¶åŸ¡ããããšã¯ã§ããŸããããã¡ã¢ãªãªãŒã¯ãé¿ããããã«ã³ãŒããæé©åããããšã§ããã©ãŠã¶ã«ããããå¹ççãªã¬ããŒãžã³ã¬ã¯ã·ã§ã³ãä¿é²ãããŸãã
- éã¢ã¯ãã£ããªããã»ã¹ã®çµäºïŒ ã¢ããªã±ãŒã·ã§ã³ãããã¯ã°ã©ãŠã³ãããã»ã¹ãå®è¡ããŠããå Žåãã¢ã¯ãã£ãã«äœ¿çšãããŠããªããã®ãçµäºããããšãæ€èšããŸãã
- èŠåã¡ãã»ãŒãžã®è¡šç€ºïŒ ãŠãŒã¶ãŒã«ã¢ããªã±ãŒã·ã§ã³ã®ã¡ã¢ãªãäžè¶³ããŠããããšãéç¥ããäžèŠãªã¿ããã¢ããªã±ãŒã·ã§ã³ãéããããææ¡ããŸãã
以äžã«ããããã®ã¢ã¯ã·ã§ã³ãå®è£ ããæ¹æ³ã®äŸãããã€ã瀺ããŸãïŒ
ç»è³ªã®äœäžïŒ
```javascript function reduceImageQuality() { const images = document.querySelectorAll('img'); images.forEach(img => { const originalSrc = img.src; // äœå質çã®ç»åãååŸããæ¹æ³ããããšä»®å® const lowQualitySrc = originalSrc.replace('_high_', '_low_'); // äŸ img.src = lowQualitySrc; }); } function triggerLowMemoryAction() { console.warn("Low memory detected! Reducing image quality."); reduceImageQuality(); } ```
ã¢ãã¡ãŒã·ã§ã³ã®ç¡å¹åïŒ
```javascript function disableAnimations() { document.body.classList.add('disable-animations'); } function triggerMediumMemoryAction() { console.warn("Medium memory detected! Disabling animations."); disableAnimations(); } ```
ãã®äŸã§ã¯ãCSSã䜿çšããŠã¢ãã¡ãŒã·ã§ã³ãç¡å¹åããããã«`body`èŠçŽ ã«ã¯ã©ã¹ã远å ããŸãããã®ã¢ãããŒãã«ãããã¢ãã¡ãŒã·ã§ã³ã®åäœãäžå çã«å¶åŸ¡ã§ããŸãã
é å»¶èªã¿èŸŒã¿ïŒ
ããã©ãŒãã³ã¹æé©åã®ããã«æ¢ã«åºã䜿çšãããŠããæ¢åã®é å»¶èªã¿èŸŒã¿æè¡ã掻çšããŸãããŠãŒã¶ãŒã®ã€ã³ã¿ã©ã¯ã·ã§ã³ã«ãã£ãŠèªã¿èŸŒãŸããæ°ããã³ã³ãã³ãããé å»¶ããŠèªã¿èŸŒãŸããããã«ããŠãã ããã
4. ãããŠã³ã¹ãšã¹ããããªã³ã°ãæ€èšãã
ã¡ã¢ãªã¬ãã«ããããå€ã®åšèŸºã§æ¥éã«å€åããéã«ã¢ã¯ã·ã§ã³ãé床ã«å®è¡ãããã®ãé²ãããããããŠã³ã¹ãã¹ããããªã³ã°æè¡ã®äœ¿çšãæ€èšããŠãã ããããããŠã³ã¹ã¯ãäžå®æéã®éã¢ã¯ãã£ãç¶æ ã®åŸã«ã®ã¿ã¢ã¯ã·ã§ã³ãå®è¡ãããããšãä¿èšŒããã¹ããããªã³ã°ã¯å®è¡é »åºŠãå¶éããŸãã
以äžã¯ã`triggerLowMemoryAction`颿°ããããŠã³ã¹ããç°¡åãªäŸã§ãïŒ
```javascript function debounce(func, delay) { let timeoutId; return function(...args) { clearTimeout(timeoutId); timeoutId = setTimeout(() => { func.apply(this, args); }, delay); }; } const debouncedTriggerLowMemoryAction = debounce(triggerLowMemoryAction, 250); // 250msã§ãããŠã³ã¹ function checkMemoryLevel() { // ... (以åã®ã³ãŒã) if (memoryInGB <= MEMORY_THRESHOLD_LOW) { debouncedTriggerLowMemoryAction(); // ãããŠã³ã¹ãããããŒãžã§ã³ãäœ¿çš } //... } ```
é«åºŠãªãã¯ããã¯ãšèæ ®äºé
1. é©å¿åãããå€
åºå®ã®ãããå€ã䜿çšãã代ããã«ãã¢ããªã±ãŒã·ã§ã³ã®çŸåšã®ã¡ã¢ãªäœ¿çšéã«åºã¥ããŠèª¿æŽãããé©å¿åãããå€ã®å®è£ ãæ€èšããŠãã ãããããã¯ãæéçµéãšãšãã«ã¡ã¢ãªæ¶è²»éã远跡ãããããå€ãåçã«èª¿æŽããããšã§å®çŸã§ããŸãã
2. ãŠãŒã¶ãŒèšå®
ãŠãŒã¶ãŒãèªèº«ã®å¥œã¿ãããã€ã¹ã®èœåã«åºã¥ããŠã¡ã¢ãªæé©åèšå®ãã«ã¹ã¿ãã€ãºã§ããããã«ããŸããããã«ããããŠãŒã¶ãŒã¯èªåã®äœéšããã现ããå¶åŸ¡ã§ããããã«ãªããŸãã
3. ãµãŒããŒãµã€ããã³ã
ãµãŒããŒã¯ããŠãŒã¶ãŒã®ããã€ã¹ããããã¯ãŒã¯ç¶æ³ã«åºã¥ããŠæé©ãªãªãœãŒã¹èªã¿èŸŒã¿æŠç¥ã«é¢ãããã³ããã¯ã©ã€ã¢ã³ãã«æäŸã§ããŸããããã¯ãHTTPããããŒããã®ä»ã®ã¡ã«ããºã ã䜿çšããŠå®çŸã§ããŸãã
4. ãã©ãŠã¶ã®äºææ§
ã¡ã¢ãªç®¡çæŠç¥ãåºç¯ãªãã©ãŠã¶ãããã€ã¹ãšäºææ§ãããããšã確èªããŠãã ãããæ©èœæ€åºã䜿çšããŠã`deviceMemory` APIããµããŒãããŠããªãå€ããã©ãŠã¶ã§ã¯æ©èœãé©åã«ããŠã³ã°ã¬ãŒãïŒgracefully degradeïŒããŸãã
5. ã¡ã¢ãªãªãŒã¯ã®æ€åº
宿çã«ã³ãŒããç£æ»ããŠã¡ã¢ãªãªãŒã¯ããªãã確èªããŠãã ããããã©ãŠã¶ã®éçºè ããŒã«ãå°éã®ã¡ã¢ãªãããã¡ã€ãªã³ã°ããŒã«ã䜿çšããŠãã¡ã¢ãªãªãŒã¯ãç¹å®ãä¿®æ£ããŸããã¡ã¢ãªãªãŒã¯ã¯ã¡ã¢ãªåé¡ãæªåãããã¡ã¢ãªã¬ãã«ããªã¬ãŒã®å©ç¹ãç¡å¹ã«ããŠããŸãå¯èœæ§ããããŸãã
å®äžçã®äŸãšã±ãŒã¹ã¹ã¿ãã£
ã¡ã¢ãªã¬ãã«ããªã¬ãŒãããŸããŸãªã·ããªãªã§ã©ã®ããã«é©çšã§ããããããã€ãã®äŸãèŠãŠã¿ãŸãããïŒ
- ãªã³ã©ã€ã³ã²ãŒã ïŒ ãã©ãŠã¶ããŒã¹ã®ã²ãŒã ã§ã¯ãäœã¡ã¢ãªã®ããã€ã¹ã§ã²ãŒã ã¢ã»ããã®è€éããåçã«è»œæžããããŒãã£ã¯ã«ãšãã§ã¯ããç¡å¹ã«ããŠãã¹ã ãŒãºãªãã¬ãŒã ã¬ãŒããç¶æã§ããŸãã
- Eã³ããŒã¹ãã©ãããã©ãŒã ïŒ Eã³ããŒã¹ãµã€ãã§ã¯ãäœã¡ã¢ãªã®ããã€ã¹ã§äœè§£å床ã®ååç»åãæäŸããã¢ãã¡ãŒã·ã§ã³ãç¡å¹ã«ããããšã§ãããŒãžã®èªã¿èŸŒã¿æéãæ¹åããã¡ã¢ãªæ¶è²»ãåæžã§ããŸããäŸãã°ããã©ãã¯ãã©ã€ããŒãç¬èº«ã®æ¥ïŒ11.11ïŒã®ãããªå€§èŠæš¡ãªã·ã§ããã³ã°ã·ãŒãºã³ã«ã¯ããµãŒããŒè² è·ã管çããäžçäžã®ãã¹ãŠã®ãŠãŒã¶ãŒã«é«éãªäœéšãæäŸããããã«ãé©å¿åã®ç»åé ä¿¡ãäžå¯æ¬ ã§ãã
- ãœãŒã·ã£ã«ã¡ãã£ã¢ã¢ããªïŒ ãœãŒã·ã£ã«ã¡ãã£ã¢ã¢ããªã±ãŒã·ã§ã³ã§ã¯ãäžåºŠã«èªã¿èŸŒãæçš¿ã®æ°ãæžãããäœã¡ã¢ãªã®ããã€ã¹ã§åç»ã®èªååçãç¡å¹ã«ããããšã§ããªãœãŒã¹ãç¯çŽã§ããŸããããŒã¿å§çž®æè¡ãæé©åããããããªã¹ããªãŒãã³ã°ã«ããã垯åå¹ ãéãããå°åã®ããã€ã¹ã§ã®ããã©ãŒãã³ã¹ãããã«åäžãããããšãã§ããŸãã
- ãã¥ãŒã¹ãµã€ãïŒ ãã¥ãŒã¹ãµã€ãã§ã¯ãäœã¡ã¢ãªãå ±åããŠããããã€ã¹ã§ãåã蟌ã¿åç»ãé«è§£å床ç»åãªã©ã®éãã¡ãã£ã¢ãããããã¹ãã³ã³ãã³ããåªå ããèªã¿ããããšé«éãªèªã¿èŸŒã¿ã確ä¿ã§ããŸãã
ãã¹ããšãããã°
ã¡ã¢ãªã¬ãã«ããªã¬ãŒãæ£ããæ©èœãã广çã«ããã©ãŒãã³ã¹ãæé©åããŠããããšã確èªããããã«ã¯ã培åºçãªãã¹ããäžå¯æ¬ ã§ãã以äžã«ãã¹ããšãããã°ã®ãã³ããããã€ã瀺ããŸãïŒ
- äœã¡ã¢ãªç¶æ ã®ã·ãã¥ã¬ãŒã·ã§ã³ïŒ ãã©ãŠã¶ã®éçºè ããŒã«ã䜿çšããŠäœã¡ã¢ãªç¶æ ãã·ãã¥ã¬ãŒãããã¢ããªã±ãŒã·ã§ã³ãé©åã«å¿çããŠããããšã確èªããŸããChrome DevToolsã§ã¯ãCPUã®ã¹ããããªã³ã°ãäœã¡ã¢ãªã®ã·ãã¥ã¬ãŒã·ã§ã³ãå¯èœã§ãã
- æ§ã ãªããã€ã¹ã§ã®ãã¹ãïŒ æ§ã ãªã¡ã¢ãªæ§æãæã€äžé£ã®ããã€ã¹ã§ã¢ããªã±ãŒã·ã§ã³ããã¹ãããåºç¯å²ã§è¯å¥œãªããã©ãŒãã³ã¹ãçºæ®ããããšã確èªããŸããããã«ã¯ãããŒãšã³ãããã€ã¹ãæ®åããŠããæ°èåžå Žã§äžè¬çã«èŠãããããã€ã¹ã§ã®ãã¹ããå«ãŸããã¹ãã§ãã
- ã¡ã¢ãªäœ¿çšéã®ç£èŠïŒ ãã¹ãäžã«ãã©ãŠã¶ã®éçºè ããŒã«ãä»ã®ã¡ã¢ãªãããã¡ã€ãªã³ã°ããŒã«ã䜿çšããŠãã¢ããªã±ãŒã·ã§ã³ã®ã¡ã¢ãªäœ¿çšéãç£èŠããŸãã
- ãã®ã³ã°ã®æŽ»çšïŒ ã³ãŒãã«ãã°ã¹ããŒãã¡ã³ãã远å ããŠãã¡ã¢ãªã¬ãã«ããªã¬ãŒã®å®è¡ãšå®è¡ãããŠããã¢ã¯ã·ã§ã³ã远跡ããŸãã
çµè«
ã¡ã¢ãªã¬ãã«ããªã¬ãŒèšå®ãåããããã³ããšã³ãããã€ã¹ã®ã¡ã¢ãªãããå€ãå®è£
ããããšã¯ãæ§ã
ãªã¡ã¢ãªå®¹éãæã€ããã€ã¹äžã§Webã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãæé©åããããã®äŸ¡å€ããææ³ã§ããã¡ã¢ãªäœ¿çšéãç©æ¥µçã«ç£èŠããã¢ããªã±ãŒã·ã§ã³ã®åäœãåçã«èª¿æŽããããšã§ãã¯ã©ãã·ã¥ãé²ããå¿çæ§ãåäžãããããã€ã¹ã«é¢ä¿ãªããã¹ãŠã®ãŠãŒã¶ãŒã«ã¹ã ãŒãºãªãŠãŒã¶ãŒäœéšãä¿èšŒã§ããŸããåäžã§æ®éçã«å®è£
ããããã¡ã¢ãªã¬ãã«ããªã¬ãŒãAPIã¯ååšããŸããããdeviceMemory APIãšã«ã¹ã¿ã ããžãã¯ãçµã¿åãããããšã§ãæè»ãã€åŒ·åãªãœãªã¥ãŒã·ã§ã³ãæäŸããŸããã¿ãŒã²ãããªãŒãã£ãšã³ã¹ã®ç¬èªã®ç¹æ§ãèæ
®ããããã«å¿ããŠã¡ã¢ãªç®¡çæŠç¥ã調æŽããŠãçã«ã°ããŒãã«ã«ã¢ã¯ã»ã¹å¯èœã§ããã©ãŒãã³ã¹ã®é«ãWebã¢ããªã±ãŒã·ã§ã³ãäœæããããšãå¿ããªãã§ãã ããã
ãããã®æŠç¥ãåãå ¥ããããšã§ãéçºè ã¯äžçäžã®å€æ§ãªããã€ã¹ããããã¯ãŒã¯ç¶æ³ã®äžã§æåãããããå ç¢ã§ãŠãŒã¶ãŒãã¬ã³ããªãŒãªWebã¢ããªã±ãŒã·ã§ã³ãäœæã§ããŸãããã®ã¡ã¢ãªå¹çãžã®æ³šåã¯ãããžãã£ããªãŠãŒã¶ãŒäœéšããšã³ã²ãŒãžã¡ã³ãã®åäžããããŠæçµçã«ã¯ã¢ããªã±ãŒã·ã§ã³ã®æåã«çŽæ¥è²¢ç®ããŸãã