admin管理员组文章数量:1794759
Q 语言初学者系列:(1)开门篇
声明:本系列文章全部参考自官方教程,由于缺乏中文资料而且本人E文实在太菜,对于E文较好的朋友可以直接通过下面的链接访问官方网站提供的教程, 欢迎大家一起学习讨论。 hcode.kx/trac/wiki/QforMortals2/contents 用户名跟密码为anonymous 历史背景: Q语言跟它的数据库kdb+是由同个作者Arthur Whitney开发的,发布于 2003年。Q语言天生地具体处理大数理量的能力,同时它也是kdb+数据库的查询语言,类似于SQL。 KDB+介绍: KDB+ 是一种适合用于处理大数量的数据库服务器,和kdb一样 被设计于用来高速地抓取、分析和存储数据。 主要应用于金融软件的开发,区别于传统的关系型数据库,主要优势是挖掘快速发展的硬件的潜力,我想缺点是对硬件性能要求比较苛刻。 刚刚接触KDB+数据库,google了半天没找到一丁点中文资料,加上英文太菜,或许对它的理解有误,不过暂时先这样定义,等有了更好的答案了再来Update. 打开地址 www.kx/developers/software.php, 然后选择点击"Personal Developer kdb+ Software License Agreement"获取一个免费的32位版本,才100多K的东西。 特点: ◇内存数据库(In Memory Database) 把数据全部放置于内存中 ,好在现在内存是越来越白菜价了。 ◇解释型语言(Interpreted) ◇有序列表(Ordered Lists) 实现高速处理数据的关键,区别于传统数据库。 ◇赋值顺序(Evaluation Order) ◇面向表编程(Table Oriented) 放弃了经典的OO,取而代之的是一种更加复杂的思想,基于表得字典的编程。 ◇面向列编程(Column Oriented) ◇强类型(Types): 强类型,动态检测 (Q is a strongly typed, dynamically checked language) ◇空值(Null Values): 每种类型都有自己的空值 (Types have separate null values. ) 开始: 安装Kdb+ 数据库服务器,直接解压到C盘根目录下就OK了,如果希望放到其它目录下需要添加环境变量QHOME到q目录; 进入到程序目录通过"q"命令启动一个q会话。 变量: Q语言声明变量只需要使用一个变量名跟一个值,格式为“变量名:值”,解释器会根据值的类型给变量赋予相应的类型,需要注意的是赋值符号是":"而不像大多数语言所使用的"=". e.g.q)a:20 变量的命名规范基本与匈牙利命名规范差不多,但有一点需要注意的是禁止使用下划线,就算是非使用不可的情况下也不应该把下划线放在最后一个字符 可能使用一个斜杆(/)给程序添加注释,当然使用两杆(//)也是不会报错的 程序的执行顺序是从右到左 e.g. q)b:1+a:42 q)b 43 今天的开门篇就介绍到这里,由于文中一些概念还没完全理解清楚,有很多表达不到位的地方经过后期的学习我会尽量补上。 下一节将介绍Q语言的基本数据类型。
版权声明:本文标题:Q 语言初学者系列:(1)开门篇 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686646013a90098.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论