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
TokuDB索引结构## TokuDB索引结构 网易杭州研究院---胡争(博客:openinx.github.io) ## TokuDB简介 - 基于分形树实现的MySQL存储引擎 • Tokutek公司2007年研发,2013年开源 • 2015年Percona公司收购Tokutek公司 • TokuDB内部的K-V存储引擎为ft-index • TokuMx: ft-index + MongoDB Server层代码 • 超高压缩率(TokuDB 4M vs InnoDB 16K) 更高性能,更低成本! ## 分形树索引结构(一)  ## 分形树结构(二) • msg buffer - 先进先出队列 • BasementNode (OMT) - 弱平衡二叉树 弱平衡二叉树 – 增删改查期望复杂度 $ O(\log N) $ • 页大小默认4M。 - 扇出fanout默认 $$ 4,16 $$ 区间。 ## 分形树结构(三) ## • 叶子节点 - 数据量维持在 $$ 1M,4M $$ 区间 - 数据量小于1M则合并 - 数据量大于4M则分裂。 ## • 非叶子节点 - 扇出(fanout)维持在 $$ 4,16 $$ 区间 - 扇出小于4则合并0 码力 | 19 页 | 1.97 MB | 2 年前3
MoonBit月兔编程语言 现代编程思想 第四课 多元组, 结构体,枚举类型# 现代编程思想 多元组,结构体与枚举类型 Hongbo Zhang 基础数据类型:多元组与结构体 ## 回顾:多元组 • 多元组:固定长度的不同类型数据的集合 ☐ 定义: $ (\leq $ 表达式 $ \gt $ , $ \leq $ 表达式 $ \gt $ , $ \geq $ ) ☐ 类型:(<表达式类型>,<表达式类型>,...) ○ 例如: ■ 身份信息:("Bob" == 2023 • 列表:任意长度的相同类型数据的集合 ○ 例如: ■ 字符的序列:Cons('H', Cons('i', Cons('!', Nil))) Cons : construct 的缩写 ## 笛卡尔积 - 一个多元组类型的元素即是每个组成类型的元素构成的有序元素组。集合的笛卡尔积,又称积类型 。例:扑克牌的所有花色: $ \{ $ 3)\quad(\clubsuit,3)\\&\quad\vdots\end{aligned} $$ : Int : (Suit, Int) ## 结构体 - 元组的问题在于,难以理解其所代表的数据 (String, Int):一个人的姓名和年龄?姓名和手机号?地址和邮编? - 结构体允许我们赋予名称 o struct PersonalInfo { name: String; age: Int } o struct0 码力 | 26 页 | 435.86 KB | 2 年前3
C++高性能并行编程与优化 - 课件 - 10 从稀疏数据结构到量化数据类型区间内的正数,非常方便。  ## 对稀疏数据结构造成的问题 - 如果这里的 x 是负数,则 x % B 也是负数,会造成对 m block 的越界访问。 - 因此 % 会返回负数对 CFD 用户来说是个很大的坑点,很多人想当然地用 % 做循环边界,然而这对负方向会不起作用。 的整除运算 a // b 的值始终是向下取整,非常方便。 >>> -7 // 4 -2 >>> 7 // 4 1 >>> ## 对稀疏数据结构造成的问题 - 也就是说,如果 x 是 [-3,0] 则 x/B 会是 0,如果 x 是 [0,3] 则 x/B 也是 0。导致两个同时跑到一个 block 上去,会出错。 void write(int { int x = -7 >> 2; printf("%d\n", x); } 1 ## 位运算 >> 对负数的处理 signed 类型的 >> n 会把最高位复制 n 次。 因为补码的特性,这导致负数 >> 的结果仍是负数。 这样就实现了和 Python 一样的始终向下取整除法。 ## 110010100 码力 | 102 页 | 9.50 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
Java 应用与开发 - Java EE 体系结构# Java 应用与开发 Java EE 体系结构 王晓东 wangxiaodong@ouc.edu.cn 计算机科学与技术系 November 6, 2018  ## 参考书目 1. 吕海东,张坤编著,Java EE 企业级应用开发实例教程,清华大学出版社,2010 企业级应用开发实例教程,清华大学出版社,2010 年 8 月 ## 学习目标 1. 了解软件开发的现状与发展趋势,了解企业级应用的特点 2. 掌握 Java EE 的概念和规范,掌握 Java EE 容器、组件和通信协议的类型和功能 ## 大纲 软件开发现状 Java EE 概述 Java EE 容器 JavaEE组件 组件间通信协议 ## 接下来 软件开发现状 Java EE 概述 Java EE 容器 Internet 开发企业级 Web 应用 面向对象 OOA/OOD/OOP,Java、C# 面向组件 软件系统是由许多小的组件构建和装配起来的 采用标准规范开发 J2EE, MS.NET 全面采用框架技术 Struts、Spring、Hibernate、AJAX、WebWork 软件系统采用分层结构和设计模式 MVC 工厂化流水线开发模式 CVS 可视化软件建模 UML、RUP、ROSE ##0 码力 | 40 页 | 1.89 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
CurveFs 用户权限系统调研CurveFs 用户权限系统调研(已实现) ## 一、 Curvefs测试 • 1. 启动curvefs • 问题1:root用户无法访问挂载目录 • 测试 allow root - 测试allow_other • 参考文献 - 问题2:本地文件系统挂载默认是共享的? - 问题3:文件系统访问控制是在哪一层实现的? ## 二、 文件系统权限管理 • 文件类型 • 文件权限 • 特殊权限 (SUID, SGID, STICKY) - 文件默认权限mask - 用户&用户组 - 文件系统用户权限管理 - 对mode的管理 - 对ACL(Access Control Lists)的管理 - ACL Access Entry保存在哪? • ACL的表示 • 内存中的ACL 是如何与具体的 Inode 相关联 • 如何存储和获取ACL信息 如何存储和获取ACL信息 • Inode权限校验 • chmod、chown、setfacl、getfacl接口文件系统自己如何实现 • 结论: • 参考文献: ## 一、 Curvefs测试 代码:https://github.com/cw123/curve/tree/fs_s3_joint_debugging 环境:test2 ### 1. 启动curvefs 手动0 码力 | 33 页 | 732.13 KB | 1 年前3
分布式任务系统cronsun## 分布式任务系统 cronsun 苏创绩 ## 目录 01 任务系统 02 分布式任务系统 03 cron sun 04 心得体会   ## 01 Part One 任务系统 ## 任务 1. 什么时间 2. 什么地点 3. 做什么事 ## 一 个简单的任务  星期数,范围:0-7(0和7都是星期天) e42541490db6c0e/p6_1.jpg) crontab cmd1 cmd2 cmd3 ## 早期的 cron V7, 1979 1. 在Version 7 Unix里是一个系统服务 2. 只用 root 运行任务 3. 算法简单直接 ## 早期的 cron 运行逻辑 1. 读 /usr/lib/crontab 文件 2. 如果有命令要在当前时间执行,就用 root0 码力 | 48 页 | 1.52 MB | 2 年前3
声明式自愈系统——高可用分布式系统的设计之道-王昕## 声明式自愈系统——高可用分布式系统的设计之道 王昕 高级技术专家 全球技术领导力峰会 # 500+高端科技领导者与你一起探讨 技术、管理与商业那些事儿 2019年6月14–15日 上海圣诺亚皇冠假日酒店  












