C#

Piccoli tip, informazioni ... insomma roba da due minuti e via su C#

Proteggere il proprio codice

Questo è un problema che ci porteremo dietro all'infinito. A tal proposito in questi giorni stavo valutando dei tool di offuscazione e di licensing. Ne ho trovati due estremamente interessanti dal costo nemmeno tanto proibitivo rispetto ai must segnalati da Microsoft che costano una "fortuna" per i poveri singoli sviluppatori. Il primo si chiama .Net Reactor. Oltre ad offuscare fa uso di una tecnlogia proprietaria chiamata Necrobit che dovrebbe assicurare il file una volta per tutte. Per il momento mi sono limitato ad offuscare e testare l'applicazione. E sembra che funzioni. Ho poi passato la dll al Reflector e anche...

posted @ venerdì 29 giugno 2007 14:03 | Feedback (0)

Installare e configurare Microsoft Visual Source Safe 2005 e l’accesso remoto via Internet

Questo articolo è una traduzione con alcuni commenti personali sull'esperienza che ho avuto nell'usare il Remote Access di Visual Source Safe 2005. L'articolo lo trovate qui.

posted @ sabato 10 marzo 2007 16:50 | Feedback (0)

La mia prima esperienza con il GAC

Tra il leggere, l'immagazzinare informazioni e poi usarle, come al solito di differenza ce ne passa un oceano. Oggi stavo da un cliente che mi ha chiamato per delle consulenze (ok, si mi sono rimesso a lavoro - ho ancora un sacco di difficoltà, ma spero di superarle a breve) e mi espone - tra le varie perplessità - "Sai vorrei creare una dll da riclicare per dei progretti proprio come facevo per VB6". Al che prima cosa che mi viene in mente è GAC ... e gli spiego cosa è ... a cosa serve, come fare per registrare i componenti...

posted @ venerdì 24 novembre 2006 14:23 | Feedback (2)

Un buon trucchetto da ricordare

Corrado ne sà sempre una più del diavolo ... chissà mai se un giorno il diavolo farà anche a noi dono di 1/100^10 della sua bravura :) Intanto il suo trucchetto su come modificare una collection lasciandola enumerabile è raggiungibile al link sopra riportato.

posted @ domenica 20 agosto 2006 17:32 | Feedback (0)

La buona regola del "x = null"

Venendo dal mondo VB, la regola migliore che c'era per liberare memoria era quella di appicciare a fondo funzione - dove occorreva - un bel set x = nothing, così che oggetto particolarmente pesanti venivano scaricati dalla memoria e niente problemi di appesantimento del pc o crash inattesi, overflow ecc. ecc. Il .Net framework sicuramente ha cambiato molto in questo, grazie all'implementazione della Garbage Collection (alias GC), una specie di spazzino h24 che gira per il framework e butta via quello che non serve. Tuttavia, secondo me, Microsoft non è stata molto chiara su come e quando questo spazzino lavora, ma soprattuto su...

posted @ venerdì 26 maggio 2006 18:36 | Feedback (4)

I membri statici sono condivisi tra tutte le istanze dichiarate nel codice

Direte che ho fatto una scoperta idiota. In realtà no. Proprio perchè il mio blog lo intendo come un diario dove appuntare tutte le pifferate che combino, ritengo opportuno scriverci pure questo. In realtà sapevo che i membri statici erano condivisi, ma il problema vero è che avevo scritto un pezzo di codice - errato - dove riuscivo ad avere un valore per il membro statico diverso per ogni istanza di una classe che avevo dichiarato. Come ci sono riuscito non lo sò nemmeno io, però più guardavo esterefatto il risultato che ottenevo e più leggevo nell'MSDN questo paragrafo: "Static class...

posted @ giovedì 19 gennaio 2006 17:52

I named parameters, questi benedetti

In questo caso mi sono ritrovato a cercare di capire cosa potessero essere i named parameters, o meglio quello lo avevo capito, ma come, invece, li potevo creare. Sulle prime pensavo che la descrizione che compariva al di sotto del tooltip box fosse una questione di tag per la commentazione del codice (Recommended Tags for Documentation Comments), però i conti non mi tornavano. Gira che ti rigira, dopo un pò di analisi di alcune classi che esponevano questi named parameters, finalmente comprendo che altro non sono che delle banali proprietà (get, set), ma applicate a classi che ereditano da Attribute. Quindi per intenderci...

posted @ mercoledì 18 gennaio 2006 00:28