|
Esame 70-536
Serie di post sull'esame 70-536 per conseguire la certificazione MCPD
Innanzitutto chiedo scusa a tutti per essere stato così
poco produttivo nella mia serie di post relativi all'esame 70-536. Purtroppo ho avuto francamente poca voglia di scrivere
(e studiare), e quando l'ho fatto è stato nei rari momenti in cui mi sentivo
ispirato. Ho studiato molto meno per questo esame, ma sono rimasto contento
perchè se l'ho superato devo ringraziare soprattutto la mia esperienza.
L'unico rammarico è che avrei potuto prendere un punteggio nettamente
superiore al 718/1000 che ho miseramente
conquistato. Ho sfiorato i punteggi massimi in quasi tutte le categorie
(Developing applications that use types and
applications, Implementing service processes, threading and application...
I parametri dell'attributo
DllImportNell'ultimo post riguardante l'esame 70-536, abbiamo
visto come utilizzare l'attributo DllImport per poter
utilizzare una funzione esportata da una libreria unmanaged. Nella sua
forma base, DllImport richiede un solo parametro: una stringa
che contiene il nome del file DLL che esporta la funzione che ci interessa
utilizzare nella nostra applicazione managed. L'ultima volta avevamo
fatto un piccolo esempio, considerando la funzione GetTempPath, esportata da
kernel32.dll. la dichiarazione nella nostra classe managedera:
[DllImport("kernel32.dll")] private static extern uint GetTempPath(uint nBufferLength, [Out] StringBuilder lpBuffer);
L'attributo DllImport può avere qualche parametro
aggiuntivo. Ad esempio, nel codice qui sopra il nome della funzione GetTempPath
corrisponde al nome della funzione contenuta in kernel32.dll. Se...
IntroduzioneP/Invoke è
l'abbreviazione di Platform Invoke e consiste
nella capacità da parte del nostro managed code di utilizzare DLL di
sistema ed eseguire le funzioni contenute. Ho trovato di grande comodità il sito
www.pinvoke.net, che ci aiuta con una
grande raccolta di tutte le librerie di sistema e come poterle importare in una
classe managed per rendere accessibile da C#, VB.NET e da tutti gli altri
linguaggi della famiglia .NET. Anche in questo caso, come nel mio ultimo post,
abbiamo a che fare con una classe
wrapper: sarà questa che il codice managed eseguirà.
Tale classe deve essere decorata...
IntroduzioneFino ad oggi abbiamo
sempre discusso con un mondo completamente managed, ovvero il cui
codice è scritto al 100% in linguaggi previsti dal FX (VB.NET e C# in primo
luogo), e che quindi gira all'interno del CLR. Possiamo però andare oltre,
e permettere al nostro codice di oltrepassare le normali barriere ed avere a che
fare con il managed unmanaged, ovvero tutto quello che riguarda codice
Win32, mondo COM e via dicendo.
Ovviamente, il fatto che sia possibile non vuol dire che sia una cosa
semplice, nè tantomeno che siamo esenti da rischi. La difficoltà principale è
saper mappare in memoria gli oggetti...
In molti, giustamente, mi hanno detto che i miei post
per l'esame 70-536 sono più discontinui rispetto alla mia
prima serie per l'esame 70-316. Effettivamente, i miei impegni di lavoro mi hanno
portato via più tempo del previsto e anche se trovo il tempo per studiare un po'
(ho giusto giusto del materiale su P/Invoke che mi aspetta sul letto),
ho sicuramente meno tempo per dedicarmi alla scrittura di post.
Spero davvero di poter riprendere a parlare come una volta, perlomeno sugli
argomenti più importanti come P/Invoke che citavo prima. Rimane da vedere
qualcosa sulla sicurezza ed altro ancora: avevo fissato l'esame il...
IntroduzioneNel post precedente
abbiamo visto come utilizzare la classe Thread in modo basilare. In
breve: come creare un nuovo thread, utilizzando le classi ThreadStart e ParameterizedThreadStart, a
seconda del fatto che il metodo da eseguire in modo asincrono abbiamo parametri
oppure no.
Quello che vediamo oggi va un po' più in là. Sarà un po' tutto teorico,
perchè francamente non ho mai avuto bisogno di scendere così nel dettaglio.
Innanzitutto il Framework ci mette a disposizione la classe ThreadPool. Questa classe è
definita come static, di conseguenza non abbiamo bisogno di istanziarla per
poterla utilizzare. Come dice la pagina su MSDN,...
Il 1° Giugno, alle ore
10:00, andrò a sostenere l'esame 70-536.
In tempo per riprendere a lavorare, per ripassare un po' di roba, per vedere le
cose che mancano, per farmi venire un po' d'ansia.
E, credetemi, se lo passo, io salto dalla gioia, e ve lo dico
anche, alla faccia delle polemiche che ogni tanto
imperversano sul blog. Su questo discorso, mi allineo con Lorenzo,
sinceramente: quando posto sul mio blog, so di rivolgermi ad un mio gruppo di
amici e quindi mi viene naturale raccontare le cose che mi succedono, sia belle
che brutte. Tra queste cose, ci sono anche i miei esami, per...
Ve l'avevo promesso che avrei ricominciato. Dopo questa
lunga pausa, dovuta un po' a motivi di lavoro e salute, vediamo oggi di
riprendere la mia serie di post per l'esame 70-536.
Questa ripresa dei lavori vede come protagonista la class Thread ed affini, ovvero tutte
quelle classi definite nel namespace System.Threading che ci permettono di eseguire
operazioni in modo asincrono. Ne avevamo già parlato in passato quando avevamo
trattato il nuovo componente BackgroundWorker: con nuovo,
intendo con il FX2.0. Il BackgroundWorker internamente fa ovviamente uso di
thread secondari, e risolve la maggior parte delle problematiche riguardanti la
gestione della UI. Come...
Della classe Installer abbiamo già parlato molto tempo fa. Era il 27 settembre, e mi
stavo preparando per l'esame 70-316. Quel giorno abbiamo visto come aggiungere
alla nostra soluzione un nuovo progetto Class Library,
come implementare una classe custom che eredita da Installer.
Tale classe viene consumata da Windows Installer durante il setup della nostra
applicazione. Possiamo in pratica fare l'overloading degli eventi che accadono
durante il processo di installazione, quindi gestire manualmente la Commit,
provocare il Rollback, e via dicendo. Ma non solo: ci eravamo spinti un po' più
in là. Avevamo aggiunto Custom Dialog, richiedendo alcune informazioni
all'utente, come...
Ultimamente ho un po' rallentato la pubblicazione
dei miei post sull'esame 70-536. In questo periodo sono un po'
stra-carico, in tutti i casi per motivi di lavoro. Ho impegni che riguardano il
mio software di fatturazione, ho impegni con la società con la quale lavoro, ho
impegni personali, etc. etc. Insomma, il tempo è davvero poco. Gli argomenti da
affrontare per coprire tutta la Preparation Guide dell'esame per ottenere la MCPD : Windows Developer invece sono ancora tanti.
Bisogna parlare di Thread ed affini, bisogna parlare di ServiceBase e
dintorni, qualche concetto teorico su Application Domain, la classe
Configuration e le sue relative...
Ho visto con infinito piacere l'ultimo post di Alessio Marziali dove ci fa vedere un utilizzo
pratico della classe Rijndael per:
leggere un file di input e memorizzarlo in un byte[]
criptare il file in un'area di memoria mantenuta da un MemoryStream
decriptare il contenuto del MemoryStream su un file di output, ottenendo a
tutti gli effetti una copia del file di input iniziale
Nel codice, Alessio fa uso di tutta una serie di classi, alcune delle quali
derivano direttamente dalla classe astratta Stream. In questo
post desidero fare luce - per quanto mi è possibile...
L'altra volta, in occasione del mio esame 70-316, mi era
sfuggito. Errare è umano, perseverare è diabolico. Questa volta quindi sono
stato più tempestivo.
Fino al 30 giugno 2006 è possibile registrarsi per ottenere una seconda chance
(il termine second shot a me piaceva di più) nel caso in cui non
dovessimo passare un qualsiasi esame di certificazione. L'offerta è applicata
sugli esami per IT Professional, Developer e Business Solutions. Dai,
aprofittatene, vabbè che siamo bravi e ci prepariamo bene, però non si sa mai!
A tutti quelli che stanno studiando, in
bocca al lupo!
powered by IMHO 1.2
La mia reputazione sta colando a picco, dopo il mio
breve racconto sul byte innamorato. Mi devo riprendere subito, ed alla
svelta, anche! Riprendo quindi la mia serie di post sull'esame 70-536
continuando il discorso sulle classi di crittografia messe a disposizione da
.NET. Nell'ultimo post avevo fatto vedere qualche riga di
codice per utilizzare la classe HashAlgorithm allo scopo di generare
l'hash value di una stringa, secondo diversi provider (SHA256, SHA384, SHA512,
etc.).
Giusto per fare qualche test, ho scritto una piccola applicazione che prende
in input una stringa da una TextBox, ne calcola l'hash con i vari provider .NET,...
Avevo promesso che non avrei scritto nulla sulle
certificazioni in questi giorni, ma mi posso subito smentire da solo. Dov'è finita la mia affidabilità,
mannaggia?
Ho appena ricevuto la tradizionale MCP Flash di Marzo 2006,
dove si annuncia l'uscita dei nuovi esami di certificazione. Non so se ne manca
qualcuno, io vi riporto al lista come la leggo nella mia e-mail:
Exam 70-528TS: Microsoft
.NET Framework 2.0 - Web-Based Client Development
Exam 70-431TS: Microsoft SQL Server 2005 - Implementation and
Maintenance
Exam 70-536TS: Microsoft
.NET Framework 2.0 - Application Development Foundation ...
Il namespace System.Security.Cryptography di .NET mette
a disposizione un gran numero di classi per fare encrypting e
decrypting di informazioni. In questo post vedremo
innanzitutto le classi che servono a generare l'hash di un messaggio. Con il
termine messaggio intendo qualsiasi flusso di informazioni, sia esso una banale
stringa o uno stream proveniente da un file. Come dice lo stesso Alessio
Marziali
...
Per motivi di studio, e non perchè vorrò usarla
praticamente (ma mai dire mai), ho provato e riprovato la classe GZipStream del FX2.0 per
comprimere flussi di dati. Ho avuto diverse difficoltà, perchè ritengo che
l'Intellisense un po' impreciso: l'unico vero aiuto l'ho avuto dalla pagina con
un po' di codice sorgente che dimostra veramente come utilizzare i metodi di
GZipStream. Questa classe, in combinata con DeflateStream, permette di
comprimere e decomprimere qualsiasi array di bytes,
indipendentemente dalla loro provenienza: altri files, contenuti di TextBox,
interi DataSet, e così via.
Ho scritto un'utility che mostra la bontà dell'algoritmo di compressione, che...
Alcuni mi chiedono chi diavolo me lo fa fare, di scrivere
quasi ogni giorno i miei post sulle certificazioni. Come ho detto in altri
occasioni, mi piace scrivere, mi piace studiare ed infine, mi piace condividere
con voi e con chiunque capiti per caso sul mio blog. Spesso mi trovo a studiare
argomenti che poi magari non mi serviranno mai sul campo (vedi WMI,
uno fra tanti), però mi piace comunque guardarmeli, anche alla leggera, non
fosse altro che magari potrebbe capitarmi la domanda durante l'esame. Però, ripeto, anche se in giro per il
Web trovate molti samples e tanta, tanta documentazione,...
Il BackgroundWorker (d'ora in poi BW) è
un componente nuovo disponibile nel FX2.0 di .NET, per cui vale la pena
approfondire il suo funzionamento con qualche dettaglio in più. Mi piacerebbe
dimostrare veramente che il task gestito dal BW gira davvero in un thread
separato rispetto a quello della UI. Ed ancora, vedremo come implementare
l'annullamento di un'operazione lunga, tramite il semplice click di un pulsante.
Per far questo, ho creato un progetto Windows Forms completamente nuovo: a
questo progetto ho aggiunto una semplice WF Form1, con una
ListBox ancorata su tutti e quattro i lati, in modo tale da...
In questo post parleremo in modo particolare di come
fare delle query verso il mondo Windows Management Instrumentation (WMI). Tramite
WMI, possiamo infatti accedere dal mondo managed di .NET a tutta una serie di
informazioni gestite da Win32, alcune delle quali particolarmente interessanti,
specialmente se si lavora un po' più a basso livello rispetto a quanto facciamo
di solito. Tanto per citarne qualcosa, è possibile eseguire delle query
tipo:
SELECT * FROM Win32_NTLogEvent -- Log degli eventiSELECT * FROM Win32_BIOS -- Info sul BIOSSELECT * FROM Win32_NetworkAdapter -- Info sulle schede di reteSELECT * FROM Win32_LogicalDisk -- Info sui dischiSELECT * FROM Win32_Product -- Info sui software installati -- con Windows Installer
Il linguaggio utilizzato è un SQL-style, utilizza la clausola SELECT * FROM
identifer, ed eventualmente
possiamo aggiungere una clausola WHERE per filtrare determinati contenuti. MSDN riporta la struttura delle classi esposte
da Win32,...
Nel post di oggi scendiamo un po' più a basso
livello nella combinata software + hardware gestito autonomamente
dal sistema operativo. Vedremo infatti come ottenere l'elenco dei processi
attivi (classe Process del FX) in questo
momento e come leggerne le proprietà. Ogni processo inoltre è composto da
uno o più moduli (class ProcessModule del FX),
anch'essi dotati di proprietà specifiche.
Annuncio che per preparare questo post ho fatto anche un banale progetto con
VS2005 che è disponibile per il download da questo indirizzo. E' molto semplice:
contiene una sola Windows Forms (FormProcess) le cui caratteristiche essenziali
sono le seguenti:
un oggetto TreeView e un...
In questo post, come al solito davvero troppo lungo per lasciarlo sul main feed del blog di UGI, descrivo come creare un custom visualizer per la classe XMLSerialization del mio progetto.
Cliccate sul titolo per leggere!
In questo post illustro alcune delle classi attributo specifiche per fare debugging avanzato, e per predisporre le nostre classi ad essere debuggate in modo più funzionale rispetto a quanto proposto di default dall'IDE di VS2005. Clicca sul titolo per leggere nel dettaglio il contenuto del post.
Uno degli aspetti presi in considerazione dall'esame
70-536 riguarda la creazione e la lettura degli eventi di Windows, e la
creazione ex-novo di un nuovo log dove poter andare a gestire tutto quello che
ci serve. Quindi, abbandoniamo un attimo il nostro set di classi che abbiamo
visto fino a questo momento, e dedichiamo questo post alle classi del FX create
appositamente a questo scopo.
Ricordo innanzitutto, per dovere di cronaca, che è
possibile consultare l'EventLog di Windows, aprendo il Control Panel, andando
nel gruppo Administrative Tools e cliccando su Event Viewer. Di default, i
log disponibili sono 3: Application, Security e System....
Nel codice C# che ho messo a disposizione c'è un file
CustomCollection.cs
che contiene la definizione delle 3 classi
ChapterCollection, BookCollection e
ShelfCollection:
using System;using System.Collections.Generic;using System.Collections.ObjectModel;[Serializable]public class ChapterCollection : Collection<Chapter> { }[Serializable]public class BookCollection : Collection<Book> { }[Serializable]public class ShelfCollection : Collection<Shelf> { }
Grazie alle API create per questo tipo di applicazione, possiamo
velocemente definire un nuovo Book, con i relativi Chapters nel modo
seguente:
// Creo il BookBook promessiSposi = new Book("I Promessi Sposi", "A. Manzoni", 348);// Aggiungio tutti i Chapter di questo libropromessiSposi.Chapters.Add(new Chapter("Prologo"));promessiSposi.Chapters.Add(new Chapter("Inizio della storia"));promessiSposi.Chapters.Add(new Chapter("Storia"));promessiSposi.Chapters.Add(new Chapter("Fine della storia"));promessiSposi.Chapters.Add(new Chapter("Epilogo"));
Fatto questo, possiamo ciclare tutti i capitoli con un banale for...each:
foreach (Chapter cycle in promessiSposi.Chapters) Console.WriteLine(cycle.ToString());
Quello su cui voglio porre l'attenzione oggi è che noi potremmo aggiungere i
Chapter in un ordine casuale, per qualsiasi motivo. Quindi, per esempio:
promessiSposi.Chapters.Add(new Chapter("Storia"));promessiSposi.Chapters.Add(new Chapter("Inizio della storia"));promessiSposi.Chapters.Add(new Chapter("Prologo"));promessiSposi.Chapters.Add(new Chapter("Fine della storia"));promessiSposi.Chapters.Add(new Chapter("Epilogo"));
Il nostro promessiSposi contiene sempre 5 capitoli, ma sono alla
rinfusa....
Nel post di ieri abbiamo visto come serializzare una
classe, sia in formato XML sia in formato binario. Abbiamo anche detto che uno
degli scopi della serializzazione è quello di rendere trasmissibile un
oggetto da un componente all'altro, dove con componente intendo un
qualsiasi altro assembly .NET, un altro PC della nostra LAN o un server Web
dall'altra parte del pianeta. Si arriva quindi al proposito di voler ricostruire
in memoria un oggetto che era stato serializzato, così da poterlo maneggiare
anche dopo la trasmissione stessa.
Deserializzazione da stream
XMLQuesta operazione è nota con il nome di
deserializzazione ed...
Il post di oggi per l'esame 70-536 è davvero troppo lungo. :-)
Cliccate sul titolo per leggere il testo completo.
Alla classe Shelf descritta nei post precedenti, oggi
aggiungiamo un po' di carne sul fuoco. Lo scopo è quello di presentare la classe
Book e di fare qualche precisazione riguardante la classe
Shelf, dato che
studiando la serializzazione ho cambiato un po' le carte in tavola e sono state
fatte diverse modifiche al codice in modo da renderlo più pulito e più
"standard" rispetto alle design guidelines di Microsoft. Un grazie a Michele, a
Marco e ad Andrea per avermi
risposto
...
Non spaventatevi, rimarrò sempre qui a tempestare il mio
blog, cosa credete?
A parte scherzi, è solo una battuta quella in oggetto. Mi riferisco però al
fatto che ogni giorno, la mattina, il pomeriggio, la sera, il sabato o la
domenica, ricevo diverse e-mail di persone che stanno studiando attraverso i
miei post su MCAD. Mi fanno i complimenti, mi chiedono
consigli ed aiuti, mi spronano a continuare la mia attività totally-freeware di stesura dei post per certificarsi.
Beh, io non posso fare altro che ringraziare tutti quanti attraverso il mio blog
(così sono sicuro di raggiungere tutti), senza fare nomi...
Le interfacce ICollection, IList e
ICloneablePartendo dal codice che abbiamo visto nel post
precedente, cominciamo a fare un po' di refactoring e vedere di rendere la
nostra classe Shelf aderente ad alcune delle interfacce standard di .NET. Le
classi con cui cominceremo sono ICollection, ICloneable e IList. Come abbiamo detto in un post precedente,
aderire ad una certa interfaccia (o contract, contratto) significa
fornire l'implementazione per ciascuno dei membri previsti dall'interfaccia
stessa. La prima cosa da sapere quando dobbiamo fare un lavoro di questo tipo
quindi è sapere cosa prevede effettivamente ciascuna interfaccia e scrivere il
codice necessario. Cominciamo con...
Sebbene questo post compaia sotto la categoria Esame
70-536, ho preferito non numerarlo. Qualche settimana fa avevo notato che
c'erano stati alcuni cambiamenti nel documento sul sito Microsoft che elenca le
skills richieste per l'esame 70-536. Su questa pagina si
parlava di una famigerata classe StoredList, inesistente ed introvabile
sul Web: ho postato questa cosa anche sul forum di
UGIdotNET, e anche secondo Andrea Boschin si tratta di un
errore.
Oggi pomeriggio sono ritornato a vedere con più attenzione il documento e mi
sono accorto che effettivamente il riferimento a StoredList è stato corretto in
SortedList, che è una classe effettivamente
implementata nel...
IntroduzioneIn questo post vedremo
volutamente codice che considero sporco , ovvero che sconsiglierei
di usare in un'applicazione reale. Non che non funzioni, ma non
rappresenta sicuramente lo stato dell'arte e, come vedremo nel prossimo post, può essere
sicuramente migliorato sotto molti aspetti. Lo scopo di questo post, riprendendo
un po' il discorso cominciato l'altra volta, è quello innanzitutto di vedere un po' di
codice C# che implementa la classe Shelf (scaffale,
mensola) che utilizzeremo d'ora in poi in congiunzione con altre classi per
approfondire tutte le tematiche dell'esame 70-536.Senza perdere altro tempo,
vediamo un po' di cosa si tratta!
La classe ShelfQuesta...
IntroduzioneUn'interfaccia definisce un set di proprietà,
metodi ed eventi che una classe deve implementare per poter
aderire correttamente all'interfaccia stessa. Quando una classe implementa una
certa interfaccia, deve quindi disporre di tutto quello che
l'interfaccia prevede: non deve escludere nulla, altrimenti il nostro codice
.NET non viene compilato. In altri termini, possiamo quindi dire che
l'interfaccia definisce un contratto, ovvero quei membri di una
classe che ci permettono di interagire con essa. L'interfaccia, per definizione,
non contiene codice: sarà compito della classe che la implementa quello di dare
una reale implementazione a proprietà, metodi ed eventi forzati
dall'interfaccia.
.NET stesso fa...
Siccome questo post della serie [70-536] mi sembra un po' troppo lungo per essere reso visibile direttamente sul main feed, ho deciso di "comprimerlo", ma è sufficiente cliccare sul titolo per leggere!
Le classi attributo del FrameworkLe classi attributo incluse nella tecnologia .NET
sono classi che derivano dalla classe base Attribute. Lo scopo di
queste classi è quello di aggiungere informazioni ad una classe (che chiameremo
target element
) allo scopo di
decorarla, di modificarne il comportamento a run-time
e di integrarla tramite meta-dati. Un attributo può essere applicato ad uno
qualsiasi degli elementi di cui è composto la nostra classe: la classe stessa,
un costruttore, un metodo, una proprietà, e così via. Lo stesso .NET
Framework fa un grande uso degli attributi:...
Uno dei primi concetti teorici riguardanti l'esame 70-536 prende in
considerazione i tipi di dati messi a disposizione dal framework. Vediamo quindi
di far luce - brevemente - su cosa significano e che differenze ci sono
tra l'uno e l'altro. Lascerò la parola a tutti voi nei miei commenti per
tutte le precisazioni del caso.
Value typesCosa sono i value types? E' un nome col quale
vengono chiamati tutti i tipi di dati semplici, ovvero variabili nella
cui cella di memoria viene memorizzato il valore stesso della variabile. Cadono
in questa categoria i tipi di dato come int, float, double, etc. I...
IntroduzioneNegli ultimi giorni ho pensato un po' a cosa poter
realizzare nelle prossime settimane per scrivere dei post che abbiano un
qualche senso pratico, in modo da essere più intuitivi e comprensibili a chi mi
seguirà.
Esattamente lunedì sera, dopo cena, era in camera mia con mio fratello e mi
guardavo attorno, girovagando a caso alla ricerca di un po' di ispirazione. Voi
non potete saperlo, ma in camera mia sono letteralmente circondato da libri di
ogni sorta, alcuni dei quali (solo quelli che ho letto) sono
elencati qua. Mi sono ricordato di quando, negli anni '80, usavo il mio
fedele Texas Instruments...
Accolgo con piacere la proposta di Luca, ma di
questo parlerò, forse, in un altro post. Quello che voglio dire è che questa
mattina, tra un ritaglio di tempo ed un altro, ho portato avanti il lavoro sul
wiki di
UGIdotNET. Qualche tempo fa, infatti, Lorenzo
aveva iniziato a creare una nuova pagina dedicata alle nuove certificazioni Microsoft.
La pagina comprendeva tutte le possibili certificazioni, sia come
MCTS (Technology Specialist), sia come MCPD
(Professional Developer). Questa mattina, desideroso di farlo, ho
aggiunto e dettagliato una pagina per ciascuna, che vi invito a leggere e, se
volete, in pieno spirito wiki, a migliorare voi stessi.
Le...
Chi segue il mio blog,
o genericamente il blog di UGIdotNET, sa che mi sto preparando a scrivere una
serie di post relativi all'esame 70-536. E ho anche parecchie persone che non
vedono l'ora di leggermi. Mi stanno venendo alcuni dubbi sulla
questione, perchè non ho ancora identificato per bene quali strumenti messi a
disposizione da UGIdotNET siano la cosa migliore per quello che mi propongo.
La cosa sicura è che ancora una volta sfrutterò il mio blog.
Lo ritengo il più comodo e - come hanno detto altri in questo post di Lorenzo, posso usare un linguaggio più
informale, più amichevole, e così...
I temi che voglio toccare in questa mia serie di articoli
prendono in considerazione l'esame 70-536
. Se date un'occhiata alle
skills misured, vi accorgerete che si tratta di un esame piuttosto teorico, di
certo molto diverso dal 70-316 che ho già trattato in passato. Parla di alcune
delle novità del Framework 2.0, come i generics, piuttosto che Thread, algoritmi DES e
MD5, interoperability e così via.
Mi annoio velocemente quando leggo codice troppo
teorico - leggesi "La classe A eredita dalla classe
B
", "La classe B
implementa...
La Preparation Guide che ho intenzione di seguire per la preparazione di
questo esame è presa pari-pari da quella pubblicata da Microsoft sulla pagina
dedicata all'esame stesso. Potete consultarla qui. Devo dire che è davvero molto ricca di argomenti
più o meno spinosi e più o meno (almeno per me) noti. Credo che comincerò
la serie di articoli soltanto la settimana prossima, o magari quella
successiva ancora: un po' per motivi di lavoro, un po' per avere la massima
partecipazione possibile, dal momento che parecchi di noi sono ancora in
ferie.
L'esame è diviso in 7 paragrafi, che elenco qui sotto per dare
una struttura ai miei post...
Oggi sarei dovuto andare in ufficio a lavorare, ma una
forte influenza mi ha costretto a casa. Ho avuto quindi un po' di tempo libero,
in relax, e mi sono guardato le skills riguardanti l'esame 70-536 per acquisire la nuova certificazione "MCTS: .NET Framework 2.0 Windows Applications".
Per prepararmi a questo esame - che è ancora in beta - ho intenzione di
utilizzare ancora una volta il mio blog (così diventerò ancora una volta il
vostro peggiore incubo) e - novità novità - mantenere anche un wiki. Il mio
ominimo Igor mi ha proposto questa cosa su un wiki tutto suo...
Sono tornato, con un nuovo incubo ed un nuovo sogno da
inseguire. Ho creato apposta una nuova categoria all'interno del mio blog
denominata MCPD
. Finalmente comincio ad avere le idee più chiare di quello che voglio
fare. Ieri sera mi sono letto le pagine sulle nuove certificazioni di Microsoft
disponibili a partire da
questa pagina. Finalmente si parla chiaro!
Mi piacerebbe raggiungere la certificazione MCPD: Microsoft Certified Professional
Developer, specializzazione Windows Developer. Qualche chiarimento:
prima di poter acquisire la MCPD, bisogna prima aver superato i due esami per la...
|