Yedda Twitter Library.
URL: http://devblog.yedda.com/index.php/twitter-c-library/
He utilizado este en una serie de proyectos de Twitter muy sencillos, donde era necesaria para enviar una actualización. Como dice su sitio mas que una libreria real es un wrapper para la API de Twitter. He aquí cómo usarla.
[sourcecode lang="vb"]
Dim objYedda As New Yedda.Twitter
Dim status as String
Dim strTwitterUser as String = “username”
Dim strTwitterPassword as String = “password”
status = “Hello World”
objYedda.Update(strTwitterUser, strTwitterPassword, strStatus, Yedda.Twitter.OutputFormatType.RSS)
[/sourcecode]
Este pequeño trozo de código actualizará tu estado de Twitter.
FileHelpers Library
URL: http://filehelpers.sourceforge.net/
La librería FileHelpers fue creada para evitar que los desarrolladores parseen sus CSVs a mano. Si estas haciendo cualquier tipo de importación y exportación dentro de su aplicación con el formato CSV para obtener los datos, no busques más.
Puedes escribir un archivo de texto CSV simplemente mediante una clase que le asigna un tipo de datos para cada registro. De esta forma mejora la consistencia y la fiabilidad de la escritura y lectura de CSV.
Primero definimos la clase de la estructura...
[sourcecode lang="vb"]
Public Class Product
Public ProductName As String
Public ProductCode As Integer
etc..
End Class
[/sourcecode]
Añadimos una referencia a FileHelper.dll, leemos del archivo y hacemos un cast a un array de objetos producto.
[sourcecode lang="vb"]
Dim engine As New FileHelperEngine(GetType(Product))
Dim myProduct As Product() = DirectCast(engine.ReadFile(“product.txt”), Product())
[/sourcecode]
Trabajamos con el array de productos.
[sourcecode lang="vb"]
For Each pro As Product In myProduct)
Response.Write(pro.ProductName)
Next
[/sourcecode]
Elmah
URL: http://code.google.com/p/elmah/
Elmah es un significa (en inglés): Error Logging Module And Handlers. Es un sistema de conectores para la gestión de errores en .Net. Captura las excepciones lanzadas y no controladas dentro del ámbito de tu aplicación, las loguea, y permite navegar por la pila de llamadas, sin mostrar el error a los usuarios. No tienes la perdida de velocidad por activar el modo debug y puedes resolver problemas directamente en un servidor en producción.
Elmah trabaja como un módulo HTTP, no requiere apenas esfuerzo de configuración. Toda la configuración se realiza en un fichero de configuracion, donde se indica donde se quiere loguear los errores, base de datos, memoria o fichero de texto. Incluso puedes recibir los errores por RSS.
Log4Net
URL: http://logging.apache.org/log4net/
Log4Net es un port de la famosa libreria de log para Java Log4J.
Con Log4net es posible sacar logs en ejecución sin modificar el binario de la aplicación y sin penalización de rendimiento. Varios niveles de loggin se pueden fijar en el programa, para determinar rapidamente donde ocurren los errores críticos y donde las advertencias que pueden ser ignoradas.
Permite el mismo nivel de control y formatos de log que la libreria anterior. Puedes enviar el mensaje a la base de datos, a un fichero de texto o a un puerto TCP. Además puedes desarrollar un conector personalizado para enviar los mensajes donde quieras (cuenta twitter por ejemplo con la libreria anterior). Se configura en el ficheor web.config.
[sourcecode lang="vb"]
Imports log4net
Imports log4net.Config
Private Shared log As log4net.ILog
Public Sub Page_Load(Byval s as Object, Byval e As EventArgs) Handles MyBase.Load
log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType)
BasicConfigurator.Configure()
log.Debug(“Debug Message”)
log.Warn(“Warning Message”)
log.Fatal(“Fatal Message”)
End Sub
[/sourcecode]
Enterprise DT FTP Library
URL: http://www.enterprisedt.com/products/edtftpnet/overview.html
Enterprise DT es una pequeña pero potente libreria FTP, permite realizar todas las tareas posibles con un FTP de manera sencilla. Funciona tanto en web como en web, es un port de una libreria java.
Como vemos en el código su uso es extremadamente sencillo:
[sourcecode lang="vb"]
Dim ftp as FTPConnection = new FTPConnection()
ftpConnection.ServerAddress = “myserver”
ftpConnection.UserName = userName
ftpConnection.Password = password
ftpConnection.Connect()
ftpConnection.UploadFile(localFilePath, remoteFileName)
ftp.Close()
[/sourcecode]
HtmlAgilityPack
URL: http://www.codeplex.com/htmlagilitypack
La libreria Html Agility Pack is sirve para parsear HTML. Es particularmente util si necesitas obtener un documento HTML de una web en código y quieres obtener el arbol DOM para trabajar con el desde tu código. Soporta XPATH y XSLT para analizar el HTML para extraer el texto. No es necesario conocer estas dos tecnologías para trabajar con la libreria.
[sourcecode lang="vb"]
Dim hw As New HtmlAgilityPack.HtmlWeb
Dim doc As HtmlAgilityPack.HtmlDocument
doc = hw.Load(“http://blog.webdistortion.com”)
For Each s As HtmlAgilityPack.HtmlNode In doc.DocumentNode.SelectNodes(“//a[@href]“)
Dim att As HtmlAgilityPack.HtmlAttribute = s.Attributes(“href”)
Response.Write(att.Value & vbCrLf)
Next
[/sourcecode]
OpenAuth Library
URL: http://code.google.com/p/oauth-dot-net/
Open Auth, como su nombre indica, es una forma de autenticación cada vez mas utilizada. Esta libreria te permite implementarla en tu aplicación rapidamente. Google, Yahoo, Netflix y Twitter permiten interaccionar mediante OpenAuth. Esta libreria requiere más código que las anteriores.
Merece la pena ver estos enlaces:
OAuth Specificacion
The OAuth Workflow
OAuth Walkthrough
Microsoft AntiXSS library
URL: http://bit.ly/toCrt
Este es uno de los packs de seguridad que ofrece microsoft para ayudar a los desarrolladores de .NET a generar código mas seguro. Esencialmente es una libreria de codificación diseñada para proteger las aplicaciones web en ASP.NET de los ataques XSS.
Tan sencillo como utilizar estos métodos con las cadenas no seguras:
- Microsoft.Security.Application.AntiXss.HtmlEncode(strNotrust)
- Microsoft.Security.Application.AntiXss.JavaScriptEncode(strNotrust)
C5 Collections – Collections for .NET
URL: http://www.itu.dk/research/c5/
C5 ofrece funcionalidad y estructuras de datos no estandar. Merece la pena echarle un ojo antes de implementar nuestros propios tipos de datos.
Menciones honorables (librerias para multitud de propósitos)
Dependency Injection/Inversion of Control
- Unity Framework – Microsoft
- StructureMap – Jeremy Miller
- Castle Windsor
- NInject
- Spring Framework
- Autofac
- Managed Extensibility Framework
Logging
- Logging Application Block – Microsoft
- NLog
Compresión
- SharpZipLib
- DotNetZip
- YUI Compressor (CSS and JS compression/minification)
Ajax
- Ajax Control Toolkit – Microsoft
- AJAXNet Pro
Mapeo de Datos
ORM
Gráficos
- Microsoft Chart Controls for ASP.NET 3.5 SP1
- Microsoft Chart Controls for Winforms
- ZedGraph Charting
- NPlot – Gráficas en ASP.NET y Windows Forms
Creador de PDF Creators/Generadores
Pruebas unitarias
Pruebas automatizadas web
Reescritura de URLs
Controles
- Krypton – Controles para windows forms gratuitos
- Source Grid – Control grid
- Devexpress – Controles gratuitos
Sin clasificar
- CSLA Framework – Business Objects Framework
- AForge.net – AI, visión por compuador, algoritmos genéticos, etc
- Enterprise Library 4.1 – Logging, gestión de excepciones, validación, etc
- Quartz.NET – Gestor de tareas para .NET
- MiscUtil – Utilidades de Jon Skeet
- Lucene.net – Indexado y búsqueda en textos
- Json.NET – Linq sobre JSON
- Flee – evaluador de expresiones
- PostSharp – AOP
- IKVM – librerias de Java en .Net
- FlickrNET – libreria Flickr para .NET
- PowerCollections – Power Collections para .NET
- Facebook.net – Interfaz de la API de Facebook.
Fuente: http://blog.webdistortion.com/2010/02/16/60-net-libraries-every-developer-should-know-about/
2 comentarios:
Increible recopilación de librerías, con esto ASP.net es más digestible.
Gracias por un arduo trabajo
Tras un rapido repaso yo tambien añadiria MEF y PRISM de microsoft para UIs.
Saludos
Publicar un comentario