Jifunze jinsi ya kutumia lazy loading na code splitting kuboresha performance ya web apps. Mbinu hizi husaidia kupunguza initial load time, kuongeza page speed, na kutoa better user experience kwa kupakia resources tu wakati zinahitajika.

1. Lazy Loading Images (HTML Native)

<img src="large-image.jpg" alt="Example Image" loading="lazy">


loading="lazy" inafanya image ipakie tu wakati iko kwenye viewport.

Hii inapunguza initial page load na bandwidth consumption.

2. Lazy Loading Scripts (JavaScript Dynamic Import)

// Lazy load module
button.addEventListener('click', async () => {
const module = await import('./heavyModule.js');
module.init();
});


Code ya heavyModule.js haipaki mpaka user a-click button.

3. React Example with Lazy & Suspense

import React, { Suspense, lazy } from 'react';

const HeavyComponent = lazy(() => import('./HeavyComponent'));

function App() {
return (
<div>
<h1>My React App</h1>
<Suspense fallback={<div>Loading component...</div>}>
<HeavyComponent />
</Suspense>
</div>
);
}

export default App;


lazy() inatengeneza code-split component.

Suspense inashughulikia loading state mpaka component ipakwe.

4. Webpack / Vite Code Splitting

// Dynamic import example
import('./module.js').then(module => {
module.doSomething();
});


Bundler inachukua chunks ndogo badala ya single large file.

Tips za Lazy Loading & Code Splitting:

Tumia lazy loading kwa images, videos, maps, na components kubwa.

Combine with intersection observers kwa advanced control.

Code splitting inapunguza main bundle size, ikifanya site kuwa fast na responsive.

Audit site yako kwa Lighthouse / PageSpeed Insights kuona improvements.

🔗 Links Za Kujifunza Zaidi:
🌐 Faulink Official Website:
https://www.faulink.com/

📘 Jifunze Web Design & Programming (Tutorials / Mifumo):
https://www.faulink.com/excel_mifumo.php

📲 Piga / WhatsApp kwa msaada wa haraka:
https://wa.me/255693118509