# ReactNative Knowledge Share --- ## React (for Web) Basics Virtual Dom and Reconciliation ---  --- * `DIFF` is a set of instructions for applying the change to the DOM * Optimizations like scheduling and batching --- ## _Old_ React Native Architecture ---  ---  ---  ---  ---  ---  --- ## _Future_ React Native Architecture --- <!--JSI-->  --- <!--JSI--> [JSI in GitHub](https://github.com/facebook/react-native/blob/master/ReactCommon/jsi/jsi/jsi.h) --- <!--Turbo Modules-->  --- <!--Turbo Modules-->  --- <!--Fabric-->  ---  --- <!--CodeGen-->  --- ---  --- ### Hermes  --- ### Hermes * OS JS engine optimized for running React Native apps on **Android** * Improved startup * Decreased memory * Opt-in (`enableHermes:true` `build.gradle`) --- ### Hemres  --- ### Hemres * Bytecode precompilation * No JIT * Garbage collector strategy --- ### Glossary * Metro * The Bridge * Yoga * JSI * Fabric * TurboModules * Hermes --- # Resources - [RN's new architecture - Glossary of terms](http://blog.nparashuram.com/2019/01/react-natives-new-architecture-glossary.html) - [react-native-past-future-and-present slide deck](https://speakerdeck.com/kelset/react-native-past-future-and-present) - [The New RN Architecture Explained 4 part blog](https://formidable.com/blog/2019/react-codegen-part-1/) - [RN's New Architecture - Parashuram N - React Conf 2018](https://www.youtube.com/watch?time_continue=9&v=UcqRXTriUVI) - [RN community discussions repo](https://github.com/react-native-community/discussions-and-proposals) - [JSI](https://github.com/react-native-community/discussions-and-proposals/issues/91) - [Turbo Modules](https://github.com/react-native-community/discussions-and-proposals/issues/40) - [Fabirc](https://github.com/react-native-community/discussions-and-proposals/issues/4) - [CodeGen](https://github.com/react-native-community/discussions-and-proposals/issues/92) - [Hermes blog](https://engineering.fb.com/android/hermes/)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up