PDF de programación - Recursos de programación en GNU/Linux

Imágen de pdf Recursos de programación en GNU/Linux

Recursos de programación en GNU/Linuxgráfica de visualizaciones

Actualizado el 28 de Julio del 2017 (Publicado el 14 de Enero del 2017)
1.487 visualizaciones desde el 14 de Enero del 2017
976,5 KB
49 paginas
Creado hace 13a (04/05/2007)
Utilización y administración avanzadas de
sistemas GNU/Linux y aplicaciones Software
Libre para estudiantes universitarios

Recursos de programación en GNU/Linux

Ramón Rey Vicente rrey@ramonrey.net

Recursos de programación en
GNU/Linux
● Lenguajes
● Frameworks
● Entornos de desarrollo
● Otros recursos
● Colaborando

Lenguajes

● C
● C++
● Java / C#
● Python / Perl / Ruby
● Otros: Objective-C, Fortran, Eiffel, Haskell

C

● La base de GNU/Linux y UNIX
● Gran cantidad de bibliotecas
● glibc, GCC

C++

● Permite usar muchos de los recursos
disponibles en C
● Problemas de estandarización de
compiladores
● Ventajas en el diseño e implementación
de aplicaciones
● GCC

Java

● Ya es libre !!!
● Existen implementaciones ajenas al
control de SUN
● Independiente de plataforma, en teoría
● El mejor camino para migrar de
entornos de desarrollo privativos a
entornos libres
● JDK, GCJ

C#

● “Java” de Microsoft
● MONO
● Buen framework de desarrollo, moderno
● Intenta seguir a Microsoft con su .NET
● Incompleto, siempre por detrás
● Complicado migrar de MONO a .NET y
viceversa

Python

● Multiplataforma
● Dinámico
● Orientado a objetos
● Sencillo
● Web y escritorio

Perl

● Multiplataforma
● Hereda features de C, sh, Awk
● Potente manejo de XML
● Fácilmente trabaja con C/C++
● DBI, simplifica accesoa BBDD

Ruby

● Multiplataforma
● Dinámico
● Javascript + Python + Java
● Fácil extender en C

Otros

● Haskell
● Eiffel
● Fortran
● R
● ML
● Objective-C

Frameworks

● Java
● Mono / .NET
● QT / KDE
● Gtk+ / GNOME

Java

● Bytecode
● Recolector de basura
● JDBC, acceso a bases de datos
● aplicaciones web, servlets
● introspección, plantillas
● manejo de xml, cifrado y seguridad
● programación distribuida

Java (II)

● Swing/AWT para aplicaciones gráficas
● Soporte de Ruby además de Java
● ... hasta tiempo real

Mono / .Net

● clon de Java
● integra XML, multihilo, seguridad y cifrado
● interfaz gráfica con gtk#/gnome#
● sopora Python, Perl, Javacript, VB.net, Java,

etc además de C#

● no es recomendable para multiplataforma

QT / KDE

● creación de aplicaciones gráficas QT/KDE
● manejo de multihilo
● XML
● red
● tipos básicos portables
● KDE: multimedia, manejo de archivos,

componentes con dcop

gtk+ / GNOME

● creación de aplicaciones gtk/GNOME
● tipos básicos portables (glib)
● manejo de gráficos, animaciones
● GNOME: manejo de archivos, multimedia

(gstreamer),

Entornos de desarrollo

● Eclipse
● Netbeans
● Anjuta
● Kdevelop
● Vim / Emacs

Eclipse

● multiplataforma
● toolkit propio SWT, nativo para cada

plataforma

● soporta Java, C++, PHP, a través de plugins
● soporta múltiples SCM
● editores visuales (incompletos)

Eclipse (II)

Netbeans

● Java, C++ y Ruby
● Editor visual de aplicaciones Java
● Muy extensible: plugins
● Multiplataforma
● Requiere bastantes recursos

Netbeans (II)

Anjuta

● Orientado a gtk+/GNOME
● Integración con autotools (automake,

autoconf, etc)

● Integración con gdb
● Soporte para Pascal, Perl, Java, por archivo
● Ligero, ideal para máquinas modestas

Anjuta (II)

GLADE

Kdevelop

● Orientado a QT/KDE
● Gran soporte de C++
● Soporta C, Java, Pascal, PHP, Ruby, etc
● Integración con autotools, qmake y ant
● Ligero

Kdevelop (II)

Vim

● Editor con muchas posibilidades
● Soporta virtualmente cualquier lenguaje
● Únicamente para editar código
● Obliga a conocer autotools, etc
● Ideal para máquinas muy modestas

Vim (II)

Emacs

● Editor altamente extensible
● Soporta cualquier lenguaje
● Integración con sistemas de control de
versiones, compiladores, debuggers, etc

● Es un IDE sin ser IDE

Emacs

Otros recursos

● SCM: control de versiones
● Buscando software
● Alojamiento
● Licencias

SCM

● “Gestión del código fuente”
● “Control de versiones”
● SVN, el “bueno”
● git, arch, bazaar, los “feos”
● CVS, el “malo”

Subversion (SVN)

● Desarrollo centralizado
● Sencillo
● “Compatible” con comandos del CVS
● Soporta directorios
● El nuevo estándar para los habituados al
CVS

CVS

● Desarrollo centralizado
● Sencillo
● Muy estable
● Un “estándar”
● Obsoleto

SCM´s distribuidos

● git
● arch
● bazaar

git

● sencillo
● complejo
● potente
● flexible
● escalable

Buscando software

● Freshmeat
● Sourceforge
● Directorio del proyecto GNU
● Savannah
● Proyecto Debian
● GNOME, KDE, ...

Alojamiento

● Savannah
● Sourceforge

Licencias

● GPL “todos somos iguales ante el
código”
● LGPL “somos iguales excepto los
desiguales”
● BSD / MIT X11 “somos iguales los que
queremos serlo”

Colaborando

● Elegir un proyecto
● Elegir un módulo o componente
● Elegir un tarea o bug
● Desarrollar la solución
● Exponerla a los miembros del proyecto
● Reimplementar

Elegir un proyecto

● Según lenguaje de programación
● Según la licencia
● Según el tamaño
● Según la ayuda y la comunidad creada

Elegir un módulo

● Según el nivel de cada uno
● Sencillez para empezar
● Pensar funcionalidades no presentes

Elegir una tarea

● Bugzilla
● TODO
● Roadmap
● Bounties (€)

Implementar solución

● Seguir las convenciones y guías de estilo
● Realizar los cambios mínimos necesarios
en el código de los demás
● El software libre no es solo Linux
● Considerar la licencia del proyecto

Mostrar el trabajo

● Mostrar el trabajo a la comunidad
● Buscar la aceptación del mantenedor del
proyecto
● Modificar y reimplementar todo en
función de la respuesta
● Trabajo colaborativo

Reimplementar

● Aceptar las críticas
● Argumentar las decisiones
● Buscar la excelencia técnica
● Y finalmente, conseguir que acepten el
parche

Fin

Licencia

Creative Commons

Reconocimiento-No comercial-Compartir bajo la

misma licencia 2.5 España
  • Links de descarga
http://lwp-l.com/pdf1143

Comentarios de: Recursos de programación en GNU/Linux (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad