Vue声明式编程## V ue声明式编程 ## 摘要 • 声明式与图灵完备性 • 声明式与UI编程的演进 • 声明式与UI架构 • 声明式与交互 ## 声明式与图灵完备性 ## 声明式 • 我们对语言有很多划分的维度 • 声明式 vs 命令式 • 声明式语言:HTML XML CSS SQL • 命令式语言:C++ Java JavaScript ## 图灵完备性 · 图灵完备:“可计算性” 图灵完备:“可计算性” • 命令式的图灵完备性:if/for, if/goto • 声明式的图灵完备性:if/递归 ## V ue的Template的图灵完备性 • 实际上Vue的组件系统具有图灵完备性 • 使用Vue计算阶乘 • 使用Vue计算斐波那契数列 ## 声明式与UI编程 ## UI编程 • 70年代 MVC诞生 人们意识到视图应该被独立抽象 • 80年代 标记语言大热 最初更与文本相关 • “HTML5” ## 声明式优势 • 可视化的“可逆性” • 声明式与可再绑定性 • 听说近年某框架把html和css塞回JS了? ## 可重复绑定性 • recycle-list ## 声明式与UI架构 ## MVVM • MVC => MVP => MVVM —脉相承的演化 • MVVM是为声明式/多语言量身定做的编程模型 ## MVVM的数据绑定 • 数据绑定是声明式的数据与UI通讯0 码力 | 19 页 | 155.76 KB | 2 年前3
TypeScript 类型系统## TypeScript 类型系统 分享人:陈文岗 学校:中国科学院大学 2021年1月21日 ## 关于TypeScript TypeScript是微软推出的JavaScript静态类型版本,它是JavaScript的超集,可以编译为纯粹的JavaScript TypeScript How Does TypeScript Work? TypeScript file.ts JavaScript jpg) ## TypeScript 基础类型 // 数字类型 let num: number; num = 123; // 布尔类型 let flag: boolean; flag = false; // 字符串类型 let str: string; str = 'Hello World'; ## TypeScript 高级类型 // 数组类型 let arr: number]; arr 'chenwengang', age: 23 }; // 函数类型/函数签名 type Callback = () => void; let cb:Callback = () => { console.log('callback'); }; ## TypeScript 高级类型 // 交叉类型 type User1 = { name: string;0 码力 | 25 页 | 1.27 MB | 2 年前3
5 刘知杭 静态类型的Python## 静态类型的Python PYTHON 30th Lyzh(刘知杭) ## 目录 CONTENTS ➤ 有关类型的概念 使用mypy对Python源代码进行静态分析 代数数据类型 拓展知识 ## 关于类型的一些基本概念 有类型不等于有类型系统 PYTHON 30th 动态语言类型化的必要性 ## 不久前的一个案例 ☀️ ☀️ ☁️ rl = filter(lambda x: HttpResponse(json.dumps(rl), content_type='application/json') ## 类型的概念 CPython定义了PyObject这个结构体作为对象头。 CPython中的类型,是指在对象头中指向类型元信息的指针。 ## ●●● // cpython/include/object.h #define PyObject_HEAD PyObject CPython有类型,但CPython没有类型系统。这就是CsPython中诸多问题的由来。 ## 类型系统是什么? 类型系统(type system)是一种编译期(Compile-time)的类型推导检查规则。 类型系统(type system)的基本目标是防止程序在运行时发生类型错误。当且仅当语言运行时不存在任何形式的类型错误,那么它就是sound的。soundness是类型系统研究的重要目标。0 码力 | 42 页 | 6.87 MB | 2 年前3
声明式自愈系统——高可用分布式系统的设计之道-王昕## 声明式自愈系统——高可用分布式系统的设计之道 王昕 高级技术专家 全球技术领导力峰会 # 500+高端科技领导者与你一起探讨 技术、管理与商业那些事儿 2019年6月14–15日 上海圣诺亚皇冠假日酒店  ![Imag 设计和验证高可用分布式系统的案例分享 > 高可用系统的最佳实践总结 ## 依据声明式自愈的理念设计系统 有一个统一的状态持久化接口,所有有状态模块通过统一的接口对应统一的对象模型 控制器模块对象 包括Desired State 和Realized State 改变状态的操作 必须是幂等的声 明式操作,没有 新声明时各模块 按照之前的声明 继续工作 配置模块对象只需要包括 Desired State State 每个领域的控制器模块的逻辑保证自己领域独立自愈的能力 ## 声明式自愈系统的控制器协调循环 Controller观察特定领域的系统状态 协调Desired State跟Realized State之间的差距,维持最终一致性 定期处理集群中的事件 系统必须是幂等的 Observe ☑ 观察当前的Realized State ☑ 当前有2个正常运行的Pod Analyze0 码力 | 44 页 | 2.47 MB | 2 年前3
基本数据类型## PyTorch ## 基本数据类型 主讲人:龙良曲 ## All is about Tensor |python|PyTorch| |---|---| |Int|IntTensor of size()| |float|FloatTensor of size()| |Int array|IntTensor of size \[d1, d2, ...]| |Float array|FloatTensor0 码力 | 16 页 | 1.09 MB | 2 年前3
TypeScript Handbook(中文版)
2.11 TypeScript 1.1 2.12 手册 3 基础类型 3.1 变量声明 3.2 接口 3.3 类 3.4 函数 3.5 泛型 3.6 枚举 3.7 类型推论 3.8 类型兼容性 3.9 高级类型 3.10 Symbols 3.11 Iterators 和 Generators 13 命名空间 3.14 命名空间和模块 3.15 模块解析 3.16 声明合并 3.17 书写.d.ts文件 3.18 JSX 3.19 Decorators 3.20 混入 3.21 三斜线指令 3.22 如何书写声明文件 4 结构 4.1 规范 4.2 举例 4.3 深入 4.4 发布 4.5 使用 4.6 工程配置 5 tsconfig.json 5.1 NPM包的类型 5.2 编译选项 5.3 在MSBuild里使用编译选项 5.4 与其它构建工具整合 5.5 使用TypeScript的每日构建版本 5.6 Wiki 6 TypeScript里的this 6.1 编码规范 6.20 码力 | 557 页 | 7.48 MB | 2 年前3
MoonBit月兔编程语言 现代编程思想 第四课 多元组, 结构体,枚举类型# 现代编程思想 多元组,结构体与枚举类型 Hongbo Zhang 基础数据类型:多元组与结构体 ## 回顾:多元组 • 多元组:固定长度的不同类型数据的集合 ☐ 定义: $ (\leq $ 表达式 $ \gt $ , $ \leq $ 表达式 $ \gt $ , $ \geq $ ) ☐ 类型:(<表达式类型>,<表达式类型>,...) ○ 例如: ■ 身份信息:("Bob" == 2023 • 列表:任意长度的相同类型数据的集合 ○ 例如: ■ 字符的序列:Cons('H', Cons('i', Cons('!', Nil))) Cons : construct 的缩写 ## 笛卡尔积 - 一个多元组类型的元素即是每个组成类型的元素构成的有序元素组。集合的笛卡尔积,又称积类型 。例:扑克牌的所有花色: $ \{ $ postal: Int } 通过名称,我们能明确数据的信息以及对应字段的含义 ## 结构体的定义 - 结构体的定义形如 struct <结构体名称> { <字段名>: <类型> ; ... } o struct PersonalInfo { name: String; age: Int} • 定义结构体的值时,形如 { <字段名>: <值>0 码力 | 26 页 | 435.86 KB | 2 年前3
C++高性能并行编程与优化 - 课件 - 10 从稀疏数据结构到量化数据类型{ int x = -7 >> 2; printf("%d\n", x); } 1 ## 位运算 >> 对负数的处理 signed 类型的 >> n 会把最高位复制 n 次。 因为补码的特性,这导致负数 >> 的结果仍是负数。 这样就实现了和 Python 一样的始终向下取整除法。 ## 11001010 printf("%d\n", x); } -2 ## unsigned 类型的位运算 >> 不一样 而 unsigned 类型的 >> n 会不会复制最高位, 只是单纯的位移,这会导致负数的符号位单独被位 移,补码失效,造成结果不对。 unsigned 类型的 >> 会生成 shr 指令,signed 类型的 >> 会生成 sar 指令。 我们需要负方向无限延伸的稀疏数据结果,那就只要 2; } bate::timing("main"); return 0; } ## 使用 int64_t :每个占据 8 字节 • 如果用更大的数据类型,用时会直接提升两倍! 这是因为 i%2 的计算时间,完全隐藏在内存的超高延迟里了。 - 可见,当数据量足够大,计算量却不多时,读写数据量的大小唯一决定着你的性能。 - 特别是并行以后,计算量可以被并行加速,而访存却不行。0 码力 | 102 页 | 9.50 MB | 2 年前3
CakePHP Cookbook Documentation 5.xnamespace App\View; use Cake\View\View; class CustomFallbackView extends View { public static function类型() { string { return static::TYPE_MATCH_ALL; } } It is important to remember that match-all views are upload="" field="" to="" a="" form,="" you="" must="" first="" make="" sure="" that="" the="" form="" en类型="" is="" set="" to="" 'multipart="" form-data'.="" so="" start="" off="" with="" a="" create()="" method="" (string)$data, ['headers' => ['Content-Type' => $data->类型类型名'])]; ## Sending Request Bodies When dealing with REST APIs you often need to send request bodies0 码力 | 848 页 | 2.53 MB | 2 年前3
MoonBit月兔编程语言 现代编程思想 第五课 数据类型:树、二叉树、二叉搜索树、AVL树R-Tree:存储空间几何结构 · ..... ## 数据结构:二叉树 - 二叉树要么是一棵空树,要么是一个节点;它最多具有两个子树:左子树与右子树。 - 叶节点的两个子树都是空树 • 基于递归枚举类型的定义(本节课默认存储数据为整数) 1. enum IntTree { 2. Node(Int, IntTree, IntTree) // 存储的数据,左子树,右子树 3. Empty0 码力 | 29 页 | 1015.26 KB | 2 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100













