elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Imperativo, POO y funcional en lenguaje C?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Imperativo, POO y funcional en lenguaje C?  (Leído 602 veces)
remphenter

Desconectado Desconectado

Mensajes: 9


Ver Perfil
Imperativo, POO y funcional en lenguaje C?
« en: 15 Agosto 2018, 05:20 am »

Pues estoy llevando un curso gratuito de lenguaje C y los demás proyectos no lo veo difícil pero vaya que el primero no le veo como...

Se tiene que sacar el promedio de 3 alumnos y se tiene que hacer un código en modo imperativo, otro en funcional y otro en orientado a objetos (es decir, 3 paradigmas).

Estuve investigando y hay lenguajes de programación específicos para programar en modo funcional como: Haskell, Lisp, SAP, etc... (entendí que es programar con puras fórmulas matemáticas)

Orientado a objetos como: C++

¿pero se puede emplear cada uno de los paradigmas sin mezclarlos en un sólo código como en lenguaje C?

Este es mi código: http://prntscr.com/khj9vl

Pero no tengo idea de como se diferencia o cual paradigma usé... :(


En línea

Serapis
Colaborador
***
Desconectado Desconectado

Mensajes: 2.428


Ver Perfil
Re: Imperativo, POO y funcional en lenguaje C?
« Respuesta #1 en: 15 Agosto 2018, 07:01 am »

- El imperativo es a base de líneas de código usando exclusivamente las instrucciones específicas del lenguaje... el resultado es una sopa (de código) normalmente muy veloz, pero difícil de seguir y mantener. Se resuelve todo en una única función (en general).
Esta forma de programar exige volver a diseñar cada vez, cada nuevo programa desde cero y a lo sumo, se toman trozos por el método copy-paste.

- El funcional supone analizar qué se debe hacer y crear pequeñas funciones que son invocadas, desde el código principal. En general hay una función que se ejecuta linealmente pero invoca a varias funciones (ya construídas-existentes) para llevar a término todo el objetivo.
Esta forma de programar reutiliza funciones que en general se han agrupado en librerías, por tanto ahorra código y tiempo de programación.

- La orientación a objetos, requiere pensarlo aún bastante más, definir cuántos y cuales objetos pueden ser necesarios y dotarles de atributos y métodos. El código para programar luego crea instancias de estos objetos e invocas sus atributos y métodos.
Esta forma de programar, redefine más específicamente la funcionalidad que se engloba junta... ahora no es 'meterlo todo en el saco' (como se hacía con las funciones en librerías para reutilizarlas), si no que tiene una lógica detrás... una rueda (por ejemplo) gira, tiene un eje, se sujeta con 'x' tornillos, tiene 'y' presión, puede llevar o no una cámara de aire, y una llanta, gira a determinada velocidad... se comunica con un objeto 'eje' de quien recibe el 'par' y con un objeto 'freno', para limitar la velocidad, etc... es decir un objeto rueda engloba la funcionalidad que requiere una rueda y los atributos que tiene una rueda, y nada más, cualquier otra funcionalidad irá en otro (u otros) objetos. Programando con objetos (ya creados) se ahorra aún mucho más código y se acaba más rápido o bien puede hacerse un proyecto más grande (con más pretensiones) dado el tiempo disponible (por ejemeplo).


« Última modificación: 15 Agosto 2018, 07:46 am por NEBIRE » En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.479



Ver Perfil
Re: Imperativo, POO y funcional en lenguaje C?
« Respuesta #2 en: 15 Agosto 2018, 21:35 pm »

C es imperativo, así que sin problemas.
Para trabajar de forma funcional debes tener cuidado de que tus finciones no modifiquen otros datos del programa: nada de pasos por referencia. De igual forma debes pensar en los bucles como funciones recursivas.
En C no se puede trabajar con POO, no tiene capacidad para ello.
En línea

while(is_alive(yourself)) {
    make_true(yourself, yourdreams);
}
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Programación funcional
Programación General
csp 5 2,359 Último mensaje 30 Octubre 2013, 01:03 am
por El Benjo
Cuanto tiempo me llevaria dominar C Y C++ a nivel imperativo y orientado a objet
Programación C/C++
vidalpet 2 1,451 Último mensaje 20 Agosto 2015, 02:56 am
por furciorifa
Programación funcional
Programación General
FermatsTheorem 2 1,184 Último mensaje 10 Mayo 2017, 23:05 pm
por ivancea96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines