本章主要分析case classes和模式匹配(pattern matching). 一.简单例子 接下来首先以一个包含case classes和模式匹配的例子来展开本章内容. 下面的例子中将模拟实现一个算术运算,这个算术运算可以基于变量和数字进行一些一元或二元的操作.其中有关数据类型,以及一元和二元操作的类型都定义在如下代码中. abstract class Expr case class Var(name: String) extends Expr case class Number(num…
本章主要分析Scala中List的用法,List上可进行的操作,以及需要注意的地方. 一.List字面量 首先看几个List的示例. val fruit = List("apples", "oranges", "pears") val nums = List(1, 2, 3, 4) val diag3 = List( List(1, 0, 0), List(0, 1, 0), List(0, 0, 1) ) val empty = List()…
本章主要讲Scala中的类型参数化.本章主要分成三个部分,第一部分实现一个函数式队列的数据结构,第二部分实现该结构的内部细节,最后一个部分解释其中的关键知识点.接下来的实例中将该函数式队列命名为Queue. 一.函数式队列 函数式队列是一种具有以下三种操作方法的数据结构,并且这些操作都必须在常量时间内完成: head,返回该队列中的第一个元素 tail,返回除第一个元素之外的所有元素组成的新队列 enqueue,将新元素加入原有队列从而得到一个新队列 函数式队列不同于可变队列(mutable q…
续前文: 中文代码示例之Programming in Scala学习笔记第二三章. 同样仅节选有意思的例程部分作演示之用. 源文档仍在: program-in-chinese/Programming_in_Scala_study_notes_zh 第六章 功能对象 此章的例子与之前的初步尝试将传统学科的内容程序/数据化有些共鸣, 以后的数学知识部分可以参考此实现. class 有理数(分子: Int, 分母: Int) { require(分母 != 0) private val 公约数 = 最…
本系列博客以<Programming in Scala 2nd Edition>为主,围绕其中的代码片段进行学习和分析. 本文主要梳理Chapter2和Chapter3中涉及到的主要概念. 一.变量定义时的val和var 在Scala中定义一个变量可以使用两种关键字var和val.其中val类似于Java中的final类型变量,值不可变.var定义的变量值是可变的. 1.val变量 当给一个val变量重新赋值时就会出现如下提示: 2.var变量 如果确实需要更改某个变量的值,可以使用var.下…
P573 从mysql导入数据到hdfs 第一步:在mysql中创建待导入的数据 1.创建数据库并允许所有用户访问该数据库 mysql -h 192.168.200.250 -u root -p CREATE DATABASE sqoop; GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'; 或 GRANT SELECT, INSERT, DELETE,UPDATE ON *.* TO 'root'@'%'; FLUSH PRIVILEGES; 查看权限:sel…
第15章   JavaScript基础 [学习重点] 了解JavaScript基础知识 熟悉常量和变量 能够使用表达式和运算符 正确使用语句 能够掌握数据类型和转换的基本方法 正确使用函数.对象.数组等核心知识和技法 能够编写简单的脚本,解决网页中常见特效和互动效果 15.1  JavaScript入门 JavaScript是一种轻量级.解释型的Web开发语言.现代浏览器都已嵌入了JavaScript引擎./sc 15.1.1 在网页中插入JavaScript代码 使用<script>标签,可…
博客地址:http://www.moonxy.com 一.前言 前面几章介绍了 MySQL 的安装和简单的配置,只会这些还不够,作为 Linux 系统管理员,我们还需要掌握一些基本的操作,以满足日常管理工作所需.MySQL环境中的命令需要带一个分号作为命令结束符. MySQL 之父 Widenius 先生离开了 Sun 之后,觉得依靠 Sun/Oracle 来发展 MySQL,实在很不靠谱,于是决定另开分支,这个分支的名字叫做 MariaDB.MariaDB 跟 MySQL 在绝大多数方面是兼容…
 如果把 「HTTP 报文」想象为因特网货运系统的「箱子」,那么「HTTP 实体」就是报文中的实际的「货物」. 其中,实体又包含了「实体首部」 和 「实体主体」,实体首部用于描述各种参数,实体主体就是原始货物. 常见的实体首部 实体的大小: Content-Length 定义: 报文的字节的数量 功能: HTTP 的早期版本用 Content-Length.来判断是否关闭连接,进而判断报文结束.注意: 持久连接必须有 Content-Length ,因为连接是持久的,因此客户端无法依赖连接关闭…
安装hive 1.下载hive-2.1.1(搭配hadoop版本为2.7.3) 2.解压到文件夹下 /wdcloud/app/hive-2.1.1 3.配置环境变量 4.在mysql上创建元数据库hive_metastore编码选latin,并授权 grant all on hive_metastore.* to 'root'@'%' IDENTIFIED BY 'weidong' with grant option; flush privileges; 5.新建hive-site.xml,内容…
导入命令 sqoop import --connect jdbc:mysql://192.168.200.250:3306/sqoop --table widgets --hbase-create-table --hbase-table WIDGETS_IN_HBASE --column-family product --hbase-row-key id --username 'root' -P 说明:--connect jdbc:mysql://192.168.200.250:3306/sqo…
1 泛型 “泛型”意思就是适用于许多类型. 使用泛型的目的之一: 指定容器持有什么类型,让编译器确保正确性,而不是在运行期发现错误. 这个容器可以看成是有其他类型对象作为成员的类,而不单单只是JDK中的容器类. 2 简单的泛型 2.1 元组: 元组是对象,是一个将多个对象打包存储于其中的单一对象.Java中没有元组这个类库,Python中有元组这一概念. 可以通过泛型构建自己的元组类库. class TwoTuple<A,B>{ public final A first; public fin…
一.基本用法 1.要使用<canvas>元素,必须先设置其 width 和 height 属性,指定可以绘图的区域大小.能通过 CSS 为该元素添加样式,如果不添加任何样式或者不绘制任何图形,在页面中是看不到该元素的. 2.要在这块画布(canvas)上绘图,需要取得绘图上下文.而取得绘图上下文对象的引用,需要调用getContext()方法并传入上下文的名字.在使用<canvas>元素之前,首先要检测 getContext()方法是否存在,这一步非常重要.检测可以用如下方法进行:…
本节主要内容 模式匹配的类型 for控制结构中的模式匹配 option类型模式匹配 1. 模式的类型 1 常量模式 object ConstantPattern{ def main(args: Array[String]): Unit = { //注意,以下定义的是一个函数 //函数的返回值利用的是模式匹配后的结果作为其返回值 //还须要注意的是函数定义在main方法中 //也即scala语言能够在一个函数中定义另外一个函数 def patternShow(x:Any)=x match { ca…
续前文: 中文代码示例之Programming in Scala学习笔记第二三章 中文代码示例之Programming in Scala笔记第四五六章. 同样仅节选有意思的例程部分作演示之用. 源文档仍在: program-in-chinese/Programming_in_Scala_study_notes_zh 第七章 内置控制结构 7.8中改为函数式风格的乘法表: def 创建行序列(行: Int) = for (列 <- 1 to 10) yield { val 乘积 = (行 * 列)…
原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十五章:第一人称摄像机和动态索引 代码工程地址: https://github.com/jiabaodan/Direct12BookReadingNotes 学习目标 回顾视景坐标系变换的数学算法: 熟悉第一人称摄像机的功能: 实现第一人称摄像机: 理解如何动态索引一组纹理. 1 回顾视景坐标系变换 如果QW = (Qx, Qy, Qz, 1), uW = (ux,…
其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://github.com/msdx/gradledoc/tree/1.12. 直接浏览双语版的文档请访问: http://gradledoc.qiniudn.com/1.12/userguide/userguide.html. 另外,Android 手机用户可通过我写的一个程序浏览文档,带缓存功能的,目前…
原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第五章:渲染流水线 学习目标 了解几个用以表达真实场景的标志和2D图像的深度空间: 学习在Direct3D中如何表示3D物体: 学习如何模拟虚拟摄像机: 理解渲染流水线:如何用几何描述的3D场景渲染出2D图像: 1 3D幻觉 如何在2D平面(显示器)上产生3D场景的幻觉: 1.根据与摄像机的距离缩放: 2.遮挡关系: 3.光照: 4.阴影 2 模型的表示 一个模型是由…
第十五章:控制脚本 处理信号 重温Linux信号 信号 名称 描述 1 HUP 挂起 2 INT 中断 3 QUIT 结束运行 9 KILL 无条件终止 11 SEGV 段错误 15 TERM 尽可能终止 17 STOP 无条件停止运行,但不终止 18 TSTP 停止或暂停,但继续在后台运行 19 CONT 在STOP或TSTP之后恢复执行 默认情况下,bash shell会忽略收到的任何SIGQUIT(3)和SIGTERM(5)信号. 如果bash shell收到了SIGHUP信号,它会退出.…
第十五章 LVM管理和ssm存储管理器使用 本节所讲内容: 15.1 LVM的工作原理 15.2 创建LVM的基本步骤 15.3 实战-使用SSM工具为公司的邮件服务器创建可动态扩容的存储池 LVM的基本概念​​ 实战场景:对于生产环境下的服务器来说,如果存储数据的分区磁盘空间不够了怎么办? 答:只能换一个更大的磁盘. 如果用了一段时间后, 空间又不够了,怎么办?再加一块更大的?换磁盘的过程中,还需要把数据从一个硬盘复制到另一个硬盘,过程太慢了. 解决方案:使用LVM在线动态扩容 15.1 LV…
续前文: 中文代码示例之Programming in Scala笔记第七八章 源文档库: program-in-chinese/Programming_in_Scala_study_notes_zh 疑似中文命名bug program-in-chinese/Programming_in_Scala_study_notes_zh. 复现如下. 需要深究: scala> for ((行1, 行2) <- Array(1,2) zip Array("a", "b&quo…
15第十五章UDF用户自定义函数 待补上 原文链接 本文由豆约翰博客备份专家远程一键发布…
原文:VSTO学习笔记(十五)Office 2013 初体验 Office 2013 近期发布了首个面向消费者的预览版本,我也于第一时间进行了更新试用.从此开始VSTO系列全面转向Office 2013平台,即VSTO 5.0. 本系列所有测试代码均在Visual Studio 2012 Ultimate RC + Office 2013 Professional Plus x64 Preview 上测试通过 为了配合Windows 8,微软的很多软件风格都逐渐Metro化,Office作为拳头…
第十三章 1.在使用浮动时,源代码的顺序非常重要.浮动元素的HTML必须处在要包围它的元素的HTML之前. 2.清楚浮动: (1).在外围div的底部添加一个清除元素:clear属性可以防止元素包围浮动元素.关键字:left.right或both. (2).浮动外围元素:让包含浮动元素的<div>也浮动.选择这种方法一定要在浮动容器后面的任何元素中添加一个clear属性,确保浮动元素落到容器的下方. (3).利用overflow : hidden.另一种常见的方法是在外围的样式中添加以下属性:…
目录 前言 搭建项目及其它准备工作 创建数据库 创建Koa2项目 安装项目其它需要包 清除冗余文件并重新规划项目目录 配置文件 规划示例路由,并新建相关文件 实现数据访问和业务逻辑相关方法 编写mysql-helper.js 编写数据访问方法 规划业务逻辑返回值 编写业务逻辑 注册 登录 首页 安全退出 写在之后 前言 前面一有写到一篇Node.js+Express构建网站简单示例:http://www.cnblogs.com/zhongweiv/p/nodejs_express_webapp.…
本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://github.com/msdx/gradledoc 本文翻译所在分支: https://github.com/msdx/gradledoc/tree/1.12. 直接浏览双语版的文档请访问: http://gradledoc.qiniudn.com/1.12/userg…
有关其他已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或访问:http://gradledoc.qiniudn.com/1.12/userguide/userguide.html 本文原创,转载请注明出处:http://blog.csdn.net/maosidiaoxian/article/details/41038305 关于我对Gradle的翻译,以Github上的项目及http://gradledoc.qin…
Android群英传笔记--第十二章:Android5.X 新特性详解,Material Design UI的新体验 第十一章为什么不写,因为我很早之前就已经写过了,有需要的可以去看 Android高效率编码-第三方SDK详解系列(二)--Bmob后端云开发,实现登录注册,更改资料,修改密码,邮箱验证,上传,下载,推送消息,缩略图加载等功能 这一章很多,但是很有趣,也是这书的最后一章知识点了,我现在还在考虑要不要写这个拼图和2048的案例,在此之前,我们先来玩玩Android5.X的新特性吧!…
本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://github.com/msdx/gradledoc/tree/1.12. 直接浏览双语版的文档请访问: http://gradledoc.qiniudn.com/1.12/userguide/userguide.html. 另外,Android 手机用户可通过我写的一个…
本文转自:https://www.cnblogs.com/zhongweiv/p/nodejs_koa2_webapp.html 目录 前言 搭建项目及其它准备工作 创建数据库 创建Koa2项目 安装项目其它需要包 清除冗余文件并重新规划项目目录 配置文件 规划示例路由,并新建相关文件 实现数据访问和业务逻辑相关方法 编写mysql-helper.js 编写数据访问方法 规划业务逻辑返回值 编写业务逻辑 注册 登录 首页 安全退出 写在之后 前言 前面一有写到一篇Node.js+Express构…