ff-multiconverter, multimedia, audio, video, linux, ubuntu ubuntu kylin, china, releases, linux terminal, ubuntu, linux, comandos, shell conky, gadgets, ubuntu, linux SpeedTest-Cli, velocidad, red, consola, terminal tag foto 6 pinta, grafica, linux, ubuntu djl, juegos, yum, synaptic, paquetes ubuntu, releases, canonical psensor, ubuntu, linux, sistema, monitor

7 aplicaciones multimedia presentes en los repositorios oficiales de Ubuntu.

ubuntu_audioUbuntu ofrece una amplia gama de aplicaciones multimedia desde sus repositorios Main, Universe y Multiverse.

Para ayudarte a escoger al reproductor de música o el editor de vídeo más conveniente, es útil distinguir entre los reproductores de medios de comunicación ellos mismos (o 'front-ends) y los motores de reproducción (playback)(' back-ends') que utilizan. Los front ends son las aplicaciones con las que interactuas con tu escritorio.

Algunos están integrados fuertemente con los entorno de escritorio, el GNOME y KDE; otros son independientes de plataforma.

Mientras algunas aplicaciones, como Mplayer y XMMS, usan sus propios motores de reproducción, los otros aprovechan de dos de los principales Back-ends que son el gstreamer y xine. Algunos reproductores soportan tanto gstreamer como xine.

Tu decisión dependerá de la combinación de caracteríscicas, funcionamiento, opciones de formatos de medios, su entorno de escritorio y otras preferencias personales.

1.- FF-Multi Converter aplicación para convertir rápidamente archivos de video, audio, imagen y texto.

ff multiconverter logoFF-Multi Converter es una aplicación gratuita para Linux que nos permite convertir rápidamente archivos de video, audio, imagen y texto a los formatos más populares a través de su amigable interfaz gráfica.
Hoy veremos las principales características de esta nueva versión, la 1.5.0 con  los formatos que soporta y cómo instalarla en Ubuntu y Linux Mint.
La aplicación està escrita en Python y PyQt.

2.- Nuvola un reproductor que nos permitirá llevar GrooveShark al escritorio de Ubuntu.

NuvolaPlayerNuvola Player (anteriormente llamado Google Music Frame) es un reproductor de música para Linux que permite integrar diversos servicios de música online en tu escritorio. Ya tenemos actualización de Nuvola.
Esta versión además de añadir soporte para Precise Pangolin añade nuevas opciones de radios para streaming.
En primer lugar, debemos comentar que Nuvola antes era conocido como Google Music Frame, ya que su primer objetivo fue ofrecer una aplicación de escritorio para Google Music, sin embargo, sus desarrolladores han decidido que también sea compatible con GrooveShark, y por ello han cambiado el nombre del software.
De este modo, gracias a Nuvola, no será necesario que iniciemos nuestro navegador web para disfrutar de la música en streaming de GrooveShark en Ubuntu.

3.- FreetuxTV excelente aplicación para ver la TV o escuchar la radio en Ubuntu.


Si buscas una aplicación que te permita ver la televisión en directo o escuchar la radio de cualquier parte del mundo en GNU/Linux puede que FreeTuxTV te sea de gran utilidad ya que nos permite hacer esto mismo de forma sencilla.
La interfaz de FreetuxTV es muy sencilla y cuando lo iniciamos ya podremos agregar los canales en español, también podremos grabar lo que estamos viendo muy útil si quieres mantenerlo en tu equipo para verlo cuando quieras.
Para instalarlo basta agregar los PPA dedicados, es decir agregar los repositorios propios de FreeTuxTV.
Cada vez que hacemos partir el programa FreeTuxTV actualiza automaticamente la lista de los grupos que hemos seleccionado.

4.- Medusa, la mejor alternativa a AutoCAD en Linux.


De sobra nos es conocido que el rey indiscutible del CAD es AutoCad, ningún programa ha sido capaz de hacerle sombra, aunque los precios del software son, por ser amables, abusivos.
La única distribución que, desde mi punto de vista, permite trabajar de forma cómoda al estilo de AutoCad es ZWCAD que se puede adquirir por un precio inferior. Ambas distribuciones tienen el problema que no presentan versiones en Linux, aunque el futuro está en la adptación del software al Linux (por su creciente demanda en el mercado) y en la virtualización. No obstante, nos encontramos con otros programas CAD libres con los que podemos desarrollar nuestros proyectos, y en este reportaje hablamos de Medusa4 y como instalarlo en Ubuntu.

5.- Crea tus propios ritmos con Hydrogen (1a parte).

Hydrogen_drum_machine_iconHydrogen es un avanzado sintetizador de batería que te permite programar sencillos patrones de ritmo con resultados verdaderamente profesionales.
Hydrogen cuenta con una interfaz totalmente gráfica y relativamente fácil de usar, con soporte para simples, un secuenciador basado en patrones, múltiples capas disponibles para los diversos instrumentos y hasta 32 pistas de composición.
Pros
  • Interfaz muy visual y fácil de utilizar
  • Hasta 32 pistas
Contras
  • Algunos problema
  • Faltan algunos sonidos de batería

6.- Crea tus propios ritmos con Hydrogen (2a parte).
_label_
Con el kit de batería cargado por defecto en el Pattern Editor haz clic en los nombres de los instrumentos para oir su sonido. Para añadir un sonido en el patrón solo tienes que hacer clic en la rejilla donde quieras que suene y aparecerá un pequeño rombo negro como referencia.
Debajo de cada evento de percusión (rombo negro), aparecerá una linea vertical de una altura determinada. Modificando esta altura variará la dinámica del golpe percutivo. Es decir la percepción de su volumen y fuerza. Empieza con alguno de los platillos, por ejemplo el charles (Open HH,Pedal HH, Closed HH) para introducir una pulsación a corcheas, agrega a continuación otros sonidos: bombo en los tiempos fuertes del compás (1 y 3) y caja en los tiempos débiles (2 y 4).

7.- Workarround para usar PulseAudio y Jack de forma sencilla.

Para los que están metidos en el mundo de grabación y producción musical en GNU/Linux de seguro están más que familiarizados con JACK (una herramienta excelente), y seguramente tengan más de una placa de audio (alguna interfaz profesional, la placa de sonido onboard, el micrófono incorporado en las cámaras web, etc) y la forma más fácil de tener todas las placas en orden es a través de PulseAudio.
Después de un rato concluí con que la mejor opción es matar de lleno PulseAudio y lanzar el servidor Jack cuando se necesite. Es decir, usar siempre PulseAudio y pasar a Jack cuando lo necesitemos.
Lo primero que hay que hacer es configurar PulseAudio para que no intente iniciarse cada vez que muere. Para esto hay que crear el archivo client.conf en ~/.pulse/ y agregarle una única línea que diga autospawn=no

Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Dota 2 un juego de campo de batalla multijugador para Linux.


Dota 2 es un juego de campo de batalla multijugador en linea aun en desarrollo por Valve.

El juego esta actualmente disponible para pruebas preliminares a través de la compra y sera free-to-play cuando se lance finalmente.

DotA fue creado por "Eul", un jugador como cualquiera de nosotros, quien deseaba crear un modo "Diferente" de jugar Warcraft. Eul creo el mapa para jugarlo con sus amigos y se basaba en el uso de una unica unidad por jugador, denominada "Heroe" en un mapa con 3 caminos principales que conectaban las 2 bases enemigas, en el que para ganar habia que destruir la base enemiga.

El jugador no deberia construir la base ni desarrollarla, solo tendria que preocuparse por su heroe. Yo no voy a entrar en la explicacion del modo de juego, porque es demasiado extensa y no va al caso.


 
Al cabo de un año el juego dejo de ser solo para jugar entre "Amigos" y se fue haciendo muy popular en internet.

En 2003, sale la expansion de Warcraft III, llamada Warcraft III: The Frozen Trone

Los jugadores esperaban una actualizacion del mapa a esta expansion por parte de Eul, pero esta nunca llego y el mapa siguio siendo desarrollado a travez del tiempo por diferentes usuarios. Desde hace ya varios años, el mapa viene siendo desarrollado por un usuario llamado "Icefrog", quien lo actualiza periodicamente y nombro a su version DotA All Stars (actualmente renombrada a simplemente "DotA" ). Actualmente el mapa se encuentra en la version 6.73c


En el primer enlace, hay una captura de pantalla (la imagen de arriba) de Steam para GNU/Linux con "Dota 2" mostrándose en la barra lateral.

Como el juego no aparece en color gris, significa que esta instalado, por lo tanto Dota 2 está, probablemente, en proceso de ser portado a GNU/Linux.

Pero desde que Dota 2 usa el motor Source, como Counter-Strike: Source, el cual ya esta disponible para GNU/Linux, es probable, considerando también la captura de pantalla anterior, que Dota 2 va a estar disponible nativamente en GNU/Linux.
dota2 brew_pubstomp
dota2 secret-shop
Dota_2_minimap
Dota_2
Dota_2 wallpaper
dota2_2

Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Cómo instalar un emulador de Android en Ubuntu.

Este emulador lo pueden encontrar en la página oficial de Android para desarrolladores.
Pensado para desarrolladores, incluye:
Herramientas.
Ejemplos de código.
Documentación.
Permite seleccionar cuales de los anteriores desea instalarse.
Posibilidad de descargar cualquier versión del Sistema Operativo (1.6,3.0,4,etc).
Todo para apoyar el desarrollo de aplicaciones para esta plataforma. Además permite:
Navegar por internet, utilizando la conexión de tu ordenador.
Navegar por la interfaz y algunas configuraciones del dispositivo virtual.
Instalar aplicaciones (muy útil si quieres probarlas antes de instalarlas en tu gadget).
Crear varios dispositivos virtuales.
Crear y asignar tarjetas de memoria, de diferentes tamaños.
Asignar la resolución de la pantalla.
En fin, de ahora en más pasaremos a la instalación.
Para hacerlo tenemos que tener instalado previamente el JDK 6, si lo tienen instalado pueden pasar al paso 2. Si no lo tienen (o no saben) pueden instalarlo rápidamente usando el Gestor de Paquetes Synaptic buscando “openjdk-6-jdk”, lo marcan para instalar y aplican.

Después de instalar el JDK, nos disponemos a descargar el paquete de instalación del emulador desde la Pagina oficial
Descomprimimos el paquete, y accedemos a él mediante la terminal, por ejemplo:
$ cd /home/usuario/Android/android-sdk-linux/tools/
Luego, dentro del directorio debemos ejecutar:
$ ./android
Estaremos entonces viendo la pantalla del “Android SDK Manager”. En este punto podremos seleccionar las herramientas y APIs que deseemos instalar. Tan simple como marcar y darle Install Packages.
Una vez instalados los paquetes deseados nos dirigimos a Tools – Manage AVDs y allí encontraremos las opciones de creación de nuevos dispositivos. Le damos a New, y configuramos los datos necesarios para nuestro gadget virtual, nombre, versión del SO (API), tarjeta de memoria, resolución de pantalla, etc. Al finalizar damos Create AVD, y listo, ya tenemos nuestro dispositivo Android creado
Ahora podemos ver en la lista de dispositivos el que acabamos de crear. Lo seleccionamos, damos Start, seleccionamos la escala del display en caso que queramos verlo en tamaño real y empezará a correr. No se desesperen puede demorar uno o varios minutos en reaccionar la primera vez.


Para instalar aplicaciones solo debes bajar la misma con la extensión .apk, y mediante una terminal posicionarte en el directorioplataform-tools, y, con el dispositivo corriendo, ejecutar:

$ adb install nombre_aplicacion.apk
 
De la misma manera, para desinstalar: 

$ adb uninstall nombre_aplicacion.apk
 
Una muy buena herramienta para probar aplicaciones, recomendado sobre todo si eres desarrollador o quieres probar aplicaciones con la seguridad de que no va a suceder nada con tu gadget.

Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Introducción a Inkscape programa de diseño vectorial.

inkscape-draw-freely-program-LOGOInkscape es un programa de diseño vectorial. Esto significa que los gráficos así creados se podrán escalar a cualquier tamaño sin que pierdan calidad, o reformar una vez hechos sin tener que borrar cada línea.

También tiene la capacidad de exportar lo que dibujemos a un formato de mapa de bits para utilizarlo en cualquier aplicación, como fondo de pantalla, en una página web, etc.

Inkscape se encuentra desarrollado principalmente para el sistema operativo GNU/Linux, pero es una herramienta multiplataforma.
Es una aplicación disponible en muchas lenguas, incluyendo sistemas de escritura complejos (como sistemas de escritura de derecha a izquierda como árabe, hebreo...).

Ink1.png

En esta primera imagen se puede observar la explicación de la utilidad de cada herramienta. También vemos en la parte inferior: el zoom al que estamos trabajando en este momento, la posición en la que está el mouse y un mensaje de ayuda para saber qué podemos hacer en cada momento. En la parte superior hay una barra de menús que convendría que usted mismo investigue, una barra de botones de tareas más frecuentes y una barra contextual que irá cambiando según la herramienta que usted haya seleccionado. Le muestro a continuación las posibilidades de esta barra contextual.

Detalle de los botones con la herramienta "puntero":
Ink2.png
Función de cada botón, de izquierda a derecha:
Rotar izquierda
Rotar derecha
Espejar horizontal
Espejar vertical
Enviar al fondo
Bajar una capa
Subir una capa
Enviar arriba de todo
Posición horizontal (1)
Posición vertical (1)
Ancho
Alto
Unidad de medida
(1) Del vértice superior izquierdo de la figura o lo seleccionado.
El pequeño "candado" que se ve entre "Ancho" y "Alto" es para mantener la proporcionalidad entre estas magnitudes cuando se cambia una de ellas.
Detalle de los botones con la herramienta "Editor de nodos":
Ink3.png
Función de cada botón, de izquierda a derecha:
Agregar nodo (2)
Sacar nodo (2)
Cerrar figura
Cerrar con un segmento
Sacar un segmento
Crear un corte
Cúspide
Empalme
Empalme simétrico
Convertir a recta
Convertir a curva
Objeto a curvas
Contorno a curvas
(2) Entre dos nodos seleccionados.
Detalle de los botones con la herramienta "Zoom":
Ink4.png
Función de cada botón, de izquierda a derecha:
  • Acercar
  • Alejar
  • Zoom a la selección
  • Zoom a todo
  • Zoom a la página
  • Zoom al ancho de página
  • Zoom anterior
  • Zoom siguiente
  • 100%
  • 50%
  • 200%
Detalle de los botones con la herramienta "Rectángulos":
Ink5.png
Función de cada botón, de izquierda a derecha:
  • Radio horizontal de las esquinas
  • Radio vertical de las esquinas
  • Unidad de medida
  • esquinas en punta
Detalle de los botones con la herramienta "Elipses":
Ink6.png
Función de cada botón, de izquierda a derecha:
�?ngulo de inicio (3)
�?ngulo de fin (3)
Arco o Porción
Figura cerrada
(3) Medido desde la línea horizontal sobre el lado derecho de la figura y en el sentido de las agujas del reloj.
Detalle de los botones con la herramienta "Polígonos":
Ink7.png
Función de cada botón, de izquierda a derecha:
  • Cantidad de puntas
  • Polígono o estrella
  • Distancia del centro a la cuenca de la estrella
  • Convierte en curva las caras
  • Vuelve a los valores del principio
Detalle de los botones con la herramienta "Espirales":
Ink8.png
Función de cada botón, de izquierda a derecha:
  • Vueltas del espiral
  • Aumento de radio progresivo
  • Punto interior donde comienza la espiral
  • Vuelve a los valores del principio
Detalle de los botones con la herramienta "Líneas caligráficas":
Ink9.png
Función de cada botón, de izquierda a derecha:
Máximo ancho de la pluma
Angulo de la mano
Suavidad del trazo
Lentitud del trazo
Vuelve a los valores del principio

Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

10 Artículos Recomendados sobre Seguridad en Ubuntu.

ubuntu-TuxLa mayor amenaza de seguridad informática no son los programas en sì mismos, es el hombre, el usuario.

Siempre hablamos de los virus y de la seguridad informática, de cómo es muy difícil penetrar en un sistema Gnu/Linux y muy fácil entrar en Windows.

Pero difícil no significa imposible y cada vez más y más amenazas se crean para Gnu/Linux y en especial para Ubuntu, al ser uno de los sistemas más usados dentro de la familia Gnu/Linux. Los rootkits son un buen ejemplo de amenaza que se ha llegado a Ubuntu, aunque al igual que hay una forma de que llegue, siempre hay una forma de sacarlo de nuestro sistema.

Linux, y en nuestro caso Ubuntu, cuenta con algunos elementos para minimizar, neutralizar o directamente eliminar estos riesgos.

De la larga lista que hay me he tomado la atribuciòn de elegir 10, sepan disculpar los que he dejado de lado:
1.- Como recuperar una clave de root olvidada (y cambiarla), metodo 1.

clave root olvidadaPodemos encontrarnos con la situación de que hemos perdido u olvidado la contraseña de superusuario o root que creamos cuando instalamos Ubuntu y ahora nos encontramos con la poco agradable sorpresa de que no podemos administrar nuestro sistema.
En ese caso caso: què hacer?
Cuando inicias el ordenador y en el arranque muestra el pantallazo inicial, es decir el pantallazodel grub, tenemos que seleccionar editar con la letra "e" y nos apoarecerà de inmediato una ventana de edicion como lo muestran las dos imàgenes a continuaciòn:

2.- Como recuperar una clave de root olvidada, metodo 2.

clave root olvidadaPodemos encontrarnos con la situación de que hemos perdido u olvidado la contraseña de superusuario o root que creamos cuando instalamos Ubuntu y ahora nos encontramos con que no podemos administrar nuestro sistema.
Al iniciar el ordenador y cuando nos sale el Grub, seleccionamos arrancar en modo recovery (recuperación).
Nota: para los que os arranca Ubuntu directamente sin poder ver el Grub: lo haremos después de que carge la placa base pulsando escape, si no funciona pulsa shift, para entrar en el menú del grub.
Y en el menu del Grub que nos aparece, elige recovery mode (recuperación)
  • En el submenú que aparece elige "netroot" ("root" en las nuevas versiones), para colocarnos como superusuario sin contraseña.
  • Con este comando podemos solucionar el error: "Authentication token manipulation error passwd: password unchanged":
    Montamos de nuevo la raíz del sistema con permisos de escritura y lectura con el comando:

3.- Deborphan es una utilidad que detecta los paquetes huérfanos en Debian.

debian_logoCuando instalas un paquete éste suele tener dependencias, las cuales se instalan automáticamente.
Si desinstalas ese paquete padre, las dependencias se quedarán en el disco ocupando un espacio inútil.
A estos paquetes se les llama huérfanos (no tienen padre). Nunca está de más ver si tenemos paquetes huérfanos ocupando espacio en nuestro disco.
Deborphan es una utilidad que detecta los paquetes huérfanos.
Imagen:Nota clasica.png Este comando es muy útil si utilizas apt o dpkg para administrar los paquetes de tu sistema. Si usas aptitude no hace falta usarlo porque él mismo se encarga de eliminar los paquetes huérfanos.

4.- Ubuntu Rescue Remix resulta muy útil para rescatar archivos de discos duros con problemas o defectuosos o reconstruir sistemas de archivos.

Ubuntu Rescue Remix es una recopilación de distintas utilidades para recuperación de datos montadas en un Live CD que permite el arranque del sistema.
Resulta muy útil para rescatar archivos de discos duros con problemas o defectuosos o reconstruir sistemas de archivo de discos duros formateados con distintos sistemas operativos.
Ofrece un entorno gráfico que facilita la puesta en marcha de las operaciones. Dispone también de programas para realizar “autopsias” de los problemas del disco.

5.- Advanced Onion Router es un excelente programa para proteger tu privacidad mientras navegas.
Advanced Onion Router
Para  entender claramente el concepto de navegar anónimamente tener que saber que son los dominios .onion.
En Tor podrás comenzar una navegación anónima simplemente introduciendo cualquier dirección o IP de la web superficial de todos los días, pero no nos engañemos más y pasemos a lo que realmente llama la atención en todo este asunto de la Deep Web.
La entrada propiamente dicha a la parte más invisible de la Deep Web se realiza a través de lo que se llama Onionland, o también -mal- denominada Darknet. Estos son sitios reglados bajo dominios del tipo .onion que tienen la particularidad de no revelar el título de su contenido en su dirección (ej. Facebook.com), sino que se lo esconde con URLs del tipo kj369k76352k3hte.onion (16 caracteres alfa numéricos).
Este protocolo (Onion Router) que Tor toma como base para su funcionamiento, será el que presente los sitios más interesantes en cuanto a anonimato en la deep web. Para acceder a ellos tendrás que saber su IP e introducirla en Tor a través de la barra de direcciones.

6.- Dkopp software libre para crear copias de seguridad de nuestros archivos y documentos.
dkop_1Dkopp es una interesante herramienta de seguridad que nos permitirá realizar todo tipo de respaldo de la información, archivos y documentos que tengamos almacenados en CD, DVD o Blue-ray.
De esta manera, podemos tener copias de seguridad extra para evitar que se pierdan los datos de los discos por cualquier eventualidad.
Dkopp también es utilizado para crear discos de almacenamiento, donde podemos ingresar nuestras copias de seguridad lo que aumenta el atractivo de la aplicación.
La funcionalidad de Dkopp no se limita a crear copias de seguridad y realizar almacenamiento de archivos importantes, también puede ser utilizado para realizar verificaciones de distintos tipos de copias de discos, así podemos saber si la copia de un DVD, CD o Blue-ray está bien hecha y carece de errores.

7.- Gcipher es una herramienta, sencilla y útil para encriptar archivos.
gciher3Suponga que quiere mandar un mensaje “cifrado” a un colega, amigo, y/o compañero de trabajo, por diversas razones que no enlistaré, necesita cierta “privacidad” para que nada más la persona a la que está dirigida dicho mensaje la lea.

Este programa se encuentra en los repositorios de Debian, Ubuntu y muy probablemente en su distribución favorita, por lo que lo animamos a testearla y al menos divertirse un momento al intercambiar mensajes, tuits o lo que se le ocurra con familiares, amigos, clientes, etc.

8.- FreeFileSync compara y sincroniza tus archivos sin problemas.
FreeFileSync te ayuda a gestionar tus copias de seguridad comprobando los cambios realizados en el fichero original y aplicándolos a las copias.
Puede comprobar cambios por tamaño, fecha o contenido, y sincronizarlos en modo Mirror (los cambios de una carpeta se aplican a la otra borrando lo demás), Update (copia archivos de un sitio a otro respetando la carpeta destino) y Two Way (copia nuevo contenido y actualiza el existente usando las dos carpetas como origen y destino).
FreeFileSync permite guardar la configuración de una tarea y cargarla posteriormente, así como crear un fichero CSV con una lista de los archivos presentes en una carpeta

9.- DuckDuckGo el motor de búsqueda que hace hincapié en la privacidad del usuario.

duckduckgoDuckDuckGo es un motor de búsqueda establecido en Valley Forge, Pensilvania, Estados Unidos, que utiliza la información de sitios de origen público (como Wikipedia) con el objetivo de aumentar los resultados tradicionales y mejorar la relevancia. La filosofía de DuckDuckGo hace hincapié en la privacidad y en no registrar la información del usuario.
Historia
Duck Duck Go fue fundada por Gabriel Weinberg, un empresario cuya última aventura The Names Database (la base de datos de nombres) fue adquirida por United Online (NASDAQ:UNTD) en el 2006 por U$S 10 millones.
Weinberg tiene una licenciatura en Física y un M.S. en Tecnología y Política en el MIT.
10.- Lightweight Portable Security.

lps_logoLightweight Portable Security (LPS-Public) nace de una iniciativa del Departamento de Defensa de los EEUU de poner en línea una distribución Linux creada bajo la dirección de su Fuerza Aérea en mancomunión con equipos del gobierno.
Lightweight Portable Security (LPS) es lo que su nombre indica, una distribución ligera, que arranca desde un CD o un dispositivo USB, y que pone el gran acento en la seguridad de la información.
Este sistema operativo funciona integralmente en la memoria RAM del computador, no monta los dispositivos locales (disco/s duro/s o rígido/s) y se asegura de no dejar ningún rastro de la actividad de los usuarios. Nada queda almacenado.
Prevista para que los empleados del Departamento de Defensa puedan utilizar cualquier equipo público en toda seguridad, el sistema propone especialmente un sistema de criptado de datos y un navegador web Firefox concebido para funcionar con las cartas de acceso CAC y PIV que el gobierno estadounidense utiliza para securizar los accesos distantes a los servidores de la administración.

Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog:

Guia Python: conceptos de programación y atributos de clase.

python logoPython es un lenguaje de script desarrollado por Guido van Rossum.

Podemos codificar empleando programación lineal, estructurada y orientada a objetos (tengamos en cuenta que esta última es la que se ha impuesto en la actualidad)

Se cuenta con intérpretes de Python en múltiples plataformas: Windows, Linux, Mac etc. Se pueden desarrollar aplicaciones de escritorio como aplicaciones web. Empresas como Google, Yahoo, Nasa etc. utilizan este lenguaje para sus desarrollos (actualmente el creador de Python Guido van Rossum trabaja para Google.)

Se puede ejecutar instrucciones de Python desde la línea de comando o creando archivos con extensión *.py. Cuando uno comienza a aprender este lenguaje la línea de comandos nos provee una retroalimentación del resultado en forma inmediata.

El objetivo de este tutorial es presentar en forma progresiva los conceptos fundamentales de este lenguaje y poder analizar los problemas resueltos y codificar los problemas propuestos en este mismo sitio, sin tener que instalar en un principio el Python en su equipo (o luego de instalado poder avanzar con el tutorial en cualquier máquina conectada a internet).

Conceptos de programación orientada a objetos.
python Atributos de una clase
Habíamos dicho que Python nos permite combinar las metodologías de programación Lineal, Estructurada y Orientada a Objetos. A partir de este concepto mostraremos en forma sencilla la metodología de Programación Orientada a Objetos.
Se irán introduciendo conceptos de objeto, clase, atributo, método etc. y de todos estos temas se irán planteando problemas resueltos.
Prácticamente todos los lenguajes desarrollados en los últimos 15 años implementan la posibilidad de trabajar con POO (Programación Orientada a Objetos)
El lenguaje Python tiene la característica de permitir programar con las siguientes metodologías:
  • Programación Lineal: Es cuando desarrollamos todo el código sin emplear funciones.
  • Programación Estructurada: Es cuando planteamos funciones que agrupan actividades a desarrollar y luego dentro del programa llamamos a dichas funciones que pueden estar dentro del mismo archivo o en una librería separada.
  • Programación Orientada a Objetos: Es cuando planteamos clases y definimos objetos de las mismas (Este es el objetivo de los próximos conceptos, aprender la metodología de programación orientada a objetos y la sintaxis particular de Python para la POO)
Conceptos básicos de Objetos.
Un objeto es una entidad independiente con sus propios datos y programación. Las ventanas, menúes, carpetas de archivos pueden ser identificados como objetos; el motor de un auto también es considerado un objeto, en este caso, sus datos (atributos) describen sus características físicas y su programación (métodos) describen el funcionamiento interno y su interrelación con otras partes del automóvil (también objetos).
El concepto renovador de la tecnología Orientación a Objetos es la suma de funciones a elementos de datos, a esta unión se le llama encapsulamiento. Por ejemplo, un objeto página contiene las dimensiones físicas de la página (ancho, alto), el color, el estilo del borde, etc, llamados atributos. Encapsulados con estos datos se encuentran los métodos para modificar el tamaño de la página, cambiar el color, mostrar texto, etc. La responsabilidad de un objeto pagina consiste en realizar las acciones apropiadas y mantener actualizados sus datos internos. Cuando otra parte del programa (otros objetos) necesitan que la pagina realice alguna de estas tareas (por ejemplo, cambiar de color) le envía un mensaje. A estos objetos que envían mensajes no les interesa la manera en que el objeto página lleva a cabo sus tareas ni las estructuras de datos que maneja, por ello, están ocultos. Entonces, un objeto contiene información pública, lo que necesitan los otros objetos para interactuar con él e información privada, interna, lo que necesita el objeto para operar y que es irrelevante para los otros objetos de la aplicación.
python Atributos de una clase1
Declaración de una clase y creación de objetos.
La programación orientada a objetos se basa en la programación de clases; a diferencia de la programación estructurada, que está centrada en las funciones.
Una clase es un molde del que luego se pueden crear múltiples objetos, con similares características.
Un poco más abajo se define una clase Persona y luego se crean dos objetos de dicha clase.
Una clase es una plantilla (molde), que define atributos (lo que conocemos como variables) y métodos (lo que conocemos como funciones).
La clase define los atributos y métodos comunes a los objetos de ese tipo, pero luego, cada objeto tendrá sus propios valores y compartirán las mismas funciones.
Debemos crear una clase antes de poder crear objetos (instancias) de esa clase. Al crear un objeto de una clase, se dice que se crea una instancia de la clase o un objeto propiamente dicho.
Confeccionaremos nuestra primer clase para conocer la sintaxis en el lenguaje Python, luego definiremos dos objetos de dicha clase.
Implementaremos una clase llamada Persona que tendrá como atributo (variable) su nombre y dos métodos (funciones), uno de dichos métodos inicializará el atributo nombre y el siguiente método mostrará en la página el contenido del mismo.
class Persona:
    def inicializar(self,nom):
        self.nombre=nom

    def imprimir(self):
        print 'Nombre:'
        print self.nombre
        print '<br>'

persona1=Persona()
persona1.inicializar('Juan')
persona1.imprimir()

persona2=Persona()
persona2.inicializar('Ana')
persona2.imprimir()
Siempre conviene buscar un nombre de clase lo más próximo a lo que representa. La palabra clave para declarar la clase es class, seguidamente el nombre de la clase y luego dos puntos.
Los métodos de una clase se definen utilizando la misma sintaxis que para la definición de funciones.
Como veremos todo método tiene como primer parámetro el identificador self que tiene la referencia del objeto que llamó al método.
Luego dentro del método diferenciamos los atributos del objeto antecediendo el identificador self:
self.nombre=nom
Con la asignación previa almacenamos en el atributo nombre el parámetro nom, los atributos siguen existiendo cuando finaliza la ejecución del método. Por ello cuando se ejecuta el método imprimir podemos mostrar el nombre que cargamos en el primer método.
Decíamos que una clase es un molde que nos permite definir objetos. Ahora veamos cual es la sintaxis para la definición de objetos de la clase Persona:
persona1=Persona()
persona1.inicializar('Juan')
persona1.imprimir()
Definimos un objeto llamado persona1 y lo creamos asignándole el nombre de la clase.
Luego para llamar a los métodos debemos anteceder el nombre del objeto el operador . y por último el nombre del método.
En el caso que tenga parámetros se los enviamos (salvo el primer parámetro (self) que el mismo Python se encarga de enviar la referencia del objeto que se creó):
persona1.inicializar('Juan')
También podemos definir tantos objetos de la clase Persona como sean necesarios para nuestro algoritmo:
persona2=Persona()
persona2.inicializar('Ana')
persona2.imprimir()
Esto nos da una idea que si en una página WEB tenemos 2 menúes, seguramente definiremos una clase Menu y luego crearemos dos objetos de dicha clase.
Esto es una de las ventajas fundamentales de la Programación Orientada a Objetos (POO), es decir reutilización de código (gracias a que está encapsulada en clases) es muy sencilla.
Atributos de una clase.
Ahora trataremos de concentrarnos en los atributos de una clase. Los atributos son las características, cualidades, propiedades distintivas de cada clase. Contienen información sobre el objeto. Determinan la apariencia, estado y demás particularidades de la clase. Varios objetos de una misma clase tendrán los mismos atributos pero con valores diferentes.
Cuando creamos un objeto de una clase determinada, los atributos declarados por la clase son localizadas en memoria y pueden ser modificados mediante los métodos.
Plantearemos un nuevo problema para analizar detenidamente la definición, sintaxis y acceso a los atributos.
Problema: Implementar una clase que muestre una lista de hipervínculos en forma horizontal (básicamente un menú de opciones)
Lo primero que debemos pensar es que valores almacenará la clase, en este caso debemos cargar una lista de direcciones web y los títulos de los enlaces. Podemos definir dos listas paralelas que almacenen las direcciones y los títulos respectivamente.
Definiremos dos métodos: cargaropcion y mostrar.
class Menu:
    enlaces=[]
    titulos=[]
    def cargaropcion(self,en,tit):
        self.enlaces.append(en)
        self.titulos.append(tit)

    def mostrar(self):  
        for indice in range(0,len(self.enlaces)):
            print '<a href="'+self.enlaces[indice]+'">'+self.titulos[indice]+'</a>'


menu1=Menu()
menu1.cargaropcion('http://www.google.com.ar','Google')
menu1.cargaropcion('http://www.yahoo.com.ar','Yahoo')
menu1.cargaropcion('http://www.live.com.ar','Msn')
menu1.mostrar()
En este caso los atributos son de tipo listas y estamos obligados a definirlos dentro de la clase y previo a la declaración de los métodos:
enlaces=[]
    titulos=[]
Estamos definiendo dos listas vacías.
El método cargaropcion recibe el enlace y el título y los almacena al final de cada lista empleando el método append de la lista (tengamos en cuenta que Python administra las listas como objetos)
self.enlaces.append(en)
        self.titulos.append(tit)
El método que imprime todos los enlaces utiliza un for para recorrer las listas y acceder a cada elemento de las listas y mostrarlos dentro de la página:
for indice in range(0,len(self.enlaces)):
            print '<a href="'+self.enlaces[indice]+'">'+self.titulos[indice]+'</a>'
Luego creamos un objeto de la clase Menu y llamamos tantas veces al método cargaropcion como opciones tenga nuestro menú
menu1=Menu()
menu1.cargaropcion('http://www.google.com.ar','Google')
menu1.cargaropcion('http://www.yahoo.com.ar','Yahoo')
menu1.cargaropcion('http://www.live.com.ar','Msn')
Finalmente llamamos al método mostrar que imprime cada hipervínculo en la página:
menu1.mostrar()
python banner
Si te ha gustado el artículo inscribete al feed clicando en la imagen más abajo para tenerte siempre actualizado sobre los nuevos contenidos del blog: