开发者

Open Source CMS (.Net vs Java) [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
开发者_JAVA百科

Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.

Closed 7 years ago.

Improve this question

I must say up-front that this is not a strictly programming-related question and a very opinionated one. I am the lead developer of the dominant .Net CMS in my country and I don't like my own product :). Managerial decisions over what is important or not and large chunks of legacy code done before I joined gives me headache every day I go for work. Anyway, having a vast amount of experience in web industry and a very good grasp of C# and programming practices I'm designing my own CMS the past few months. Now the problem is that I'm an open source kinda guy so I have a dilemma. Should I use C# and .Net which has crippled multi-platform support or should I drop .Net entirely and start learning Java where I can create a truly open-source and cross-platform CMS? Please don't answer that I should contribute to an existing open source CMS. I ruled that out after spending a great deal of time searching for something similar in structure to what I have in mind.

I am not a native speaker, so feel free to correct my syntax or rephrase my question.


I would focus on C# and .NET using only Mono compatible cross-platform libraries.

Your code will be able to run on the vast majority of platforms that way.


I'll start from the assumption that both .NET and Java have large and equivalent supporting infrastructures, APIs etc. You have extensive .Net knowledge and would need to learn the Java-equivalents of some subset of that in order to implement in Java.

I value learning something new quite highly, so I don't see a fundamental problem in going for Java. But, If the "footprint" of what you need to learn is very extensive then it may get in the way of your real objectives - which is to build something.

So I think that one big question is the size of your CMS learning footprint. My guess is that a CMS is very much about logic and data structures and probably only uses a small set of Java APIs - network and file io, or databases maybe? Any UI might be platform neutral Javascript/ AJAX perhaps?

The primary alternative seems to be Mono. I can't speak to the practicalites of working under Mono, I'm guessing that it's quite OK. I'd be more concerned about whether the range of platforms is enough for you. iSeries for example, is that supported? Does that matter to you?

My personal predjudice is that emulations tend to be unsatisfactory, there's always a gotcha. So I'd go for Java. But then I'm a Java guy ...


I'm not sure why you'd use C# or Java for this particular project. I'm not as versed in CMS design as I could be, but I know C# pretty well, and it's hard for me to see what advantages C# offers over Python in this problem domain, especially given robust frameworks like Django and Pylons as a starting point. (My knowledge of Java is...faint.) What specific elements of the design would make C#/Java a better choice?

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜