Upload
calum
View
47
Download
3
Embed Size (px)
DESCRIPTION
.NET 4.0 - Š ta je novo ?. Level 200 - 300. Ivan Pavlović, Hive Studios [email protected] www.hive-studios.com MVP For Visual C#, Certified ScrumMaster MCSD, MCAD, MCDBA, MCT. Šta je posebno u v4?. CLR 4.0 prvi potpuno novi Framework nakon 2.0 - PowerPoint PPT Presentation
Citation preview
.NET 4.0 - Šta je novo?
Ivan Pavlović, Hive Studios
MVP For Visual C#, Certified ScrumMasterMCSD, MCAD, MCDBA, MCT
Level 200 - 300
Šta je posebno u v4?
.NET 1.0(2002)
.NET 1.1(2003)
.NET 2.0(2005)
.NET 4.0(Sada!)
.NET 3.0(2006)
.NET 3.5(2007)
• CLR 4.0 prvi potpuno novi Framework nakon 2.0• 3.0 je dodao WPF, WCF, WF i CardSpace• 3.5 je dodao LINQ i jezičke novine
Potsetnik: CLR je…
WPF Win Forms DLRASP .
net WCF LINQ …
Base Class Libraries
JIT & NGEN GC Security
ModelException Handling
Loader & Binder
Profiling & Debugging APIs CLR
Agenda
• CLR / Base Class Library– ThreadPool -> Parallel– Side By Side Execution– Dynamic Languages Support– Type Equivalence
• WCF / WF / WPF / EF / MEF– A to nije sve
Type System
• System.Numerics.BigIntiger• System.Numerics.ComplexNumber• System.Device.Location – lng/lat coords• IObservable<T> i IObserver<T>• Stream.CopyTo• INotifyCollectionChanged i
ObservableCollection<T> su prebačeni u Base Class Library
BCL poboljšanja
Parallel Computing with .NET 4
1. System.Threading poboljšanja– Krađa posla– Planinarski algoritmi - optimal no of threads
2. Coordination Data Structures (CDS)System.Collections.Concurrent
3. Task Parallel Library (TPL)4. Parallel LINQ (PLINQ)
Parallel LINQ
Parallel LINQ (PLINQ) minimal impact to existing LINQ code
var q = from p in people where p.Name == queryInfo.Name && p.State == queryInfo.State && p.Year >= yearStart && p.Year <= yearEnd orderby p.Year ascending select p;
.AsParallel()
Parallel ComputingParallel LINQ (PLINQ)
Zašto DLR?
Common Language Runtime
Statically-Typed
VB
RubyPython
Dynamically-Typed
Dynamic Language RuntimeC#
.NET Dynamic Programming
PythonBinder
RubyBinder
COMBinder
JScriptBinder
ObjectBinder
Dynamic Language Runtime
Expression Trees Dynamic Dispatch Call Site Caching
IronPython IronRuby C# VB.NET Others…
DLR Integration
Kompatibilnost sa 2.0, 1.1 i 1.0
• .NET 4.0 gotovo 100% kompatibilan sa 2.0• .NET 4.0 ne preuzima stare app automatski
– Dodajte u config fajl direktivu za prelazak na 4.0• Najbolje je da app koristi verziju .NET-a za koju
je kompajlirana
CLR 2 - Existing Side-By-Side
Host Process (i.e. Outlook)
.NET 2.0
2.0 add-in
3.0
3.5
3.0 add-in
3.5 add-in
1.1 add-in
.NET 1.1
CLR 4 - In-Process Side-By-Side
.NET 2.0.NET 4.0
2.0 add-in
3.0
3.5
Host Process (i.e. Outlook)
3.0 add-in
3.5 add-in
4.0 add-in
Type Equivalence
Interop Assemblies translate between managed code and COM
For each interface, struct, enum, delegate, and member, contains a
managed equivalent with marshalling data
Platform Interop Assemblies
1. Kompajleri upakuju delove Interop biblioteke koju aplikacija zaista i koristi
2. CLR Runtime obezbeđuje da se upakovane definicije tipova smatraju ekvivalentnim
Entity Framework 4.0
• POCO objekti– Praćenje promena
• Spoljni ključevi• Lenjo učitavanje• ...
WCF
• Simplified configuration • REST caching and help page • WS-Discovery (ad hoc, managed)• Routing• Simple byte stream encoding • Windows Workflow services
– Hosting, Correlation
WCF – Hosting bez konfiguracije
Windows Workflow
• Designers (deo .NET-a)• Data Flow
– Argumenti i varijable• Flowchart dijagram• Novi programski model
– WorkflowElement• WCF integracija
WPF
• Data Binding Support for DLR• Visual State Manager (VSM)• Ponovo je napisan Text Rendering• Manji setup paketi - .NET 4.0 Client Profile• Windows 7
– Multitouch, shell integration
WPF 4 Controls
• Većina je prebačena iz – Ribbon– DataGrid– Calendar– DatePicker
Managed Extensibility Framework?
The Managed Extensibility Framework (MEF) is a new library in the .NET Framework that enables greater reuse of applications and
components. Using MEF, .NET applications can make the shift from being statically compiled to
dynamically composed
Ostala predavanja
18.11.2009Srđan Božović – C# 4.0, #B ,12:00Stanko Nikolić - Parallel Computing, #26H ,17:30
19.11.2009Dragoslav Ogar - Entity Framework 4.0 I i II, #31B, 09:00Nenad Jovičić - WCF services with WF in .Net 4, #33C, 12:30
MSForge.NET
Šta je Microsoft Forge?MSForge.net je lokalni web portal i mesto okupljanja svih Windows, SQL Server i .NET fanova, kao i svih onih koji žele da rade sa ovim tehnologijama. MSForge.net daje podršku i omogućava Web prisustvo lokalnim User grupama.
Ko čini Microsoft Forge?MSForge.net okuplja ljude koji se profesionalno ili iz hobija bave Microsoft tehnologijama. Člansto na portalu i u User grupama je besplatno i dobrodošli su svi koji žele da saznaju nešto novo i da svoja znanja podele sa drugima.
Kako Microsoft Forge može da pomognePokretačka ideja koja stoji iza MSForge.net i user grupa je razmena znanja. Odgovore na pitanja možete potražiti kako online (na blogivima ili na forumu) tako i na sastancima User grupa o kojima ćete biti obavešteni putem MSForge portala.
Priključi se!Radu MSForge.net portala i User grupa možete i sami da doprinesete. Deljenjem znanja i iskustava na blogovima ili forumima doprinećete ne samo napretku naše online zajednice, već ćete mnogima omogućiti da unaprede svoja znanja. Ukoliko imate interesantnu ideju za predavanje kontaktirajte moderatora User grupe.
Molimo vas da popunite ankete!Please fill out the evaluations!
Vaše mišljenje čini osnovu sledeće Sinergije i
omogućava nam da oblikujemo sadržaj u skladu
sa Vašim željama.
Svi posetioci koji popune ankete ulaze u nagradnu
igru
Your opinion forms the next Sinergija conference, and it provides us with the means to shape its content to best
suit you.
All attendees that fill out the evaluations are taking part in drawing of special prizes
Ivan PavlovićHive Studios
Hvala