Create .Net applications on Linux and Mac OS X

This article is cited from Windows Developer Power Tools by James Avery and Jim Holmes, under license from O'Reilly Media Inc.

Mono is an open source deployment of .NET Framework built on Linux, Solaris, Mac OS X, Windows and Unix. If you're developing on Windows, you can build Mono applications using Visual Studio or SharpDevelop. Both IDE cannot run on Linux or Mac OS X. MonoDevelop starts like a SharpDevelop IDE port, but then develops independently into Mono IDE for Linux desktops using GNOME.

Begin

MonoDevelop requires a Linux version running on the GNOME platform. (Here we will take the example of Red Hat Fedora Core 5). The easiest way to run MonoDevelop is to use the Mono 1.1.15_2 installer (you can download it from mono-project.com, under the heading " Linux Installer for x86 "). Mono installers include all related dependencies and MonoDevelop itself. After completing the installation process, you will see a Mono icon on the screen. Click on it to open the folder containing the MonoDevelop executable. You can also run MonoDevelop on Mac OS X, or use a version for Fink (sourceforge.net), or follow the instructions posted on monodevelop.com.

Using MonoDevelop

When starting MonoDevelop, you will see the IDE and the Welcome screen shown in Figure 1 below.

Create .Net applications on Linux and Mac OS X Picture 1
Figure 1 : MonoDevelop's introduction page

If you've ever used Visual Studio or SharpDevelop, you'll see something very familiar. On the left is the Solution Explorer frame, on the right is the main screen, below is the Task List, which displays errors, warnings, and notifications. To create a new program (here called solution), simply go to New → New Project, similar to Figure 2.

Create .Net applications on Linux and Mac OS X Picture 2
Figure 2 : New Solution dialog box.

On the left, you can see countless options for MonoDevelop solutions. Along with the usual options of C # and Visual Basic, you will see a couple of interesting solutions. Below the Boo heading are projects that work with non-Microsoft .NET languages, inspired by Python, called Boo. Under NUnit, you can create a project that contains NUnit tests. The actual ILAsm section allows you to create a Console project directly written in Intermediate Language (IL). For example, you can create a Gtk # 2.0 Project (in C # environment).

Gtk # is the UI framework built in Mono. You can create Mono applications that run on Linux, Windows and Mac OS X. New projects can be seen as shown in Figure 3.

Create .Net applications on Linux and Mac OS X Picture 3
Figure 3 : A new GTK # solution.

Now, it all looks even more familiar. The files are arranged on the left, in Solution Explorer, just like in other IDEs. The References folder includes a list of parts this solution refers to. The Resources folder contains all resource files that are in solution. The User Interface directory group gathers all current screens in the solution. Select a single screen in the folder that is uploaded for the designer to look like Figure 4.

Create .Net applications on Linux and Mac OS X Picture 4
Figure 4 : MonoDevelop's UI designer

The design side is put on the main screen. The Widgets Palette on the right includes all available Widgets, and the Properties window below shows the Widget properties for you to choose. You can drag Widget into the designer easily. If you try to add a File Selection Widget (File Chooser Widget), the running application will look something like Figure 5:

Create .Net applications on Linux and Mac OS X Picture 5
Figure 5 : An application running Gtk #.

Running a Gtk # application in MonoDevelop is quite fast and easy. There is an amazing point that you can move this application right into Windows or Mac OS X, until the Mono Framework is still installed.

Use code completion mechanism

MonoDevelop enhances performance with a code completion mechanism, accelerating your typing speed. It can't be called IntelliSense, a brand in the market, but it's quite similar. MonoDevelop will give you some suggestions based on what you typed in the coding window, as shown in Figure 6.

Create .Net applications on Linux and Mac OS X Picture 6
Figure 6 : Complete code in MonoDevelop.

Nunit integration

MonoDevelop intelligently supports testing component integration mechanisms. NUnit add-in takes the form shown in Figure 7.

Create .Net applications on Linux and Mac OS X Picture 7
Figure 7 : NUnit add-in.

On the top left is the traditional red, green, and yellow tree view of the tests on NUnit, which shows which one is not. Below, you can see the diagram of the previously checked heading. From the chart, you will know that the first time there is only one check, then three, then two and one failure. Switch to the right, under the 'Test result' section, you can see a list of test parts with which results, which are not. MonoDevelop's NUnit integrator is clearly one of the strongest components.

Support

You can find MonoDevelop support online in IRC or via email list, or access via links on the tool's home page.

MonoDevelop in a Nutshell

MonoDevelop is being developed very actively. Two new versions have been released this year. MonoDevelop is not Visual Studio, but quite similar to IDE, with some exceptions such as NUnit support. It is very valuable if you are developing on a Linux or Mac OS X platform.

Overview of MonoDevelop

MonoDeveloptool Introduction version .11 Home http://www.monodevelop.com Strong support tool page http://www.windevpowertools.com/tools/65 Summary An open source IDE for Linux running GNOME and Mac OS X GPL copyright type Online resources FAQ Support FrameworkNET 1.0, 1.1, 2.0;Mono 1.0, 2.0

Related tools in this book: SharpDevelop, NUnit.

4.5 ★ | 2 Vote

May be interested

  • Linux GUI applications can run on Windows 10Linux GUI applications can run on Windows 10
    on april 21, microsoft announced that linux gui applications can now run on windows 10 using windows subsystem for linux (wsl). using this feature, you can run any possible gui application on linux or run your own applications or test on linux.
  • How to Learn LinuxHow to Learn Linux
    learning linux is not a one day task but it isn't herculean either. linux can be a good and safe os for both home and enterprise level users. keep in mind before saying 'hey, i'm going to start working on linux from tomorrow' that there is...
  • How to create a Live CD Linux discHow to create a Live CD Linux disc
    a live cd is a bootable cd, dvd or usb drive with an operating system ready to run when the disc is inserted into the computer. this article will show you how to create a linux live cd.
  • How to execute .run or .bin packages in LinuxHow to execute .run or .bin packages in Linux
    for applications not available through the software center, some developers create executable files in .run and .bin binary packages. this tutorial is intended to provide readers with instructions for installing those binary packages.
  • Create your own Linux distribution with Ubuntu ImagerCreate your own Linux distribution with Ubuntu Imager
    have you ever wanted to create your own linux distribution but don't know where to start? it's easier than you think. distroshare ubuntu imager creates a live iso that can be installed from an ubuntu or derivative distribution.
  • How to Run Linux GUI Applications with WSL2 on WindowsHow to Run Linux GUI Applications with WSL2 on Windows
    windows 11 has a lot of new features, but one particularly welcome feature is the windows subsystem for linux or wsl. wsl users can now run graphical linux applications as well as standard command line programs.
  • How does the Linux Kernel work?How does the Linux Kernel work?
    the linux kernel is like a bridge that allows computing communication between applications and hardware, as well as managing the system's resources.
  • 8 easy tools to create your own Linux Distro8 easy tools to create your own Linux Distro
    you want to create your own distribution but don't know where to start and what tools to use, so read this article to learn about distro-creating tools yourself!
  • Create bootable USB with Linux Mint 19.3Create bootable USB with Linux Mint 19.3
    in today's article, tipsmake.com will show you how to upgrade from the latest linux mint 17.3 to the existing linux mint 19.3. here is a step by step guide to doing this!
  • How to run Windows applications on Linux with VineyardHow to run Windows applications on Linux with Vineyard
    if you recently switched to linux, but still remember windows applications, read this article to learn how to run windows applications and software on this operating system.