Encuentre su libro ahora

Usuarios registrados
  • Usuario:
  • Contraseña:

Boletín de novedades


Localícenos




Inicio > Informática e internet > Programa en GNU/Linux!
Programa en GNU/Linux! Novedad

DISPONIBLE EN UNOS DIAS

Nuñez Alarcón, Máximo; Sánchez Rodríguez, Francisco Javier
INFORBOOK'S
9788415033141, 2011, 712 páginas
Precio: 34,50 € [con IVA] 33,17 € [sin IVA] / $ 42,12
Cantidad:
Hace tiempo GNU/Linux contaba con una interfaz muy poco amigable, estaba pensado exclusivamente para el usuario experto y su uso era bastante complejo. Sin embargo, desde hace ya unos años todo ha cambiado, ahora en GNU/Linux se trabaja con potentes interfaces gráficas y las aplicaciones son amigables y sencillas de utilizar. Poco a poco asistimos a una generalización en el uso de software libre, lo que provoca que cada día sean requeridos por las empresas e instituciones públicas más profesionales que puedan desarrollar soluciones en GNU/Linux.
Sin embargo, tradicionalmente los ingenieros y programadores se han formado en entornos y herramientas privativas, lo que ha provocado en numerosas ocasiones un desajuste entre la oferta y la demanda en este mercado laboral. Además, cada día más (y agravado con la crisis económica) las empresas e individuos tratan de reducir costes y encuentran en GNU/Linux un gran número de herramientas libres que permiten realizar cualquier tarea de ingeniería y programación sin tener que recurrir a la piratería y por supuesto ofreciendo todo la potencia de las privativas.
Esta obra pretende abrirte las puertas de la programación en GNU/Linux. Se ha apostado por una guía muy práctica, en la que paso a paso, descubras la programación en GNU/Linux. Más concretamente, se plantean los siguientes objetivos:
- Aprender lo esencial de GNU/Linux, instalarlo, personalizarlo y configurarlo.
- Empezar a dominar la SHELL de GNU/Linux, realizarás scripts con una doble función: enseñarte la potencia de BASH y disponer de utilidades que te faciliten el trabajo del día a día y aumenten tu productividad.
- Conocer el lenguaje HTML, así como los estándares propuestos por la W3C, a saber: CSS, XML, sin olvidarnos de JavaScript, XHTML y AJAX.
- Iniciarte en la programación en Internet con los dos lenguajes ''de referencia'': PHP y Java.
- Aprender a instalar y configurar distintos servidores: Web (Apache, Tomcat), base de datos (MySQL), gestores de contenido (Drupal, WordPress), etc.
- Acercarte a la programación en GNU/Linux desde todas las edades, necesidades y perspectivas: para los más peques (KTurtle, Etoys), los que prefieren la programación más clásica (Lisp, GNU Prolog, Haskell) o visual (Lazarus, Gambas, Squeak), etc.
- Iniciarte en la programación más avanzada en C/C++, Python, C#, Gtk+ y Glade. Además, nos detendremos en aspectos frecuentemente olvidados en los libros: documentación, empaquetado y pruebas.
- Mostrarte distintas herramientas y utilidades de programación (editores, IDEs, diccionarios y traductores, etc.) e ingeniería (modelado, planificación de proyectos, gestión de costes).
Con estos objetivos, verás todo lo que puedes necesitar para afrontar con éxito tu vida como programador ya sea a nivel profesional, estudiante o como usuario amateur que quiere aprovechar su tiempo de ocio aprendiendo y disfrutando con estas herramientas.


Índice general


PARTE I: Introducción
Introducción.............................................. 19
1.1. ¿Por qué comprar este libro? ...........................................19
1.2. ¿A quién va dirigido? .......................................................20
1.3. Acerca de los autores ......................................................20
1.4. Convenciones utilizadas en el libro .................................21
1.5. Agradecimientos .............................................................22
Una primera aproximación ........................ 23
2.1. ¿Qué es GNU/Linux? Características ..............................23
2.2 Distintas posibilidades para obtener Ubuntu ...................25
2.2.1 Wubi, una instalación sin particionar ............................................... 25
2.2.2 Instalación desde tu Pendrive ........................................................... 27
2.2.3 Emulando GNU/Linux en Windows con VirtualPC y VirtualBox ......... 31
2.2.4 Dos alternativas muy diferentes: Portable Ubuntu y eyeOS .............. 38
Instalación de Ubuntu................................ 41
3.1. Un particionado con vistas ..............................................41
3.2. Sólo tengo una partición para Windows, ¿qué hago? .......43
3.3. Obtención de los CDs ......................................................46
3.4 Precauciones previas .......................................................46
3.5 Instalación clásica en el disco duro .................................48
3.6. Emulando Windows en GNU/Linux con Qemu y
VirtualBox .......................................................................54
3.7. Pequeñas recetas: arreglar el arranque, recuperar la
contraseña ......................................................................58
3.8. Tareas PostInstalación .....................................................61
Primeros pasos .......................................... 63
4.1 Instalación de software. ....................................................63
4.1.1 Ailirus y Ubuntu Tweak .................................................................... 67
4.2 Añadiendo nuevos repositorios.........................................69
4.3 Instalar ''casi'' todo en GNU/Linux: deb, rpm, bin,
tar.gz................................................................................70
4.4 Cómo y dónde encontrar ayuda .......................................77
4.5 Personalización ................................................................82
PARTE II: PROGRAMACIÓN BASH
La consola en GNU/LINUX ......................... 87
5.1. ¿Qué es una orden o comando? ......................................87
5.2. Comandos básicos: sudo, cd, ls, cp, mv, rm, mkdir,
rmdir, man, more, clear ...................................................89
5.3. Diversión en la consola....................................................97
5.4. Ejecución en segundo plano..........................................101
5.5. Editando archivos de texto ............................................102
5.6. Sé vago I: Terminación de palabra .................................104
5.7. Sé vago II: Utiliza el histórico de comandos....................104
5.8. Sé vago III: Cortar y pegar selecciones ...........................104
5.9. Personalizando la consola: fuentes, tamaños,
esquemas, etc................................................................104
5.10.Otras consolas .............................................................107
5.11.Comodines, Redireccionamiento, Tuberías y
Variables de entorno. ...................................................107
5.12.Realizando distintas tareas en la consola. ....................109
Programando BASH ..................................... 111
6.1. Creación de scripts........................................................111
6.2 Variables y parámetros...................................................112
6.3. Condiciones ..................................................................117
6.4. Estructuras de control...................................................117
6.5. Funciones .....................................................................122
6.6. Interfaz gráfica de usuario en la consola .......................123
6.7 Un .bashrc avanzado y potente.......................................128
Scripts prácticos con avaricia.................. 131
7.1. Bienvenida molona........................................................131
7.2. Información del sistema ................................................132
7.3. ''El algodón no engaña'' .................................................134
7.4. Extractor de ficheros .....................................................136
7.5. Traductores y buscadores ..............................................137
7.6. Reloj y alarma ...............................................................141
7.7. Visualiza .......................................................................143
7.8. El más importante: la copia de seguridad ......................144
7.9. Personaliza el sistema en menos de un segundo...........147
PARTE III: HERRAMIENTAS E
INGENIERÍA
Utilidades para la Programación (I) .......... 151
8.1. Firefox. Toda la potencia de Internet al alcance
de tu mano ....................................................................151
8.2. Traductores y diccionarios: Wordtrans, Stardict, gdrae ..155
8.3. Un poco de música mientras trabajas: Last.fm,
StreamTurner y Rhythmbox ..........................................159
8.4. Tu biblioteca de programación bien organizada:
Alexandria .....................................................................160
8.5. Otras: Calculadora (SpeedCrunch), Salud en el trabajo
(Workrave, RSIBreak, Workaholic), Notas (Zim, BasKet,
Tomboy), etc. .................................................................162
Utilidades para la Programación (II) ......... 171
9.1. Editores: Vi, Vim, Nano Emacs, Geany ..........................171
9.2. Documentando nuestros programas: ManEdit,
gmanedit y DocBook .....................................................176
9.3 Interfaz con Glade2 y Glade3 ........................................186
Ingeniería ................................................ 201
10.1. Mapas conceptuales: FreeMind, VYM, Semantik,
XMind .........................................................................201
10.2 Modelado: Dia, Umbrello, Gaphor, ArgoUML, BOUML.204
10.2.1. Dia ............................................................................................... 204
10.2.1.1 Objetos. Tipos. Uso de los objetos.......................................................... 205
10.2.1.2 Veamos un ejemplo: un diagrama de clases en notación UML ............... 206
10.2.1.3 Plugins. ................................................................................................... 207
10.2.1.4 Generación de código .............................................................................. 208
10.2.2. Umbrello ....................................................................................... 209
10.2.3. Gaphor.......................................................................................... 210
10.2.4. ArgoUML ....................................................................................... 211
10.2.5. BOUML ......................................................................................... 212
10.3. Planificación de proyectos: Planner, Gantt Proyect,
KPlato y TaskJuggler...................................................214
10.3.1. Instalación ................................................................................... 215
10.3.2.Creación de un proyecto ................................................................ 216
10.3.3. Calendario, recursos, tareas, subtareas y dependencias .............. 216
10.3.4. Diagramas de Gantt y recursos .................................................... 219
10.4. Gestión de costos: OpenOffice Calc, SLOC, Gnumeric
y KSpread ...................................................................220
PARTE IV: Programando en GNU/LINUX
Aprendiendo a programar......................... 223
11.1. KTurtle........................................................................223
11.2. UCBLogo .....................................................................228
11.3. Squeak, aprendiendo el paradigma orientado
a objetos .....................................................................229
11.4. Etoys, el lado más amable de Squeak..........................237
11.5. ¡Programar es divertido con Scratch! ...........................239
11.5.1. Miles de ejemplos para aprender y disfrutar ................................. 243
Trabajando con diferentes paradigmas
de programación ...................................... 245
12.1. Programación declarativa en Lisp con CLISP y Slime ..245
12.2. Programación lógica con GNU Prolog ...........................248
12.3. Programación funcional con Haskell ...........................250
12.4. Programación numérica con Octave ............................253
12.5. Programación estadística con R ...................................259
12.5.1. Análisis estadístico básico. Calculo de la media, mediana,
varianza, desviación típica ........................................................... 259
12.5.2. Trabajando con gráficos................................................................ 260
12.5.3. Ejemplos de contraste de hipótesis ............................................... 261
12.5.4. Invocando a R desde Python ......................................................... 263
Programación visual ................................ 265
13.1. Lazarus, el Delphy libre ..............................................265
13.1.1. Introducción e instalación............................................................ 265
13.1.2. Nuestro primer programa ............................................................. 265
13.2. Gambas, ¿Visual Basic para Linux? ............................271
13.2.1. Definición. Características .......................................................... 271
13.2.2 Instalación .................................................................................... 271
13.2.3. Creación de un proyecto visual: un Hola Mundo contestón ........... 272
PARTE V: PROGRAMACIÓN WEB
Instalación y configuración de Apache,
MySQL, FTP y acceso remoto................... 279
14.1. Instalación de Apache2 ...............................................279
14.1.1. Configuración básica .................................................................... 279
14.1.2. Directorios y archivos de configuración........................................ 280
14.1.3. Arranque y parada del servidor Web.............................................. 284
14.1.4. Modificación del directorio raíz y de la página por defecto ............. 284
14.1.5. Creación de dominios virtuales .................................................... 284
14.1.6. Personalizar la página de error ..................................................... 286
14.1.7. Protección de directorios. Creación de una zona privada .............. 287
14.1.8. Soporte para CGI. Utilizando Perl .................................................. 288
14.2. Trabajando con MySQL en modo consola y con
PhpMyAdmin ..............................................................289
14.2.1. Introducción. Conceptos básicos ................................................... 289
14.2.2. Instalación de MySQL y phpMyAdmin ........................................... 290
14.2.3. Creación y borrado de una base de datos ...................................... 291
14.2.4. Gestión de usuarios ..................................................................... 292
14.2.5. Creación de tablas ........................................................................ 294
14.2.6. Utilizando la base de datos: introducir/eliminar/borrar y
14.2.6. recuperar información ................................................................. 296
14.2.7. Procedimientos almacenados ....................................................... 299
14.2.8. Consultas multitabla .................................................................... 302
14.3. Backup y restauración de la base de datos..................304
14.4. Instalación, configuración y acceso a servidores FTP ...306
14.4.1. Introducción ................................................................................. 306
14.4.2. Instalación del servidor FTP VSFTPD ............................................ 306
14.4.3. Deshabilitando el acceso anónimo ............................................... 308
14.4.4. Clientes FTP: FileZilla, gFTP, yafc ................................................ 310
14.5. Acceso remoto .............................................................312
14.5.1. Introducción. Conceptos básicos ................................................... 312
14.5.2. Instalación del servidor SSH ........................................................ 312
14.5.3. Clientes de acceso remoto: Putty, WinSCP ................................... 314
14.5.4. Ejecutando aplicaciones gráficas del servidor ............................... 316
14.5.5. Accediendo gráficamente: Vino, RealVNC y UltraVNC .................. 317
HTML/XHTML ......................................... 321
15.1. Introducción a HTML...................................................321
15.2. KompoZer, un editor Web multiplataforma .................322
15.3. Primeros pasos ............................................................323
15.4. Dando formato al texto ................................................325
15.5. Los vínculos e hipervínculos ........................................326
15.6. Tratamiento de imágenes. Mapas sensibles.................328
15.7. Manejo de listas ..........................................................331
15.8. Creación de tablas.......................................................333
15.9. Trabajando con marcos ...............................................335
15.10. Formularios...............................................................337
15.11. ¿Es HTML compatible? ..............................................339
15.11.1. Internet Explorer en GNU/Linux ................................................ 339
15.11.2. Distintos navegadores: Konqueror, Firefox, Chrome, Opera,
Epiphany, SeaMonkey y en consola (Lynx, Links y w3m) ........... 341
15.11.3. Explotando Firefox: temas, plugins y extensiones ....................... 343
15.11.4. Configurando el navegador por defecto ....................................... 347
15.11.5. Cumpliendo con el estándar: validación ..................................... 347
15.12. Necesito DreamWeaver, ¿Qué hago? .........................348
15.13. La evolución del HTML el XHTML..............................348
Una web con estilo CSS............................ 353
16.1. Introducción. Conceptos básicos. Referencias .............353
16.2. Aplicando CSS mediante los selectores .......................355
16.3. El modelo de cajas o Box model ..................................358
16.4. Construyendo páginas con CSS ..................................362
16.4.1. Aplicando CSS al texto .................................................................. 362
16.4.2. Aplicando CSS a las listas y viñetas ............................................. 368
16.4.3. Aplicando CSS a las tablas ............................................................ 371
16.5. Firebug y chuletas CSS. Recursos esenciales para
el Webmaster ..............................................................374
16.6. CSSED, el editor CSS open source .............................376
JavaScript ............................................... 377
17.1. Introducción. Conceptos básicos. Referencias .............377
17.2. Inclusión de código JavaScript en las páginas web ......378
17.3. Aprendiendo el lenguaje .............................................379
17.3.1. Variables y operadores.................................................................. 380
17.3.2. Estructuras de control .................................................................. 382
17.3.3. Funciones, funciones y más funciones ........................................ 386
17.3.4. Controla todo lo que ves y no ves. El modelo DOM ......................... 389
17.3.4.1. Un ejemplo más complejo un visor de imágenes ................................... 392
17.3.5. Eventos: gestionando las acciones de los usuarios. ...................... 397
17.3.5.1. Manejadores de Eventos ........................................................................ 399
17.3.6. Una batería infinita de Scripts: Formularios, fechas,
imágenes, etc. ............................................................................. 402
Ajax: La revolución .................................. 405
18.1. Introducción. Conceptos básicos. Referencias .............405
18.2. Análisis de nuestra primera página con AJAX ............407
18.2.1. Entrando en faena: El código en JavaScript .................................. 410
18.3. El objeto XMLHttpRequest: Métodos, propiedades
y eventos .....................................................................419
18.4. Exprimiendo AJAX con Google Maps ..........................420
18.4.1. Construye un mapa para tu Web .................................................. 421
18.4.2. Quiero más: Conociendo la API's de Google .................................. 423
18.4.2.1. Trabajando con la API de Google Maps .................................................. 424
18.4.2.2. Inicialización del mapa .......................................................................... 425
18.4.2.3. Añadiendo controles .............................................................................. 428
18.4.2.4. Construyendo Marcadores ..................................................................... 430
18.5. Nuestro primer Widget con Search API y
recursos para trabajar con las API's de Google ............433
18.6. Aptana, un excelente IDE multiplataforma para
desarrollo Web ............................................................435
18.7. Programando en GNU/Linux con Google Web
Toolkit .........................................................................436
Java ........................................................ 439
19.1. Instalación de Java: JDK .............................................439
19.2. Eclipse, un potente IDE a tu servicio ...........................440
19.2.1 Definición. Características ........................................................... 440
19.2.2 Instalación .................................................................................... 440
19.2.3 Creación de proyectos con Eclipse ................................................. 440
19.3. Introducción a Java .....................................................442
19.3.1. Un lenguaje orientado a objetos ''puro''. Características ............... 442
19.3.2. Mi primer programa en Java ........................................................ 442
19.3.3. Variables, tipos, operadores, estructuras de control y arrays ........ 444
19.3.4. Clases .......................................................................................... 448
19.3.5. La herencia en Java .................................................................... 452
19.3.6. Creando tu primer applet: ''Hola Mundo Libre''. ............................. 456
Java avanzado ......................................... 469
20.1. Apache Tomcat, soporte a JSP y Servlets.....................469
20.2. Mi primer Servlet ........................................................471
20.3. Primeros pasos con JSP ..............................................476
20.4. Separando la interfaz de la capa de negocio con Java
Beans..........................................................................479
20.5. JBoss, un servidor de aplicaciones Open Source ........483
20.6. Accediendo a bases de datos con JDBC ......................486
20.7. Muchas tecnologías a tu alcance: Java Mail, RMI, JNDI,
JNI, Java2D, Java3D, Hibernate..................................489
20.8. Otras alternativas: Perl, Python y Ruby .......................490
20.9. Desarrollando aplicaciones para Android ....................497
Creando páginas dinámicas con PHP ........ 503
21.1. Introducción. Conceptos básicos. Referencias .............503
21.2. Instalación y configuración de PHP .............................504
21.3. Nuestra primera página. ''Hola mundo libre con PHP'' .506
21.4. Aprendiendo el lenguaje .............................................506
21.4.1. Variables y constantes ................................................................. 506
21.4.2. Constantes y variables predefinidas ............................................. 511
21.4.3 Ámbito de las variables. Funciones ............................................... 513
21.4.4. Interactúa con el usuario. Formularios ........................................ 515
21.4.5. Estructuras de control .................................................................. 519
21.4.5.1 Estructuras de control condicionales ...................................................... 520
21.4.5.2 Estructuras de control repetitivas .......................................................... 523
21.5. Funciones, funciones y más funciones .......................526
PHP avanzado .......................................... 529
22.1. Introducción................................................................529
22.2. Conexión a bases de datos .........................................529
22.2.1. Obtención de datos ....................................................................... 532
22.2.2. Inserción de datos ........................................................................ 534
22.2.3. Actualización de datos .................................................................. 535
22.2.4. Borrado de datos ........................................................................... 535
22.2.5. Trabajando con procedimientos almacenados............................... 536
22.2.6. Funciones de bases de datos ........................................................ 537
22.3. Subiendo ficheros al servidor ......................................538
22.3.1. Consideraciones previas .............................................................. 538
22.3.2. El formulario para el usuario ........................................................ 538
22.3.3. Lo que el usuario no ve: El proceso en php.................................... 539
22.4. Trabajando con gráficos ...............................................541
22.4.1. Creando estadísticas profesionales con Libchart .......................... 545
22.5. Controlando al usuario con las sesiones .....................547
22.6. Nuevas tendencias: el modelo vista controlador ...........549
22.6.1. Un Frameworks para PHP: Symfony.............................................. 549
Explotando WordPress ............................. 551
23.1. Tu blog con WordPress. Introducción ..........................551
23.2. Instalación ..................................................................551
23.3. Configuración elemental .............................................553
23.4. Agregando contenido. Organizando tu Blog ................555
23.5. Personaliza tu Blog: cambiando de tema, modificación
23.5. de las imágenes del tema y de su template .................559
23.6. Instalación de Widgets ................................................561
23.7. Programando tus propios Widgets ...............................563
Programación avanzada ........................... 569
24.1. Trabajando en las trincheras con C/C++ y gcc ............569
24.2. Ejemplo sencillo ..........................................................569
24.3. Compilando varias fuentes ..........................................570
24.4. Creación de librerías ...................................................571
24.5. Entornos de desarrollo: Anjuta, Geany, Code::Blocks,
Kdevelop .....................................................................573
24.5.1. Anjuta .......................................................................................... 574
24.5.2. Kdevelop ....................................................................................... 576
24.5.3. Iniciación a wxWidgets con Code::Blocks ...................................... 578
Mono, el C# libre ...................................... 593
25.1. ¿Qué es Mono? ...........................................................593
25.2. Mi primer programa en Mono......................................593
25.3. Introducción a Windows Forms en GNU/Linux ...........594
25.4. Descubriendo la potencia de Gtk# en Mono ................597
Python .................................................... 607
26.1 Tcl/Tk, un primer ejemplo de lenguaje de script ..........607
26.2. ¿Qué es Python? .........................................................607
26.3. Sintaxis básica de Python ...........................................608
26.4. Clases en Python ........................................................612
26.5. GUI con wxPython .......................................................616
26.6. Módulos para todas las necesidades ............................628
Python II ................................................. 631
27.1. Tratamiento de imágenes en Python ...........................631
27.2. Tratamiento de ficheros ...............................................632
27.3. Boa y Python: Jugando con serpientes .......................634
27.4. Programación funcional en Python .............................639
27.5. Sage, el gran desconocido ...........................................642
27.6. Python para cálculo científico......................................646
Python III, su cara más lúdica .................. 651
28.1. Introducción a PyGame ...............................................651
28.2. Nuestro primer programa en PyGame .........................651
28.3. Un clon de Snake ........................................................653
28.4. Una última versión refinada ........................................659
28.5. Pintando con PyGame .................................................664
28.6. Python para los peques: La tortuga contraataca ..........666
Python IV ................................................ 669
29.1. Manejo de bases de datos en Python...........................669
29.2. Automatizando las pruebas en Python. .......................671
29.3. Distintos entornos de desarrollo en Python ................674
29.3.1. DrPython, simple y eficiente ........................................................ 674
29.3.2. SPE, otra posibilidad. Introducción a la persistencia..................... 675
29.3.3. Otras alternativas ........................................................................ 677
29.4. Control de versiones y trabajo en equipo con
Bazaar y Lauchpad .....................................................678
29.5. Documentar en Python ...............................................680
29.6. Distribuyendo nuestras aplicaciones ..........................684
29.7. Mejorando el acceso a bases de datos: Una clase que
encapsula la interfaz con SQLite3 ...............................688
29.8. Python y Glade ...........................................................690
29.9. Introducción a Django .................................................694
Bibliografía......................................703
BIBLIOGRAFÍA BÁSICA EN LINUX: ........................................................... 703
BIBLIOGRAFÍA GENERAL LINUX: .............................................................. 703
SOFTWARE LIBRE: ................................................................................... 705
PROGRAMACIÓN GENERAL: ..................................................................... 705
INGENIERÍA: ............................................................................................ 707
RECURSOS PARA EL DESARROLLADOR ................................................... 707
PAGINAS OFICIALES DE LENGUAJES E IDES: .......................................... 709
ADMINISTRACIÓN: .................................................................................. 710
LIBROS SOBRE LINUX, PROGRAMACIÓN Y SOFTWARE LIBRE: ................. 711





Volver arriba
    
 
  Enviar a un amigo            Versión para imprimir          VolverVolver
 


Navegación inferior