0% encontró este documento útil (0 votos)
17 vistas19 páginas

Introducción a C y R: Comparativa y Usos

El documento presenta una introducción a los lenguajes de programación C y R, destacando su historia, características, ventajas y desventajas. C es un lenguaje de propósito general utilizado principalmente en desarrollo de sistemas y software de alto rendimiento, mientras que R se centra en el análisis estadístico y la visualización de datos. Se comparan ambos lenguajes en términos de propósito, nivel de abstracción y manejo de memoria.

Cargado por

alexander.romero
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
17 vistas19 páginas

Introducción a C y R: Comparativa y Usos

El documento presenta una introducción a los lenguajes de programación C y R, destacando su historia, características, ventajas y desventajas. C es un lenguaje de propósito general utilizado principalmente en desarrollo de sistemas y software de alto rendimiento, mientras que R se centra en el análisis estadístico y la visualización de datos. Se comparan ambos lenguajes en términos de propósito, nivel de abstracción y manejo de memoria.

Cargado por

alexander.romero
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd

Lenguaje De

Programación C R
Alexander Romero
Luis Arias
Daniel Bocanegra
Introducción a C

El lenguaje de programación C es una de las herramientas más influyentes y utilizadas en


el mundo de la informática. Desde su creación en los años 70, ha sido la base para el
desarrollo de sistemas operativos, software de aplicación y otros lenguajes de
programación modernos. Su eficiencia, flexibilidad y capacidad para interactuar
directamente con el hardware lo convierten en una opción clave para programadores y
desarrolladores de software.
A lo largo de los años, C ha evolucionado y se ha estandarizado, manteniendo su
relevancia en la industria tecnológica. Su sintaxis y estructura han servido de inspiración
para otros lenguajes como C++, Java y Python. En esta presentación, exploraremos su
historia, características, ventajas y desventajas, así como su impacto en el mundo de la
programación.
Historia y Características

 Desarrollado en 1972 por Dennis Ritchie en los laboratorios Bell.


 Lenguaje de programación de propósito general, utilizado para desarrollo de sistemas
y software de alto rendimiento.
 Sintaxis estructurada y eficiente, con manejo explícito de memoria mediante punteros.
 Base para muchos otros lenguajes como C++, Java y Python.
C

Sintaxis estructurada y eficiente:


 C permite escribir programas organizados en funciones y bloques de código bien
definidos.
 Su sintaxis es clara y directa, lo que facilita la optimización y el rendimiento del
código.
Manejo explícito de memoria mediante punteros:
 En C, la memoria no se gestiona automáticamente como en lenguajes más modernos
(ej. Python, Java).
 Los programadores tienen control directo sobre la asignación y liberación de memoria
usando punteros, lo que permite una mayor eficiencia pero también más
responsabilidad para evitar errores como fugas de memoria o accesos inválidos.
Usos Principales

 Desarrollo de sistemas operativos (Linux, Windows en sus primeros niveles, Unix).


 Creación de software embebido en microcontroladores y sistemas en tiempo real.
 Programación de bajo nivel en hardware y redes.
 Desarrollo de videojuegos y motores gráficos.
Ventajas

 Código altamente optimizado y eficiente.


 Control total sobre los recursos del hardware.
 Amplia portabilidad en diferentes plataformas.
¿Cómo se logra la optimización en
C?

•Uso eficiente de memoria → Evitar desperdicio de memoria con estructuras


de datos bien definidas y el uso correcto de punteros.

•Reducción de ciclos innecesarios → Evitar bucles innecesarios y minimizar el


uso de operaciones costosas.

•Compilación optimizada → Usar opciones del compilador como -O2 o -O3 en


GCC para mejorar la eficiencia del código.

•Evitar llamadas innecesarias a funciones → Usar funciones en línea (inline)


para reducir la sobrecarga de llamadas.
Desventajas

 Manejo manual de memoria puede llevar a errores como desbordamiento de búfer o


fugas de memoria.
 Curva de aprendizaje pronunciada para principiantes.
Glosario

Desbordamiento de búfer (Buffer Overflow) → Se produce cuando un


programa escribe más datos de los que un búfer (espacio en memoria) puede
contener, lo que puede causar errores, bloqueos o vulnerabilidades de seguridad.

Fuga de memoria (Memory Leak) → Ocurre cuando un programa reserva


memoria (por ejemplo, con malloc en C) pero no la libera (free), lo que provoca un
consumo innecesario de memoria y puede ralentizar o hacer que falle el sistema.
Ejemplo de Código en C
Introducción a R

R es un lenguaje de programación y un entorno de software diseñado específicamente


para el análisis estadístico y la visualización de datos. Desde su creación en la década de
1990, se ha convertido en una herramienta esencial en la ciencia de datos, la estadística
y la investigación académica. Su flexibilidad, la gran cantidad de paquetes disponibles y
su fuerte comunidad de usuarios lo han consolidado como una opción líder en el análisis
de datos.
Gracias a su naturaleza de código abierto, R permite a los usuarios realizar desde
cálculos estadísticos básicos hasta complejos modelos predictivos y análisis de big data.
Además, su capacidad para generar gráficos de alta calidad lo hace ideal para la
presentación de resultados de manera visualmente atractiva.
Historia y Características

 Creado en 1993 por Ross Ihaka y Robert Gentleman.


 Orientado a la estadística y análisis de datos.
 Dispone de una gran cantidad de paquetes para manipulación de datos, modelado
estadístico y visualización.
 Interactivo y con fuerte soporte para gráficos y análisis matemático.
Usos Principales

 Análisis estadístico y minería de datos.


 Ciencia de datos y machine learning.
 Bioinformática y análisis de grandes volúmenes de datos.
 Creación de informes dinámicos y dashboards.
Ventajas

 Gran comunidad y biblioteca extensa de paquetes.


 Sintaxis sencilla para análisis de datos y estadísticas.
 Integración con otras herramientas como Python y SQL.
Desventajas

 No es el mejor en rendimiento para aplicaciones a gran escala.


 Curva de aprendizaje para usuarios sin experiencia en estadística.
Ejemplo de Código en R
Diferencias Clave entre C y R

Característica C R
Programación de sistemas y Análisis estadístico y ciencia
Propósito
bajo nivel de datos
Nivel de Abstracción Bajo (cercano al hardware) Alto (orientado a datos)
Manejo de Memoria Manual con punteros Automático
Curva de Aprendizaje Pronunciada Moderada
Desarrollo de software y Análisis de datos y
Uso Principal
sistemas estadística
Glosario

 Big Data se refiere al manejo y análisis de grandes volúmenes de datos que son
demasiado complejos para ser procesados por métodos tradicionales.
 Machine Learning (Aprendizaje Automático), El Machine Learning (ML) es una
rama de la inteligencia artificial que permite a las computadoras aprender patrones
y tomar decisiones sin ser explícitamente programadas. Se basa en algoritmos
que analizan datos, identifican patrones y mejoran su rendimiento con el tiempo.
 Un dashboard (o panel de control) es una herramienta visual que muestra datos
clave de manera resumida y fácil de entender. Se usan para monitorear métricas,
analizar tendencias y tomar decisiones basadas en datos.
Gracia
s

También podría gustarte