PDF de programación - De 0 a C Developer

Imágen de pdf De 0 a C Developer

De 0 a C Developergráfica de visualizaciones

Publicado el 24 de Octubre del 2018
614 visualizaciones desde el 24 de Octubre del 2018
1,6 MB
60 paginas
Creado hace 3a (04/08/2016)
Table of Contents

Léeme
Licencia
Apéndice
Historial de Cambios.
Información Personal
Iniciando con la Programación.

Introducción
Metodología de la programación
Editores
Relación computadora y los lenguajes

Introducción al lenguaje C

Buenas Practicas
Historia
Introducción

1.1
1.2
1.3
1.4
1.5
1.6
1.6.1
1.6.2
1.6.3
1.6.4
1.7
1.7.1
1.7.2
1.7.3

2

Léeme

De-0-a-C-Developer

Un libro para aprender a programar iniciando con el lenguaje C usando sistemas Linux y
ser capaces de contribuir o crear proyectos Open Source que ocupen este lenguaje.

Este lenguaje es usado en proyectos como:

Proyectos

Gnome
Linux Kernel
Gnu
Hurd Kernel
Xfce
Lxde
Vim
The Gimp
Inkscape
Audacity
Vlc
Postfix
Entre muchos mas ...

Y si aun permaneces escéptico pueden verificar directamente buscando el código fuente de
cada proyecto.

Bienvenido a lo bonito.

3

Léeme

4

Licencia

Distribución

Distribución del Texto

Atribución-Compartir Igual CC BY-SA

Esta licencia permite a otros re-mezclar, retocar, y crear a partir de tu obra, incluso con fines
comerciales, siempre y cuando te den crédito y licencien sus nuevas creaciones bajo las
mismas condiciones. Esta licencia suele ser comparada con las licencias "copyleft" de
software libre y de código abierto. Todas las nuevas obras basadas en la tuya portarán la
misma licencia, así que cualesquiera obras derivadas permitirán también uso comercial.
Esa es la licencia que usa Wikipedia, y se recomienda para materiales que se beneficiarían
de incorporar contenido de Wikipedia y proyectos con licencias similares.

Distribución de los código de ejemplo

Para los códigos que se vayan haciendo como ejemplos tendrán una licencia "GPL v2"

This program is free software; you can redistribute it and/or modify it under the terms of
the GNU General Public License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
details.

You should have received a copy of the GNU General Public License along with this
program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
Floor, Boston, MA 02110-1301, USA."

5

Apéndice

Motivaciones

Me animé a realizar este libro con el fin de mostrar el fascinante mundo de la programación
usando el lenguaje C, para que las personas que no lo conocen, lo entiendan de una
manera simple y con muchos ejemplos.

Este es la primera parte de 3 más que le precederán cuya finalidad será que podamos
sumergirnos en cada momento a más detalle sobre el lenguaje y como poder programar
cualquier cosa.

Debo admitir que este libro sera un poco largo y en algunos momento bastante tedioso,
tratare de explicar muchas partes con el mayor detalle posible ya que la otra finalidad de
este libro es aprenderlo lo mejor que se pueda.

Si llegaras a encontrar algo que no esta bien agradecería que me lo notificaras lo antes
posible, con la finalidad de mejorar la calidad del contenido de este libro.

¿A quien esta dirigido?

Para personas que sepan muy poco o nada de programación y que les interese iniciar a
resolver problemas y plantear su solución en lenguaje C.

Si alguna vez viste algún otro libro podrás haberte dado cuenta que están muy atrasados o
en ingles, mi enfoque es presentarte la información de la manera mas didácticamente
posible, explicándote como resolver tus problemas usando librerías y tecnologías Open
Source.

Considero que esta característica es fundamental, sobre todo desde el punto de vista
académico, por que trata de enseñar, de hacer entender, de hacer ver, al lector, como
resolver un problema, y luego como programar esa solución en C.

Y también para los que ya tienen ciertas nociones y quieran mejorar, repasar un poco o
quizás aprender algo nuevo les va a ser muy útil este libro.

Considero que esta es una verdad que aplica también en este campo:

6

Apéndice

"Cualquiera puede programar".

Es importante destacar que el nivel de complejidad de los temas aumenta en forma gradual,
y cada uno tratare de hacerlo con la mayor amplitud y claridad posible.

Todos queremos sentirnos relevantes, y pensar que estamos haciendo una diferencia
en este mundo. Tener un trabajo donde uno se siente productivo, y saber que el trabajo
que uno hace “importa” es un gran desafío. Linus Torvalds

Recomendaciones

Utilizaremos Linux como sistema operativo base para correr todos los código que se
hagan, ademas agregare un apartado detallando el compilador GCC 6.1 que sera el que
usaremos para compilar todos los ejemplos.

7

Historial de Cambios.

Historial de Cambios

# de Versión

Fecha

Editor

Comentarios

0.1
..

Julio 2015
..

Adrián
..

Comienzo
..

8

Información Personal

Información de Contacto

Mi nombre es Adrián me he enfocado en el estudio los aspectos técnicos de varias
tecnologías, soy amante de las ideologías Open Source sin embargo también disfruto los
aspectos técnicos de muchas cosas, incluso componentes internos del sistema operativo
Windows, MacOSX, FreeBSD y Android.

Lo que mas llama mi atencion es la programación a bajo nivel y el estudio exhaustivo de
Linux desde sus partes mas internas, por lo que he realizado y asistido a múltiples
conferencias sobre estos temas y también realizo recuentos detallados de los cambios que
ha tenido el kernel linux en cada release nuevo liberado.

Espero encuentres este libro muy ilustrativo y disfrutes leyendolo casi tanto como yo
haciéndolo, por lo que iniciemos formalmente con lo emocionante.

Si deseas contactarme puedes enviarme un correo a adrian@aztli.org

XD.

9

Información Personal

10

Iniciando con la Programación.

Iniciando con la Programación

En esta parte aprenderás varios conceptos básicos, entre ellos:

¿Qué es un lenguaje de programación?
¿Qué es programar?
¿Qué es un algoritmo?
¿Qué es un paradigma?
¿Qué es un diagrama de flujo?
¿Qué es el pseudocodigo?
Las buenas practicas en la programación
Editor de Texto a utilizar.

11

Introducción

Introducción

Cuando ocupas una computadora siempre te cuestionas que es lo que la hace funcionar,
como es que puedes hacer tu trabajo. Para todo esto es importante tener nociones de
programación, ya que siempre podremos encontrarnos con distintos problemas que como
tales son muy difíciles de solucionar.

En muchos de estos casos el aprender un lenguaje de programación nos ayuda a ocupar el
poder de procesamiento de la computadora para la solución de estos problemas
aparentemente imposibles de solucionar, por otra parte te va a permitir experimentar el gozo
de haber creado algo por mismo o inclusive el mismo gusto pero de haber contribuido a
algún proyecto Open Source.

Cabe destacar que la complejidad de la programación dependerá del problema que se trate
de solucionar, comprender que toda esta idea de poder dar solución a problemas con mayor
rapidez y eficacia se debe en gran parte a los avances y progresos en electrónica,
matemáticas, física, etc.

En mi opinión la programación no es algo tan difícil, para muchos de nosotros que no
tuvimos ciertas nociones, empezar con algo así no fue fácil, pero no por su complejidad, si
no mas bien por que tuvimos un mal comienzo y quizás quisimos correr en lugar de
aprender buenos fundamentos..

Un poco mas tarde me di cuenta que lo que distingue a muchos programadores de otros es
su creatividad, para poder iniciar el desarrollo de algo tan simple o tan complejo como su
mente visualice.

Por lo que la programación es una disciplina que requiere simultáneamente del uso de
cierto grado de creatividad, un conjunto de conocimientos técnicos asociados y la capacidad
de operar constantemente con abstracciones (tanto simbólicas como enteramente
mentales).

La creatividad necesaria para programar no se diferencia demasiado de aquella utilizada
para producir textos. Sin embargo, lo que hace a la programación algo especial es que
requiere emplear un conjunto de conocimientos técnicos asociados a la manipulación de las
computadoras. Esto agrega un grado notable de rigurosidad a esta actividad, ya que no
podemos programar sin tener en cuenta este aspecto. Por otra parte, al poseer una
naturaleza ligada a la resolución de diferente problemas del mundo real, se requiere de una
capacidad de abstracción que permita operar sin que los conocimientos técnicos limiten al
programador a resolver adecuadamente dichos problemas.

12

Introducción

Por ejemplo actividades que requieren:

Un uso intensivo de la creatividad son relacionadas comúnmente con el Arte.

Conocimientos técnicos profundos son los relacionados con la medicina, electrónica y
química.

Operar continuamente en abstracto son las relacionadas con filosofía, lógica y
matemáticas.

A lo largo de la vida seguiremos enfrentando continuamente con todo tipo de problemas.
Para ellos nos valdremos de distintas herramientas, que combinadas de maneras
innovadoras ampliaremos el espectro de soluciones y vuelven factible el desarrollo de
cualquier programa.

Algo muy cierto es que a los que les guste la programación se podrán dedicar a construir
programas, mantenerlos o contribuir a diversos Proyectos y siempre habrá mercado para
esas personas.

Conceptos de la programación

Lo que nos lleva a definir formalmente que es un programa:

Un Programa es una descripción ejecutable de soluciones a problemas
computacionales, es decir, un texto descriptivo que al ser procesado por una
computadora da solución a un problema propuesto. De esta manera, la parte
descriptiva de los programas es el texto que el programador le provee a la
computadora.

Y como dijimos antes las descripciones dadas por los programas pueden estar escritas con
diferentes símbolos y para diferentes propósitos.

Cuando el código consiste mayormente de palabras y nociones que son mas sencillas para
que manejen las personas, con el obje
  • Links de descarga
http://lwp-l.com/pdf14026

Comentarios de: De 0 a C Developer (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad