我正在开始我的第一个独立盈利企业。我很难决定使用哪种语言。我想在Perl中编写我的应用程序,但我认为编译它不够简单。如果我不用Perl编写,我会用C ++编写。
该应用程序将具有许多功能,包括wxwidgets界面,处理SDL,计时器,一些线程和音频处理。程序本身有点复杂,但不是很大。
所以我的问题是:
编辑: 我的一些项目规范。
其他一切都很平凡。一些不同的类和容器。一些自定义GUI控件。
答案 0 :(得分:12)
我既是C ++又是Perl程序员。 C ++是一种很好的语言,但每当我有选择时,我都会使用Perl,因为开发只是进行得更快。
几条评论:
答案 1 :(得分:11)
使用C ++。定时器,线程,音频,SDL,wxwidgets,这些都是Perl可以做的事情,但并不擅长。此外,PAR或perl2exe是分布的笨重机制。他们工作,但他们并不理想。与此同时,C ++(我非常鼓励你看看使用Boost)是否适合这个角色。
答案 2 :(得分:9)
为什么不使用两者的混合?这通常是现在很多发展的方式。
我建议使用Lua / C ++或Python / C ++组合(我不确定Perl / C ++组合的效果如何,但这也是一个很好的选择)。
就我个人而言,我已经完成了一堆Lua / C ++组合,这非常棒。
答案 3 :(得分:6)
使用Perl的一个很好的理由是元编程。
Perl非常灵活,可以让你编写代码来编写代码(这就是Moose的神奇之处)。您将节省时间并减少压缩所需的错误数量。
使用Perl的最大理由是CPAN。
答案 4 :(得分:5)
我已经使用PAR为Windows打包了一个实质性的Perl / Tk程序。它需要一些摆弄,但它确实有效。
如果你至少在Perl和C ++一样经验丰富,那么Perl的开发应该更快。但是等效程序的运行时速度会变慢。所有其他标准都可以满足,所以我认为这取决于个人选择。
答案 5 :(得分:4)
个人?我说不要长时间坚持下去。无论采用哪种方式都有利有弊,但听起来你正陷入“分析瘫痪”的危险境地。如果没有别的,可以掷硬币或选择你认为最漂亮的硬币。
答案 6 :(得分:1)
功能很重要。代码,无论语言如何,都会做类似的事情,特别是如果使用相同的库和组件。除非你通过库和工具包完成了确切的功能,否则在Perl中进行原型设计。
有一种观点认为,在动态语言中开发将花费更少的时间。 Perl和C ++中存在类似的问题,即在正确的位置下拉,用正确的值填充它,从用户输入中对程序状态进行适当的更改。
如果Perl没有在某些平台上完成它,请将代码转换为C ++。
可能有一些指针有助于这种方法:
这意味着你可能会用OO Perl编写原型。一旦你在一个平台上确定了高级功能 - 假设你可以在Perl中获得那么多 - 那么C ++或多或少是一种优化。
也许您可能会将原型限制在或多或少的C ++同源词中。但我不确定这一点,你可以将map
分解为循环,或者甚至用一个用函数指针调用的过滤函数替换它来测试函数。
答案 7 :(得分:0)
用C ++编写您的核心功能,然后在相关平台的工具中编写应用程序的前端,即Cocoa for Mac OS X,.NET / Delphi / MFC for Windows等。
这是我开发跨平台桌面应用程序的首选方式。当然,我对你想要完成的事情知之甚少,所以对你来说可能太胖了。