представенa от Боян Николов

brayan__@yahoo.com

MONO PROJECT

1. Какво е .NET

а) Платформено независима

б) Езиково независима – над 30 езика

http://www.dotnetpowered.com/languages.aspx

в) Богата библиотека от класове, GC, just-in-time

Compiler

Недостатък – има подръжка само за Windows

2. Имплементации на .NET под LINUX

a) MONO

www.mono-project.com

b) Portable.NET

www.southern-storm.com.au/portable_net.html

1. Какво е MONO ?

Моно е платформа за разработка и изпълнение на приложения, базирани на ECMA/ISO стандарта

2. Какво ни дава MONO ?

Моно включва компилатори за няколко съвместими с платформата езика, ECMA съвместима среда за изпълнение (Common Language Runtime), IDE, дебъгер и голям набор от библиотеки с класове. Допълнително може да се инсталират - IDE, дебъгер, много помощни програми и допълнителни библиотеки с класове (GTK#, wxNet и др.)

Mono Status:

32 bits: x86, PPC, SPARC, S390

64 bits: x86-64, SPARC

OS: Linux, Windows, OSX, BSD, Solaris

Mono targeting:

- Mono

- Microsoft .NET

Може да изпълните CIL (Common Intermediate Language) код

компилиран за Microsoft .NET*

* Поддържани пространства от имена:

ADO.NET

ASP.NET

System.Windows.Forms – под усилена разработка

- Java

Благодарение на IKVM.NET можете да трансформирате Java

код до CIL

http://www.ikvm.net/

Програмни езици с компилатори за MONO към момента:

- C#

- Visual Basic.NET

- Java

- Boo

- Nemerle

- Python

- Java Script

- Oberon

- Object Pascal

и други

Виж всикчи тук:

http://www.mono-project.com/Languages

Как работи MONO

Source Code

Language

Compiler

CIL

(Common Intermediate Language)

JIT

Compiler

Native

Code

Как изглежда 'Hello World' написана на C# под MONO

hello.cs

partb.vb

hello.cs

Графичен потребителски интерфейс

- Gtk#

Hompepage: http://gtk-sharp.sf.net Wiki: GtkSharp

- Windows.Forms

Homepage: http://svn.myrealbox.com/blog Wiki: WinForms

- Cocoa#

- wxNet

Homepage: http://wxnet.sourceforge.net/

Спряни проекти:

- Sharp WT

Homepage: http://sourceforge.net/projects/sharpdevelop

- Qt#

Homepage: http://qtcsharp.sourceforge.net/

Грешката, която виждате в конзолата е поради бъг в GTK# библиотеката за Windows, която екипа на GTK обеща да оправи в следващата версия. Въпреки предупреждението, всички GTK# програми работят без проблеми под Windows.

Как да инсталирам Mono?

- Linux - инсталиращ по подразбиране Mono

SUSE (www.novell.com/linux/suse)

Foresight Linux (http://www.foresightlinux.com/)

- Изтегли Mono

http://www.mono-project.com/Downloads

- Пробвай с LiveCD

Monoppix – базиран на Knoppix

http://www.monoppix.com/

Monoppix може да изтеглиш от тук:

http://d.linux-bg.org/index.php?folder=distros/monoppix

Mono Live CD - базиран на Ubuntu LiveCD

http://www.mono-live.org/

Gnoppix - базиран на Ubuntu LiveCD

http://www.gnoppix.org/

Какво ни е нужно за да почнем да разработваме приложения за MONO под Linux

- Mono runtime environment, complier and class libraries

- Monodevelop - Mono enabled IDE

- XSP - ASP.NET web server

- GTK# - for desktop applications (sample included)

- MySQL database server

- Quickstarts and Mono walkthroughs and tutorials

MONO IDEs

- Monodevelop

http://www.monodevelop.com/

- #Develop

http://icsharpcode.net/OpenSource/SD/Default.aspx

- Eclipse

http://www.gotmono.com/docs/ide/eclipse.html

- други (Emacs, Notepad++, MS VS.NET)

Създаване на нов проект с Monodevelop

Как се работи с Monodevelop? Виж тук:

http://www.monodevelop.com/tutorials/helloworld.aspx

ASP.NET в Mono

- XSP

- Apache

http://www.mono-project.com/Mod_mono

За повече информация виж тук:

http://www.mono-project.com/ASP.NET

Програми написани на Mono:

- Beagle

http://beaglewiki.org/Main_Page

- F-spot

http://www.gnome.org/projects/f-spot/

Виж списъка тук:

http://www.mono-project.com/Software

Няколко Уеб страници, използващи Mono ASP.NET :

http://www.ngallery.org

http://www.gotmono.net

http://www.mojoportal.com/

Съвети:

- за да стартираш някоя програма под MONO трябва да напишеш в конзолата:

mono filename.exe

- Този път под Linux няма да работи:

“sample\sample.cs”

Използвайте WindowsSystem.IO.Path.DirectorySeparatorChar вместо “/” или “\”

- макар компилаторите за MONO да поддържат ключа “/target:winexe” тези две компилации са аналогични:

mcs /target:exe hello.cs

mcs /target:winexe hello.cs

Това обаче няма да е така за в бъдеще!

За помощ

http://www.gotmono.net/

http://www.gotmono.com/docs/

http://www.go-mono.org/documentation.html

Mono Documentation Library

http://www.go-mono.com/docs/

Благодаря за вниманието

2005-06-16T21:42:34