Introducción a Mono




        Adrián De León
        adl@adl.org.mx
    http://www.adl.org.mx
Objetivo de esta platica

Ver que es Mono.
Hacer un par de Demos.
Contestar Preguntas.
Que es Mono?

Una implementación libre de los estándares de
     ECMA 334 y 335 / ISO 23270 y 23271.
No, en serio. Que es Mono?

 Mono es una plataforma de desarrollo para
 Linux.
   Máquina Virtual (Common Language Runtime...
Objetivo del Proyecto
        Mono:
   Crear una plataforma de desarrollo de
   aplicaciones para Linux.
   Incrementar la...
Porque Mono?

Las plataformas de desarrollo de Linux son
inmaduras.
La plataforma esta fragmentada.
Las herramientas de de...
Porque Mono?
En Linux, todos construyen su propia plataforma :




                                           © Novell
   ...
Plataforma de Mono:




                 © Novell
                 Inc,
Que tiene que ver Mono
       con .NET?
Los dos son implementaciones del mismo
estándar
Mono contiene APIs de compatibilid...
Mono: Dos APIs




                 © Novell
                 Inc,
Una solución para desarrollo
  de aplicaciones en Linux.
 Mono es una excelente plataforma para desarrollar
 aplicaciones ...
Una solución para desarrollo
 de aplicaciones en Linux...
 No es un lenguaje o framework nuevo. .NET y C# son
 aceptados p...
Varios lenguajes, Varias
     arquitecturas




                    © Novell
                    Inc,
Ventajas

Ventajas de Mono:
  Java

  .NET

  C y C++

  Python

  Perl

  Ruby
Desventajas de Mono

Desventajas de Mono sobre Java:
  Mas maduro.

  mas implementaciones.

  Aceptado por la industria.
...
Desventajas de Mono

Desventajas de Mono sobre .NET
  .NET es mas visible.

  Aceptado por la industria

  .NET es la plat...
Ejemplo de código C#
Hola mundo en Mono con
          C#
using System;
public class Hola
{
public static void Main()
{
Console.WriteLine(“Hola ...
Demo: Corriendo el mismo
 assembly en Mono y .NET
Demo: Comparar el CIL de
dos assemblies en diferentes
         lenguajes
 Dos archivos: DemoCS.cs y DemoVBS.vbs.
 Compilam...
Demo: Web Services

Crear un servidor de Web Services en Mono.
Crear un cliente para este Web Service.
Correr el cliente (...
Demo: Crear un Navegador
         de Web
 Como programar un navegador de web en
 menos de 35 lineas de código
 Uso de las ...
Demo: Aplicaciones
    creadas con Mono.
Monodevelop
Banshee
F-spot
Tomboy
Beagle
iFolder
¿Preguntas?
Gracias
Upcoming SlideShare
Loading in...5
×

Introducion a Mono

3,952

Published on

Introduccion a Mono

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,952
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
75
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Introducion a Mono

  1. 1. Introducción a Mono Adrián De León adl@adl.org.mx http://www.adl.org.mx
  2. 2. Objetivo de esta platica Ver que es Mono. Hacer un par de Demos. Contestar Preguntas.
  3. 3. Que es Mono? Una implementación libre de los estándares de ECMA 334 y 335 / ISO 23270 y 23271.
  4. 4. No, en serio. Que es Mono? Mono es una plataforma de desarrollo para Linux. Máquina Virtual (Common Language Runtime) Biblioteca de clases/APIs (biblioteca clases de ECMA, clases propias y clases de compatibilidad con Microsoft/.NET) Compilador de C# (MCS )
  5. 5. Objetivo del Proyecto Mono: Crear una plataforma de desarrollo de aplicaciones para Linux. Incrementar la productividad del programador de Linux. Efecto secundario: Ayudar a la migración de Windows a Linux
  6. 6. Porque Mono? Las plataformas de desarrollo de Linux son inmaduras. La plataforma esta fragmentada. Las herramientas de desarrollo son para 'Hackers '. La necesidad de una velocidad mayor de TTM (Time To Market) requiere herramientas mas sofisticadas.
  7. 7. Porque Mono? En Linux, todos construyen su propia plataforma : © Novell Inc,
  8. 8. Plataforma de Mono: © Novell Inc,
  9. 9. Que tiene que ver Mono con .NET? Los dos son implementaciones del mismo estándar Mono contiene APIs de compatibilidad para .NET Se puede reutilizar la experiencia, conocimiento y código de .NET en Mono. Mono NO es un “clon” de .NET.
  10. 10. Mono: Dos APIs © Novell Inc,
  11. 11. Una solución para desarrollo de aplicaciones en Linux. Mono es una excelente plataforma para desarrollar aplicaciones en Linux: Manejo automático de memoria. Biblioteca de clases muy completa. Multilenguaje: C# VB.NET Nermele IronPython
  12. 12. Una solución para desarrollo de aplicaciones en Linux... No es un lenguaje o framework nuevo. .NET y C# son aceptados por la industria. Los departamentos de sistemas y desarrollo conocen . NET/C#, no conocen Python, Perl o Ruby. Documentación, entrenamiento y certificación para . NET/C# se encuentran disponibles y se pueden reutilizar con Mono. Mono esta disponible en varias plataformas: Linux x86, Linux PPC, s390, Linux AMD64, MacOS, etc. y .NET y Mono están disponibles en Windows. Mono provee desarrollo /deployment multiplataforma.
  13. 13. Varios lenguajes, Varias arquitecturas © Novell Inc,
  14. 14. Ventajas Ventajas de Mono: Java .NET C y C++ Python Perl Ruby
  15. 15. Desventajas de Mono Desventajas de Mono sobre Java: Mas maduro. mas implementaciones. Aceptado por la industria. Mejores herramientas de desarrollo (Eclipse) Excelente soporte en Linux.
  16. 16. Desventajas de Mono Desventajas de Mono sobre .NET .NET es mas visible. Aceptado por la industria .NET es la plataforma a seguir (El problema de reimplementación ) Mejor documentación. Mejores herramientas de desarrollo (VS.NET 2005 )
  17. 17. Ejemplo de código C#
  18. 18. Hola mundo en Mono con C# using System; public class Hola { public static void Main() { Console.WriteLine(“Hola Mundo!”); } } Igual que en .NET
  19. 19. Demo: Corriendo el mismo assembly en Mono y .NET
  20. 20. Demo: Comparar el CIL de dos assemblies en diferentes lenguajes Dos archivos: DemoCS.cs y DemoVBS.vbs. Compilamos los dos archivos y generan assemblies: DemoCS.exe y DemoVBS.exe Ver el CIL (Common Intermidiate Language). Compararlos.
  21. 21. Demo: Web Services Crear un servidor de Web Services en Mono. Crear un cliente para este Web Service. Correr el cliente (compilado en Linux con Mono) en Windows con .NET y llamar el Web Service corriendo en Linux.
  22. 22. Demo: Crear un Navegador de Web Como programar un navegador de web en menos de 35 lineas de código Uso de las herramientas de desarrollo de Mono en Linux: Monodevelop GTK# Glade Gecko-sharp
  23. 23. Demo: Aplicaciones creadas con Mono. Monodevelop Banshee F-spot Tomboy Beagle iFolder
  24. 24. ¿Preguntas?
  25. 25. Gracias
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×