2013-02-22 52 views
0

我在读一本关于ASP.NET MVC,它规定:'port'是什么意思与软件开发有关?

“NVelocity是Java Apache Velocity模板引擎的端口,NHaml是Ruby on Rails的Haml的引擎端口” 。

在这种情况下,“端口”一词意味着什么?

+3

通常,应用程序的“端口”是将存在于一种操作系统或编程语言中的应用程序重新写入/转换为另一种操作系统或编程语言。所以NVelocity是Java Velocity的.Net版本。 – JScoobyCed 2013-02-22 01:40:09

+0

真棒回答JScoobyCed! – 2013-02-22 03:00:07

+0

顺便说一句 - 投下这个问题呢? WTH? – 2013-02-22 03:01:57

回答

5

Porting (Software Engineering)条目维基百科:

在软件工程中,移植是改编软件,使得可执行程序[或库]可以是从不同的计算环境中创建的过程中它是最初设计的(例如[不同语言,]不同的CPU,操作系统或第三方库)。

..术语“端口”源自拉丁语portare,意为“携带“。当代码与特定操作系统[或语言]或体系结构不兼容时,代码必须“携带”[或移植]到新系统。

因此,“端口”是“移植”的结果,并且有许多不同种“端口”。

在某些情况下,端口可能是“只有在精神”,在很大程度上来自想法原来实行的,但另有股无码借用;图书馆通常会进一步分歧以利用目标语言特征。另一方面,应用程序端口 - 尤其是被设计为可在不同“UNIX”环境之间移植的应用程序端口 - 可能共享除构建过程之外的所有内容。

+1

有些只是从原始来源自动生成的,大家都希望它们能够正常工作^ _^ – Alxandr 2013-02-22 01:45:06

+0

感谢pst!很好的答案! – 2013-02-22 03:02:36