SharpDevelop es un entorno de desarrollo integrado libre para los lenguajes de programación C#, Visual Basic .NET, F#, Python, Ruby, Boo y C++.
Es usado típicamente por aquellos programadores de los citados lenguajes, que no desean o no pueden usar el entorno de desarrollo de Microsoft, Microsoft Visual Studio. Hay disponible un port para Mono/Gtk#, llamado MonoDevelop, el cual funciona en otros sistemas operativos.
Fuente: Wikipedia
Empieza a usarlo: Descargar
2016-12-30
10 Razones para utilizar PostgreSQL
A continuación teneis las 10 razones más importantes por las que PostgreSQL es una de las bases de datos más avanzada y potente del mercado:
- Código fuente libre y de alta calidad
- Licencia BSD - En pocas palabras, puedes hacer prácticamente lo que quieras con el producto, sin restricciones.
- Soporte profesional tanto de la comunidad como de empresas especializadas.
- Requerimientos de administración y mantenimiento relativamente bajos con respecto el resto de bases de datos comerciales
- Fiabilidad y estabilidad legendarias
- Rendimiento excelente
- Diseñada para entornos con altos volumenes de tráfico/transacciones
- Extensible
- Multiplataforma
- Herramientas gráficas y de linea de comandos para diseñar nuestras bases de datos y administrarlas
Fuente: www.postgresql.org.es
Diferencias entre Class y Struct
Las estructuras se diferencian de las clases de diferentes maneras:
- Las estructuras son tipos de valor (Sección 11.3.1).
- Todos los tipos de estructura se heredan implícitamente de la clase System.ValueType (Sección 11.3.2).
- La asignación a una variable de un tipo de estructura crea una copia del valor que se asigne (Sección 11.3.3).
- El valor predeterminado de una estructura es el valor producido al establecer todos los campos de tipos de valor en su valor predeterminado, y todos los campos de tipos de referencia en null (Sección 11.3.4).
- Las operaciones boxing y unboxing se utilizan para realizar la conversión entre un tipo struct y un tipo object (Sección 11.3.5).
- El significado de this es diferente para las estructuras (Sección 11.3.6).
- Las declaraciones de campos de instancia para una estructura no pueden incluir inicializadores de variable (Sección 11.3.7).
- Una estructura no puede declarar un constructor de instancia sin parámetros (Sección 11.3.8).
- Una estructura no puede declarar un destructor (Sección 11.3.9).
Fuente: Microsoft MSDN
DataSet vs DataReader
Para determinar si se debe utilizar el DataSet o el DataReader cuando el diseño de la aplicación, debe tener en cuenta el nivel de funcionalidad que se necesita en la aplicación.
Utilice el DataSet con el fin de hacer lo siguiente con su solicitud:
Utilice el DataSet con el fin de hacer lo siguiente con su solicitud:
- Navegar entre varias tablas de resultados discretos.
- Manipular los datos de múltiples fuentes (por ejemplo, una mezcla de datos de más de una base de datos, a partir de un archivo XML, y desde una hoja de cálculo).
- Intercambio de datos entre niveles o utilizar un servicio Web XML. A diferencia del DataReader , el DataSet se puede pasar a un cliente remoto.
- Volver a utilizar el mismo conjunto de filas para lograr una ganancia de rendimiento de almacenamiento en caché de ellos (por ejemplo, para ordenar, buscar, o el filtrado de los datos).
- Realizar una gran cantidad de procesamiento por fila. Procesamiento extendido en cada fila devuelta utilizando un DataReader ata la conexión al servicio de la DataReader más de lo necesario, lo que afecta el rendimiento.
- Manipular datos XML utilizando operaciones tales como Extensible Stylesheet Language Transformations (XSLT transformaciones) o consultas XPath.
Utilice el DataReader en su aplicación si:
- No es necesario almacenar en caché los datos.
- De llevar a cabo un conjunto de resultados demasiado grandes para caber en la memoria.
- La necesidad de acceder rápidamente a los datos una vez, en un sólo avance y de sólo lectura manera.
Nota: El DataAdapter utiliza el DataReader al llenar un DataSet . Por lo tanto, el rendimiento obtenido con el uso del DataReader en lugar del DataSet es que se guarda en la memoria que el DataSet consumiría y los ciclos que se necesitan para llenar el DataSet . Esta ganancia de rendimiento es, en su mayor parte, nominal, por lo que debe basar sus decisiones de diseño sobre la funcionalidad requerida.
Fuente: Microsoft MSDN
Suscribirse a:
Entradas (Atom)