[最新原创电子书]lazarus开发者入门及中级教程
目前市面上没有任何一本完整的书,介绍Lazarus,Firebird这两个优秀的开发工具,同时还有一个作为他们之间桥梁的开发套件ZeosDBO,也没有任何完整的中文开发指南,本书以这三种开发套件为主线,顺带介绍Lazarus的组件,Firebird的其他工具。本书也附带介绍一些算法,界面设计,优化等方面的知识。将带领你走入软件开发实务的殿堂。
什么是Lazarus?Lazarus发音:拉轧勒斯。他是一个高稳定的软件集成开发环境,使用Object Pascal语言,内核是FreePascal这个GNU下很成熟的编译器,他是一个高效的RAD工具,特别适合有Delphi开发或其他RAD基础的用户。开发工具越来越便宜,这是不争的事实。现在的很多开发工具都在免费,比如Eclipse,Apache,Mysql,Tomcat等等,Lazarus就是和他们类似的一个开发工具,他实现了所见所得的快速开发,并且已经有许多开发者基于她进行商业程序开发,涵盖多个领域。目前为止,已经推出1.0式版本,1.1的每日编译版本,真正稳定,笔者使用从来没有崩溃过,在0.9.1版本以前是不可想像的。
Firebird的前身是开源的Interbase,有百万用户的实际应用基础,是其他开源数据库无法比拟的。比较新的调查表明Firebird的市场占有率和Mysql不相上下。Interbase是Borland购买的Ashton-Tate公司的产品,而Ashton-Tate公司又是买的Groton Database Systems。说到这里不得不说说Interbase的作者Jim Starkey这个伟大的程序员(算起来应该有60+岁数了,真的是前辈),也是Groton Database Systems公司的创始人,正是他独创性的开发出Interbase的(a)多代体系结构(从Wiki上查,多代体系结构是另外两位创造的理论体系,但Interbase或DEC公司是首先实现的,但当时就是1981年Jim正在这个公司开发那个数据库,可见他是首先实现这个多代体系数据库) (b)单文件实现事务日志(库和日志在一起),(c)首个支持BLOB的数据库引擎,有类型的事件通知,数组和触发器,没有偷学任何一家公司的体系。第一个版本在1977年开发完成叫做datarieve Version 1,是支持PDP-11计算机的。这位大师后来的杰作为MySQL AB实现Falcon项目基于Netfrastructure这个引擎 ,其实就是采用Firebird的体系,但后来离开MySQL AB,现在从事云端数据库研发并且领导Firebird数据库的开发。因此,实际上 Firebird数据库引擎从1984年就开始商用,有大量用户使用过,经过多年名称变化,他是开源版本的名称,从1.0开始就有大量用户使用,主要的用户在欧美,俄罗斯。因为中文资料比较少,这个优秀的开发工具在国内许多人并不认识。现在发展到了2.5版本,可以支持多处理器,大量客户端连接,是一款高性能的数据库引擎。另外3.0正在开发中。关于Firebird的TB级的测试可以看http://www.ib-aid.com/articles/item104。关于Firebird的历史可以看"浴火重生的Firebird",firebird.net.cn有此文,已经收录到附录,版权归原作者所有。
ZeosDBO是连接FireBird和Lazarus之间的桥梁,是lazarus的开源数据库访问组件,非常优秀,可以访问大多数数据库,他也支持Delphi,并支持大多数常见数据库。
本书适合的读者是具备一定的Pascal语言基础,SQL语言基础的程序员或编程爱好者。
选择这三种套件的关键是,三者均免费,跨平台,统称为LZF,下面是这三种开发套件的优点列表。
|
项目 |
Lazarus |
Firebid |
ZeosDBO |
|
价格 |
免费 |
免费 |
免费 |
|
使用协议 |
GPLv2 |
IPL |
GPLv2 |
|
跨平台性 |
多种平台 |
多种平台 |
多种平台 |
|
当前版本 |
1.0 |
2.5.1 |
7.0.0.10stable |
|
特色 |
极像Delphi 稳定 已经包含chm帮助 |
轻量,高效,完整 特有MGA多代体系 唯一单文件实现日志 唯一实现嵌入式支持触发器,存储过程的数据库 |
跨库,跨操作系统,跨语言(delphi,,lazarus,.net) |
|
第三方支持 |
许多控件在转移中 |
Ibexpert,FlameRobin,Maestro等许多管理界面,多种访问 库。 |
EhLib等多种库支持,完全兼容原其他Dataset |
|
用户使用情况 |
大量商业程序正在使用,有图有真相。 |
许多商业应用程序,秘密在使用。 |
许多用户使用,从比较老的版本开始。 |
这么强大的开发系统,您还犹豫什么?跟我一起来学习吧。
[最新原创电子书]lazarus开发者入门及中级教程的更多相关文章
- 物联网操作系统HelloX开发者入门指南
HelloX开发者入门指南 HelloX是聚焦于物联网领域的操作系统开发项目,可以通过百度搜索"HelloX",获取详细信息.当前开发团队正在进一步招募中,欢迎您的了解和加入.如果 ...
- Python 正则表达式入门(中级篇)
Python 正则表达式入门(中级篇) 初级篇链接:http://www.cnblogs.com/chuxiuhong/p/5885073.html 上一篇我们说在这一篇里,我们会介绍子表达式,向前向 ...
- 关于 HSSF 和 XSSF 功能的开发者入门指南 (Apache POI 操作 Excel)
关于 HSSF 和 XSSF 功能的开发者入门指南 笔者深夜无眠,特此对本文翻译一部分,未完成部分待后续更新 本文源文地址 意欲使用 HSSF 和 XSSF 功能快熟读写电子表格?那本文就是为你而写的 ...
- 最适合入门的Laravel中级教程(一)
Laravel 是一个全栈框架: 我们使用 Laravel 开发业务常见有 3 个方向: 前端页面和后端逻辑混合的应用 主要是面向对 SEO 有需求的项目: 比如说新闻资讯博客文章等: 一般在控制器中 ...
- 转载 Python 正则表达式入门(中级篇)
Python 正则表达式入门(中级篇) 初级篇链接:http://www.cnblogs.com/chuxiuhong/p/5885073.html 上一篇我们说在这一篇里,我们会介绍子表达式,向前向 ...
- 最新版本elasticsearch本地搭建入门篇
最新版本elasticsearch本地搭建入门篇 项目介绍 最近工作用到elasticsearch,主要是用于网站搜索,和应用搜索. 工欲善其事,必先利其器. 自己开始关注elasticsearch, ...
- 最适合入门的Laravel中级教程(二)用户认证
之前的初级教程主要是学习简单的增删改查: 接着的中级教程的目标是在初级教程的基础上能写出更复杂更健壮的程序: 我们先来学习 laravel 的用户认证功能: 在现代网站中基本都有用户系统: 而我们每开 ...
- Spring Boot 2.0 的快速入门(图文教程)
摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! Spring Boot 2.0 的快速入门(图文教程) 大家都 ...
- PS教程:20个新鲜出炉的 Photoshop 中级教程
Photoshop 实例教程是提高 Photoshop 技能的最佳学习途径.今天,我向大家分享最新20个 Photoshop 进阶教程,提高你的图片处理技巧,制作时尚的效果.这些教程可以帮助把你的想法 ...
随机推荐
- 2018面向对象程序设计(Java)第15周学习指导及要求
2018面向对象程序设计(Java)第15周学习指导及要求 (2018.12.6-2018.12.9) 学习目标 (1) 掌握Java应用程序打包操作: (2) 了解应用程序存储配置信息的两种方法 ...
- windows的cmd下面格式化某个盘符
1.crl+R 输入cmd回车. 2.如果要格式化的是E盘,哪直接输入 在DOS窗口中输入“format f: “ ,其中:format 为格式化命令,f: 为需要格式化的分区
- StringBuild类
每次拼接都会产生新的字符串对象,从而产生很多废弃的垃圾,拼的越多,垃圾越多,而利用StringBuilder来拼接字符串自始至终用的都是同一个StringBuilder容器 StringBuilder ...
- 分享一个 Java String split 快速分割的方法
java中string.split() 方法比较强大,但是split()方法采用正则表达式,速度相对会慢一点, 其实大多数场景下并不需要使用正则表达式,下面分享一个不使用正则表达式分隔字符串的方法. ...
- MySQL实现中文拼音排序
MySQL下新建一个表,默认采用utf8字符集,中文不能直接按照拼音进行排序. 例如以下语句: SELECT * FROM `tb_fixedassets` order by C_FANAME 得到的 ...
- js 事件event
var EventUtil = { addHandler: function(element,type,handler){ if(element.addEventListener){ element. ...
- mysql 连表查询
现有tablea: tableb: ...
- linux 后台运行命令
command & 关闭终端,程序会终止 nohup command & 关闭终端,程序不会终止
- 二:python 对象类型概述
1,为什么使用内置类型: a)内置对象使程序更容易编写 b)内置对象是扩展的组件 c)内置对象往往比定制的数据结构更加高效 d)内置对象是语言的标准的一部分 2,python 的主要内置对象 对象类 ...
- ucore-lab1-练习1report
练习1 report 问题1:OS镜像文件ucore.img是如何一步一步生成的(需要比较详细地解释Makefile中的每一条相关命令和命令参数的含义,以及说明命令导致的结果)? GNU make是一 ...