jueves, 1 de marzo de 2018

Analizando diferentes estilos de programacion

DISCIPLINA DE TIPOS

“Los tipos se infieren, es decir se comprueban, de forma estática, en tiempo de compilación.”
En los lenguajes de programación con disciplina de tipos, cada tipo representa una colección de valores o datos similares. El conocer los tipos de las funciones ayuda a documentar los programas y evitar errores en tiempo de ejecución.
Un lenguaje tiene disciplina de tipos si los errores de tipos se detectan siempre, es necesario determinar los tipos de todos los operandos, ya sea en tiempo de compilación o de ejecución.

Pascal

Cercano a tener disciplina de tipos pero no realiza comprobación de tipos en los registros variantes (incluso puede omitirse la etiqueta discriminatoria en dichos registros).

Ada

• Resuelve el problema de los registros variantes realizando comprobación dinámica de tipos (sólo en este caso)
• Tiene una función de biblioteca que permite extraer un valor de una variable de cualquier tipo (como una cadena de bits) y usarlo como un tipo diferente (no es una conversión de tipos) se trata de una suspensión temporal de la comprobación de tipos.


C



No tiene disciplina de tipos por:


  • No se realiza comprobación de tipos sobre las uniones
  • Permite funciones con parámetros sobre los que no se realiza comprobación de tipos.
Java

• Tiene disciplina de tipos (no hay uniones)


ML y Haskell

• Poseen disciplina de tipos
• Los tipos de los parámetros de las funciones (y de estas mismas) se conocen en tiempo de compilación (ya sea por declaración del usuario o por inferencia de tipos).

Haskell y otros lenguajes funcionales utilizan el sistema de tipos de Milner, que tiene dos características fundamentales:


Disciplina estática de tipos: Los programas bien tipados se pueden conocer en tiempo de compilación. Un programa bien tipado se puede utilizar sin efectuar comprobaciones de tipo en tiempo de ejecución, estando garantizado que no se producirán errores de tipo durante el cómputo.

Polimorfismo: Permite que una misma función se pueda aplicar a parámetros de diferentes tipos, dependiendo del contexto en el que la función se utilice.

Mapa 1.4
 Disciplina de tipos




DEFINICIÓN DE FUNCIONES



En programación, una función es una sección de un programa que calcula un valor de manera independiente al resto del programa.

Una función tiene tres componentes importantes:


  • Los  parámetros, que son los valores que recibe la función como entrada;
  • El  código de la función, que son las operaciones que hace la función; y  el  resultado (o valor de retorno), que es el valor final que entrega la función.
En esencia, una función es un mini-programa. Sus tres componentes son análogos a la entrada, el proceso y la salida de un programa.
Las declaraciones de funciones generalmente son especificadas por:

Un nombre único en el ámbito: Nombre de la función con el que se identifica y se distingue de otras. No podrá haber otra función ni procedimiento con ese nombre (salvo sobrecarga o polimorfismo en programación orientada a objetos). 


Un tipo de dato de retorno: tipo de dato del valor que la función devolverá al terminar su ejecución.


Una lista de parámetros: Especificación del conjunto de argumentos (pueden ser cero, uno o más) que la función debe recibir para realizar su tarea. 


El código u órdenes de procesamiento: conjunto de órdenes y sentencias que debe ejecutar la función.

Las declaraciones de funciones generalmente son especificadas por:
  • Un nombre único en el ámbito: Nombre de la función con el que se identifica y se distingue de otras. No podrá haber otra función ni procedimiento con ese nombre (salvo sobrecarga o polimorfismo en programación orientada a objetos).
  • Un tipo de dato de retorno: tipo de dato del valor que la función devolverá al terminar su ejecución.
  • Una lista de parámetros: especificación del conjunto de argumentos que la función debe recibir para realizar su tarea.
  • El código u órdenes de procesamiento: conjunto de órdenes y sentencias que debe ejecutar la función. 

 TIPOS DE DATOS

En lenguajes de programación un tipo de dato es un atributo de una parte de los datos que indica al ordenador (y/o al programador) algo sobre la clase de datos sobre los que se va a procesar.




Un tipo de datos define un conjunto de valores y las operaciones sobre estos valores. Casi todos los lenguajes de programación explícitamente incluyen la notación del tipo de datos, aunque lenguajes diferentes pueden usar terminología diferente. La mayor parte de los lenguajes de programación permiten al programador definir tipos de datos adicionales, normalmente combinando múltiples elementos de otros tipos y definiendo las operaciones del nuevo tipo de dato. Por ejemplo, un programador puede crear un nuevo tipo de dato llamado "Persona" que especifica que el dato interpretado como Persona incluirá un nombre y una fecha de nacimiento.

Un tipo de dato entero en computación es un tipo de dato que puede representar un subconjunto finito de los números enteros. El número mayor que puede representar depende del tamaño del espacio usado por el dato y la posibilidad (o no) de representar números negativos. Los tipos de dato entero disponibles y su tamaño dependen del lenguaje de programación usado así como la arquitectura en cuestión. 

Tipos de datos en coma flotante Se usan para representar números con partes fraccionarias. Hay dos tipos de coma flotante: float y double. El primero reserva almacenamiento para un número de precisión simple de 4 bytes y el segundo lo hace para un número de precisión doble de 8 bytes.

Tipo de dato carácter (Char) Es cualquier signo tipográfico, puede ser una letra, un número, un signo de puntuación o un espacio. Este término se usa mucho en computación. Un valor de tipo carácter es cualquier carácter que se encuentre dentro del conjunto ASCII ampliado, el cual está formado por los 128 caracteres del ASCII más los 128 caracteres especiales que presenta, en este caso, IBM.

Los valores ordinales del código ASCII ampliado se encuentran en el rango de 0 a 255. Dichos valores pueden representarse escribiendo el carácter correspondiente encerrado entre comillas simples (apóstrofos).Así, podemos escribir: ‘A' < 'a ‘Que significa: "El valor ordinal de A es menor que el de a" o "A está antes que a “Un valor de tipo carácter (char en inglés) se guarda en un byte de memoria. La única operación (además de las relacionales) que podemos hacer con caracteres es la concatenación concatenando dos caracteres, por ejemplo 'a' y 'X' obtendríamos la cadena "aX".

Tipo de dato lógico El tipo de dato lógico o booleano es en computación aquel que puede representar valores de lógica binaria, esto es, valores que representen falso o verdadero. Se utiliza normalmente en  programación, estadística, electrónica, matemáticas.

Palabra reservada una palabra reservada es una palabra que tiene un significado Gramatical especial para ese lenguaje y no puede ser utilizada como un identificador en ese lenguaje.

Por ejemplo, en SQL, un usuario no puede ser llamado "group", porque la palabra group es usada para indicar que un identificador se refiere a un grupo, no a un usuario. Al tratarse de una palabra clave su uso queda restringido. Ocasionalmente la especificación de un lenguaje de programación puede tener palabras reservadas que están previstas para un posible uso en futuras versiones. En Java const y goto son palabras reservadas — no tienen significado en Java, pero tampoco pueden ser usadas como identificadores. Al reservar los términos pueden ser implementados en futuras versiones de Java, si se desea, sin que el código fuente más antiguo escrito en Java deje de funcionar.






jueves, 1 de febrero de 2018

Analizando diferentes estilos de programación

Estilo indica las características en cuanto a la forma en que se usan las instrucciones para elaborar un programa. Esta sección está basada en un documento publicado en 1974 por Kernigham y Plauger . Contiene conceptos aún muy válidos que conviene recordar y aplicar. (No se hizo sólo una traducción, se actualizó y adaptó a la realidad actual). Estilo es alguna disciplina más allá de un simple conjunto re restricciones sobre qué tipo de instrucciones usar. Por buen estilo de programación hay que considerar la expresividad, la estructura, la robustez y la documentación de un programa.

JAVA
Para lograr la legibilidad de un programa es importante considerar aspectos tales como el nombre de los identificadores, escribir el código con cierta alineación y líneas en blanco en lugares apropiados así como realizar una buena documentación.
Identificadores
Los identificadores deben ser elegidos de tal manera que el solo nombre describa el uso que se dará dentro del programa, por tanto no es recomendable usar identificadores de una letra, excepto en el for, ni abreviaturas raras o ambiguas.
Además de eso es recomendable que se escriban:
Empezando con mayúscula si se trata del nombre de una clase o interfaz, y empezando cada palabra en identificador con mayúscula. CírculoColoreado
Sólo con mayúsculas si es el nombre de una constante. DIAS_HABILES
Empezando con minúscula si es el nombre de cualquier otro identificador. De preferencia el nombre de cualquier método debe ser un verbo en infinitivo y el de todo atributo un sustantivo. primerJugador, asignarSueldo().
Archivos fuente
Cada programa en Java es una colección de uno o más archivos. El programa ejecutable se obtiene compilando estos archivos. En cada archivo especifica su contenido como sigue:
Los paquetes (instrucción package).
Los archivos de biblioteca (Instrucciones import).
Un comentario explicando el objetivo del archivo.
Las clases que defines en ese archivo.
Clases
Cada clase debe ir precedida por un comentario que explique su objetivo. Es recomendable especificar sus elementos como sigue:
Estructura de los objetos. Primero las variables y luego las constantes.
Elementos estáticos.
Constructores.
Métodos públicos y privados.
Métodos estáticos.
Clases internas.
Deja una línea en blanco después de cada método.
Todos los elementos deben estar precedidos por public, private o protected. Las variables deben ser privadas. Los métodos y las constantes pueden ser privados o públicos, según se requiera.

2. C

Creado entre 1969 y 1972 en los Laboratorios Bell, es uno de los más utilizados en el mundo. Si bien es ejecutado en la mayoría de los sistemas operativos, es de propósito general, con lo cual es muy flexible. Es muy popular para el desarrollo de aplicaciones de escritorio, como el conocido editor gráfico GIMP. 
Conocé el Curso de Diseño de Sitios Web y Maquetación HTML de la Nueva Escuela de Diseño y Comunicación en Balvanera.

3. C++

Conocido por el nombre “C Plus Plus”, este lenguaje de programación orientado a objetos surge como una continuación y ampliación del C. Hay una gran cantidad de programas escritos en C++, como por ejemplo los paquetes de Adobe.

4. Python

Un lenguaje de programación multiplataforma y multiparadigma, que también es de propósito general. Esto significa que soporta la orientación a objetos, la programación imperativa y funcional. Su simpleza, legibilidad y similitud con el idioma inglés lo convierten en un gran lenguaje ideal para principiantes.

5. C# 

También llamado “C Sharp”, este lenguaje de programación orientado a objetos fue desarrollado en el año 2000 por Microsoft para ser empleado en una amplia gama de aplicaciones empresariales ejecutadas en el framework .NET. C Sharp es una evolución del C y C++ que se destaca por su sencillez y modernidad.
Tal vez te pueda interesar la Certificación Oracle de Java (OCJP Oracle Certified Java Programmer) que brinda la UTN de forma online.

6. Visual Basic. NET

Pasó del número 9 en junio de 2016 al sexto lugar en 2017. Es utilizado por una gran cantidad de personas a lo largo del mundo que no cuentan con conocimientos profundos como desarrolladores, quienes encuentran en visual basic, además de una sintaxis sencilla, la posibilidad de automatizar sus propios procesos y crear sus propias aplicaciones web. Es visto como uno de los lenguajes más amigables para los que recién comienzan, sobre todo a comparación de C#.

7. JavaScript

Antes que nada, no confundir con Java. Son lenguajes distintos. Javascript es un lenguaje de programación que puede ser utilizado para crear programas que luego son acoplados a una página web o dentro de programas más grandes. Sirve para crear efectos y realizar acciones interactivas. Podemos ver funcionando este lenguaje en servicios como el chat, calculadoras, buscadores de información y un sin fin de utilidades más.

martes, 30 de enero de 2018

DIFERENTES ESTILOS DE PROGRAMACION

Estilo de programación

El estilo de programación’ se refiere a la forma en que se da formato al código fuente. Para C, esto involucra la forma en que se ubican las llaves, se indenta el código y se utilizan los paréntesis. GNOME tiene una mezcla de estilos de programación y no se obliga el uso de ninguno de ellos. Lo más importante es que el código sea consistente dentro de un programa o una biblioteca — el código con un formato desordenado no es aceptable debido a que es difícil de leer.
Estilo de programación (también llamado estándares de código o convención de código) es un término que describe convenciones para escribir código fuente en ciertos lenguajes de programación.
  • El estilo de programación es frecuentemente dependiente del lenguaje de programación que se haya elegido para escribir. Por ejemplo el estilo del lenguaje de programación C variará con respecto al del lenguaje BASIC.
  • Estilo K&R es el mas utilizado en el lenguaje C y PHP, el estilo fue llamado de esta forma porque fue usado por Kernighan y Ritchies en su libro The C Programming Lenguage.
  • Estilo Allman fue definido por Eric Allman, se trata de crear una nueva lineas para las llaves, e identar el códogo debajo de ellas.
  • Estilo BSD KNF tambien conocido como estilo Kernel Normal From, es la manera más usada para el codigo de la distribucción del software del sistema operativo de Berkeley.
  • Estilo Whitesmiths tambien llamado estilo wishart, se coloca las llaves asociadas con la instrucciones de control indentada.
  • Estilo GNU este coloca una llave sobre la linea las llaves son identadas por 2 espacios y el codigo que contiene identada por 2 espacios adicionales.