project

cvs — An older project revision control system, now replaced by Subversion

designer — Trolltech's graphical prototyping tool for use with Qt libraries and X

gcc — The GNU C/C++ compiler system

gdb — The GNU interactive debugger

glade-3 — The GNOME graphical development environment for building GTK+ clients

gprof — The GNU program profiler

kdevelop — The KDE C/C++ graphical development environment for building KDE, GNOME, or terminal clients

make — A GNU project management command

patch — Larry Wall's source patching utility

pmake — A BSD project management command

splint — The C source file checker

svn — The Subversion version control system

Reference

http://www.trolltech.com/products/qt/tools.html — Trolltech's page for Qt Designer and a number of programming automation tools (including translators) that you can use with Fedora.

http://glade.gnome.org — Home page for the Glade GNOME developer's tool.

http://www.kdevelop.org — Site that hosts the KDevelop Project's latest versions of the KDE graphical development environment, KDevelop.

Sams Teach Yourself C++ for Linux in 21 Days, by Jesse Liberty and David B. Horvath, Sams Publishing.

C How to Program and C++ How to Program, both by Harvey M. Deitel and Paul J. Deitel, Deitel Associates.

The Annotated C++ Reference Manual, by Margaret A. Ellis and Bjarne Stroustrup, ANSI Base Document.

Programming in ANSI C, by Stephen G. Kochan, Sams Publishing.

CHAPTER 29

Mono

Although Microsoft intended it for Windows, Microsoft's .NET platform has grown to encompass many other operating systems. No, this isn't a rare sign of Microsoft letting customers choose which OS is best for them — instead, the spread of .NET is because of the Mono project, which is a free re-implementation of .NET available under the GPL license.

Because of the potential for patent complications, it took Red Hat a long time to incorporate Mono into Fedora, but it's here now and works just fine. What's more, Mono supports both C# and Visual Basic .NET, as well as the complete .NET 1.0 and 1.1 frameworks (and much of the 2.0 framework too), making it quick to learn and productive to use.

Why Use Mono?

Linux already has numerous programming languages avail able to it, so why bother with Mono and .NET? Here are my top five reasons:

> .NET is 'compile once, run anywhere'; that means you can compile your code on Linux and run it on Windows, or the reverse.

> Mono supports C#, which is a C-like language with many improvements to help make it object-oriented and easier to use.

> .NET includes automatic garbage collection to remove the possibility of memory leaks.

> .NET uses comes with built-in security checks to ensure that buffer overflows and many types of exploits are a thing of the past.

> Mono uses a high-performance just-in-time compiler to optimize your code for the platform on which it's running. This lets you compile it on a 32-bit machine, then run it on a 64-bit machine and have the code dynamically re-compiled for maximum 64-bit performance.

At this point, Mono is probably starting to sound like Java, and indeed it shares several properties with it. However, Mono has the following improvements:

> The C# language corrects many of the irritations in Java, while keeping its garbage collection.

> .NET is designed to let you compile multiple languages down to the same bytecode, including C#, Visual Basic .NET, and many others. The Java VM is primarily restricted to the Java language.

> Mono even has a special project (known as 'IKVM') that compiles Java source code down to .NET code that can be run on Mono.

> Mono is completely open source!

Whether you're looking to create command-line programs, graphical user interface apps, or even web pages, Mono has all the power and functionality you need.

Mono on the Command Line

Mono should already be installed on your system; however, it is installed only for end users rather than for developers—you need to install a few more packages to make it usable for programming. Start up Add/Remove Software, and, from the List view, make sure the following packages are selected:

> mono-core

> mono-data

> mono-data-sqlite

> mono-debugger

> mono-devel

> monodevelop

> monodoc

> mono-jscript

> mono-locale-extras

> mono-nunit

> mono-web

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату