Andreas Roth - Solid.js: Schluss mit Framework-Overhead!

Andreas Roth
§ Dresden, Germany
§ Development Lead @ esveo
§ We help software teams accelerate
their development projects.
Andreas Roth
@andrewgreenh
andreas.roth@esveo.com
@andrewgreenh
Step 0
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
const PerformanceComponent = React.memo(SlowComponent);
React.useMemo(() => {
// Calculate derived data
}, [name, some, other, props]);
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class AppComponent {
name = new Subject<string>();
}
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
@andrewgreenh
App
Header
UserNameForm
Main
UserDetails UserRepos
GitHubChecker HamburgerMenu
Footer
function handleNewValue(value: string) {
heading.textContent = value;
}
@andrewgreenh
Step 1
@andrewgreenh
Step 2
@andrewgreenh
Step 3
@andrewgreenh
Step 4
@andrewgreenh Framework Bundle Size (Brotli)
@andrewgreenh
0
20
40
60
80
100
120
140
160
0 10 20 30 40 50 60 70 80 90
Bundle
size
(kb)
Count of Todo MVC Apps
Svelte Solid React
Bundle Size with growing component numbers
https://dev.to/this-is-learning/javascript-framework-todomvc-size-comparison-504f
@andrewgreenh
0
20
40
60
80
100
120
140
160
0 10 20 30 40 50 60 70 80 90
Bundle
size
(kb)
Count of Todo MVC Apps
Svelte Solid React
Bundle Size with growing component numbers
https://dev.to/this-is-learning/javascript-framework-todomvc-size-comparison-504f
@andrewgreenh Geometric mean in js-framework-benchmark
https://github.com/krausest/js-framework-benchmark
0%
20%
40%
60%
80%
100%
120%
140%
160%
180%
200%
Vanilla JS Solid Svelte React
@andrewgreenh
How can I learn more?
@andrewgreenh
§ https://discord.com/invite/solidjs
§ https://www.solidjs.com/
§ https://dev.to/ryansolid
We help you accelerate your
software projects.
Andreas Roth
@andrewgreenh
andreas.roth@esveo.com
1 sur 30

Contenu connexe

Similaire à Andreas Roth - Solid.js: Schluss mit Framework-Overhead!

Bit Rot in the DocsBit Rot in the Docs
Bit Rot in the DocsSarah Maddox
2.4K vues21 diapositives
Twitter analysis by Kaify RaisTwitter analysis by Kaify Rais
Twitter analysis by Kaify RaisAjay Ohri
45.6K vues21 diapositives

Similaire à Andreas Roth - Solid.js: Schluss mit Framework-Overhead!(20)

Andreas Roth - Solid.js: Schluss mit Framework-Overhead!