龙鱼家园,个性,交流,技术,专注于网站技术的研究 龙鱼家园 | 浅谈 Linux 的 C# 开发环境
 

浅谈 Linux 的 C# 开发环境

我们知道 mono 是一个跨平台的、开源的 .NET 开发框架。它是 Novell 公司基于 SUSE Linux 操作系统开发的。

虽然在 openSUSE 操作系统下开发 C# 程序可以轻松获得最新的 mono 开发环境,但是我更喜欢 Ubuntu 操作系统。

 

由于 Ubuntu 操作系统包括了“阿帖便笺(Tomboy)”和“F-Spot 照片管理器”这两个使用 C# 开发的应用程序,所以它已经包括了 mono 运行库,不需要另外安装。

但是,要想使用 C# 编译器就必须使用 sudo apt-get install mono-devel 命令安装 mono 开发环境。

然后,在使用 vi 或者 gedit 编辑 C# 源程序后,就可以使用 gmcs 来编译了。

 

上图就是使用 vi 编辑 C# 源程序的例子。想必老资格的 Unix 程序员大部分都有 vi 情结吧  

上图是使用 gedit 来编辑 ClrInfo.cs 的例子。

ben@ben-m4000t:~/work$ mono --versionMono JIT compiler version 2.4.2.3 (Debian 2.4.2.3+dfsg-2)Copyright (C) 2002-2008 Novell, Inc and Contributors. www.mono-project.comTLS:           __threadGC:            Included Boehm (with typed GC)SIGSEGV:       altstackNotifications: epollArchitecture:  amd64Disabled:      noneben@ben-m4000t:~/work$ gmcs --versionMono C# compiler version 2.4.2.3ben@ben-m4000t:~/work$ gmcs ClrInfo.csben@ben-m4000t:~/work$ ./ClrInfo.exeOS  Version: Unix 2.6.31.14CLR Version: 2.0.50727.1433Default Encode: System.Text.UTF8Encodingben@ben-m4000t:~/work$ 

上面就是 ClrInfo 程序编译和运行的情况。

同样的 ClrInfo 程序在 Windows Server 2003 R2 Enterprise Edition 中的运行结果如下所示:

D:\work> ClrInfo.exeOS  Version: Microsoft Windows NT 5.2.3790 Service Pack 2CLR Version: 2.0.50727.3603Default Encode: System.Text.DBCSCodePageEncodingD:\work>


如果需要使用 IDE 等更加强大的功能,可以通过 sudo apt-get install monodevelop 来安装 MonoDevelop ,这是一个使用 C# 以及其它 .NET 语言的集成开发环境。

 

MonoDevelop 支持以下四种格式的项目文件:

  1. MonoDevelop 1.0
  2. MSBuild (Visual Studio 2005)
  3. MSBuild (Visual Studio 2008)
  4. MSBuild (Visual Studio 2010)

这可以在点击“编辑 -> Preferences”菜单项后弹出的“选项”对话框中的“选项 -> 装入/保存”中设置,如下图所示: 

 

 

如果想实践敏捷软件软件开发,进行测试驱动开发,必须使用 sudo apt-get install monodevelop-nunit 命令来安装 NUnit 插件。然后,就可以新建一个 C# NUnit 项目了,如下图所示:

 

然后,点击“工程 -> Options”菜单项,在弹出的“工程选项”对话框中可以进行一些设置,例如我喜欢把 Tab width 设置为 2 个空格,并且转换 tabs 为空格,如下图所示:

 

然后就可以进行 C# 程序开发了。点击“运行 -> Run Unit Tests”菜单项就可以运行单元测试了,如下图如示:

 

 

更多的资料请参见 mono 官方网站。祝大家编程愉快。 

http://www.cnblogs.com/skyivben/archive/2009/11/19/1605821.html 


Search

友情链接

  • 微足迹
  • 资质通鉴
  • 译言
  • 代码发芽网
  • 清清月儿
  • 二频
  • dotnetblogengine
  • 苹果树下
  • 联系我:
    leonardleonard@126.com

    © Copyright 2012