我应该学习Openedge作为C#程序员吗?

时间:2009-02-26 13:03:32

标签: c# .net openedge

我们在我工作的公司中有一个Progress OpenEdge(http://en.wikipedia.org/wiki/Progress_4GL)开发团队。 我是那里唯一的c#开发者,非常喜欢它。所以现在经理要我学习OpenEdge中的编程。他不希望我成为一名优秀的OpenEdge程序员,但他希望团队成员能够理解这两个世界。他希望球队能从中受益。 我不是不愿意学习,但我想成为一个更好的开发者,我想发现.Net的其他方面还有很多。 那么有什么关于Progress OpenEdge的好点我会从中获利还是应该远离它。

8 个答案:

答案 0 :(得分:9)

  1. OpenEdge是一个用于构建CRUD应用程序的强大框架;但这是一种利基技能,拥有它没有类似SAP的工资溢价;相反,体面的OpenEdge开发人员很难掌握沼泽标准费率 - 经营者不会通过后门招聘OpenEdge开发人员。

  2. 核心ABL(OpenEdge语言)与主流语言不同,对于一个好奇的程序员来说很有意思,而且对于每个人来说,老板都应该了解其他人来自哪里才有意义。

  3. 所以,记住这些要点:

    值得学习基础知识,以丰富你对你的核心能力的理解,就像“英国人应该知道什么,只有英格兰知道谁?”。您还可以发现数据访问的便利性令人大开眼界。

    在一个无限广泛使用的框架中开发你的专业知识而分散注意力并不值得花费太多时间。

答案 1 :(得分:6)

如果您的经理希望您学习OpenEdge,那么他就有理由这样做。一个原因可能是你将进行一些开发,也许在其他人关闭时提供掩护。正如他所说,另一个原因可能是他希望团队了解这两个世界。

您需要了解的是,Progress人员是否也将关注.NET。如果没有,你就会知道他想到了哪些原因。

答案 2 :(得分:3)

学习新的(和不同的!)语言绝不是一个坏主意。它使思维工作,并教你可能无法用你的语言提供的概念。学习OpenEdge不会对您的C#知识产生负面影响,您可以将它们串联起来学习。我个人目前正在阅读C#,Python,PHP,Ruby和Groovy,而我在Java工作的大部分时间都在阅读,我只想知道一切。 (更不用说阅读所述语言的多个框架了。)

简而言之,您将始终从学习新语言中获益,因为它将为您提供与您习惯的视角不同的视角。

答案 3 :(得分:3)

您使用的是哪个版本的OpenEdge?我可能有偏见,但我会说这是值得的。有人在寻找OpenEdge开发人员,并且Progress最近发布了一个名为“OpenEdge GUI for .Net”的产品,它允许您使用.Net控件仅使用OpenEdge ABL代码构建.Net前端,将会有越来越多的商店寻找对OO .Net世界有所了解但也了解ABL的人。

关于ABL的另一个好处是它非常向后兼容(当我们升级版本时没有VB6噩梦)(虽然有些人可能会说这种向后兼容性是一个错误)。

ABL现在正在将其传统的程序方式与OO概念相结合,因此您可以根据有意义使用一种或另一种或两种理论。

我想你将要学习的主要内容是数据访问组件,是的,这对.Net世界无法帮助你,但我认为你会发现它比其他数据访问更容易学习,所以,将是一种资产。

最后,如果您拥有良好的.Net基础,那么您将成为您的雇主(并成为未来工作申请的另一个方框)的重要资产,帮助他们的OpenEdge开发人员了解.Net想法。我认为进展不会让ABL编译成CLR代码(对不起,如果我的术语有错误。是不是意思是位代码?你知道在.Net VM中运行的代码)但他们确实知道.Net正在赢得桌面战,他们正在借用一些概念(.Net GUI和数据集)。我希望(再次偏见)你会看一些OE数据访问并说,我希望.Net有一个简单的方法来做到这一点!

答案 4 :(得分:3)

这是一个利基,但利基可能是非常值得的。它也可能像被困在泥里。事实证明这取决于很多因素,但正如其他人所说,学习新东西总是好的。

答案 5 :(得分:3)

凭借我12年的Progress / Webspeed / Sonic经验,我每小时赚75欧元。

答案 6 :(得分:2)

OpenEdge似乎主要由软件开发人员用于构建产品。最终用户通常只与应用程序的rdbms端进行交互。学习任何新语言对恕我直言都是一件好事,与你习惯的事情越有不同 - 当我们的假设和习惯受到挑战和扩展时,我们会更好地学习。作为rdbms的OE几乎是“设置并忘记”,需要很少的维护方式。建议你在线访问Progress forums并查找DBA管理员指南,完成该工作,然后阅读嵌入式SQL,因为这可能会在短时间内让你更有意义。 在完成所有这些消化后,请继续写下来。没有什么比将橡胶放在路上并建造可用的东西更好的了。向其他开发人员询问支持问题,或者建立一个简单的形式,然后就这样做。

答案 7 :(得分:0)

如果您的代码与OpenEdge程序进行交互,那么您应该了解有关环境的知识,以便更好地与其进行交互。