开放源代码的必要性程序有多少,看看字处理程序是多少

2023-11-30    分类: 网站建设

本文原作者为:tomz。tomz的网页:

开源的必要性

在介绍编程语言之前,先说一下开源的必要性。现在,在软件生产领域存在着巨大的智力浪费,每个人都将大量精力花在编写别人已经实现的程序代码上。看看有多少文本编辑器,有多少ftp程序,有多少文字处理程序。尽管这些程序不同,但它们的主要功能是相同的。实现个性化的功能,修改现有软件会节省多少时间!分别编译每个程序会浪费多少时间?如果没有这种重复的工作量,全世界的程序员至少可以节省80%的工作量。同时,开源代码也方便了大家的交流。

要开源代码,以下几点更为重要:

语言统一:如果每个人都使用一种编程语言,相同的功能,相同的库,那么每个人都会有很多共同的语言。每个人只要学会一门语言,一套函数,一套库,就可以阅读理解对方的源码。这样,学习量最少;但是不可能统一语言,因为所有语言都有自己的特点。, 如果利用其中一个优势,通常会牺牲另一个。但是,学习一个新的 ApI 会浪费程序员大量的时间和精力,尤其是当这个 ApI 有很多与其他 ApI 重叠的功能时。

要增加代码的复用性,必须从以下几点入手:

语言功能的强大可以从以下几点看出:

语言友好:

多种语言选择

如果你正在编写一个对性能要求苛刻或与操作系统紧密结合的程序,你必须选择C。

如果您编写的程序可以随处使用,请选择 Java。

如果编写大型程序,可以的话尽量使用Ruby等脚本语言,不行的话就用Java和C。因为脚本语言带来了生产力。

用 perl 或 Ruby 编写文本处理程序。

用于编写知识处理程序。

用 Lisp 编写最灵活、最晦涩的程序。

使用 vba 编写程序。

编写服务器端程序,pHp、(用你熟悉的语言编写,如perl、Ruby)、CGI、ASp和(如果你熟悉Java)JSp都是选择。

用vb,或者写数据库程序。

进行算法研究、设计和使用。

多种语言选择

如果要追求性能和程序能力,充分利用操作系统的能力,最好使用C/C++语言。在类 Unix 环境中使用 VC 或 gcc。

如果不是追求与操作系统的完美融合,而只追求性能,还追求跨平台,那么还是选择C,但是可以选择跨平台的库,比如qt、gtk、fox、。如果您想编写游戏,还有一个跨平台选项:SDL。

如果对C领域标准的不一致不满意,对C不满意的人容易出错,对C的面向对象特性不满意的人不透彻。如果不关心跨平台,平台可以选择C#,mac平台选择(-C)。如果需要跨平台,可以选择Java。

如果您需要跨平台和广泛的支持,请选择 Java。

在类 Unix 下,最方便的工具语言是 perl,它有强大的社区和代码库支持。

如果只是作为简单应用的工具语言,Ruby 是更好的选择。它们的跨平台移植性好,应用广泛。其中比较适合入门和交流,也有利于长期使用。Ruby 是另一种不满的选择,它提供了许多额外的功能。

如果要选择程序的嵌入式语言,以前有Lisp和Java,现在也可以选择Ruby。

如果你要求动态解释执行语言,但又不想学习其他语言,C程序员的选择是pike,Java程序员的选择是。

在Java平台上,如果你想使用脚本语言,你可以使用它。

最正统的基于文档的语言或动态页面语言是。

最专业的服务器端语言是 pHp,当然还有很多其他的选择。

最著名的 XML 语言是 XUL,dtml 也算是其中之一。您还可以将 XML 用作您自己的专用语言。例如,您可以使用 XML 作为模式定制语言。XML 语言是一个比较先进的趋势,在特殊领域比现有语言更高效。

对于易于实现的语言,Lisp 和 Tcl 是选择。

Lisp 集成数据和程序的能力和自由是其他语言所不具备的。现在有一个 Lisp 的现代变体:

如果需要基于事实的编程,那么 sum 是不可避免的。

我为什么选择

首先声明我只编译应用程序,这是一个代替我自己工作的小程序。如果您编写系统程序,您将始终使用 C 或 Java。

我喜欢脚本语言。脚本语言无需编译即可运行,非常容易修改。编程是一项常规活动。程序编译后,一直在修改。没必要认真做和编译。另外,使用该脚本的每个人都可以随意修改它,无需寻找源代码。因此,C/C++ 和 Java 被排除在外。

我喜欢简单的语言。我不喜欢为了编写简单的程序而学习很多复杂的规则。需要大量学习的语言不是一门好语言。它将人视为机器。C/C++ 和 Java 都有严格但 的语法编程语言图案,并且有你永远学不完的函数、类和库。当人们看到它时它很大。而且 perl 有各种奇怪的速记符号,程序经常让人头晕目眩。简单的含义不仅简单易学,而且功能丰富。常用的东西要早准备好,大家不用写同样的数据结构程序。有丰富的数据类型、完整的面向对象结构、正则表达式等方便的编程模块。逻辑是,如果程序做得更多,人们就会做得更少。如果程序做得更少,人们就会做得更多。这是用户友好性的问题。易于使用和丰富的功能是程序设计的一个非常重要的目标,它很受欢迎。这也很好地反映了这一点。而且 perl 与 Unix 等其他工具一样强大,但它太难学习和理解。这是非常违背人性的。

关于性能。现在CpU非常强大。除大型程序和系统程序外,无需关心性能。

关于功能。如果你不是在写系统程序和接近系统的程序,就没有必要使用操作系统专门提供的功能。C可以做任何事情,但它的编程效率低且复杂。

至于我为什么不用vb,因为vb太大了。我不需要实现一个小功能来启动这么庞大的程序。太夸张了。另外,Vb没有类继承。虽然是应用程序编程,但是如果你想编译一个稍微大一点的程序,你总是会使用类继承。

它必须强大且可扩展,这样正确的学习才不会被浪费。经过简单的处理,可以使用各种C、C++库编程语言图案,也可以被C、C++调用。可以直接使用Java类,也可以直接通过Java调用。这样,yes、Java、C的学习和使用经验就不会浪费了,可以相互补充。可以提高Java和C的编程效率,可以补充Java和C的功能不足。您还可以直接与内置的 Tcl 交互。我期待简单地调用 perl 和 pHp 函数。可以使用 Lisp 和更好。

Ruby 和 Ruby 的比较

与Ruby类似,相比Ruby的优势,它可以实现列表中的条件语句和循环语句。Ruby 使用“块”来实现这个功能,更加灵活和通用。Ruby 有条件语句、循环语句等,功能类似于 Lisp。句子的表达能力更强。自带一些Unix工具,如raCC等。对比Ruby的缺点

和 Ruby 语言选择

从简单到好,选择就对了。适合寻找简单语言的人,这样很可能会引起更多的人气,所以有更多的支持。但是如果你想追求更强大的语法功能,对编程语言感兴趣,想了解各种编程概念,Ruby 是一个不错的选择。Ruby 和两者都想取代 perl,解决 perl 的缺点——面向对象的不足,但方法是混合面向对象和过程式编程语言。Ruby 是一种面向对象的语言,它允许自己伪装成一种过程编程语言。

多种脚本语言的统一与问题

现在脚本语言太多了,有必要整合一下,这是个好主意。.NET 也是一个好主意。为各种脚本提供统一的虚拟机,为各种脚本语言提供基于“类”的相互调用,为各种脚本提供统一的类库。

现在各种脚本语言只给C语言提供交互性,而这种交互性也是费力且无效的。比如perl、Ruby等,都为C提供了交互功能,脚本语言之间的交流有很多障碍。和 .NET 类似的东西为各种脚本提供了一种非常简单的方法来相互使用,避免了大量的代码重复。这个标准平台的力量是巨大的。为什么这个标准平台没有首先出现在开源领域?众多的脚本是开源的特点和优势。为什么微软要解决这个问题?之前有人问过类似的问题。为什么国内至今没有好用的类似ODbC的东西?

也许只有商业公司才有能力实现这种整合。

我的理解是,如果有创新想法的人会用他的想法来卖钱,那么开源中只剩下模仿者。kde在模仿,在模仿,在模仿Unix,gcc,bash等等都在模仿,如此等等,也在模仿,SDL也在模仿。我想知道开源社区有没有自己的创新?我所知道的创新是zope,但是zope最初是一个商业产品,然后它被开源了。perl 是创新,创新,但还有什么?开源领域只有一个,不是吗?

.NET介绍

.NET 实现的 Java 功能

代码可控,跨平台虚拟机和伪代码,免费的命令行编译器,纯面向对象语言支持XML和XML web,为jsp对应的asp.NET网页上的程序提供统一的中间件环境。

Asp.NET 和jsp 不是同一级别的Web 技术。Asp.NET 使用完整的事件响应机制。对于类似的技术,只有 JSF 和 Asp.NET 具有可比性。

.NET 中未实现的 Java 功能

免费集成开发环境,多厂商支持,跨平台成熟

免费IDE,#,ASp.NET有MS和免费开源CLR实现,MS自带Xp,Mac OS下实现(原理演示不能用于商业应用),版本下的Mono项目已经发布,即将发布2004 年 6 月 30 日;还有一个 .NET 的 GNU 实现!!

.NET 实现的 Java 中不可用的功能

多语言支持强大的集成开发环境。它的速度可与本机程序的速度相媲美。支持 COM,继承与图形和直观的表单、Web 表单和服务器端程序编程。

相对于 vs6 的改进

集成开发环境统一,使C++程序也对vb友好。

XML各种技术介绍:RDF:SVG:::XML-rpC和soap:XUL:xaml:

最先进的XML格式图形界面程序开发工具-XUL

程序大家都知道,仅次于IE的浏览器,很多人都知道它有开源版本。但是很多人只是使用它,并不知道另一个重要的功能——程序开发。开源代码三年后,1.0版本还没有出来。很多人嘲笑他超慢的发展速度。事实上,一个超酷的新产品正在酝酿中,可以算是软件开发工具的开发。一个里程碑。

基于浏览器的三层开发结构现在很流行,微软对.NET的思考就是基于这种结构。此外,无论服务器结构如何,即使是基于网页的小程序也非常吸引人。这些产品的想法是使用 HTML 作为用户界面,但开发人员经常担心 HTML 过于粗糙。而 XUL 解决了这个问题。

XUL 是 HTML 的扩展,与 HTML 完全兼容。XUL 在 XML 格式的基础上对 HTML 进行了扩展,实现了完整而强大的图形用户界面设计功能。可以设计复杂的图形界面程序。其实整体就是XUL设计的。XUL使用Css控制界面风格,DTD替换字符串,方便本地化。用于响应用户界面的操作,提供基本的逻辑编程,通过对象文档界面DOM动态控制用户界面。同时通过调用提供的丰富的底层ApI实现强大的功能。为文件操作、网络操作、图形操作等操作提供了强大的ApI,并且这个ApI是完全跨平台的。最后,

总结: XUL 提供了最强大的用户界面定制,因为它与 HTML 兼容,而 DTD 提供了最方便的本地化。XUL、RDF 提供显示、逻辑和数据的分离。底层ApI提供强大的跨平台编程能力。

希望大家关心。

最接近人类语言的编程语言——

有关详细信息,请参阅。以下是我的印象。

缺点是显而易见的。它是商业公司的产品。它只能像 Java 一样免费使用。但它不是开源的。并且它的数据库连接函数库是收费的。但它的优势也非常明显。如果因为不是开源软件而不能放心使用,也可以欣赏和借鉴它的各种特点,懂了就忍不住用起来。

第一个是Lisp语言的替代品,可以实现Lisp的所有功能。它具有Lisp语言对数据和程序的处理相同的特点,以及句子和表达的统一性。但它极大地打破了 Lisp 的局限性。它允许中缀运算符的形式没有醒目的括号,这与一般编程语言中的表达式完全相同。同时拥有丰富的库,完备的图形界面库,完备的网络库。因为是公司的产品,所以也保证了库的统一性。

自称为网络编程语言,其网络编程能力很强。一般一句话就可以下载一个文件,或者下载一个网页,或者接收一封邮件。

一个神奇的功能是它的图形界面设计。它的界面编程非常简单。它根本不使用语句和函数,但就像HTML一样,它只需要表达核心内容。这是由于“方言”的能力。

内置“方言”功能。是yacc一样的语言解析能力。“子语言”可以随时扩展。

有数十种内置数据类型。用它编程时,句子绝对是最精炼的。

可以实现运行类似Java的网络下载程序的能力,还具有沙箱功能。它比Java更进了一步,有自己的桌面,可以在上面任意启动各种程序,桌面有丰富的表达和HTML一样的超链接。您可以通过链接到功能性网站来使用各种程序,就像浏览网页一样。因为该语言比Java简洁得多,而且是一种不需要编译的脚本语言,它的程序文件很小,更适合网络传输。因为这个神奇的功能,它自称为操作系统。因为是脚本语言,自然是跨平台的。它有许多操作系统实现。

另一个特点是语言本身只是一个几百k的可执行文件,所以程序的分发非常简单。

最现代的 Lisp 解释器

Lisp 是一种古老的计算机编程语言。给人的印象是速度慢,输入输出能力弱,没有图形界面,库太少,很多功能无法实现。这一切都在手中改变了。

它具有现代语言所具备的大量功能,如嵌入脚本的能力、图形界面编程能力、面向对象的能力、组件编程能力、正则表达式能力、XML能力、作为网络的输入输出能力服务器和客户端,以及其他网络能力,生成独立可执行文件的能力。一个集成的编辑和调试环境。但是,它的程序执行速度还是稍慢了一些。

当然,它具有所有优点,定义语法宏的能力,命名空间的能力,不区分数据和程序的能力,堆栈内存管理,无限嵌套,以及用简单的方式表达所有语句和数据“表”。自然而然地具有在程序环境中存在的永恒能力。这些功能似乎在最新的编程语言中出现。看来目前的编程语言发展趋势是从C语言的方式向更多Lisp特性的方向发展。就像逐渐拥有Unix已经实现的越来越多的功能一样。

我知道 Lisp 的编程环境已经很好了。

语言印象

令人印象深刻的是,它是一门贯穿整个开发周期的语言,并且在开发周期中是可追溯的。它类似于艾达。它是一种类似于 C++ 的编译型面向对象语言,但更简单且能够进行多重继承。它是C语言中面向对象编程的替代品。

盎司语言

oz介绍,它是一种面向对象、逻辑编程、并发分布的语言。oz 给我印象最深的是它的多线程功能。一个简单的 Case 语句可以启动多个线程。此外,它也是编写分布式并发人工智能程序的替代品。

各种语言的选择以及语言之间的关系

一般用什么软件,用的软件语言

以我使用的软件为例:

要使用,只需使用vba编程。

只需使用编程

使用 zope 只使用编程

如果您使用 gimp,请使用或编程

只需使用或编程

只需使用编程

然后看处理的是什么类型的数据

如果您正在处理文件操作,请使用语言。比如bash

如果您正在处理文本文件,请使用 perl 或 awk。如果您喜欢 perl 的风格并编译大型程序,您应该使用 Ruby。

如果您正在处理数据库,只需使用 sed。否则,使用 sql。

如果是对象数据库,可以使用+ZODb,或者Lua,fish

如果通用数据库不能满足要求,需要专家系统,使用

如果您正在处理结构化文本,例如 XML,请使用 xslt。

处理HTML,客户端使用,服务器端使用pHp

如果您正在处理类似于语言分析的文本,请使用 yacc

如果处理的结果是打印文件或屏幕文件,使用tex

如果是图像、动画或其他二进制文件,一般使用C语言。

如果处理问题和操作系统底层,使用C语言

在语言特点上

如果对运行多线程的并发性和分布性要求极高,可以考虑oz语言。

如果你很看重文档,希望程序的文档写好,程序差不多完成,那就用Cweb

复杂的程序需要在编写之前用 UML 记录下来。

如果您想编写大型程序或计划只学习一种编程语言,请使用

如果你写一个程序来处理复杂的数据结构和算法,使用Lisp and(类似Lisp的风格,希望更简单,使用)

如果你想把一种语言最简单的实现作为嵌入式语言,就用Tcl,如果Tcl有限制,就用Lua

C语言是最流行的语言,但是C语言有一些缺点,因此产生了很多改进C的语言

因为C写不出大程序,C++诞生了

因为C++也有指针等缺点,所以Java诞生了

如果你不喜欢 C++ 的缺点,想使用编译型语言,选择

C语言的缺点之一是标准库规模小,不能解决所有问题。产生了大量不兼容的库,导致许多不可移植的程序。如果您想要一种与 C 相同级别的可移植编程语​​言,请选择 Ada。Ada 的图形用户界面库和各种操作系统相关的库是标准化的,您可以选择不同厂商的解决方案。它是军队所需的标准编程语言。

如果你不喜欢C语言的繁琐,并希望你经常做的编程可以简单,那么你可以使用它。为了完成同样的工作,代码行数是 C 的一小部分。

C 风格的脚本语言是 pike

关于图形用户界面的选择

最简单的图形界面是tk,可以在各种平台上使用

如果有更高的要求,使用gtk。Gtk 的可移植性较差。

一个以可移植性为目标的开源 C 库是

如果你想要简单的编程并且不是很苛刻,你可以使用XUL

跨平台的图形用户结构是Java的awt和。如果不是跨平台,还有ibm的Java解决方案。

如果你不排除商业编程语言,你可以使用qt,因为qt的程序需要付费才能用于商业用途。

如果你要写一个全屏的文本界面程序,它是最权威的。我们可以回忆一下,C 的编程环境与图形用户界面一样友好。它是一个全屏文本用户界面。

如果你写一个家庭式的程序,上面的选项也可以考虑。gtk也可以。

>如果您正在处理结构化文本,例如 XML,请使用 xslt。XML 本身也可以计算在内。>处理HTML,客户端,服务端pHp不是唯一的pHp一. >如果处理的结果是打印文档或者屏幕文档,使用tex 。>如果是图像、动画或其他二进制文件,一般使用C语言。>如果是操作系统底层处理的问题,我会在C语言的C/C++中选择C++。>如果对运行多线程的并发性和分布有极高要求,可以考虑oz语言>>语言。20 年后的一门语言。> 如果你写程序来处理复杂的数据结构和算法,使用 Lisp 并且> Lisp 也很流行。

>如果你要写一个全屏的文本界面程序,它是最权威的。我们>> 可以回忆起C 的编程环境和图形用户界面一样友好。It> 是一个全屏文本用户界面。什么,。

或许,语言是用来超越的。许多应用程序需要混合使用不同的语言。我发现将它嵌入到应用程序中非常诱人。

文学编程与CWEb简介

CWEb是tex作者创造的一种编程语言。tex 是主流的文档打印标准和文档生成工具。tex及相关软件都是用Cweb编写的,tex体现了Cweb的编程特点。CWEb的编程思想被称为“文学编程”。事实上,它应该被称为“文章编程”,因为它与文学几乎没有关系,但类似于学术著作。主要思想是:编程应该像写学术著作一样,有一个整体的思路,并以节、章、节、小节、小节的形式逐步丰富。这实际上类似于我们所说的“自顶向下”的编程方法。但是“自顶向下”只是软件工程的一种方式,它是通过编写文档来实现的,不与编程语言结合。在我看来,CWEb在编程语言中实现了“自顶向下”。

CWEb的实现是“宏替换”,就是用更具体的内容逐层替换更一般、更简洁的内容。我们使用的编程工具“”其实是一个宏替换工具(我没用过,只是听说)。Zope 的TAL 语言是替换工具,但不是宏替换工具,因为它的内容是不可执行的。如果内容是可执行的,那么它也可以称为宏替换。

本文标题:开放源代码的必要性程序有多少,看看字处理程序是多少
标题链接:https://www.cdcxhl.com/news22/297622.html

成都网站建设公司_创新互联,为您提供外贸建站外贸网站建设用户体验网站设计公司静态网站网站改版

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设