Bueno en estos dias estabamos hablando de varias cosas respecto del Proyecto Mono, las clases que implementa y creo que la gran compatibilidad con el compilador de C# que es otro Lenguaje de programación que estamos viendo a la par.
En el sitio oficial del Proyecto Mono encontramos documentación y algunas especificaciones del C#, características y el modo de utilizar C# con Mono, como realizar aplicaciones muy básicas y pequeñas, como implementar la sintaxis y por sobretodas las cosas nos aporta ejemplos muy prácticos.
Esta documentación de C# esta completa, funcional y práctica, no así se esta terminando de completar los demas documentos y librerias para utilizarlas.
El enlace es el siguiente:
viernes, 28 de diciembre de 2007
jueves, 27 de diciembre de 2007
Los mejores programas hechos en C++ según su Inventor
Bjarne Stroustrup es el inventor de C++, podeis consultar numerosas entrevistas que se le han hecho desde las cuales podremos sacar nuestras propias conclusiones del panorama actual en relación a la programación y entorno en el que nos movemos. Particularmente me quedo con esta pregunta y respuesta de una de las entrevistas:
¿Cuál ha sido el mejor y peor programa realizado en C++?
B.S: El mejor Google!, ¿puedes recordar el mundo antes de Google? (después de todo solo hace 6 años). Lo que me gusta de Google es su rendimiento bajo severas restricciones de recursos. Posee unos de los más sencillos e ingeniosos algoritmos de paralelización y computación distribuida.
Tambien hay sistemas-embebidos que me gustan como por ejemplo los análisis de escena y autonomía de movimiento de la Mars Rovers. Procesamiento de imágenes en Photoshop...
Articulo RetroNet
¿Cuál ha sido el mejor y peor programa realizado en C++?
B.S: El mejor Google!, ¿puedes recordar el mundo antes de Google? (después de todo solo hace 6 años). Lo que me gusta de Google es su rendimiento bajo severas restricciones de recursos. Posee unos de los más sencillos e ingeniosos algoritmos de paralelización y computación distribuida.
Tambien hay sistemas-embebidos que me gustan como por ejemplo los análisis de escena y autonomía de movimiento de la Mars Rovers. Procesamiento de imágenes en Photoshop...
Articulo RetroNet
Etiquetas:
C/C++,
Curiosidades
miércoles, 26 de diciembre de 2007
Publicada la version 1.9.0 de Ruby
El lider de desarrollo de Ruby, Yukihiro "Matz" Matsumoto, ha hecho pública la version 1.9.0, una versión de desarrollo. Puede descargarse desde su repositorio.
martes, 25 de diciembre de 2007
Nuestro primer proyecto en MonoDevelop
Desde hace un par de días que estamos mostrando las presataciones del proyecto MONO y su IDE de programación por excelencia MonoDevelop.
Lo instale en las máquinas que utilizo y realmente este fin de semana me dedique a tratar de aprender algunas cosas con respecto a MonoDevelop y C#, como para ver de que se trataba, si la herramienta integrada es sencilla de usa y esas cuestiones.
Bueno ahora les voy a dejar con un documento que encontré del sitio oficial de MonoDevelop en donde nos explica de manera detallada y con la ayuda de GTK#, como armar un GUI de manera muy rápida y sencilla.
Etiquetas:
C#,
Proyecto MONO
lunes, 24 de diciembre de 2007
Otro ejemplo en C#
Estaba navegando y me encontré este video que muestra de manera muy simple nuevamente el clásico ejemplo de Hola mundo! en C#, pero con la particularidad que en primer lugar utiliza en plataformas Windows y segundo que utiliza formularios para realizarlo.
domingo, 23 de diciembre de 2007
Hola mundo en C#
Ahora les voy a mostrar un pequeño ejemplo de una aplicación en C#, en primer lugar lo que debemos hacer es crear un archivo para este codigo, por ejemplo
Por último una ves guardado esto, debemos compilarlo para ello utilizaremos el compilador de C# llamado
holamundo.cs
con cualquier editor de texto que utilicemos. Luego colocar el siguiente codigo:
using System;
namespace HolaMundo
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hola mundo");
}
}
}
Por último una ves guardado esto, debemos compilarlo para ello utilizaremos el compilador de C# llamado
mcs (Mono Compiler Suit)
, lo que nos dará como resultado un archivo holamundo.exe
la cual solo nos quedará ejecutar dicho archivo con ./holamundo.exe
sábado, 22 de diciembre de 2007
C#, La evolución de C++
C# (pronunciado "si sharp") es un Lenguaje de Pprogramación Orientado a Objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA e ISO.
Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma.NET el cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes. C# fue diseñado para combinar el control de lenguajes de bajo nivel como C y la velocidad de programación de lenguajes de alto nivel como Visual Basic.
C# significa, "do sostenido" (C corresponde a do en la terminología musical anglo-sajona). El símbolo # viene de sobreponer "++" sobre "++" y eliminar las separaciones, indicando así su descendencia de C++.
Aunque C# forma parte de la plataforma.NET, ésta es una interfaz de programación de aplicaciones; mientras que C# es un lenguaje de programación independiente diseñado para generar programas sobre dicha plataforma. Aunque aún no existen, es posible implementar compiladores que no generen programas para dicha plataforma, sino para una plataforma diferente como Win32 o UNIX.
Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma.NET el cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes. C# fue diseñado para combinar el control de lenguajes de bajo nivel como C y la velocidad de programación de lenguajes de alto nivel como Visual Basic.
C# significa, "do sostenido" (C corresponde a do en la terminología musical anglo-sajona). El símbolo # viene de sobreponer "++" sobre "++" y eliminar las separaciones, indicando así su descendencia de C++.
Aunque C# forma parte de la plataforma.NET, ésta es una interfaz de programación de aplicaciones; mientras que C# es un lenguaje de programación independiente diseñado para generar programas sobre dicha plataforma. Aunque aún no existen, es posible implementar compiladores que no generen programas para dicha plataforma, sino para una plataforma diferente como Win32 o UNIX.
Etiquetas:
C#,
Lenguajes de Programación,
Proyecto MONO
lunes, 17 de diciembre de 2007
Algunas Frases de Miguel de Icaza
Navegando por internet, encontre este video de Miguel de Icaza hablando de varios temas como ser el Proyecto MONO, cuestiones de Licencia y otros temas mas, con el humor característico de el...
Etiquetas:
Programadores,
Proyecto MONO
sábado, 15 de diciembre de 2007
Programación Básica en Gambas
Bueno gracias a Jonyx, administrador de El blog de Furikao, posteo algo interesante que los queria compartir he invitar a acompañarnos.
Invitando, siempre de buena manera, a las personas a que experimenten las herramientas de programación les dejo un enlace a una página del tipo interesante.
En ella van a ver ejemplos de códigos sencillos, empezando con los diagramas de flujo y con ejemplos prácticos.
Y aunque paresca una tontera, ejemplos como los algoritmos de busqueda son muy utilizados, incluso en sistemas grandes con manejo de datos muy complejos. La correcta implementación y en el momento adecuado de alguno de estos algoritmos puede ahorrar muchos dolores de cabeza (lo digo por experiencia).
La página está en español, y toma como referencia el IDE/Lenguaje Gambas, que anteriormente se estuvo comentando en este blog. He aqui el enlace:
Gambas Dev
Espero les resulte interesante. Hasta pronto, que estén bien.
Invitando, siempre de buena manera, a las personas a que experimenten las herramientas de programación les dejo un enlace a una página del tipo interesante.
En ella van a ver ejemplos de códigos sencillos, empezando con los diagramas de flujo y con ejemplos prácticos.
Y aunque paresca una tontera, ejemplos como los algoritmos de busqueda son muy utilizados, incluso en sistemas grandes con manejo de datos muy complejos. La correcta implementación y en el momento adecuado de alguno de estos algoritmos puede ahorrar muchos dolores de cabeza (lo digo por experiencia).
La página está en español, y toma como referencia el IDE/Lenguaje Gambas, que anteriormente se estuvo comentando en este blog. He aqui el enlace:
Gambas Dev
Espero les resulte interesante. Hasta pronto, que estén bien.
Etiquetas:
Gambas
Video de Mono
Si por ahí no entendiste el concepto completo del Proyecto Mono, por que no dejamos que el propio creador y director de este proyecto nos los explique... Con nosotros Miguel de Icaza
Etiquetas:
Proyecto MONO
Proyecto MONO - Enlaces interesantes
Quizás en este camino de aprender un poco el concepto de este proyecto que arranco ya hace algunos años y la cual ha logrado una gran aceptación en el mercado, seguramente necesitas la ayuda de internet para conocer he interiorizarte mas en el tema.
Así que ahora les voy a pasar estos enlaces que particularmente a mi me fueron muy útiles:
Para comenzar como siempre la Wikipedia presente.
Otro sitio también interesante es el Sitio Oficial del Proyecto.
para finalizar y como ya mostramos, tenemos MonoDevelop el IDE para desarrollas las aplicaciones asi que les presente también su Sitio Oficial.
Así que ahora les voy a pasar estos enlaces que particularmente a mi me fueron muy útiles:
Para comenzar como siempre la Wikipedia presente.
Otro sitio también interesante es el Sitio Oficial del Proyecto.
para finalizar y como ya mostramos, tenemos MonoDevelop el IDE para desarrollas las aplicaciones asi que les presente también su Sitio Oficial.
Comenzando a probar estas herramientas les comento que tuve la suerte y el tiempo de hacer algunas cositas en C#, para la gente que no conoce ya vamos a estar posteando algo al respecto, realmente un lenguaje comprometedor.
Etiquetas:
Proyecto MONO
miércoles, 12 de diciembre de 2007
MonoDevelop
MonoDevelop es un Entorno Integrado de Desarrollo (IDE) libre y gratuito, diseñado primordialmente para C# y otros lenguajes .NET como Nemerle, Boo, y Java (via IKVM.NET). MonoDevelop originalmente fue una adaptación de SharpDevelop para Gtk#, pero desde entonces se ha desarrollado para las necesidades de los desarrolladores de Mono. El IDE incluye manejo de clases, ayuda incorporada, completación de código, Stetic (diseñador de GUI), soporte para proyectos, y un depurador integrado.
Aunque MonoDevelop solo puede ejecutarse en Mac y distintas distribuciones de Linux, no es posible hasta el momento ejecutarlo sobre Windows. Sin embargo, un IDE llamado SharpDevelop facilita la compilación y depuracion (desde su version 2.0) de aplicaciones Mono sobre ambiente Windows.
MonoDevelop es el complemento ideal y le herramienta que estaba necesitando GNU/Linux en programación tanto visual como asi tambien en modo texto. Si estas interesado en insertarte en el mundo del .NET y manejas sistemas GNU/Linux, te recomiendo que nos sigas acompañando ya que vamos a mostrar muchas herramientas mas.
Etiquetas:
Proyecto MONO
viernes, 7 de diciembre de 2007
Componentes de Proyecto MONO
Rápidamente y de manera resumida, veamos algunos componentes que incorpora el Proyecto MONO dentro de sus entornos de programación.
Librerías de clase
Proveen un conjunto de facilidades que ayudan al desarrollo de aplicaciones. Son escritas primeramente en C#, pero gracias al lenguaje común de especificación (CLS), las mismas pueden ser invocadas en cualquier otro lenguaje de .NET. Cuando hablamos del framework de .NET, nos estamos refiriendo primer lugar a las librerías de clase.
Espacios de nombres (Namespaces) y ensamblados (Assemblies)
Los espacios de nombre son un mecanismo que permite agrupar lógicamente clases similares en una estructura jerárquica, evitando así conflictos de nombres. La estructura se implementa utilizando palabras separadas por puntos. Por ejemplo, System.IO o System.Net.
Los ensamblados son el paquete físico de las librerías de clase. Son archivos con extensión .dll, como las librerías de Windows. Ejemplos de librerías son mscorlib.dll, System.dll, System.Data.dll.
Lenguaje Común de Infraestructura (CLR)
El lenguaje común de infraestructura o más comúnmente llamado Common Language Runtime (CLR) es implementado por el ejecutable de Mono.
Este lenguaje común de infraestructura está definido en los estándares ECMA y ECMA-335. Para ejecutar una aplicación se deberá invocar el runtime con los parámetros adecuados.
Lenguaje Común de Especificación (CLS)
Se encuentra especificado en el estándar ECMA-335 y define la interfase con el CLR. Por ejemplo, convenciones sobre el tipo de datos que se utilizará para implementar los enumerados. El compilador Mono genera una imagen que cumple con el CLS, esta imagen está codificada en el denominado Common Intermediate Language (CIL) o Lenguaje Intermedio Común. El runtime de Mono toma dicha imagen y la ejecuta.
Librerías de clase
Proveen un conjunto de facilidades que ayudan al desarrollo de aplicaciones. Son escritas primeramente en C#, pero gracias al lenguaje común de especificación (CLS), las mismas pueden ser invocadas en cualquier otro lenguaje de .NET. Cuando hablamos del framework de .NET, nos estamos refiriendo primer lugar a las librerías de clase.
Espacios de nombres (Namespaces) y ensamblados (Assemblies)
Los espacios de nombre son un mecanismo que permite agrupar lógicamente clases similares en una estructura jerárquica, evitando así conflictos de nombres. La estructura se implementa utilizando palabras separadas por puntos. Por ejemplo, System.IO o System.Net.
Los ensamblados son el paquete físico de las librerías de clase. Son archivos con extensión .dll, como las librerías de Windows. Ejemplos de librerías son mscorlib.dll, System.dll, System.Data.dll.
Lenguaje Común de Infraestructura (CLR)
El lenguaje común de infraestructura o más comúnmente llamado Common Language Runtime (CLR) es implementado por el ejecutable de Mono.
Este lenguaje común de infraestructura está definido en los estándares ECMA y ECMA-335. Para ejecutar una aplicación se deberá invocar el runtime con los parámetros adecuados.
Lenguaje Común de Especificación (CLS)
Se encuentra especificado en el estándar ECMA-335 y define la interfase con el CLR. Por ejemplo, convenciones sobre el tipo de datos que se utilizará para implementar los enumerados. El compilador Mono genera una imagen que cumple con el CLS, esta imagen está codificada en el denominado Common Intermediate Language (CIL) o Lenguaje Intermedio Común. El runtime de Mono toma dicha imagen y la ejecuta.
Muchas veces comprender estas características es un poco complicada por el hecho que son conceptos muy abstractos. Pero en la prácticas vamos a poder ver la aplicación con más detalle y terminar de entender todas estas cuestiones.
Etiquetas:
Proyecto MONO
Proyecto MONO
Mono es el nombre de un proyecto de código abierto iniciado por Ximian y actualmente impulsado por Novell (tras su adquisición de Ximian para crear un grupo de herramientas libres, basadas en GNU/Linux y compatibles con .NET según lo especificado por el ECMA. Este proyecto es liderado nuevamente por el famoso y conocido Miguel de Icazas, demostrando nuevamente el compromiso con el desarrollo de herramientas libres en el universon GNU/Linux.
Mono posee importantes componentes útiles para desarrollar software:
Mono posee importantes componentes útiles para desarrollar software:
- Una Máquina Virtual de lenguaje común de infraestructura (CLI) que contiene un cargador de clases, un compilador en tiempo de ejecución (JIT), y unas rutinas de recolección de memoria.
- Una Biblioteca de Clases que puede funcionar en cualquier lenguaje que funcione en el CLR (Common Language Runtime).
- Un Compilador para el lenguaje C#, MonoBasic (la versión para mono de Visual Basic), Java y Python.
- El CLR y el Sistema de tipos común (CTS) permite que la aplicación y las bibliotecas sean escritas en una amplia variedad de lenguajes diferentes que compilen para byte code. Esto significa por ejemplo, que si defines una clase que haga una manipulación algebraica en C#, esa clase puede ser reutilizada en cualquier lenguaje que soporte el "CLI". Puede crear una clase en C#, una subclase en C++ e instanciar esa clase en un programa en Eiffel.
- Un sistema de objetos único, sistema de hilos, bibliotecas de clases y sistema recolector de memoria pueden ser compartidos por todos estos lenguajes.
- Es un proyecto independiente de la plataforma. Actualmente Mono corre sobre Linux, FreeBSD, UNIX, Mac OS X, Solaris y plataformas Windows.
Etiquetas:
Proyecto MONO
jueves, 6 de diciembre de 2007
Android - Un video de muestra.
Google presenta un vídeo (ingles) donde muestra un poco de las aplicaciones de su plataforma para celulares, Android. Según Sergey Bin, fundador de Google, el celular y aplicaciones que se muestran en el vídeo no van a ser así como se las ve, en otras palabras, aun no están terminadas y faltan mejorarlas. Google esta dando como premio 10 millones de dolares a quien desarrolle la mejor aplicación para Android, ese concurso va a ayudar para que programadores creen miles de aplicaciones unas más buenas que otras pero aplicaciones en fin.
Etiquetas:
Android
miércoles, 5 de diciembre de 2007
Android - Enlaces Interesantes
Después de la rápida aparición de Android, liberado por la mega compañía Google, la repercusión en todos los sites, blogs y portales realmente fue muy importante.
Como era de esperar la comunidad de Wikipedia nunca se va a quedar atrás y creo su espacio para Android.
Google se tomó el trabajo de presentar el Sitio Oficial de Android para desarrolladores, con Ejemplos y tutoriales.
Como no podía ser de otra manera los Grupos de Usuarios o de Programadores están siempre presentes, en este caso ANDROID-SPA.
Y por último quería presentarles este enlace de Picando Código en donde hay un completo informe acerca del SDK de Android.
Como era de esperar la comunidad de Wikipedia nunca se va a quedar atrás y creo su espacio para Android.
Google se tomó el trabajo de presentar el Sitio Oficial de Android para desarrolladores, con Ejemplos y tutoriales.
Como no podía ser de otra manera los Grupos de Usuarios o de Programadores están siempre presentes, en este caso ANDROID-SPA.
Y por último quería presentarles este enlace de Picando Código en donde hay un completo informe acerca del SDK de Android.
domingo, 2 de diciembre de 2007
Android - La nueva plataforma de desarrollo para Móviles
Android es un stack de software para dispositivos móviles que incluye un Sistema Operativo, middleware y aplicaciones clave. Google está otorgando un vistazo al SDK de Android, que provee de herramientas y APIs necesarios para comenzar a desarrollar aplicaciones en la plataforma Android, utilizando el lenguaje de programación Java.
Esta nueva plataforma de desarrollo fue lanzada y liberada a fines de Octubre de este año por la empresa de Google, tratando de imponer un nuevo framework para los desarrolladores. Dicho lanzamiento realmente fue tomado con gran motivación y de gran repercución.
Esta nueva plataforma de desarrollo fue lanzada y liberada a fines de Octubre de este año por la empresa de Google, tratando de imponer un nuevo framework para los desarrolladores. Dicho lanzamiento realmente fue tomado con gran motivación y de gran repercución.
Etiquetas:
Android
Python - SQLite
Recientemente publiqué en SQLite-Latino, un sencillo ejemplo para integrar SQLite en Python y en esta oportunidad quería también presentárselos a ustedes y ojala les guste, les aclaro que en esta oportunidad es solo para ver la conexión de las Bases de Datos, algo muy simple que poco a poco integraremos más complejidad.
Bueno para poder llevar a cabo la integración necesitamos que en Python tengamos instalado unas librerías que nos va a servir como interface para conectar las Bases de Datos SQLite. Para ello hacemos lo siguiente:
Con esto ya contamos con estas librerías y podemos realizar la conexión fácilmente.
Para continuar y realizar nuestro primer ejemplo sencillo de esta integración, les recomendamos que vean las Review I y Review II de SQLite y creen una Base de Datos con aunquesea una tabla, a modo de ejemplo.
Vamos a suponer dos cosas: Que la Base de datos o el archivo lo llamamos "prueba.db" y que como les decia a modo de prueba creamos una tabla llamada "personal".
Ahora bien creamos un archivo en python con nuestro editor preferido y lo llamamos "prueba01.py"
Bueno para poder llevar a cabo la integración necesitamos que en Python tengamos instalado unas librerías que nos va a servir como interface para conectar las Bases de Datos SQLite. Para ello hacemos lo siguiente:
$ sudo apt-get install python-pysqlite2
Con esto ya contamos con estas librerías y podemos realizar la conexión fácilmente.
Para continuar y realizar nuestro primer ejemplo sencillo de esta integración, les recomendamos que vean las Review I y Review II de SQLite y creen una Base de Datos con aunquesea una tabla, a modo de ejemplo.
Vamos a suponer dos cosas: Que la Base de datos o el archivo lo llamamos "prueba.db" y que como les decia a modo de prueba creamos una tabla llamada "personal".
Ahora bien creamos un archivo en python con nuestro editor preferido y lo llamamos "prueba01.py"
# Importa librerias de SQLite
from pysqlite2 import dbapi2 as sqlite
# Realiza la coneccion con la db colocando el Path
# donde se encuentra el archivo de la Base de datos
coneccion = sqlite.connect('prueba.db')
# Crea un objeto cursor para trabajar
cursor = coneccion.cursor()
# Ejecuta la consulta SELECT, tal y como lo haríamos en SQL
cursor.execute('SELECT apellido, nombre FROM personal order by id')
# Muestra todos los datos de la consulta
for (apellido, nombre) in cursor:
print 'Apeliido y Nombre: %s, %s.' % (apellido, nombre)
Suscribirse a:
Entradas (Atom)
Entradas populares
-
Cada vez que utilizo Git para realizar el tracking y el control de versiones en un software más estoy convencido de las bondades que bri...
-
A la hora de crear arte hecho codigo fuente, muchas veces necesitamos un buen editor para escribir nuestro codigo, un compilador a mano o in...
-
Los Diagramas de Tiempo de UML se usan para mostrar el cambio en el estado o valor de uno o más elementos tomando en cuenta el factor tiemp...
-
Un diagrama de colaboración, se puede decir que es una forma alternativa al diagrama de secuencias a la hora de mostrar un escenario. Este t...
-
Hoy les quería dejar un How-To de como hago para fusionar Symfony2 y el Bootstrap de Twitter , de esa forma lograr tener unas mejores vista...
-
En la arquitectura de programación de niveles, el término “nivel” y “capa” no significa lo mismo ni tampoco son similares El término ...
-
Los Casos de Usos no forma parte de la llamada Fase de Diseño, sino parte de la fase de Análisis, respondiendo el interrogante ¿Qué? . De f...
-
Un estado es una condición durante la vida de un objeto, de forma que cuando dicha condición se satisface se lleva a cabo alguna acción o se...
-
Este es otro tip de Vim para poder sobrellevar todas las situaciones que se nos presenten, por alguna razón hoy me encontré con la sigui...
-
GitHub en estos últimos años se convirtió en más que un sistema de control de versión, pasando a ser una completa plataforma colaborativa, ...