实际上,我在智利的太阳能电池板解决方案领域为一家10人的小公司工作。我在linux上工作了20年了。当我学习编程的时候,我和艾菲尔学习了很多,我发现这真的是一门很棒的语言。从那以后,我从一种语言到另一种语言都很沮丧,因为它缺少了很多很棒的概念,比如
- 真实对象(无字符串!=字符串;…)
- 多重继承
- 多态性
- 一般性
- 合同
现在使用Java是因为
- 大部分是免费的
- 教程和帮助的社区非常庞大
- 其多平台
我正在寻找专业人士&说服我的层级实例的缺点(基本上是说证明1500美元=>1年和2000美元=>2年的许可证价格是合理的),并确保我不会假装我会选择一个我会后悔的解决方案,因为我很难获得使我的解决方案发挥作用所需的支持。ISE Eiffel在生产中是否可靠?我必须忍受数小时的痛苦才能解决工作问题吗?
什么是优点&缺点
优点
- 帮助我编写真正高质量代码的概念(多继承、多态、泛型、契约)
- 很高兴使用这样好的工具进行开发
- 生成代码的质量和可靠性
缺点
- 糟糕的社区,意味着几乎没有教程
- 我不擅长C,所以深入研究C库的实现会让我(和公司)付出代价
- 价格高,必须合理
- 如果我有多年的Java经验,我的课程就不会那么好
- 如果像大多数程序员一样不知道这些概念,那么组建其他程序员就不容易了
我也在一家小公司工作,两年前我们决定搬到埃菲尔铁塔。我们的问题和你说的完全一样。我们现在有了官方许可证和支持。我研究了很长一段时间(从2014年开始),知道能够声明它可以用于生产的唯一好方法就是这样做
这就是我们所做的,现在软件已经投入生产,运行稳定、安全,性能良好。在生产中,web API基于HAL+JSON,使用EiffelWeb框架创建,并使用为公司目标创建的可重用域组件扩展自写框架。
因此,ISE Eiffel在生产使用方面肯定是可靠的,并且支持非常出色。你不会有任何时间的痛苦,但当你用EiffelStudio编写软件时,你会得到很多时间的快乐,但软件工程的所有其他方面都将一如既往地困难;-)。
关于你的其他缺点,我的两分钱是:
- 对于课程来说,更重要的是你作为一个人是谁,以及你是否适合当前团队。在我看来,当一个人接受了模型驱动的方法的教育,并这样做和思考时,他可以在任何环境中快速使用这些知识。对我个人来说,这比擅长一种特定的编程语言更重要。尽管我知道在某些情况下,我们也需要专家来快速完成工作。这一切都是个人的选择,两者都是这个行业所需要的
- 如果你需要团队中的其他程序员来做这件事,你只能和想要的人一起工作。我从经验中知道,有些人想要它,而另一些人就是不想要。我的建议是不要把精力放在不想要它的人身上。使用这项技术,证明它是有效的,也许他们会被说服,否则就去找其他看到这一点的人
- 如果管理层不支持不仅与Eiffel合作,而且与Bertrand Meyer的想法合作的决定,那么不要这样做。你会发现自己总是与之斗争,而其他人(与软件无关)很难理解。这是一个信任的问题,当(双方)都不信任时->不要这样做
- 我们现在还收到了关于Eiffel环境如何处理漏洞的问题,这些问题与Linux和Java社区处理漏洞的方式进行了比较。Eiffel没有像这些技术那样被使用,但Eiffel软件本身是建立在Eiffel方法和语言的强大质量核心之上的。这根本无法与其他环境进行比较。但其他人也不理解这一点,那么如何解决这一问题呢?这是一个你在使用埃菲尔铁塔技术时会遇到的例子
很多单词,但你的问题的简单答案只是:是的,它可以!
对于生产使用来说,它肯定足够可靠。
你可能不得不为C库编写包装器,这完全取决于你想做什么
你提到了网络服务。有一个好的web框架。但是(据我所知)不支持W3CXML模式。
我建议你尝试使用GPL版本编写一个小原型(你不会分发原型,所以你不会受到GPL的限制)。然后你应该能够自己评估你的使用适合性。