LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 07-13-2009, 11:24 AM   #1
jeradj
LQ Newbie
 
Registered: Jul 2009
Posts: 7

Rep: Reputation: 1
So... open source .net equivalent? (not mono)


So I've been occasionally looking around for a while, and this question keeps rolling around in my head.


Where or what is the .net open source/Linux equivalent?

Mono doesn't count in my mind, as unless my admittedly very basic understanding of it is incorrect, it essentially is the .net framework.

Was/is Java supposed to be the contender? Is the fight already over? Maybe I've just been hanging with the wrong crowd, because all I ever hear is .net & c# -- and if I ask for an open source (or free) alternative, it's either Mono (which as I've already stated, doesn't count in my book), Java (which although I have next to no experience with, from what I've read will end up being a mix of components from different vendors, fairly complicated in comparison to .net, and probably not free), and then the last alternative is usually LAMP or some other common, similar stack -- which again is a viable alternative, but definitely a far cry from being equivalent or directly analogous to .net.


I'm a fairly inexperienced programmer, and so maybe my opinion is just ignorant, or misinformed, or misguided.

.net stands out to me though for it's singularity and cohesion -- and ease of use as well -- maybe the only way to get that is to have all the pieces coming from the same source (MS)

anyway, do I have it wrong? Am I simply ignorant of an open source platform/project that would be nearly directly equivalent to .net?
 
Old 07-13-2009, 12:33 PM   #2
MensaWater
LQ Guru
 
Registered: May 2005
Location: Atlanta Georgia USA
Distribution: Redhat (RHEL), CentOS, Fedora, CoreOS, Debian, FreeBSD, HP-UX, Solaris, SCO
Posts: 7,831
Blog Entries: 15

Rep: Reputation: 1669Reputation: 1669Reputation: 1669Reputation: 1669Reputation: 1669Reputation: 1669Reputation: 1669Reputation: 1669Reputation: 1669Reputation: 1669Reputation: 1669
.net and C## are Windoze attempts at non-standard standards.

Your question faulty as regards Java as it assumes Java doesn't exist on Windoze even though it does. C has been on UNIX (and Linux as gcc) since inception because UNIX was written in C. C was extended to be object oriented with C++.

Other than Windoze I don't know of anyone using .net or C##.

UNIX/Linux have a plethora of tools for programming in various languanges and scripting languages. Have a look at shell scripting (bash/ksh/csh), as well as tools like Perl, Ruby, Python etc...
Which one or ones you use is a matter of preference for the most part.
 
Old 07-13-2009, 12:51 PM   #3
H_TeXMeX_H
LQ Guru
 
Registered: Oct 2005
Location: $RANDOM
Distribution: slackware64
Posts: 12,928
Blog Entries: 2

Rep: Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301Reputation: 1301
What do you mean "not mono", yes mono, that's the only attempt as such madness, and it should die ASAP.

Try a different language.
 
Old 07-13-2009, 01:13 PM   #4
rjlee
Senior Member
 
Registered: Jul 2004
Distribution: Ubuntu 7.04
Posts: 1,994

Rep: Reputation: 76
A little history:

Sun invented a language with a huge object library called Java. They then licensed this language to Microsoft to make its own implementation (Microsoft J++) on the condition that Microsoft didn't alter the language specification. Microsoft then produced its own version of MS J++ that altered the specification of the language. Sun sued over licence infringement, and eventually won, and Microsoft had to change the name of their language to C# to avoid trademark infringement.

.NET was a set of APIs developed by Microsoft to provide a set of APIs that were common across all of its own languages (at least Visual Basic and C#). I hear that it's quite popular in the Windows world.

After another anti-competition lawsuit, Microsoft was ordered to document its external interfaces and allow third party vendors access to them under “reasonable” licensing terms. Hence why they have to allow the Mono project to exist (at least until the term of their “sentence” runs out).

I'm not familiar with .NET myself, but as I understand it it's a framework for application development. The core components aren't tied to any one platform but most of the extensions are. And given Microsoft's reputation, it's probably just a number of functions bolted on to an existing code base.

You won't find anything fitting that description on Linux, but there are a number of similar packaged depending on what you want to do. I'd start by looking at Qt, which is a relatively extensive application framework written in C++ (and also has bindings for some other languages like Perl, making it quite a good simile for what I understand .net to be).

Hope that helps,

—Robert J Lee
 
Old 07-13-2009, 08:53 PM   #5
graemef
Senior Member
 
Registered: Nov 2005
Location: Hanoi
Distribution: Fedora 13, Ubuntu 10.04
Posts: 2,379

Rep: Reputation: 148Reputation: 148
In away you raise two different issues with your question. C# and Visual Basic are programming languages, whilst .net is (essentially) a development environment.

From the language perspective neither Visual Basic or C# are perfect - no language is - nor can it be said to be dominant, for arguably the best insight into language popularity see the TIOBE Programming Community Index

From a development perspective, .net has provided an all in one box, but you can achieve the same if not better - technically - by looking at the tools that are available and selecting those that are right for the job in hand. For an overview of IDEs that are available see the sticky thread in this forum. The point with open source is that you have choice, invest some time in looking at the choice that is available and select the tools that work for you, and if it is the dotnot tools then fine but do yourself a favour and see what is available before locking yourself into what is essentially a tool-set with little flexibility.
 
Old 07-13-2009, 11:13 PM   #6
Wim Sturkenboom
Senior Member
 
Registered: Jan 2005
Location: Roodepoort, South Africa
Distribution: Ubuntu 12.04, Antix19.3
Posts: 3,794

Rep: Reputation: 282Reputation: 282Reputation: 282
As the others indicated, there is no alternative for dotnet. I also don't see a need for it but that is personal; I don't even see a need for OO programming.

Quote:
.net stands out to me though for it's singularity and cohesion -- and ease of use as well -- maybe the only way to get that is to have all the pieces coming from the same source (MS)
I've just started playing with dotnet (some MS studio express with C#) and don't consider it easy. Unless you refer to the IDE(s) but that is not a dotnet functionality.
I'm not quite sure what you mean by singularity and cohesion; can you elaborate on that. Someone gave me a book that works through VB and C# and there are a number of examples where you have to do different things to achieve the same, so I don't see the cohesion.
 
Old 07-14-2009, 05:43 AM   #7
nowonmai
Member
 
Registered: Jun 2003
Posts: 481

Rep: Reputation: 48
The fight isn't over, because there was never really a fight to begin with. .NET is MS attempt to have a write-once-run-anywhere language similar to Java, however, since MS only develops for MS platforms, that kinda defeats the point. In contrast, Java runs on may platforms... desktops, servers, phones, SIM cards, toasters... you name it.
Secondly, Java is an integral part of at least 2 high-end enterprise development stacks (usually comprising at least a few of WebSphere, RHEL, Oracle, JBoss) .NET, to date, is not, and doubtfully will ever be. MS SQL cannot be considered an Enterprise database, and IIS can definitely not be considered an Enterprise webserver.
So, as you can see.. there is only a race if there is more than one competitor.

C# is not a bad language, and Visual Studio is a good development environment, but that's kind of it. Sure, it's nice to get everything you need in one pretty package, but when you start to realise the limitations, you have to start again with a whole new system. This can be shortcut by skipping over the .NET thing, unless you actually want to be a .NET dev (and they are legion, believe me).
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: Mono delivers Foundation-free open .NET alternative LXer Syndicated Linux News 0 10-06-2008 06:10 AM
LXer: Microsoft's Open-Source Trap for Mono LXer Syndicated Linux News 1 10-03-2007 10:14 PM
LXer: Open Source Mono Gets Visual Basic LXer Syndicated Linux News 0 02-21-2007 06:31 PM
LXer: Mono’s demise bad news for open source LXer Syndicated Linux News 0 12-10-2006 09:03 PM
Open Source equivalent of GoToMyPC? The MJ Linux - Software 9 08-25-2006 07:39 PM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 11:03 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration