Introducion a  Mono
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
5,869
On Slideshare
5,853
From Embeds
16
Number of Embeds
2

Actions

Shares
Downloads
73
Comments
0
Likes
3

Embeds 16

http://www.slideshare.net 14
http://presentationdocs.playableitems.demobo.com 2

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Introducción a Mono Adrián De León adl@adl.org.mx http://www.adl.org.mx
  • 2. Objetivo de esta platica Ver que es Mono. Hacer un par de Demos. Contestar Preguntas.
  • 3. Que es Mono? Una implementación libre de los estándares de ECMA 334 y 335 / ISO 23270 y 23271.
  • 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. 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. 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. Porque Mono? En Linux, todos construyen su propia plataforma : © Novell Inc,
  • 8. Plataforma de Mono: © Novell Inc,
  • 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. Mono: Dos APIs © Novell Inc,
  • 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. 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. Varios lenguajes, Varias arquitecturas © Novell Inc,
  • 14. Ventajas Ventajas de Mono: Java .NET C y C++ Python Perl Ruby
  • 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. 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. Ejemplo de código C#
  • 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. Demo: Corriendo el mismo assembly en Mono y .NET
  • 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. 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. 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. Demo: Aplicaciones creadas con Mono. Monodevelop Banshee F-spot Tomboy Beagle iFolder
  • 24. ¿Preguntas?
  • 25. Gracias