美文网首页
scratch 前端虚拟机

scratch 前端虚拟机

作者: hanxianshe_9530 | 来源:发表于2019-11-01 15:55 被阅读0次

react的面向对象写法一大优势是可以通过闭包来实现高阶组件(HOC),把组件分成渲染层的纯组件和负责逻辑层的外壳,这样能更方便维护.

react是面向对象的写法,对后端程序员十分友好,也容易与ts整合进行静态编译.

gui项目代码有5万行,前端是用react写的,虽然有各种container套component,compose套HOC,而且props嵌套极深,

react的思想是可控和可回溯,可控就是框架足够简单,功能都通过插件扩展,这样不容易出现奇奇怪怪的问题,可回溯就是数据不可变,react中的所有状态都是以副本的形式出现的,他一是在model层拥有immuable这货,定义的变量是不可变的,想给变量赋值必须建副本,我想用react开发悔棋程序肯定特别方便,二是redux中的reducer必须返回一个新的state,所有存在过的state都不能被覆盖,三是在jsx中即使是在this.setState改变数据的时候react也会为setState维护一个prevState状态,以保证数据的可回溯性,

react要使用最简单的结构完成数据的可控和可回溯,其他的所有功能全部交给第三方插件来做,比如用'classNames'解决多个class名问题,用'babel-plugin-react-html-attrs'来解决react中class,for等关键字冲突问题,依赖webpack来解决

前端虚拟机

虚拟机用来屏蔽底层硬件差异和dom渲染差异,使得程序可以跨端移植, react本质上就是虚拟机,虚拟dom屏蔽设备渲染差异( 因为dom只有pc浏览器能识别 , viewPort只有手机能识别 , 但虚拟dom是js对象, 他可以被react解析成dom或者viewPort,这就实现了ui层跨端 ,而native屏蔽底层硬件差异 ,来实现跨端, 通过条件编译使得程序可以在Android和ios都可以运行,底层跨端实现的原理是通过虚拟IO:比如鼠标的点击事件,触摸屏的touch事件,都会在虚拟机中统一映射成一个虚拟机能识别的key, key都是框架自己定义的,比如ON_TOUCH, 每个key对应一个动作 ,然后通过条件编译推送给硬件,就可以跨端了)

相关文章

  • scratch 前端虚拟机

    react的面向对象写法一大优势是可以通过闭包来实现高阶组件(HOC),把组件分成渲染层的纯组件和负责逻辑层的外壳...

  • Java JIT Just In Time 即时编译

    更多 Java 虚拟机方面的文章,请参见文集《Java 虚拟机》 前端编译器 VS 后端编译器 前端编译器:jav...

  • scratch3.0 虚拟机源码分析

    scratch软件的逻辑不复杂,就是用blockly生成语句块,然后用虚拟机抽象成底层语法,最后再调用render...

  • scratch3.0 虚拟机源码分析

    scratch软件的逻辑不复杂,就是用blockly生成语句块,然后用虚拟机抽象成底层语法,最后再调用render...

  • scratch3.0安装备忘(1)

    在虚拟机里安装了ubuntu 16.4,打算玩一下scratch3.0 写个流水账,免得以后忘了。 //以后我各种...

  • 玩Scratch创作_01小猫散步

    玩Scratch创作系列教程,旨在通过完成一个个Scratch编程实例,教Scratch编程。在使用Scratch...

  • Scratch 3.0 与 2.0 的区别

    Scratch 3.0 与 Scratch 2.0 的区别 2019 年 1 月 2 日,Scratch 团队在其...

  • 致家长

    https://scratch.mit.edu/parents/ 摘录自Scratch官网 Scratch 是一种...

  • scratch二次开发之添加默认积木

    Scratch二次开发自定义积木简要教程:首先涉及到scratch的3个项目scratch-gui scratch...

  • 认识Scratch

    ● Scratch是什么? Scratch是一门编程语言。Scratch与传统的编程语言如Java、Python、...

网友评论

      本文标题:scratch 前端虚拟机

      本文链接:https://www.haomeiwen.com/subject/obzfbctx.html