Comunicacion Humana
Enviado por felipe9 • 12 de Marzo de 2014 • 1.809 Palabras (8 Páginas) • 208 Visitas
COMUNICACIÓN HUMANA
Las teorías de la comunicación representan un punto de partida indispensable no sólo para el estudio y la investigación de la comunicación, sino para el quehacer profesional práctico. El curso discute las aportaciones conceptuales de las perspectivas teóricas más recientes para el análisis de la comunicación masiva contemporánea.
Comunicación interpersonal e intercultural, así como las habilidades interactivas necesarias para gerentes.
Análisis de las capacidades de transmisión de información de fibras ópticas, tomando en cuenta los sistemas transmisores, los sistemas receptores y los requerimientos de acoplamiento óptico. Comportamiento de ondas electromagnéticas en el interior de las fibras ópticas. Receptores óptimos, transmisión coherente, amplificación óptica, multicanalización por división de longitud de onda, redes ópticas, SONET, ATM.
La computadora, a diferencia de otras herramientas que en general apoyan el esfuerzo físico de los humanos, fue inventada para facilitar el trabajo intelectual. Si el hombre tiene algún problema, por ejemplo “sumar dos y dos”, el diseñador define el algoritmo que resuelve el problema, el programador lo codifica en un lenguaje de programación, el cual la computadora es capaz de “entender”, luego la computadora ejecuta el algorítmo expresado como programa en el lenguaje de programación en cuestión, y listo. La máquina le entrega al hombre la respuesta “4″, sin que éste tuviera que esforzar sus neuronas.
• Se busca una comunicación eficiente entre el programador y el ordenador.
• Un buen nivel de comunicación se da cuando los programas son leíbles.No ha de ser necesaria una documentación externa al programa (minimizar). Es más importante que un programa sea leíble que escribible. Un programa se escribe una vez, pero se lee muchas durante su depuración, documentación y mantenimiento. Tendencia actual a separar la interfaz de la implementación de un módulo.
• La sintaxis ha de reflejar la semántica.
Reducir las manipulaciones implícitas.
Coerciones (coerciones de PL/I o C).
ON de BASIC para eventos o excepciones.
Constructores y destructores de C++ (necesarios, pero complican el seguimiento del flujo de ejecución).
• El lenguaje ha de representar los patrones de pensamiento humanos. No hay que crear una sintaxis pensada exclusivamente para un modelo de cómputo teórico (l-calculus).
un conjunto de instrucciones de la máquina
facilitar la compilación (forth).
• El programador no es un ordenador. Que el compilador entienda una estructura es posible que el programador no.
Evitar incluso la posibilidad de escribirlas
Reducir el conocimiento contextual.
El programador no funciona con una pila como el programa compilado.
PREVENCIÓN Y DETECCION DE ERRORES
Tener una serie de defensas tal que si un error no es detectado por uno, este probablemente sea detectado por otro.
Los errores deben ser detectados por el compilador, si un mecanismo no es capaz de detectar un error es necesario implementar otro que lo detecte, pero nunca ignorarlo.
A continuación se presentan prevencion y tolerancia de errores y fallos
Prevencion de errores
• El programador comete errores. Hay que prevenir los errores
• El programador es su fuente. El programador no sabe lo que hace y el compilador ha de limitar sus acciones (EUCLID, PASCAL). Hacer imposible cierto tipo de errores.
Ejecutar datos → control de flujo limitado
Errores en el uso de datos → Tipado fuerte
Apuntadores erróneos → Gestión de memoria implícita (LISP, PROLOG, ML, etc).
Hay que facilitar su detección, identificación y corrección. Tener que declarar antes de utilizar. Evitar coerciones inductoras de errores.
• float a int por su perdida de precisión.
• Comprobaciones en tiempo de ejecución. Índice de array fuera de limites. Control sobre los apuntadores a NULL.
Prevención y tolerancia de fallos
• Hay dos formas de aumentar la fiabilidad de un sistema:
Prevención de fallos: Se trata de evitar que se introduzcan fallos en el sistema antes de que entre en funcionamiento
Prevención de fallos
Se realiza en dos etapas:
• Evitación de fallos
– – Se trata de impedir que se introduzcan fallos durante la construcción del sistema
• Eliminación de fallos
– – Consiste en encontrar y eliminar los fallos que se producen en el sistema una vez construido
Tolerancia de fallos: Se trata de conseguir que el sistema continúe funcionando aunque produzcan fallos
En ambos casos el objetivo es desarrollar sistemas con modos de fallo bien definidos.
Detección de errores
• Por el entorno de ejecución
hardware (p.ej.. instrucción ilegal)
ºnúcleo o sistema operativo (p.ej. puntero nulo)
• Por el software de aplicación
Duplicación (redundancia con dos versiones)
Comprobaciones de tiempo
Inversión de funciones
Códigos detectores de error
Validación de estado
Validación estructural
EFICIENCIA DE LOS LENGUAJES DE PROGRAMACION
Compilación rápida del código fuente y ejecución rápida del código objeto.
Los factores fundamentales en la calidad del software son: la eficiencia, la portabilidad, la verificabilidad, la integridad, la facilidad de uso, la exactitud, la robustez, la extensibilidad, la compatibilidad y la reutilización. En términos generales, estos factores pueden describirse de la siguiente forma:
La eficiencia: capacidad para el aprovechamiento óptimo de los recursos que emplea.
Los lenguajes OOP arrastraron en un principio la reputación de ser ineficaces. Esto se debía en gran medida a que los primeros lenguajes (como Smalltalk) eran interpretados y no compilados. La existencia de compiladores permite a los desarrolladores ganar rapidez. Actualmente, usando un buen lenguaje orientado a objetos como C++, Java, etc. Junto con las librerías apropiadas para la realización de un programa, puede que se ejecute más rápidamente que el mismo programa compilado con un lenguaje procedural
La portabilidad: facilidad para ser ejecutados en distintos entornos lógicos o físicos .
...