是否可以支持使用不同语言编写的同一类型的多个应用程序?

时间:2021-05-04 04:06:43

As much as we would all like to say it is a benefit to programmers to be language agnostic, is it really feasible to support multiple enterprise Web applications of the same type all written in different languages? Think about how complicated a CMS or e-commerce system can be -- now imagine supporting three different CMS platforms all written in different languages. I would hate to be known as a .NET or Java or PHP shop, but I also don't want to be the vendor who says they can support a solution they have never worked with, upsetting a client who wonders why we can't get something done right on time. Can anyone speak from experience on this? Does your company usually just suck it up, and try and to learn a new platform on the fly? Do you bill up-to-speed, or eat those costs?

尽管我们都希望程序员能够与语言无关,但是支持同一类型的多个企业Web应用程序是否真的可行,这些应用程序都是用不同的语言编写的?想想CMS或电子商务系统有多复杂 - 现在想象一下,支持三种不同语言的CMS平台。我不想被称为.NET或Java或PHP商店,但我也不想成为那些表示他们可以支持他们从未使用过的解决方案的供应商,让一个想知道为什么我们不能解决的客户感到不安按时完成任务。任何人都可以从中获得经验吗?您的公司通常只是吮吸它,并尝试即时学习新平台吗?您是否快速收费,或吃这些费用?

2 个解决方案

#1


1  

I think it all depends on who your clients are and what they expect. I think knowing about different technologies is good, but really when you're hired by someone, they expect you to know what you are doing. Personally, I would much rather be known that I do a really good job with a certain type of technology and when hired, I get the job done well.

我认为这完全取决于您的客户是谁以及他们期望的是什么。我认为了解不同的技术是好的,但实际上当你被某人雇用时,他们希望你知道你在做什么。就个人而言,我宁愿知道我在某种技术方面表现非常出色,而且在聘用时,我的工作做得很好。

If you try and go after every contract without regard to what your core competencies are, you aren't going to succeed. You'll anger the people who do hire you and make mistakes, and you'll potentially miss opportunities where you can really shine. Sometimes you have to make compromises to pay the bills, but if you aren't careful, it can bite you in the end.

如果你试着去追求每一份合同而不考虑你的核心竞争力,你就不会成功。你会激怒那些雇佣你并犯错误的人,你可能会错过你可以真正发光的机会。有时你必须妥协以支付账单,但如果你不小心,它最终会咬你。

The large consulting firms I've worked with throw resources at it and hope they don't anger too many people. They mainly do this because they know that the people who work with the consultants and get angry when they don't get the job done aren't the ones making the decisions to keep them hired. To them (not all of them I know, but some definately), don't care if they screw up because they ultimately know they can convince the VPs and SVPs to keep them around.

我曾与之合作的大型咨询公司为此投入资源,并希望他们不会激怒太多人。他们主要这样做是因为他们知道与顾问一起工作并且在他们没有完成工作时生气的人并不是那些决定雇用他们的人。对他们来说(并非所有我知道的,但有些人肯定),不在乎他们是否搞砸了,因为他们最终知道他们可以说服VP和SVP让他们保持身边。

#2


1  

To be honest, I think you tend to see this kind of thing happen over time, no matter how disciplined the organization is. It's natural for new methodologies to come bundled in the form of new libraries, frameworks, or even languages. Keep in mind that a .NET shop may well have been a ASP/VB shop at one time. They'll probably still maintain older systems for clients, because there's little benefit to rewriting everything from scratch.

说实话,我认为随着时间的推移,无论组织的纪律如何,你都会看到这种事情发生。新方法以新库,框架甚至语言的形式捆绑在一起是很自然的。请记住,.NET商店很可能同时是一个ASP / VB商店。他们可能仍然会为客户维护旧系统,因为从头开始重写所有内容几乎没有什么好处。

I'm not sure anyone has the luxury to keep everything "the same," because language issues are minor compared to library or framework issues -- especially the ones you build yourself.

我不确定任何人都可以保持一切“相同”,因为与图书馆或框架问题相比,语言问题很小 - 特别是你自己构建的问题。

#1


1  

I think it all depends on who your clients are and what they expect. I think knowing about different technologies is good, but really when you're hired by someone, they expect you to know what you are doing. Personally, I would much rather be known that I do a really good job with a certain type of technology and when hired, I get the job done well.

我认为这完全取决于您的客户是谁以及他们期望的是什么。我认为了解不同的技术是好的,但实际上当你被某人雇用时,他们希望你知道你在做什么。就个人而言,我宁愿知道我在某种技术方面表现非常出色,而且在聘用时,我的工作做得很好。

If you try and go after every contract without regard to what your core competencies are, you aren't going to succeed. You'll anger the people who do hire you and make mistakes, and you'll potentially miss opportunities where you can really shine. Sometimes you have to make compromises to pay the bills, but if you aren't careful, it can bite you in the end.

如果你试着去追求每一份合同而不考虑你的核心竞争力,你就不会成功。你会激怒那些雇佣你并犯错误的人,你可能会错过你可以真正发光的机会。有时你必须妥协以支付账单,但如果你不小心,它最终会咬你。

The large consulting firms I've worked with throw resources at it and hope they don't anger too many people. They mainly do this because they know that the people who work with the consultants and get angry when they don't get the job done aren't the ones making the decisions to keep them hired. To them (not all of them I know, but some definately), don't care if they screw up because they ultimately know they can convince the VPs and SVPs to keep them around.

我曾与之合作的大型咨询公司为此投入资源,并希望他们不会激怒太多人。他们主要这样做是因为他们知道与顾问一起工作并且在他们没有完成工作时生气的人并不是那些决定雇用他们的人。对他们来说(并非所有我知道的,但有些人肯定),不在乎他们是否搞砸了,因为他们最终知道他们可以说服VP和SVP让他们保持身边。

#2


1  

To be honest, I think you tend to see this kind of thing happen over time, no matter how disciplined the organization is. It's natural for new methodologies to come bundled in the form of new libraries, frameworks, or even languages. Keep in mind that a .NET shop may well have been a ASP/VB shop at one time. They'll probably still maintain older systems for clients, because there's little benefit to rewriting everything from scratch.

说实话,我认为随着时间的推移,无论组织的纪律如何,你都会看到这种事情发生。新方法以新库,框架甚至语言的形式捆绑在一起是很自然的。请记住,.NET商店很可能同时是一个ASP / VB商店。他们可能仍然会为客户维护旧系统,因为从头开始重写所有内容几乎没有什么好处。

I'm not sure anyone has the luxury to keep everything "the same," because language issues are minor compared to library or framework issues -- especially the ones you build yourself.

我不确定任何人都可以保持一切“相同”,因为与图书馆或框架问题相比,语言问题很小 - 特别是你自己构建的问题。