Skip to main content

6 posts tagged with "react"

View All Tags

· 5 min read
Pere Pages
Developer with blackboard

Recently, we had an in-depth discussion on structuring React applications using a layered architectural approach. This method aligns with fundamental software architecture principles such as the Single Responsibility Principle (SRP) and the Single Source of Truth (SSoT). It shares similarities with Clean Architecture and Layered Architecture and, interestingly, shows parallels with the Model-View-Controller (MVC) pattern in some respects. We are also applying Dependency Inversion principle (DIP), depending on abstractions rather than concrete implementations of lower-level modules.

TL;DR
  • Benefits: The architecture offers clear separation of concerns, encapsulation, reusability, and scalability.
  • Considerations: Potential complexity, performance implications of using Redux, and the learning curve associated with Redux and thunks.

· 2 min read
Pere Pages
functional component type

The usage of React.FC or React.FunctionComponent has been a subject of debate within the React community. Both approaches—using it or not—have their pros and cons.

Do not use React.FC​

IMHO, do not use React.FC or React.FunctionComponent in your codebase, only if you know you are using children props.

· 6 min read
Pere Pages
Server Side Rendering
TL;DR

SSR stands for Server-Side Rendering. It's a technique used in web development where the content of a web page is generated on the server instead of in the user's browser.

SSR stands for Server-Side Rendering. It's a technique used in web development where the content of a web page is generated on the server instead of in the user's browser. This differs from client-side rendering (CSR), where JavaScript runs in the browser to produce the page's content dynamically.

· 7 min read
Pere Pages
Pear being loaded

The rationale behind creating a component like the ImagePlaceholder in React, especially in a web application that handles a significant amount of images, centers on improving user experience and performance.