Skip to content

Commit 51b4395

Browse files
committed
esbuild
1 parent 7322841 commit 51b4395

File tree

12 files changed

+462
-1344
lines changed

12 files changed

+462
-1344
lines changed

src/content/0/en/part0a.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -331,7 +331,8 @@ Despite changes *all the submitted exercises remain valid*, and the course can b
331331
332332
Recent major changes
333333
334-
- Part 6 (th April): Redux replaced with Zustand, useReducer moved to chapter 7
334+
- Part 7 (5th April): Webpack replaced with esbuild
335+
- Part 6 (5th April): Redux replaced with Zustand, useReducer moved to chapter 7
335336
- Part 5 (31st March 2026): React Router and style libraries have been moved from Part 7 to this part
336337
- Parts 9, 11-13 (March 2026): content updated and material moved to new platform
337338
- Part 8: (3th January 2026) Apollo Server updated to v5. Apollo Client updated to v4. Refactoring backend code moved to part8c. Lot's of other small improvements.

src/content/0/fi/osa0a.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,8 @@ Kurssilla ei ole vuosittaisia versiota. Kurssi on siis käynnissä koko ajan. Jo
276276
Muutoksista huolimatta <i>kaikki jo tehdyt palautukset säilyvät voimassa</i>, eli voit jatkaa kurssia päivityksistä huolimatta normaaliin tapaan.
277277

278278
Viimeaikaisia isompia muutoksia
279-
- Osa 6 (5.4.2026): Reduxkorvattu Zustandilla, useReducer siirretty osaan 7
279+
- Osa 7 (6.4.2026): Webpack korvattu esbuildilla
280+
- Osa 6 (5.4.2026): Redux korvattu Zustandilla, useReducer siirretty osaan 7
280281
- Osa 5 (31.3.2026): Cypressiä käsittelevä osuus poistettu. React Router ja tyylikirjastot siirretty osasta 7 tähän osaan
281282
- Osat 9 ja 11-13 (maaliskuu 2026): sisältö päivitetty ja materiaali siirretty uuteen osoitteeseen
282283
- Osa 8: (3.1.2026) Apollo Server päivitetty versioon v5. Apollo Client päivitetty versioon v4. Backend-koodin refaktorointi siirretty osaan 8c. Lukuisia muita pieniä parannuksia.

src/content/7/en/part7.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ lang: en
99
The seventh part of the course touches on several different themes. First, we'll get familiar with React Router. React Router helps us divide the application into different views that are shown based on the URL in the browser's address bar. After this, we'll look at a few more ways to add CSS styles to React applications. During the entire course, we've used Vite to build all of our applications.
1010
It is also possible to configure the whole toolchain yourself, and in this part we will see how this can be done with a tool called Webpack. We shall also have a look at hook functions and how to define a custom hook.
1111

12-
<i>Part updated 26th August 2023</i>
13-
- <i>Create React App replaced with Vite</i>
12+
<i>Part updated April 6th 2026</i>
13+
- <i>React router, UI libraries and Styled components moved to part5</i>
14+
- <i>Webpack replaced with esbuild</i>
1415

1516
</div>

src/content/7/en/part7d.md

Lines changed: 224 additions & 660 deletions
Large diffs are not rendered by default.

src/content/7/en/part7e.md

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -242,17 +242,14 @@ ReactDOM.createRoot(document.getElementById('root')).render(<App />)
242242

243243
When the state of the application changes, a <i>new virtual DOM</i> gets defined by the components. React has the previous version of the virtual DOM in memory and instead of directly rendering the new virtual DOM using the DOM API, React computes the optimal way to update the DOM (remove, add or modify elements in the DOM) such that the DOM reflects the new virtual DOM.
244244

245-
### On the role of React in applications
246245

247-
In the material, we may not have put enough emphasis on the fact that React is primarily a library for managing the creation of views for an application. If we look at the traditional [Model View Controller](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller) pattern, then the domain of React would be <i>View</i>. React has a more narrow area of application than e.g. [Angular](https://angular.io/), which is an all-encompassing Frontend MVC framework. Therefore, React is not called a <i>framework</i>, but a <i>library</i>.
248246

249-
In small applications, data handled by the application is stored in the state of the React components, so in this scenario, the state of the components can be thought of as <i>models</i> of an MVC architecture.
250247

251-
However, MVC architecture is not usually mentioned when talking about React applications. Furthermore, if we are using Redux, then the applications follow the [Flux](https://facebookarchive.github.io/flux/docs/in-depth-overview/) architecture and the role of React is even more focused on creating the views. The business logic of the application is handled using the Redux state and action creators. If we're using [Redux Thunk](/en/part6/communicating_with_server_in_a_redux_application#asynchronous-actions-and-redux-thunk) familiar from part 6, then the business logic can be almost completely separated from the React code.
248+
### On the role of React in applications
252249

253-
Because both React and [Flux](https://facebookarchive.github.io/flux/docs/in-depth-overview/) were created at Facebook, one could say that using React only as a UI library is the intended use case. Following the Flux architecture adds some overhead to the application, and if we're talking about a small application or prototype, it might be a good idea to use React "wrong", since [over-engineering](https://en.wikipedia.org/wiki/Overengineering) rarely yields an optimal result.
250+
In the material, we may not have put enough emphasis on the fact that React is primarily a library for managing the creation of views for an application. If we look at the traditional [Model View Controller](https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller) pattern, then the domain of React would be <i>View</i>. React has a more narrow area of application than e.g. [Angular](https://angular.io/), which is an all-encompassing Frontend MVC framework. Therefore, React is not called a <i>framework</i>, but a <i>library</i>.
254251

255-
Part 6 [last chapter](/en/part6/react_query_use_reducer_and_the_context) covers the newer trends of state management in React. React's hook functions <i>useReducer</i> and <i>useContext</i> provide a kind of lightweight version of Redux. <i>React Query</i>, on the other hand, is a library that solves many of the problems associated with handling state on the server, eliminating the need for a React application to store data retrieved from the server directly in frontend state.
252+
In small applications, data handled by the application is stored in the state of the React components, so in this scenario, the state of the components can be thought of as <i>models</i> of an MVC architecture.
256253

257254
### React/node-application security
258255

src/content/7/fi/osa7.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ Kurssin seitsemäs osa käsittelee montaa teemaa. Ensin tutustutaan React router
1010

1111
Kurssin seitsemännen osan teemoihin liittyvät myös useat yhteistyökumppaniemme asiantuntijoiden vierailuluennoista, jotka löydät <a href='https://www.youtube.com/playlist?list=PLumQiZ25uijis31zaRL7rhzLalSwLqUtm'><span style='text-decoration: underline;'>täältä</span></span></a>.
1212

13-
<i>Osa päivitetty 26.8.2023</i>
14-
- <i>Create React App korvattu Vitellä</i>
13+
<i>Osa päivitetty 6.4.2026</i>
14+
- <i>React router, UI kirjstot ja Styled siirretty osaan 5</i>
15+
- <i>Webpack korvattu esbuild:illa</i>
1516

1617
</div>

0 commit comments

Comments
 (0)