c# 4.0 new features - innova

22
4.0 ile Gelen Yenilikler Selim ŞENYURT onnected System Developer) a – Uygulama Geliştirme Danışmanı uraksenyurt.com edirtv.com bsenyurt.com witter.com/bsenyurt riendfeed.com/burakselimsenyurt

Upload: burak-selim-senyurt

Post on 19-Jan-2015

161 views

Category:

Documents


1 download

DESCRIPTION

 

TRANSCRIPT

  • 1. C# 4.0 ile Gelen YeniliklerBurak Selim ENYURTMVP(Connected System Developer)Innova Uygulama Gelitirme [email protected]://twitter.com/bsenyurthttp://friendfeed.com/burakselimsenyurt

2. Eitim Plan Workflow Foundation 4.0 Parallel Programming WCF Eco System Windows Server AppFabric(Dublin) C# 4.0 Asp.Net 4.0 (Uur Umutluolu Asp.Net MVP) jQuery (Uur Umutluolu Asp.Net MVP) Asp.Net MVC 2 (Seluk Yavuz) LINQ Nereden, Nasl Dodu... XML ve XLINQ Ado.Net Entity Framework 4.0 3. Bu Eitimin dl 13 Haziran 2010 Pazar Gnhttp://www.partnersinrhyme.com/soundfx/airplanesoundfx.shtml 4. Gndem C# Tarihesi Dynamic vs Static C# 4.0 Yenilikleri Dynamic Olmak Demo (Reflection Tarafnda dynamic, IronPython ileKonumak) DLR(Dynamic Language Runtime) Optional & Named Parameters Demo (Word ile Etkileim) COM Interop zellikleri Demo (Generic Covariance/Contravariance) Co-Contra Variance Generics Soru&Cevap 5. Tarihe CLR 1.0CLR 2.0 CLR 4.0 .Net Framework .Net Framework .Net Framework 4.01.0/1.1 2.0/3.0/3.5 6. Dynamic vs StaticDynamicStaticBilinsizGl(Robust)trlendirme(Implicitly Typed) Rekabet gcDerleme Yokyksek(Performant) (No Compilation) Akll aralar(Tools)Basit ve ksaDaha iyileklenebilirlik(Scale)Ruby, Python, IronPython...C# ,Vb.Net... 7. C# 4.0 Yenilikleri Dynamic (Dinamik olarak trlendirilebilennesneler) Optional ve Named Parametreler Arttrlm COM Interoperability destei CoVariance ContraVariance Generics 8. Dynamic Olmak Static tip kontrolnn atlanp bunun yerine, tipinalma zamannda zmlenmesi(Resolve). Python, Ruby gibi dinamik dillerden gelen nesneler, IDispatch arayz ile ulalabilen COM nesneleri, Reflection ile eriilen standart .Net tipleri, HTML DOM nesneleri 9. Dynamic Olmak arlabilen yeler Metod(Method) zellik(Property) dynamic != var Alan(Field) Indeksleyici(Indexer) Operatr Temsilci ars(Delegate Invocation) Kstlar Dynamic metod arlarnda AnonymousMethod lar parametre olarak aktarlamaz. Dynamic nesneler zerinde LINQ sorgularaltrlamaz. 10. DEMODynamic &IronPython 11. DLR(Dynamic LanguageRuntime) DLR, CLR zerinde host edilennormal bir Assembly dr. System.Core un bir parasdr. Static ve Dynamic diller arasndai birlii salar. .Net Framework 4.0 n birparasdr. IronPyhton, IronRuby, IronScheme(Codeplex) gibi DLR dilleri vardr. C# ve VB.Net gibi dillerden hostedilmeyi salayan programarayzn(API) sunar. dynamic keyword nn alma zaman bileenleri DLR kullanr. 12. Optional & Named Parameters zellike COM nesnelerinin kullanmnda tmparametreleri girme zorunluluunun ortadankalkmas Parametrelere adlar ile istenen sradaeriilebilmesi. Parametreler iin deer verme zorunluluunun Officeortadan kalkmas. Development! 13. DEMOOffice ileEtkileim 14. Optional & Named ParametersEski Stil;Word.Document document=wordApp.Documents.Open(ref filePath, refmissing, ref missing, ref missing, ref missing, ref missing, ref missing, refmissing, ref missing, ref missing, ref missing, ref missing, ref missing, refmissing, ref missing, ref missing);Yeni Stil;wrdApp2.Documents.Open(filePath, ReadOnly: isReadOnly); 15. COM Interop zellikleri Dynamic Import PIA(Primary Interop Assembly) BamszDerlemek Ref hlali(Ommiting Ref)object missing = Missing.Value;wordApp.Documents.Open(ref filePath, ref missing, refmissing, ref missing.....) wordApp.Documents.Open(filePath, Missing.Value, Missing.Value, Missing.Value.....) 16. DEMOGeneric CovarianceGeneric Contravariance 17. Covariance Rectangle Shape List ofList of Shapes Rectangles ShapeRectangle Circle 18. ContravarianceRectangleShapeComprasion of Comprasion of Rectangles Shapes ShapeRectangle Circle 19. Co-Contra Variance GenericsBir geri dn veya parametre tipinin birebirInvarianceistenen tipte olmas.Parametre /dn tipinin tanmlanandan daha altbir tip olarak kullanlabilmesi.CoVarianceA iin A kullanlabilmesiParametre/dn tipinin tanmlanandan daha stbir tip olarak kullanlabilmesi.ContraVarianceA iin A kullanlabilmesi .Net 4.0 ncesinde generic koleksiyonlar invariance yapdadr. Sadece tanmlanan tiple allmaktadr. Ancak .Net 4.0 ile generic tipler CoVariant veya ContraVariant olarak kullanlabilmektedir. 20. Kaynaklar http://channel9.msdn.com/ http://msdn.microsoft.com/en-gb/vcsharp/dd819407.aspx 21. Soru & cevap 22. Hatra