Overview of Front-End Development: History, Fundamentals, SPA, Micro‑Frontends, and Full‑Stack Evolution
Front‑end development has progressed from early back‑end‑only sites to a distinct discipline covering HTML, CSS, and JavaScript, embracing SPA techniques, micro‑frontend architectures, and full‑stack capabilities via Node.js and BFF layers, requiring engineers to grasp both client presentation and server‑side concepts for collaborative, modular, reusable web applications.
Web development has evolved for nearly 30 years. In its early days there was no concept of front‑end; all work was done by back‑end engineers. As business complexity grew, visual and interactive parts were separated, giving rise to the front‑end role.
The term "front‑end engineer" refers to engineers responsible for layout, styling, and presentation on various platforms: browsers (JavaScript, HTML, CSS), iOS (Swift/Objective‑C), Android (Java), and WeChat mini‑programs.
Web three‑layer architecture separates a page into structure (HTML), presentation (CSS), and behavior (JavaScript). This separation improves maintainability and enables reuse across projects.
DOM and BOM are core concepts. The DOM (Document Object Model) represents the page as a tree of nodes, while the BOM (Browser Object Model) represents the browser environment. Example code:
// screen height
window.screen.height
// screen width
window.screen.width
// current URL
window.location.hrefAccessing DOM nodes:
const eleDomObj = document.getElementById('aLink');Setting attributes:
eleDomObj.setAttribute('href', 'https://example.com');Single Page Applications (SPA) emerged with AJAX, allowing partial page updates without full reloads. SPA benefits include front‑back‑end separation, improved user experience, and reduced network traffic.
Micro‑frontend architecture applies micro‑service principles to the front‑end. It decomposes a large SPA into independent sub‑applications, avoiding issues of iframe‑based integration such as latency, redundant resource loading, and high memory consumption.
Full‑stack transition became feasible after Node.js enabled JavaScript on the server side. Front‑end engineers can now implement back‑end logic, leading to roles like BFF (Backend For Frontend), which aggregates multiple service APIs into a single endpoint tailored for front‑end consumption.
The BFF layer reduces the number of client requests and isolates front‑end teams from back‑end changes. It is a logical layer rather than a specific technology.
Front‑end engineering relies heavily on Node.js tooling (npm, build tools, scaffolding, etc.) to automate tasks and improve productivity.
Key takeaways :
Front‑end engineers should understand server and database concepts to collaborate effectively with back‑end teams.
Back‑end engineers benefit from knowing front‑end data requirements for better API design.
Both sides should adopt modular, reusable components to accelerate development.
References include articles on front‑end knowledge for back‑end developers, the evolution of Web from 1.0 to 3.0, and micro‑frontend case studies.
DeWu Technology
A platform for sharing and discussing tech knowledge, guiding you toward the cloud of technology.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.