Correttori grammaticali: come funzionano?
Come alcuni di voi sanno sto lavorando per la mia seconda tesi di laurea: ciò implica che in questo ultimo periodo sono inevitabilmente costretto ad utilizzare frequentemente Microsoft Word
Ogni tanto Word mi lascia perplesso per le correzioni che mi da... Ammetto che le correzioni ortografiche (quelle rosse) sono molto utili per evitare stupidi errori di battitura e refusi; le correzioni grammaticali (quelle verdi), invece, qualche volta mi lasciano davvero perplesso.
Non c'è da stupirsi, la mia mente riesce ad immaginare quanto debba essere difficile scrivere un algoritmo capace di capire la nostra grammatica... visto che la curiosità mi assaliva e mi rodeva dentro ho speso qualche minuto a cercare qualcosa che mi permettesse di capire come funzionano questi affari, ed ho trovato questo:
Link: Developing a grammar checker for swedish
Anche se la lettura è un pò pesante e gli esempi sono in svedese, potreste trovarlo interessante...
Attributo DebuggerBrowseable in VS
Le tue classi sono piene di metodi la cui visualizzazione in fase di debugging è praticamente inutile? L'attributo DebuggerBrowsable ti permetterà di scegliere come visualizzare i membri della tua classe nella vista di Debug.
Di seguito un rapido esempio di utilizzo:
<debuggerBrowsable(DebuggerBrowsableState.Never)> _ Public Shared Function getGroup(ByVal idGroup As String) As SlotGroup
Per i dettagli date uno sguardo su MSDN
Pagina generata in X secondi
Qual'è il metodo migliore per indicare ai nostri visitatori quanto siamo bravi a programmare, scrivendo in fondo alle nostre paginette aspx il tempo in cui queste vengono generate?
L'idea migliore, più precisa ed efficiente, è quella di affidarsi a System.Diagnostics.Stopwatch: se lo avete già realizzato, usando però il "classico" DateTime e qualche sottrazione per ottenere un TimeSpan, sarebbe il caso che provvediate a rimpiazzare tutto il vostro accrocchio.
Stopwatch infatti è realizzata usando chiamate ad API di basso livello, con un overhead decisamente minore rispetto a qualsiasi metodo di .NET. Inoltre se la vostra configurazione hardware e software lo permette, potrete usufruire di un contatore ad alta precisione.
dim watch as new System.Diagnostics.Stopwatch()
watch.Start()
[...]
watch.Stop()
literal.Text = "Pagina generata in " + watch.Elapsed.ToString() + " secondi"
Beh, fatemi sapere quanti millisecondi avete recuperato!
Velocizzare Visual Studio 2005
Non tutti possono permettersi un PC sufficientemente performante da far girare Visual Studio 2005 senza alcun problemi (io lo so bene), per questo talvolta è necessario darsi una mano con trucchetti, tipo questi cinque elencati di seguto, che permettono di alleggerire il carico che il nostro computer deve sopportare:
- Assicurati di aver installato il Service Pack 1
- Disabilita le animazioni, un vero programmatore non ne ha bisogno.
Puoi farlo da Tools > Options > Environment deselezionando l'opzione Animate environment tools. - Se stai usando ReSharper potresti non avere la necessita che Visual Studio aggiorni la barra di navigazione in cima a tutti i tuoi file sorgente.
Vai su Tools > Options > Text Editor > C# (o VB) e deseleziona Navigation bar. - Non ti serve che il solution explorer salti tra un file e l'altro mentre navighi tra i file aperti? Vai su Tools > Options> Projects and Solutions e deseleziona Track Active Item in Solution Explorer. Questo farà stare fermo il pannello a sinistra, anzichè farlo zompettare tra un file e l'altro.
- C'è una opzione in Visual Studio 2005 che permette di popolare il toolbox con tutti i controlli che sono compilati come parte della soluzione corrente. Questo può essere utile mentre si sviluppano i controlli stessi, ma in certe circostanze fa letteralmente piantare VS per un bel pò di tempo. Per disabilitare l'opzione vai su Tools > Options > Windows Forms Designer ed imposta AutoToolboxPopulate a False.
Attendo di sapere quanto vi sono stati utili. Da quando ho eseguito ciò che è descritto al punto 4 mi sento un uomo migliore
Utilities.NET
Utilities.NET è una collezione di classi di aiuto e di componenti per risolvere velocemente le comuni problematiche di programmazione in .NET
La libreria contiene 117 classi, ed è frutto del lavoro di James Newtonking, che ha deciso di rilasciarla con tanto di codice sorgente.
Io l'ho scaricata e messa sul desktop, appena posso giuro che gli do un'occhiata