oop的三大特性和传统dom如何渲染
OOP的三大特性是什么:
封装 :就是将一个类的使用和实现分开,只保留部分接口和方法与外部联系
继承:子类自动继承其父级类中的属性和方法,并可以添加新的属性和方法或者对部分属性和方法进行重写。继承增加了代码的可重用性。
多态:多个子类中虽然都具有同一个方法,但是这些子类实例化的对象调用这些相同的方法后却可以获得完全不同的结果,多态性增强了软件的灵活性
传统的DOM渲染分为以下三步:
纯后端渲染 纯前端渲染 服务端的js渲染结合前端渲染
纯后端渲染 又称为服务器端渲染(SSR):服务端在返回 html 之前,在特定的区域,符号里用数据填充,再给客户端,客户端只负责解析 HTML 。
纯前端渲染 又称为客户端渲染(SPA):html 仅仅作为静态文件,客户端端在请求时,服务端不做任何处理,直接以原文件的形式返回给客户端客户端,然后根据 html 上的 JavaScript,生成 DOM 插入 html。
服务端的js渲染结合前端渲染: 顾名思义就是将后端渲染和前端渲染中一些交给纯后端DOM渲染逻辑分离的不好,但是交给纯前端DOM渲染又会造成较高延迟的部分单独分离出来形成了一独立DOM渲染阶段,保留的代码中天然的展示层和数据层的分离,又把API请求的累计延迟减少了很多,从SEO角度来说渲染结果对搜索引擎也很友好。当然,这样的做法需要给整体的架构增加一个独立的单元,给开发和部署都带来了更高复杂性。
转载于:https://www.cnblogs.com/wwwxxjsyy/p/10900951.html
oop的三大特性和传统dom如何渲染相关推荐
- 面向对象编程OOP的三大特性
面向对象的三个基本特征是:封装.继承.多态. 封装 封装最好理解了.封装是面向对象的特征之一,是对象和类概念的主要特性. 封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类 ...
- java第五章:面向对象(oop)三大特性之多态
多态(把代码写活,提高代码的扩展性和可维护性) 生活中的多态:同一种物质,因不同的环境展现不同的形态(水:气态,液态,固态/碳12:金刚石,石墨) 程序中的多态:同一个"接口"因不 ...
- 基础面试题: 面向对象三大特性
C++或Java.C#等面向对象语言基础面试题 文章目录 前言 一.面向对象三大特性是什么? 二.封装 三.继承 四.多态 总结 前言 计算机语言的发展经历了机器语言.面向过程语言.以及面向对象语言, ...
- 【总结记录】面向对象设计OOP三大特性(封装、继承、多态)、七大基本原则的理解(结合代码、现实实例理解)
文章目录 一. 三大特征的理解 (1)封装 (2)继承 (3)多态 (4)面向对象.面向过程的对比 二. 七大基本原则的理解 (1)单一职责原则 (2)开放封闭原则(OOP 核心) (3)里氏替换原则 ...
- Python OOP:面向对象三大特性(封装、继承、多态)、类属性和实例属性、类方法@classmethod、静态方法@staticmethod、函数和类callable、__call__
一.面向对象三大特性 二.多态 定义:多态是⼀种使⽤对象的⽅式,⼦类重写⽗类⽅法,调⽤不同⼦类对象的相同⽗类⽅法,可以产⽣不同的执⾏结果. 一个父类,可以继承给多个子类,每个不同的子类可以创建多个对象 ...
- Java——OOP三大特性之封装性(Encapsulation)通俗详细
面向对象(Object Oriented Programming)三大特性 1.封装(Encapsulation) 2.继承(Inheritance) 3.多态(Polymorphism) 定义 En ...
- oop三大特性--封装性
http://www.cnblogs.com/zizhuyuan/archive/2011/06/13/2079905.html /** 封装性:面向对象三大特性之一** 1.就是把对象的成员(属性, ...
- Go 面向对象三大特性
#### Go 中面向对象的三大特性上周因为有一些事情,停更了; 停更的这段时间,花了点时间做了一个小项目(https://github.com/yioMe/node_wx_alipay_person ...
- 【Golang第8章:面向对象编程】Go语言的结构体是什么,怎么声明;Golang方法的调用和声明;go语言面向对象实例,go语言工厂模式;golang面向对象的三大特性:继承、封装、多态
介绍 这个是在B站上看边看视频边做的笔记,这一章是Glang面向对象编程 这一章内容较多,内容有Go语言的结构体是什么,怎么声明:Golang方法的调用和声明:go语言面向对象实例,go语言工厂模式: ...
最新文章
- python 列表算平均分_python平均列表
- 当你学了现在的忘了前面的
- IO流中文件和文件夹的删除程序举例
- Docker 方式安装 gitlab ( 阿里云ECS )
- SpringApplication:SpringBoot程序启动的一站式解决方案
- mvc路由原理 php_s-blog博客系统开发之前端路由配置
- 分享一款超好用的 Web SSH 客户端工具
- duang,duang!!duang.java.mustReadTips
- GB28181国标平台接入摄像头、NVR录像机通道数位0没有通道的处理方式
- Chome浏览器播放语音、视频无声音的解决办法
- Esxi6.7-7.0设置自动启动无效原因
- astercc开源电话计费系统
- 卿斯汉:未来是公有云的天下
- 域名转让代码_域名转让怎么做?
- 应用、游戏和品牌的新营销方式-试玩广告
- 108将的绰号及其归宿
- js——实现点击复制功能
- 拓幻图形学工程师教学手册(第一讲)|一字一字敲出OpenGL学习教程
- 详解Python中pyautogui库的最全使用方法
- 使用代码实现Android的清除数据的功能