Cert01 70-483 - programming in c#

32
Template designed by cert-path 70-483 – Programming in C# Roberto Freato – Freelance IT Consultant & Trainer MVP on Windows Azure, Microsoft Certified Trainer [email protected] - @childotg Template designed by

Transcript of Cert01 70-483 - programming in c#

Page 1: Cert01   70-483 - programming in c#

Template designed by

cert-path

70-483 – Programming in C#

Roberto Freato – Freelance IT Consultant & Trainer

MVP on Windows Azure, Microsoft Certified Trainer

[email protected] - @childotg

Template designed by

Page 2: Cert01   70-483 - programming in c#

Template designed by

brought to you by

Page 3: Cert01   70-483 - programming in c#

Template designed by

• Cos’è il cert path del DotNetCampus?

• Le certificazioni professionali, tecniche e di prodotto

• I diversi percorsi di certificazione Microsoft – MCP e MCT

• L’ esame 70-483: Programming in C#

cert path

Page 4: Cert01   70-483 - programming in c#

Template designed by

• La lingua universale del software (en-us)

• Esperienza vs. Studio

• Il programma d’esame

• Il metodo d’esame

focus

Page 5: Cert01   70-483 - programming in c#

Template designed by

Manage program flow (25%)

Create and use types (24%)

Debug applications and implement security (25%)

Implement data access (26%)

http://www.microsoft.com/learning/en-us/exam-70-483.aspx

agenda

Page 6: Cert01   70-483 - programming in c#

Let’

s g

o Manage program flow

Page 7: Cert01   70-483 - programming in c#

Template designed by

Implement multithreading and asynchronous processing

• Thread concepts, threadpool

• Task, Task<T>, Continuation

• EAP (event-based) & APM (begin/end)

• UI, Async/Await

manage program flow (25%)

Page 8: Cert01   70-483 - programming in c#

Template designed by

Manage multithreading

• Lock, AutoResetEvent, Mutex, Semaphore

• CancellationToken & CancellationTokenSource

• Concurrent Collections

manage program flow (25%)

Page 9: Cert01   70-483 - programming in c#

Template designed by

Implement program flow

• Arrays, Collections and generics

• Basic syntax (for, foreach, switch, expressions)

manage program flow (25%)

Page 10: Cert01   70-483 - programming in c#

Template designed by

Create and implement events and callbacks

• Delegates & Lambda expressions

• Events model

• EventHandler, EventArgs (“sender, args” model)

• LINQ (var + lambda + ext methods + an. types)

manage program flow (25%)

Page 11: Cert01   70-483 - programming in c#

Template designed by

Implement exception handling

• Study exception inheritance tree

• Try-catch-finally

• Custom exceptions

manage program flow (25%)

Page 12: Cert01   70-483 - programming in c#

Let’

s g

o Create and use types

Page 13: Cert01   70-483 - programming in c#

Template designed by

Create types

• Struct, enum, class, interface

• Create generic types (generic methods)

• Static members

• Inheritance, abstract classes, override, overload

create and use types (24%)

Page 14: Cert01   70-483 - programming in c#

Template designed by

Consume types

• Casting types (as, is, boxing, explicit casting)

• Covert class

• Dynamic keyword

create and use types (24%)

Page 15: Cert01   70-483 - programming in c#

Template designed by

Enforce encapsulation

• Properties (get/set)

• Accessors (public/private/protected/internal)

• Explicit interface implementation

create and use types (24%)

Page 16: Cert01   70-483 - programming in c#

Template designed by

Create and implement a class hierarchy

• Inheritance, abstract methods

• Common interfaces: IComparable, IDisposable

• IEnumerable!!!!!!!!!!

• IUnknown?!?!?

create and use types (24%)

Page 17: Cert01   70-483 - programming in c#

Template designed by

Find, execute, and create types at runtime by using reflection

• Assembly, PropertyInfo, Type class

• Object base type

• NB: “reflect everything”

create and use types (24%)

Page 18: Cert01   70-483 - programming in c#

Template designed by

Manage the object life cycle

• IDisposable again (finalization, using)

• Garbage collection (really?)

create and use types (24%)

Page 19: Cert01   70-483 - programming in c#

Template designed by

Manipulate strings

• StringBuilder

• StringReader/Writer

• Regular Expressions

• String class, string.Format, Split, etc..

create and use types (24%)

Page 20: Cert01   70-483 - programming in c#

Let’

s g

o Debug applications and

implement security

Page 21: Cert01   70-483 - programming in c#

Template designed by

Validate application input

• JSON (libraries?)

• Attributes

• Regex (again?)

debug applications and implement security (25%)

Page 22: Cert01   70-483 - programming in c#

Template designed by

Perform symmetric and asymmetric encryption

• System.Security namespace

• Hashing vs Encrypting vs Certificates

• Encrypted streams

debug applications and implement security (25%)

Page 23: Cert01   70-483 - programming in c#

Template designed by

Manage assemblies

• AssemblyInfo

• Signing assemblies (tools)

• GAC vs local copy (build action)

• WinMD

debug applications and implement security (25%)

Page 24: Cert01   70-483 - programming in c#

Template designed by

Debug an application

• Compiler directives (IF #)

• Debugging windows (immediate, locals, watches, etc)

debug applications and implement security (25%)

Page 25: Cert01   70-483 - programming in c#

Template designed by

Implement diagnostics in an application

• Logging, tracing

• Profiling (do it really)

• Performance counters (API)

• Event log

debug applications and implement security (25%)

Page 26: Cert01   70-483 - programming in c#

Let’

s g

o Implement data access

Page 27: Cert01   70-483 - programming in c#

Template designed by

Perform I/O operations

• System.IO namespace (and System.Net, concerning streams)

• Reading & Writing files

• File, FileInfo, Directory, DirectoryInfo classes

• Async operations

• Stream concepts

implement data access (26%)

Page 28: Cert01   70-483 - programming in c#

Template designed by

Consume data

• SqlConnection, SqlDataReader, SqlCommand

• EntityFramework (contextual)

• Using web services (Add Web/Service Reference)

implement data access (26%)

Page 29: Cert01   70-483 - programming in c#

Template designed by

Query and manipulate data and objects by using LINQ

• LINQ (again), in the sql-like syntax

• LINQ-to-everything

implement data access (26%)

Page 30: Cert01   70-483 - programming in c#

Template designed by

Serialize and deserialize data

• Serializators: Binary, XML, DataContract, JSON

• Custom serialization

implement data access (26%)

Page 31: Cert01   70-483 - programming in c#

Template designed by

Store data in and retrieve data from collections

• Dictionaries, dictionaries, dictionaries

• Collections’ interfaces

• Typed vs. non-typed

implement data access (26%)

Page 32: Cert01   70-483 - programming in c#

Template designed by

cert-path

70-483 – Programming in C#

Roberto Freato – Freelance IT Consultant & Trainer

MVP on Windows Azure, Microsoft Certified Trainer

[email protected] - @childotg

Template designed by