3ENGINE

Programación y otros cachivaches

Etiqueta: programacion

Página 9/21

Tecnologia

Arduino


Arduino es una placa electrónica programable de hardware libre. Se dispone de un IDE para programarla, el lenguaje es una especie de C muy sencillo.

Desde la web oficial hay enlaces a varias tiendas que venden componentes, como por ejemplo esta tienda. En este enlace un poco mas de explicación.




Tecnologia

Acoplamiento y Cohesión


Definición

  1. Cohesión: grado de cercania entre 2 o mas elementos, tienen características que les unen.
  2. Acoplamiento: grado de dependencia entre 2 o mas elementos.

Objetivo

Mantener el acoplamiento lo más bajo posible y la cohesión lo más alta posible suele ser el objetivo de todo arquitecto, diseñador o programador. Tener unos buenos criterios para agrupar unidades de software (alta cohesión), y mantener esas unidades lo más independientes posible (bajo acoplamiento) garantiza la modularidad, facilitando la reutilización del software y gran parte de las tareas del desarrollo del sofware.

El artículo completo en La tecla de escape
Otro aquí

Creo que son dos conceptos esenciales que los diseñadores de software acostumbramos a olvidar…




Tecnologia

SqlDbx


SqlDbx es un IDE para bases de datos Oracle, SQL Server, DB2, Sybase y ODBC. Incluye Intellisense, un comparador visual de datos, remarcado de sintaxis, scripts de SQL, exportación de datos a varios formatos, visualizador de esquemas, etc. La versión personal ya de por si tiene un monton de características y eso que es gratuita.




Tecnologia

Nomenclatura en c#


Una buena práctica a la hora de programar es que todo el equipo siga la misma nomenclatura en la definición de interfaces, clases, métodos, etc. En este enlace hablan detalladamente del tema.

Dejo aquí la nomenclatura a seguir.

Programación

Tipo Notación + Contenido Ejemplo
NameSpaces Pascal Case, Sin Guión Bajo IrritatedVowel.Controllers
Clases (Classes) Pascal, Sin Guion Bajo MainForm
Colecciones (Collections) Pascal + “Collection” WidgetCollection
Interfases (Interfaces) Pascal con “I” inicial IWidget
Enumeradores Pascal (Generalmente Plural) OpcionesBusqueda
Funciones y Subs Pascal, Sin Guión Bajo ConvertirContenido (…)
Propiedades Publicas Pascal, Sin Guión Bajo RecordID
Propiedades Privadas Camel [prefijo _ opcional] recordId, _recordId
Parámetros Camel, sin abreviaciones ref int recordID
Controles en ASPX Camel, con prefijo [ejem: ux] uxUserId

Bases de datos

Tipo Notación + Contenido Ejemplo
Nomenclatura de Tablas Pascal Case (excepto mysql) Colonias, Modulos
Campos Camel Case, Sin Guión Bajo idRegistro, diaRegistro
Funciones Pascal Case, Sin Guión Bajo Letra, DiasVencidos
Stored Procedures Camel, Sin Guión Bajo
[proc]+[tabla]+[funcion]
Ej 1: procClienteInsert
Ej 2: saldoVencidoSelect
* prefijo proc es opcional*
Parámetros en SP Camel, Sin Guión Bajo @idCliente
Vistas (Views) Camel, prefijo “vw” vwClientes