热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux的开发利器,Kylix

Linux的开发利器,Kylix--Linux通用技术-Linux编程与内核信息,下面是详情阅读。
   Linux可以说是IT业的一个奇迹,对于它的存在,任何一个业内人士都不敢等闲视之。目前,Linux面临的最大问题就是应用程序太少,不能满足各个领域使用者的需求,这是Linux很难战胜Windows的主要原因之一。虽然,随着许多公司和编程爱好者的加入,这种局面正在得到改观,但是,由于IT业一日千里的发展速度,Linux迫切需要一个高效的IDE(整合开发工具)。Windows的发展,导致了目前世界上使用最为广泛的编程语言——VB的产生。那么Linux的流行,又会产生什么呢?现在答案已经有了,那就是Kylix


初识Kylix


   Kylix是Borland公司的又一力作,Borland一直以Borland C++、Delphi、C++ Builder、JBuilder等系列开发工具著称,Kylix秉承了Borland完善的可视化IDE开发环境,强大的调试功能和丰富的VCL构件,简直就是一个Linux下的Delphi。Kylix的推出,对于Linux今后的发展,显然具有重要的意义。

   Kylix集成了目前世界上最快速的编译器,可视化的GUI环境,WEB和数据库应用软件的开发,特点可概括为:高效的Linux内码应用软件(高效的执行代码、可重用的目标库、内置的汇编语言、动态调用库)、快速的IDE(开发环境)、代码自动生成和检查、先进的集成化调试 、完善的文档和帮助文件、强大的构件开发(提供CLX接口)、提供构件代码、、开放式的数据库接口等。

   Kylix使得Windows上运行的许多程序可以移植到Linux上运行,用Kylix写成的Linux程序也可以在Windows上运行。它隐藏了编制Linux软件的复杂性,编程者们可以使用165个名叫CLX的软件组件更容易地制作菜单、按钮和连接数据库以及设计出其它的特征。Kylix的推出,对于一般用户而言,结果是显而易见的,即会用上越来越多优秀的Linux应用软件。


Delphi的继承者

   对于专业程序员来说,要开发一个多平台的商业应用程序有很多种途径,但是它们实现起来都不太容易。所以,跨平台开发工具往往倍受关注,Java正是由于其平台无关性博得了广大程序员的青睐。

   Kylix在进行商业开发时,给公司提供了一个易于学习且非常高效的开发环境。和Java一样,Kylix在用户界面、数据库、Web和网络功能方面为Linux的开发者提供了可以和Windows开发环境相媲美的丰富的函数库。由于和Delphi、 C/C++和 Visual Basic非常的相似,所以它对有经验的程序开发人员极具吸引力。Borland在Kylix里加入一些在标准Java里没有的功能,即优化原生代码编译器和RAD(rapid application development)环境。很显然,对于Delphi和Linux的开发者而言,Kylix是一个具有很大技术潜力的开发工具。

   在商业应用上,Kylix在应用平台间面临着一些挑战。首先,Delphi开发人员要想将其应用程序移植到Kylix,就要将其代码润色得更加简洁,这是一件比较费时的事。其次,大多数Linux开发人员,他们已经在使用C++、Java和Perl开发应用程序,现在要转而使用Kylix,对他们来说,就意味着要学习一门新的开发语言,且要熟悉很多只能在Kylix中使用的库函数。这很有可能推迟他们选择使用Kylix的时间。不过有一点可以肯定,任何一个开发群体都很难抵御Linux环境下这一强大、快捷的开发工具,人们接受它,只是时间的问题。


推陈出新

   我们知道,Turbo Pascal具有非常高效的编译器和全面的IDE(整合开发环境),它可以使一个Windows的使用者,在一夜之间成为一个可以进行程序开发的人员。Kylix和Delphi正是从它发展而来。

   在那些使用C++或者Java进行开发的人看来,Pascal似乎显得过于陈旧。但是它之所以在那么长时间以来,一直受到公众的关注,是由于它集中了C的结构和表现力而又具有Basic的安全性。

   Delphi程序员可以使用Object Pascal代码、Intel汇编语言、Microsoft的Win32 API和Borland的VCL (Delphi Visual Component Library)创建应用程序。而Kylix更是兼有了Delphi的灵活性和Linux的自由性。当然,要直接访问Win 32 API显然是不行了,VCL也被CLX(Borland新的、用于跨平台开发的库组件)所代替。

   CLX组件主要由用户界面元素组成,在数据库方面包含对IBM的DB2、Oracle、MYSQL以及Borland自己的InterBase的直接支持。此外,Borland还捆绑了MyBase(一个常驻内存的XML数据库)。服务器版的Kylix包括一个NETCLX,它是一套用于创建Apache Web应用程序的组件。桌面版虽然没有NETCLX,但是带有源代码开放的TCP/IP套接字服务器和客户端组件。两个版本都包含优化的Object Pascal编译器、可执行的32位Linux原代码和共享库。

不凡的表现

   在Pentium III 750MHz系统上进行测试时,Kylix只比Delphi的Windows IDE稍慢。在配备有NVidia GeForce2 图形加速卡的Athlon 1.2GHz机器上,它简直快得都要冒烟了。

   乍一看,Kylix像一个不同凡响的、运行于Linux的Windows Delphi IDE。事实上,从上下文关联的帮助、华丽的代码编辑器和弹出式语法向导菜单到可下拉和拖拽的表单设计器,它的每一个细节都被重新改进。这对于从事跨平台开发的程序员来说,可以说是再合适不过了。之所以会这样,是由于Borland明智地采纳了开放源代码社区的建议,将Delphi转换成Kylix。

   为了加速Kylix在市场上的步伐,Borland从CodeWeavers(一个致力于Wine的商业应用的公司)处寻求帮助。Wine应用程序是原生的Linux程序,不过它可以访问和Win32兼容的Wine库。也正是由于Wine,才使得Kylix少做了很多的工作。Wine项目为Linux开发人员提供了一套非常完整的源代码开放的Win32 API。在窗体的外表和感觉上,Wine给Kylix提供了很好的借荐。较那些纯粹的Java IDE而言,Kylix IDE的表现的确值得称道。

   除了Wine以外,Borland还和另外两个开放源代码的倡导者有关系。它们是TrollTech(致力于Qt跨平台应用界面库)和Nevrona(致力于Indy TCP/IP组件库)。Qt可以在Linux和Windows下执行,所以非常适于Kylix的CLX界面。Indy组件则是由忠实于Borland的开放源代码社区开发的。

   显而易见,Kylix开发者可以从Delphi已有的大量的源代码开放的程序中获益,不过这些现有的资源也不是全部可用。由于Delphi一直就是一个单一平台的语言,有的公共代码只能在Windows下使用,而有的则直接对PC硬件进行操作,所以大部分Delphi应用程序和库在转到Kylix时都需要进行一些改动,有的甚至需要很大的改动。不过有一点可以相信,作为Borland的源代码开放社区里的成员,将会毫无疑问地接受Kylix,并且投入到对Delphi现存流行的开放源代码项目进行转换的工作中。

   对于编译器和Kylix的调试器,Borland却并没有简化操作。Kylix的Object Pascal编译器编译出来的代码,又小又快,这是一个完全从Delphi继承过来的功能。现在,该编译器已经完全内建到Kylix中。Kylix优化器可以使代码运行在所有的使用Intel CPU的Linux系统上,不过建议最好使用最新的Intel和AMD的处理器。和编译器一样,Kylix调试器已经紧密地融合到了Kylix IDE中,并且它只能用于Linux。它提供了断点设定,单步调试,函数调试,变量值显示,.SO调试,并行机制的调试,暂时处理的调试,调试精灵,事件列表,模块查看,CPU状态,内存读写断点,变量数值列表等功能。

   Kylix是目前唯一可以产生原生 Linux代码的跨平台RAD开发环境。对于那些想把Windows应用程序通过开放源代码工具移植到Linux的人而言,Kylix IDE是一个很好的范例。

   和Java的比较是不可避免的,不过Java是属于另外一种类型,它只有在跨平台和基于Web服务的方面和Kylix类似。Kylix的服务器版包含面向Apache Web服务器开发应用程序的组件。当然,就广度而言,Kylix目前远不如Java,它现在还不支持商业Unix平台,也没有一个企业中间件。而这一切在J2EE(Java 2 Enterprise Edition)里已经具备。和Kylix相比,Java的主要优势是轻便性和良好的企业信誉。Kylix的主要优势是性能和易用性,这在商业Linux开发工具中是非常难得的。用Kylix开发的应用程序周期短、运行时占用内存少且运行速度非常的快。

   现在,Borland还有一些工作要做,比如进一步加强Kylix和现有Linux C/C++和Java代码的融合。鉴于Borland在Java和C++上的经验,可以想像在不久的将来,在Java应用程序里,一些对性能要求比较高的任务将可以由Kylix和Linux GNU C++来完成。

   现在,如果要开发对性能有特定要求且又想在Windows和Linux两种环境下运行的应用程序,Kylix绝对是首选。如果公司正在开发Linux下的软件,或者想把Windows下的Delphi程序移植到Linux下,那么选择Kylix也是一个明智之举。


开发人员大迁移

   作为Linux环境下的第一个RAD(应用程序快速开发)环境,Windows下的开发者将会发现,学习使用Kylix将不是什么难事。

   Delphi程序员:作为Delphi开发人员,在Linux下使用Kylix开发将具有得天独厚的优势。首先,Kylix的界面和开发者已经熟悉的Delphi界面非常相似,比较容易上手。此外,Kylix保留了和Delphi相同的工具集(包括表单设计、目标检测、调试器和编译器),甚至新的库组件CLX模块,也是从Delphi VCL发展而来的,所以用Delphi开发的程序移植到Linux比较容易。也就是说,开发人员把Kylix和Delphi结合起来,只需掌握一套基本的技巧和使用相同的基本代码,即可在Linux和Windows上开发跨平台的应用程序。

   数据库开发人员:使用Kylix可以在Linux里实现基于Oracle和IBM DB2环境的高性能电子商务应用程序。通过高速dbExpress数据库驱动器,可以将现存的Oracle、 DB2、 InterBase和 MySQL数据库轻松地整合到应用程序里。使用Kylix提供的一套功能强大的数据仓库GUI组件,可以快速开发出数据中心应用程序。Kylix使用SQL Monitor、SQL测试和调试组件对数据库应用程序的性能和反应能力进行测试,通过Cached Updates提升服务器的响应能力。

   Linux开发人员:由于其稳定性、灵活性和很低的价格,Linux已经被广泛地用于Web应用服务器,并且正在迅速成为代替Windows的桌面选择方案。但是Linux上传统的开发工具却不尽如人意,首先是它学起来比较困难,此外,相对于Windows下高效的开发工具,它显然急待改进。而现在,Kylix改变了这种局面。Kylix把RAD(Rapid Application Development)这一综合的开发环境引入了Linux,这极大地加快了Linux下应用程序的开发。

   下图所示的是Kylix中对应以上三种开发的功能:





图1

   Web开发人员:Kylix可以加速Apache Web服务器的开发。Kylix的NetCLX把浏览器、服务器和数据库开发技术结合起来,可快速开发出支持高吞吐量的Web应用程序。使用已有的65个Internet组件把HTTP、FTP、SMTP和NNTP等Internet功能整合到应用程序中。

   VB开发人员:Kylix的编程模块和VB的事件驱动的可视化编程模块是相同的,所以,使用Kylix,VB程序员很快就可以在Linux里得心应手地编写程序,一如他在Windows里所做的那样。事实上,在Linux里,除了Kylix外,还没有一个编程工具能跟VB在可视设计、交互调试器、内码编译器、数据库、桌面应用等方面如此的接近。和VB不同的是,Kylix应用程序使用Kylix内置的内码编译器,速度非常的快,一分钟可编译4百万行语句。

   综上所述,我们可以看出,Borland为了尽量吸引有经验的程序员投身其中,可谓用心良苦。同时我们也看到,Kylix的表现的确非常的出色,相信在未来的一段时间里,它一定会成为人们关注的焦点,并赢得它应得的成功。

概览

   商业应用:

   Kylix是一个完整的RAD环境,较Java而言,它易于学习,并且编译产生的代码执行效率非常的高。可用于开发那些需要同时在Windows和Linux下运行且对性能非常敏感的应用程序。

   技术应用:

   Borland创造性地将开放源代码技术和它成熟的Object Pascal内码编译器和调试器结合起来。 Delphi应用程序通常需要直接访问Windows和硬件,所以将程序从Windows移植到Linux时,要尽量简化程序并且根据一定的规则进行。

   优点:

快速的内码编译器
易于学习
很棒的用户界面,提供了TCP/IP和数据库组件
优秀的IDE革命性地使用了开放源代码技术
   缺点:

与C++和Java的关联太差
使用了一门新的语言且使用的是专有的API
   最低运行要求:

Intel Pentium 200 MHz (推荐P2 400 MHz)
64 MB RAM (推荐128 MB)
CD-ROM
175 MB(占用空间)
   支持的Linux操作系统:

Red Hat 6.2或以上版本
Mandrake 7.2或以上版本
SuSE 7.0或以上版本
推荐阅读
  • PHP组合工具以及开发所需的工具
    本文介绍了PHP开发中常用的组合工具和开发所需的工具。对于数据分析软件,包括Excel、hihidata、SPSS、SAS、MARLAB、Eview以及各种BI与报表工具等。同时还介绍了PHP开发所需的PHP MySQL Apache集成环境,包括推荐的AppServ等版本。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了使用cacti监控mssql 2005运行资源情况的操作步骤,包括安装必要的工具和驱动,测试mssql的连接,配置监控脚本等。通过php连接mssql来获取SQL 2005性能计算器的值,实现对mssql的监控。详细的操作步骤和代码请参考附件。 ... [详细]
  • Skywalking系列博客1安装单机版 Skywalking的快速安装方法
    本文介绍了如何快速安装单机版的Skywalking,包括下载、环境需求和端口检查等步骤。同时提供了百度盘下载地址和查询端口是否被占用的命令。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 本文介绍了关于apache、phpmyadmin、mysql、php、emacs、path等知识点,以及如何搭建php环境。文章提供了详细的安装步骤和所需软件列表,希望能帮助读者解决与LAMP相关的技术问题。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • Activiti7流程定义开发笔记
    本文介绍了Activiti7流程定义的开发笔记,包括流程定义的概念、使用activiti-explorer和activiti-eclipse-designer进行建模的方式,以及生成流程图的方法。还介绍了流程定义部署的概念和步骤,包括将bpmn和png文件添加部署到activiti数据库中的方法,以及使用ZIP包进行部署的方式。同时还提到了activiti.cfg.xml文件的作用。 ... [详细]
  • 腾讯安全平台部招聘安全工程师和数据分析工程师
    腾讯安全平台部正在招聘安全工程师和数据分析工程师。安全工程师负责安全问题和安全事件的跟踪和分析,提供安全测试技术支持;数据分析工程师负责安全产品相关系统数据统计和分析挖掘,通过用户行为数据建模为业务决策提供参考。招聘要求包括熟悉渗透测试和常见安全工具原理,精通Web漏洞,熟练使用多门编程语言等。有相关工作经验和在安全站点发表作品的候选人优先考虑。 ... [详细]
  • OCI连接MySQL_PLSQL Developer连接远程数据库OCI客户端安装方法
    本文介绍了使用OCI客户端连接MySQL和PLSQL Developer连接远程数据库的安装方法,避免了在本地安装Oracle数据库或类似的开发套件的麻烦,同时解决了PLSQL Dev连接远程Oracle时的配置问题。 ... [详细]
  • 本文讨论了在shiro java配置中加入Shiro listener后启动失败的问题。作者引入了一系列jar包,并在web.xml中配置了相关内容,但启动后却无法正常运行。文章提供了具体引入的jar包和web.xml的配置内容,并指出可能的错误原因。该问题可能与jar包版本不兼容、web.xml配置错误等有关。 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
author-avatar
8o断情戒爱o8
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有