VS 2010 og.net framework 4.0
|
|
- Julius Lorenzen
- 8 år siden
- Visninger:
Transkript
1 VS 2010 og.net framework 4.0 Captator Tlf: Henrik Lykke Nielsen Softwarearkitekt, Microsoft Regional Director for Denmark Mobil: maj 2010 VS 2010 og.net framework 4.0 1
2 Agenda Sprog features i C# 4.0 og VB 10.0 Nyheder i C# (som VB allerede har) Nyheder i VB (som C# allerede har) Generisk co- og kontravarians (nyt i både C# og VB) Den dynamiske type (C#) COM support ExpandoObject, DynamicObject Visual Studio features festivitas.net framework features Diverse framework nyheder Task Parallel Library Visual Studio Versioner maj 2010 VS 2010 og.net framework 4.0 2
3 Visual Studio og.net frameworket En platform i udvikling Juni 2000 Feb 2002 April 2003 Nov 2005 Nov 2006 Nov 2007 April 2010 maj 2010 VS 2010 og.net framework 4.0 3
4 Navngivne argumenter C# Betydningen af et argument kan være uklar Navngivning af argumenter kan hjælpe på dette int result1 = String.Compare("ABC", "abc", true); int result2 = String.Compare("ABC", "abc", ignorecase: true); Kan sendes i vilkårlig orden int result3 = String.Compare(ignoreCase: true, strb: "abc", stra: "ABC"); Kun navngivne argumenter må følge efter et navngivet argument int result4 = String.Compare(strB: "abc", "ABC", ignorecase: true); Kompiler fejl maj 2010 VS 2010 og.net framework 4.0 4
5 Optionelle argumenter C# Ofte bruges overloads til at implementere, at et argument er optionelt string UseOverloads(IEnumerable<string> strings) { return UseOverloads(strings, " "); } string UseOverloads(IEnumerable<string> strings, string delimiter) { /*... */ } Argumenter kan nu være optionelle Defineres ved angivelse af default konstant værdi public static string UseOptional(IEnumerable<string> strings, string delimiter = " ") { /*... */ } maj 2010 VS 2010 og.net framework 4.0 5
6 Optionelle argumenter C# En optional parameter kan udelades følgende kald giver samme resultat string result1 = UseOptional(new string[] { "abc", "123" }, " "); string result2 = UseOptional(new string[] { "abc", "123" }); Alle efterfølgende parametre skal også være defineret som værende optionelle Metoder uden optionelle argumenter foretrækkes ved valg af overload ref og out parametre kan ikke have default værdier maj 2010 VS 2010 og.net framework 4.0 6
7 Automatic properties VB En automatic property er en kompakt måde at definere en property med standard implementation (direkte offentliggørelse af et privat backing-field) Public Property Number42 As Integer = 42 Svarer til den expandede property: Private _number As Integer = 42 Intialisering af propertyen Public Property Number() As Integer Get Return _number End Get Set(ByVal value As Integer) _number = value End Set End Property Expander en automatic property ved at: Stå i linjen lige efter. Skriv get. Tryk Enter. maj 2010 VS 2010 og.net framework 4.0 7
8 Collection initializers VB Allerede eksisterende array initialisering Dim primesarray As Integer() = {2, 3, 5, 7, 11, 13, 17} Collectionen skal implementere System.Collections.Generic.ICollection<T> Kalder Add(T) Dim primtal As New List(Of Integer) From {2, 3, 5, 7, 11, 13, 17} Dim ænder As New List(Of Person) From { New Person() With {.Navn = "Anders And",.Adresse = "Andeby"}, New Person() With {.Navn = "Andersine And",.Adresse = "Andeby"}, New Person() With {.Navn = "Fætter Vims",.Adresse = "Andeby"}} Dim primesarraylist As New ArrayList From {2, 3, 5, 7, 11, 13, 17} Dim værdier = New Dictionary(Of Integer, String) From {{0, "Første"}, {1, "Anden"}} Argument til Add-metoden maj 2010 VS 2010 og.net framework 4.0 8
9 Implicit line continuation VB I mange situationer kan den eksplicitte line continuation character undlades Efter et komma Efter en ( { <%= eller før en )} %> Efter operatorer: & = += <> And Is o.s.v. Efter member qualifiere (.) i de fleste situationer Før og efter query operatorer (LINQ) Efter In i en Foreach statement Efter From i en collection initializer m.m. Embedded expression i en XML literal Dim a, b As Integer Dim tal As Double = System. Math. PI + ( System.Math.E ) maj 2010 VS 2010 og.net framework 4.0 9
10 Multiline lambda udtryk VB Lambda udtryk kan være på flere linjer Dim beregnværdi = Function(a As Double, b As Double, c As Double) As Double Dim resultat As Double resultat = a + b resultat += c Return resultat End Function Dim værdi As Double = beregnværdi(1, 2, 3) Dim gøretellerandet = Sub() Dim resultat As Double resultat = værdi ^ 2 MsgBox(resultat.ToString()) End Sub gøretellerandet() maj 2010 VS 2010 og.net framework
11 Generisk covarians problem i C# 3.0 public string GetNavne(IEnumerable<Person> personer) { foreach (Person p in personer) { /*... */ } } Muligt: IEnumerable<Person> personer = new List<Person> { new Person("Rip"), new Person("Rap") }; string personnavne = GetNavne(personer); Da IEnumerable<Ansat> ikke nedarves fra IEnumerable<Person> giver følgende til gengæld kompilerfejl i C# 3.0 IEnumerable<Ansat> ansatte = new List<Ansat> { new Ansat("Rip"), new Ansat("Rap") }; string ansatnavne = GetNavne(ansatte); Person Ansat covarians Kompiler fejl maj 2010 VS 2010 og.net framework
12 Problematisk array covarians Problematisk eksisterende implementation af array covarians i C# Person[] personarray = new Ansat[10]; Accepterer alle personer personarray[0] = new Ansat("Arne Ansat"); personarray[1] = new Person("Per Person"); personarray[2] = new Kunde("Kurt Kunde"); Runtime fejl personarray er erklæret til at kunne indeholde vilkårlige personer, men det bagvedliggende array accepterer kun ansatte Person Ansat Kunde maj 2010 VS 2010 og.net framework
13 Generisk covarians løsningen i C# 4.0 For at udnytte covarians for et interface skal den generiske type angives med out i interfacet System.Collections.Generic.IEnumerable<out T> må den generiske type T kun indgå i outputværdier System.Collections.Generic.IEnumerator<T> GetEnumerator() Hermed er covarians mulig public string GetNavne(IEnumerable<Person> personer) { foreach (Person p in personer) { /*... */ } } IEnumerable<Ansat> ansatte = new List<Ansat> { new Ansat("Rip"), new Ansat("Rap") }; string ansatnavne = GetNavne(ansatte); covarians maj 2010 VS 2010 og.net framework
14 Generisk kontravarians problem i C# 3.0 int System.Collections.Generic.IComparer<T>.Compare(T x, T y) public int Sammenlign(IComparer<Ansat> comparer, Ansat a1, Ansat a2) { return comparer.compare(a1, a2); } class PersonComparer: IComparer<Person> { int IComparer<Person>.Compare(Person x, Person y) { return x.navn.compareto(y.navn); } } En personcomparer kan sammenligne vilkårlige personer og burde dermed også kunne sammenligne ansatte men ikke i C# 3.0 IComparer<Ansat> ansatcomparer = new AnsatComparer(); int result3 = SammenlignAnsatte(ansatComparer, ansat, ansat); IComparer<Person> personcomparer = new PersonComparer(); int result4 = Sammenlign(personComparer, ansat, ansat); Kompiler fejl Mangelfuld implementation kontravarians maj 2010 VS 2010 og.net framework
15 Generisk kontravarians løsningen i C# 4.0 For at udnytte kontravarians for et interface skal den generiske type angives med in i interfacet System.Collections.Generic.IComparer<in T> må den generiske type T kun indgå i indgående parametre int Compare(T x, T y) Hermed er kontravarians mulig public int Sammenlign(IComparer<Ansat> comparer, Ansat a1, Ansat a2) { return comparer.compare(a1, a2); } int result4 = Sammenlign(personComparer, ansat, ansat); kontravarians maj 2010 VS 2010 og.net framework
16 Generisk co- og kontravarians Kun interfaces og delegates kan benytte generisk co- og kontravarians Overtrædes in og out medfører det kompilerfejl Varians virker kun ved reference typecasts ikke ved boxing Både in og out typer kan være repræsenteret System.Func<in T,out TResult> T bliver kun brugt i indgående parametre TResult bliver kun brugt udgående En propertys type er output-safe hvis der kun er en get-accessor er input-safe, hvis der kun er en set-accessor maj 2010 VS 2010 og.net framework
17 Den dynamiske type C#s dynamiske type kan med fordel bruges, når den konkrete type ikke kendes på kompileringstidspunktet (som ved reflektion) public static T GetPropertyValue<T>(object obj, string propertyname) { PropertyInfo property = obj.gettype().getproperty(propertyname); return (T) property.getvalue(obj, null); } private object GetObject() { return "The Dynamic Duo"; } int len1 = GetString().Length; object text = GetObject(); int len2 = GetPropertyValue<int>(text, "Length"); dynamic d = GetObject(); int len3 = d.length; maj 2010 VS 2010 og.net framework
18 Den dynamiske type dynamic er en C# type, der ikke er underlagt statisk typecheck typen findes ikke på runtime Kald af ikke-eksisterende members vil resultere i run-time fejl (RuntimeBinderException) Kompileres til System.Object dynamic d; d = "The Dynamic Duo"; int len = d.length; d = new Person(); d.navn = "Batman"; string navn = d.navn; d.sayhi(); Tooltip string eksistererej = d.adresse; Runtime fejl maj 2010 VS 2010 og.net framework
19 Den dynamiske type Der er implicit konvertering til en dynamisk type dynamic i1 = 42; Der er implicit konvertering fra en dynamisk type int i2 = i1; Konvertering til en forkert type vil resultere i runtime fejl (RuntimeBinderException) string s = i1; Runtime fejl Hvis et argument eller en parameter til en metode er dynamic, sker overload resolution på run-time maj 2010 VS 2010 og.net framework
20 Den dynamiske type dynamic kan bruges som type for members, lokale variable, parametre i generiske typer etc. var elements = new List<dynamic>(); elements.add(42); dynamic element = elements[0]; System.Type islistofobject = typeof(list<dynamic>); sammen med is og as operatorerne dynamic x1 = 17; int x2 = 42; bool istrue = x1 is dynamic; bool isalsotrue = x1 is int; Vil altid være true hvis x1!= null dynamic is17 = x1 as dynamic; dynamic is42 = x2 as dynamic; maj 2010 VS 2010 og.net framework
21 Den dynamiske type På kompileringstidspunktet ændres typen dynamic til System.Object genereres kode der baseret på kaldsinformationen identificerer operationen samt kalder den På runtimetidspunktet hvis objektet er et COM objekt benyttes IDispatch hvis objektet implementerer IDynamicObject kaldes dette hvis objektet er et almindeligt.net objekt benyttes Microsoft.CSharp.RuntimeBinder til at finde og binde til den korrekte metode hvis metoden ikke kan findes kastes exception maj 2010 VS 2010 og.net framework
22 Den dynamiske type Dynamiske opslag kan ikke finde extension metoder Lambda udtryk kan ikke være argument til metodekald på dynamiske variable public class Person { public void Call(System.Action action) { action(); } } dynamic d = new Person(); d.call(() => MessageBox.Show("I am calling you!")); Kompiler fejl Men det kan en typestærk delegate godt d.call((action)delegate { MessageBox.Show("I am calling you!"); }); maj 2010 VS 2010 og.net framework
23 Den dynamiske type Normalt ikke et godt alternativ hvis man kan arbejde typestærkt Dog kan den bruges, hvis man ønsker at undgå eksplicitte typecasts Giver kortfattet men mere usikker kode Hvis man foreacher over en dynamic, antages den at implementere IEnumerable WPF understøtter databinding til dynamiske objekter Kan bruges ved f.eks. anonyme view klasser maj 2010 VS 2010 og.net framework
24 COM support Microsoft specifikke udvidelser af C# Kald af COM metoder må kalde ref parametre by value (uden at angive ref keywordet i kaldet) Kompileren laver en temporær variabel Kan embedde (linke) anvendte interop typer fra PIAer i klient assemblyen Fylder mindre Versionering/duck-typing COM-metode, der returnerer et object, vil, hvis komponenten linkes (ikke refereres), i stedet returnere dynamic slipper for typecasts maj 2010 VS 2010 og.net framework
25 COM support C# 3.0 understøtter ikke indexed properties var excelapp = new Excel.Application(); Excel.Range targetrange = excelapp.get_range("a1", Type.Missing); Men i C# 4.0 understøttes direkte brug af COM komponenters indexed properties var excelapp = new Excel.Application(); Excel.Range targetrange = excelapp.range["a1"]; Indexed properties understøttes dog ikke generelt i C# maj 2010 VS 2010 og.net framework
26 DLR'en baserer sig på CLR'en CLR: Common Language Runtime Fælles platform for statiske sprog DLR: Dynamic Language Runtime Fælles platform for dynamiske sprog Formål: Understøtte dynamiske sprog i.net Give statiske sprog dynamiske funktioner Hurtigere kald af dynamiske members end ved almindelig reflektion maj 2010 VS 2010 og.net framework
27 Dynamiske sprog baseret på.net IronPython IronRuby C# VB.NET Øvrige Dynamic Language Runtime Expression Trees Dynamic Dispatch Call Site Caching Object Binder JavaScript Binder Python Binder Ruby Binder COM Binder maj 2010 VS 2010 og.net framework
28 ExpandoObject System.Dynamic.ExpandoObject i System.Core.dll Implementerer: IDynamicMetaObjectProvider IDictionary<string,object> IEnumerable<KeyValuePair<String,Object>> INotifyPropertyChanged Properties kan tilføjes, fjernes og enumereres Gemmes i et dictionary Kan bruges som et alternativ til et traditionelt Dictionary maj 2010 VS 2010 og.net framework
29 ExpandoObject Properties kan tilføjes dynamic and = new System.Dynamic.ExpandoObject(); and.navn = "Anders And"; and.alder = 42; and.adresse = "Paradisæblevej 111"; string s = and.navn + " " + and.alder; and.kæreste = new System.Dynamic.ExpandoObject(); and.kæreste.navn = "Andersine And"; and.kæreste.niecer = new List<dynamic>(); and.kæreste.niecer.add(new System.Dynamic.ExpandoObject()); and.kæreste.niecer[0].navn = "Kylle"; and.kæreste.niecer.add(new System.Dynamic.ExpandoObject()); and.kæreste.niecer[1].navn = "Pylle"; and.kæreste.niecer.add(new System.Dynamic.ExpandoObject()); and.kæreste.niecer[2].navn = "Rylle"; int antalniecer = and.kæreste.niecer.count; maj 2010 VS 2010 og.net framework
30 ExpandoObject Properties kan enumereres dynamic expando = new System.Dynamic.ExpandoObject(); string s = ""; foreach (KeyValuePair<string,object> property in (IDictionary<string, object>)expando) { s += property.key + "=" + property.value.tostring(); } Properties kan fjernes ((IDictionary<string, object>)expando).remove("adresse"); maj 2010 VS 2010 og.net framework
31 DynamicObject System.Dynamic.DynamicObject i System.Core.dll Implementerer IDynamicMetaObjectProvider Kan implementere custom memberhåndtering Eksempler på interessante members TryGetMember, TrySetMember TryGetIndex, TrySetIndex TryInvoke, TryInvokeMember GetDynamicMemberNames Bruges af debuggeren, kan bruges af egen kode maj 2010 VS 2010 og.net framework
32 DynamicObject - eksempel DataRowObject: Indpakning af DataRow med property-tilgang til columns string adresse1 = (string) row["adresse"]; Klassisk DataRow string adresse2 = dynarow.adresse; DynamicObject public class DataRowObject : System.Dynamic.DynamicObject { public DataRowObject(System.Data.DataRow row) { _row = row; } private System.Data.DataRow _row; //... DataRowObject System.Data.DataTable table = CreateTable(); System.Data.DataRow row = table.rows[0]; dynamic dynarow = new DataRowObject(row); Klientkode maj 2010 VS 2010 og.net framework
33 DynamicObject - eksempel Property-tilgang til columns dynarow.adresse = "Paradisæblevej 111"; string dynastring = dynarow.id.tostring() + " - " + dynarow.navn; Implementation: Klientkode override bool TrySetMember(SetMemberBinder binder, object value) { _row[binder.name] = value; return true; } DataRowObject override bool TryGetMember(GetMemberBinder binder, out object result) { result = _row[binder.name]; return true; DataRowObject } binder.name kan naturligvis mappes/modificeres maj 2010 VS 2010 og.net framework
34 DynamicObject - eksempel Indexeret-tilgang til columns dynarow[0] = 117; int id1 = dynarow[0]; Klientkode Implementation: override bool TryGetIndex(GetIndexBinder binder, object[] indexes, out object result) { result = _row[(int)indexes[0]]; return true; DataRowObject } override bool TrySetIndex(SetIndexBinder binder, object[] indexes, object value) { _row[index] = value; return true; DataRowObject } indexes type(r) kan varieres og overloades frit maj 2010 VS 2010 og.net framework
35 DynamicObject - eksempel Opremsning af membernavne Skal implementeres for at få debuggersupport override IEnumerable<string> GetDynamicMemberNames() { var names = new System.Collections.Generic.List<string>(); } foreach (System.Data.DataColumn column in _row.table.columns) { names.add(column.columnname); } return names; DataRowObject IEnumerable<string> names = ((DynamicObject)dynaRow).GetDynamicMemberNames() Klientkode maj 2010 VS 2010 og.net framework
36 Start Page Pin og remove recent projects Kan ændres Defineret i XAML: StartPage.xaml, StartPage.csproj i user\documents\visual Studio 10\StartPages maj 2010 VS 2010 og.net framework
37 Call Hierarchy Viser kaldshierarkiet for en member Kald til og fra memberen samt overstyringer af den Kodevindue Detaljer Hierarki maj 2010 VS 2010 og.net framework
38 Navigate To Søger efter symboler udfra delstrenge Finder ikke lokale variable eller namespaces Hvis søgestrengen indeholder uppercase tegn søges casesensitivt Space fungerer som and Akronymsøgning (f.eks. SU) Shortcut: ctrl+, Dobbeltklik eller OK går til symbolet maj 2010 VS 2010 og.net framework
39 Reference Highlighting Valg af symbol highlighter alle forekomster af symbolet i samme fil Næste forekomst: ctrl+shift+pilned Forrige forekomst: ctrl+shift+pilop maj 2010 VS 2010 og.net framework
40 Generate From Usage Kan generere en stub for en type eller konstruktør udfra en anvendelse Kan allerede generere members med parametererklæringer using System; namespace VS2010_DemoerCs { class FirstClass { private int initialvalue; } } public FirstClass(int initialvalue) { // TODO: Complete member initialization this.initialvalue = initialvalue; } public int Value { get; set; } internal void TheMethod(int newvalue, string parameter) { throw new NotImplementedException(); } maj 2010 VS 2010 og.net framework
41 Completion og suggestion modes Skifter imellem de to modes med ctrl+alt+space Completion mode Suggestion mode I completion mode indsættes den valgte identifier ved et identifier-afsluttende-tastetryk I suggestionmode skal der trykkes på tab eller identifieren skal vælges med pilop/pilned maj 2010 VS 2010 og.net framework
42 Intellisense Intellisense Understøtter delstrengs- og akronymfiltrering Box-selection VS2008 feature Et kode-rektangel (box) kan vælges med alt-selektion VS2010 feature Hvis der tastes/pastes ind i en box selektion, erstatter det indsatte det valgte på hver linje (gentages) En box med en bredde på nul karakterer kan bruges til indsættelse (uden at erstatte eksisterende tekst) maj 2010 VS 2010 og.net framework
43 Diverse nye Visual Studio funktioner Vinduer kan flyttes overalt på desktoppen Også til anden monitor Kodevinduer kan zommes med ctrl+mousewheel References dialogen: Den senest valgte tab vises initielt maj 2010 VS 2010 og.net framework
44 Debugging "Hover over"-quickwatch-tooltips kan pinnes Kan kommenteres og flyttes maj 2010 VS 2010 og.net framework
45 BigInteger og Complex System.Numerics.BigInteger (System.Numerics.dll) Vilkårlig stor integer Mange af de sædvanlige matematiske og bitvise operationer Struct, immutable pas på med performance! Konvertering til og fra bytearrays var number = System.Numerics.BigInteger.Pow(42, 117); byte[] bytes = number.tobytearray(); var newnumber = new System.Numerics.BigInteger(bytes); Pas på med ekstern håndtering af byte arrayet (studér formatet!) System.Numerics.Complex (System.Numerics.dll) maj 2010 VS 2010 og.net framework
46 Tuple System.Tuple (mscorlib.dll) Immutable collection med fast størrelse Kan indeholde forskellige stærkt-typede objekter Create factory-metode standard op til 7 elementer var trio = Tuple.Create<int, int, string>(17, 42, "fjel"); int first = trio.item1; trio = new Tuple<int, int, string>(trio.item1, trio.item2, "fejl"); var trio2 = Tuple.Create(17, 42, "fejl"); bool isfalse = trio == trio2; Mere end 7 elementer via nesting var oktet = Tuple.Create<int, int, int, int, int, int, int, Tuple<string, string>> (1, 2, 3, 4, 5, 6, 7, Tuple.Create<string,string>("eight", "nine")); string isnine = oktet.rest.item1.item2; Typeinferens Reference sammenligning maj 2010 VS 2010 og.net framework
47 Diverse nyheder i frameworket Func og Action delegatetyper med op til 16 parametre Nye filsystem enumereringer: (Directory DirectoryInfo).EnumerateDirectories, (Directory DirectoryInfo).EnumerateFiles, Directory.EnumerateFileSystemEntries, DirectoryInfo.EnumerateFileSystemInfos, File.ReadLines <enum>.hasflag metode og Enum.TryParse BindingFlags binding = BindingFlags.Public BindingFlags.Instance; bool istrue = binding.hasflag(bindingflags.instance); bool isfalse = binding.hasflag(bindingflags.static); System.Reflection.BindingFlags result; bool succeeded = Enum.TryParse<BindingFlags>("Public", out result); bool failed = Enum.TryParse<BindingFlags>("Private", out result); maj 2010 VS 2010 og.net framework
48 SortedSet SortedSet Sorteret collection dubletter ignoreres Almindelige collection members Inkluderer mængdeoperationer ExceptWith, GetViewBetween, IntersectWith, IsProperSubsetOf, IsSubsetOf, IsSupersetOf, Overlaps, RemoveWhere, SetEquals, SymmetricExceptWith, UnionWith, Max, Min var mængde = new SortedSet<string>() { "q", "w", "r", "t", "y" }; mængde.add("q"); SortedSet<string> delmængde = mængde.getviewbetween("q", "t"); var mængde2 = new SortedSet<string>() { "t", "y", "k", "m", "æ" }; mængde.intersectwith(mængde2); int is2 = mængde.count; bool istrue = mængde.ispropersubsetof(mængde2); maj 2010 VS 2010 og.net framework
49 Lazy System.Lazy<T> (mscorlib.dll) Implementerer lazy instansiering var dovendyr = new Lazy<Dyr>(); bool isfalse = dovendyr.isvaluecreated; Dyr dyret = dovendyr.value; MessageBox.Show("Dovendyret hedder nu: " + dyret.navn); bool istrue = dovendyr.isvaluecreated; IsValueCreated Lazy Dyr Value Kan fodres med en instansieringsfunktion var dovendyr = new Lazy<Dyr>(() => new Dyr("Ole Lukøje")); maj 2010 VS 2010 og.net framework
50 Task Parallel Library System.Threading, System.Threading.Tasks Tasks håndterer trådallokeringen Asynkron eksekvering Task<string> task = Task<string>.Factory.StartNew(s => GetString(s), "1"); task.continuewith(t => ShowText(task.Result)); Synkroniseringen af tasks eksempel Task<string> task1 = Task<string>.Factory.StartNew(s => GetString(s), "1"); Task<string> task2 = Task<string>.Factory.StartNew(s => GetString(s), "2"); Task.Factory.ContinueWhenAll(new Task[] { task1, task2 }, tasks => { foreach (Task<string> task in tasks) { ShowText(task.Result); } }); maj 2010 VS 2010 og.net framework
51 Parallel-klassen.Invoke kalder en række operationer parallelt Tasks.Parallel.Invoke(() => Calculate(17), () => Calculate(42));.For definerer et antal gennemløb for hver af hvilke, der parallelt kaldes en operation Tasks.Parallel.For(1, 11, (d) => Calculate(d));.ForEach kalder parallelt en operation for hvert element i sourcen (collection etc.) var doubles = new List<double>() { 17, 42 }; Tasks.Parallel.ForEach<double>(doubles, (d) => Calculate(d)); maj 2010 VS 2010 og.net framework
52 Parallel LINQ (PLINQ) Fungerer tilsvarende LINQ to Objects System.Linq.ParallelEnumerable Members (langt de fleste er extension metoder) Aggregate, All, Any, AsEnumerable, AsOrdered, AsParallel, AsSequential, AsUnordered, Average, Cast, Concat, Contains, Count, DefaultIfEmpty, Distinct, ElementAt, ElementAtOrDefault, Empty, Equals, Except, First, FirstOrDefault, ForAll, GetHashCode, GetType, GroupBy, GroupJoin, Intersect, Join, Last, LastOrDefault, LongCount, Max, Min, OfType, OrderBy, OrderByDescending, Range, Repeat, Reverse, Select, SelectMany, SequenceEqual, Single, SingleOrDefault, Skip, SkipWhile, Sum, Take, TakeWhile, ThenBy, ThenByDescending, ToArray, ToDictionary, ToList, ToLookup, ToString, Union, Where, WithCancellation, WithDegreeOfParallelism, WithExecutionMode, WithMergeOptions, Zip maj 2010 VS 2010 og.net framework
53 Parallel LINQ (PLINQ) Man vælger at eksekvere queries parallelt var numbers = Enumerable.Range(17, 42); var query2 = from number in numbers.asparallel() where IsEven(number) select number; PLINQ bruger som default alle processorer WithDegreeOfParallelism kan begrænse antallet ForAll har tilknyttet en continuation til hvert element string s = ""; var numbers = Enumerable.Range(17, 42); var query = from number in numbers.asparallel() where IsEven(number) select number; query.forall((item) => s+= item.tostring() + " "); maj 2010 VS 2010 og.net framework
54 IntelliTrace UML Modeling Architecture Explorer Logical Class Designer Load Testing UI Test Automation Performance Profiling Code Coverage Database Change Mgmt Database Unit Testing Silverlight Tools SharePoint Development Web Development Generate from Usage New WPF Editor Test and Lab Manager Test Case Management Manual Testing Test Record & Playback Layer Diagram Web Testing Test Impact Analysis Static Code Analysis Code Metrics Database Deployment Test Data Generation Multi-core Development Cloud Development Windows Development Office Development Customizable IDE maj 2010 VS 2010 og.net framework
55 IntelliTrace "Baglæns debugging" under almindelig debugging Debugging i gemte TraceDebugging filer (.tdlog-filer) maj 2010 VS 2010 og.net framework
56 Hvilke yderligere nyheder er der? Visual Studio Team System TFS MEF Code contracts Memorymapped files ClickOnce, WCF og WF ASP.NET WPF Office VS add-ins Silverlight designer Entity Frameworket... samt sikkert en hel masse andet... maj 2010 VS 2010 og.net framework
57 Spørgsmål nyheder, artikler, information,... maj 2010 VS 2010 og.net framework
Overblik over udviklingen af.net frameworket. - et kig på de vigtigste nyheder i de seneste versioner
Overblik over udviklingen af.net frameworket - et kig på de vigtigste nyheder i de seneste versioner Captator Tlf: 8620 4242 www.captator.dk Henrik Lykke Nielsen Softwarearkitekt, Microsoft Regional Director
Læs mereLINQ for Objekter med C#
Denne guide er oprindeligt udgivet på Eksperten.dk LINQ for Objekter med C# LINQ er den store nye teknologi med.net 3.5. Der er i virkeligheden tale om en familie af teknologier som deler et fælles fundament
Læs mere.NET 4.0 og C# 4.0. Denne artikel beskriver nogle af de nye features i.net 4.0 og C# 4.0. Den forudsætter et vist kendskab til.net og C#.
Denne guide er oprindeligt udgivet på Eksperten.dk.NET 4.0 og C# 4.0 Denne artikel beskriver nogle af de nye features i.net 4.0 og C# 4.0. Den forudsætter et vist kendskab til.net og C#. Skrevet den 14.
Læs mereMapBasic &.NET interaktion. MapBasic.NET. Jakob Lanstorp IT konsulent COWI. Odense 23. Juni 2011. 1 8 jun 2011 MapBasic &.
MapBasic &.NET interaktion MapBasic.NET Jakob Lanstorp IT konsulent COWI Odense 23. Juni 2011 1 MapBasic &.NET interaktion Erfaring med MapBasic.NET / Visual Studio Anden programmering 2 Program Hurtig
Læs mereI denne artikel vil vi bruge en User klasse som vi så vil gruppere på forskellige måder.
Denne guide er oprindeligt udgivet på Eksperten.dk Collections i.net Når du kigger i namespacet System.Collections finder du over 10 forskellige klasser. At vælge den rigtige til netop din applikations
Læs mereSWC eksamens-spørgsmål. Oversigt
SWC eksamens-spørgsmål Oversigt #1 Typer og variable #2 Aritmetik og logik #3 Klasser (definition, objekter) #4 Klasser (metoder) #5 Klasser (nedarvning, polymorfi) #6 Conditional statements #7 Repetition
Læs mereUdvikling af DOTNET applikationer til MicroStation i C#
Udvikling af DOTNET applikationer til MicroStation i C# Praktiske tips for at komme i gang. Gunnar Jul Jensen, Cowi Hvorfor nu det? Mdl og Vba kan det hele Fordelene er : udviklingsmiljøet er eksternt
Læs mereDvs. at give dit program muligheden for at loade og bruge plugins som andre har lavet.
Denne guide er oprindeligt udgivet på Eksperten.dk Refleksion med.net Refleksion bruges til at undersøge klasser på runtime tidspunktet. Se hvordan du f.eks. loader en klasse fra en DLL, gennemkigger dens
Læs mereSoftware Construction 1. semester (SWC) januar 2014 Spørgsmål 1
Spørgsmål 1 Grundlæggende objektorienterede begreber o Klasse (class) o Objekt (object) o Metode (method), herunder return type og parametre o Instansvariable (instance variables) & egenskaber (properties),
Læs mereMETODER ARV KLASSER. Grundlæggende programmering Lektion 5
METODER KLASSER ARV Grundlæggende programmering Lektion 5 1 METODER Sekvenser af kode om samme emne 2 REPETITION Række af statements der udfører en handling Mindst én metode der hedder main Forskellen
Læs mereDatabase for udviklere. Jan Lund Madsen PBS10107
Database for udviklere Jan Lund Madsen PBS10107 Indhold LINQ... 3 LINQ to SQL og Arkitektur... 3 O/R designere... 5 LINQ Den store introduktion med.net 3.5 er uden tvivl LINQ(udtales link): Language-INtegrated
Læs mereAAU, Programmering i Java Intern skriftlig prøve 18. maj 2007
AAU, Programmering i Java Intern skriftlig prøve 18. maj 2007 Opgavebesvarelsen skal afleveres som enten en printerudskrift eller som et passende dokument sendt via email til fjj@noea.dk. Besvarelsen skal
Læs mereDatalogi OB, Efterår 2002 OH er, forelæsning 10/ Klasser og nedarvning
Datalogi OB, Efterår 2002 OH er, forelæsning 10/9-2002 Klasser og nedarvning Hvad er formålet? Typer, generisk kode, typeparameterisering Kritisk kig på, hvordan man gør i Java. Eftermiddagens opgave:
Læs mereF# - hvorfor, hvordan og til hvad? Rune Ibsen Jyske Bank
F# - hvorfor, hvordan og til hvad? Rune Ibsen Jyske Bank 03-10-2018 Rune Ibsen Softwareudvikling Seniorkonsulent Mentoring 10 konsulenter F# Programmeringssprog som oversættes til.net Functional-first,
Læs mereSoftware Construction 1 semester (SWC) Spørgsmål 1
Spørgsmål 1 Objekter #1 Giv en kort præsentation af begrebet objekt, samt hvorledes du erklærer(declare), opretter(create) og bruger objekter Du kan beskrive o Datatyper o Variable / Instans variable /
Læs mereTredjepart webservices
Tredjepart webservices 4. juni 2015 USS Dok. Klik her for at angive tekst. 1/12 Indholdsfortegnelse Introduktion... 3 Miljøer... 3 Adgang... 3 API kald... 4 GET: /authorizations... 4 Input 4 Output 4 Output
Læs mereHvorfor skal vi bruge objekt orienteret databaser?
OODBMS Vs. RDBMS 1 Indholdsfortegnelse Hvorfor skal vi bruge objekt orienteret databaser?... 3 OODBMS i erhvervslivet... 4 Bagsiden af medaljen... 5 OODBMS i praksis... 6 Konklusion... 8 2 Hvorfor skal
Læs merePlugin-arkitektur med.net
Denne guide er oprindeligt udgivet på Eksperten.dk Plugin-arkitektur med.net Denne artikel viser hvordan du kan lave en plugin-arkitektur i dit program. Gør det muligt for andre at skrive udvidelser til
Læs mereKlasser og nedarvning
Datalogi C, Efterår 2004 OH er, forelæsning 21/9-2004 Klasser og nedarvning Hvad er formålet? Typer, generisk kode, typeparameterisering Kritisk kig på, hvordan man gør i Java. Opgaven til senere: Generalisere
Læs mereAbstrakte datatyper C#-version
Note til Programmeringsteknologi Akademiuddannelsen i Informationsteknologi Abstrakte datatyper C#-version Finn Nordbjerg 1/9 Abstrakte Datatyper Denne note introducerer kort begrebet abstrakt datatype
Læs mereProgrammering for begyndere Lektion 2. Opsamling mm
Lektion 2 Opsamling mm God tone Der er indlagt spørge sessioner Lektion 2 - Agenda Programmering for Lidt ændringer til teknikken, herunder hvordan du genser en lektion Lidt generelle tilbagemeldinger
Læs mereForelæsning Uge 3 Mandag
Forelæsning Uge 3 Mandag Niveauer af programbeskrivelser Statiske / dynamiske beskrivelser ArrayList Collection med variabelt antal elementer Der er mange andre Collection typer (se Collection interfacet
Læs mereAarhus Universitet, Science and Technology, Computer Science. Exam. Wednesday 27 June 2018, 9:00-11:00
Page 1/12 Aarhus Universitet, Science and Technology, Computer Science Exam Wednesday 27 June 2018, 9:00-11:00 Allowed aid: None The exam questions are answered on the problem statement that is handed
Læs mereKlasser og objekter. (Afsnit i manualen)
Klasser og objekter (Afsnit 4 + 5 i manualen) Grundbegreber Klasser og objekter beskrivelse oprettelse Attributter og metoder tilstand opførsel Indkapsling afskærmning datarepræsentationsuafhængighed Klasser
Læs mereLær Python dag 1 - modul 1
Lær Python dag 1 - modul 1 Introduktion, basis python Steffen Berg Klenow Jonas Bamse Andersen Syddansk Universitet Indhold 1. Velkommen 2. Programmering i python 3. Typer, variabler og udtryk 1 Velkommen
Læs mereLØKKER METODER C S HISTORIE. Grundlæggende programmering Lektion 4
LØKKER METODER C S HISTORIE Grundlæggende programmering Lektion 4 1 LEKTIER UML struktur diagrammer om biler 2 OPERATORER Syntaks til at udføre forskellige beregninger og handlinger Booleans og hvorfor
Læs mere.NET 4.5 og C# 5.0. Denne artikel beskriver nogle af de nye features i.net 4.5 og C# 5.0. Den forudsætter et vist kendskab til.net og C#.
Denne guide er oprindeligt udgivet på Eksperten.dk.NET 4.5 og C# 5.0 Denne artikel beskriver nogle af de nye features i.net 4.5 og C# 5.0. Den forudsætter et vist kendskab til.net og C#. Skrevet den 11.
Læs mereVÆR EFFEKTIV SOM SAS PROGRAMMØR MED SAS ENTERPRISE GUIDE 7.12 GEORG MORSING
VÆR EFFEKTIV SOM SAS PROGRAMMØR MED SAS ENTERPRISE GUIDE 7.12 GEORG MORSING Copyr i g ht 2013, SAS Ins titut e Inc. All rights res er ve d. Livet som SAS-programmør er blevet lettere med SAS Enterprise
Læs mereKapitel 1 I gang med C#
Kapitel 1 I gang med C# Vi skal starte med at oprette et meget simpelt program, så du kan se hvad der ligger bag et C# projekt. Når du er færdig med dette kapitel vil du have lært: Hvordan du opretter
Læs mereThe Missing LINQ. - og relaterede features. VB version
The Missing LINQ - og relaterede features VB version Henrik Lykke Nielsen / Captator www.captator.dk Softwarearkitekt, Microsoft Regional Director for Denmark lykke@captator.dk +45 2237 3311 twitter.com/dothenrik
Læs mereMicrosoft Dynamics CRM 2013
Microsoft Dynamics CRM 2013 Dashboard, PowerPivot og PowerView CRM User Group Denmark www.easyconsult.dk Præsentation Henrik Jensen Microsoft Dynamics CRM-arkitekt hj@easyconsult.dk Arbejdet med CRM-systemer
Læs mereIntegrationsmanual. Anvendelse af webservice til kursusoversigt i Campus. Brugervejledning til udviklere
Integrationsmanual Anvendelse af webservice til kursusoversigt i Campus Brugervejledning til udviklere Moderniseringsstyrelsen Webservice manual til udviklere 2016 1 1. Indholdsfortegnelse Nyt kapitel
Læs mereEksamens spørgsmål Software Construction. Objekter. Spørgsmål 1: Januar Giv en beskrivelse af Objekt-begrebet og deres brug
Spørgsmål 1: Objekter Giv en beskrivelse af Objekt-begrebet og deres brug Under eksaminationen forventes du at forklare: Hvad er en type og en variabel? Hvordan erklæres en variabel? Hvad forstås ved en
Læs mereSkrevet den 18. Feb 2010 af arne_v I kategorien Programmering / Visual Basic.NET
Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til VB.NET og ADO.NET. Der findes en tilsvarende artikel
Læs mereCodeDOM - Dynamisk generering og kompilering af kode
Denne guide er oprindeligt udgivet på Eksperten.dk CodeDOM - Dynamisk generering og kompilering af kode Med CodeDOM kan man på runtime generere kode, kompilere det og derefter afvikle det. I denne artikel
Læs mereParameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET.
Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Der findes en tilsvarende artikel med
Læs mereFra idé til virkelig med Azure Mobile Services
Fra idé til virkelig med Azure Mobile Services Niels Ladegaard Beck Holion nlb@holion.dk @nielslbeck Windows Developers in Denmark Azure App Service Mobile App Introduktion til Azure Mobile Services Platform
Læs mereDesign by Contract Bertrand Meyer Design and Programming by Contract. Oversigt. Prædikater
Design by Contract Bertrand Meyer 1986 Design and Programming by Contract Michael R. Hansen & Anne Haxthausen mrh@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark Design
Læs mereForelæsning Uge 2 Torsdag
Forelæsning Uge 2 Torsdag Java syntax og style guide Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Brug
Læs mereIntroduction til.net remoting i VB.NET
Denne guide er oprindeligt udgivet på Eksperten.dk Introduction til.net remoting i VB.NET Denne artikel beskriver teorien bag.net remoting og viser nogle simple kode eksempler i VB.NET. Den forudsætter
Læs mereUniversity of Southern Denmark Syddansk Universitet. DM502 Forelæsning 4
DM502 Forelæsning 4 Flere kontrolstrukturer for-løkke switch-case Metoder Indhold Arrays og sortering af arrays String-funktioner for-løkke Ofte har man brug for at udføre det samme kode, for en sekvens
Læs mereBlogReader 1.0.0 Af Jonas F. Jensen.
BlogReader 1.0.0 Af Jonas F. Jensen. Indholdsfortegnelse Forord.....3 Hvad er BlogReader?......4 RSS, XML og sematic web......4 Klasse struktur i UML......4 Overordnet opbygning......5 UML diagram over
Læs mereForelæsning Uge 5 Mandag
Forelæsning Uge 5 Mandag Algoritmeskabeloner findone, findall, findnoof, findsumof (sidste mandag) findbest Brug af klassen Collections og interfacet Comparable BlueJ s Debugger Nyttig til at inspicere
Læs mereVærktøjer fra værktøjskassen. Søren Breddam, Stevns Kommune
Værktøjer fra værktøjskassen Søren Breddam, Stevns Kommune sb@stevns.dk 1stevns kommune Mapbasic i Stevns Kommune Data Kørsel af planlagte opgaver, så data altid er opdaterede. Logfil til overvågning Dagligt
Læs mereDatabaseadgang fra Java
Databaseadgang fra Java Grundlæggende Programmering med Projekt Peter Sestoft Fredag 2007-11-23 Relationsdatabasesystemer Der er mange databaseservere Microsoft Access del af Microsoft Office MySQL god,
Læs mereb) Udvid din implementation af forme til at understøtte.equals. To objekter af samme form er ens hvis de har samme værdier i felterne.
Exercise 1: Opgave 9.1 på CodeJudge. a) Lav klasserne Cirkel, Rektangel og Kvadrat, som implementerer vedhæftede interface From.java (se CodeJudge). Lav Rektangel før du laver Kvadrat. Kan du bruge nedarvning
Læs mereUniversity of Southern Denmark Syddansk Universitet. DM502 Forelæsning 3
DM502 Forelæsning 3 Indlæsning fra tastatur Udskrift til skærm Repetition Beregning af middelværdi Gentagelse med stop-betingelse (while) Heltalsdivision Division med nul Type-casting ( (double) ) Betinget
Læs mereSAS USER FORUM DENMARK 2017 USER FORUM. Rune Nordtorp
SAS USER FORUM USER FORUM Rune Nordtorp Agenda Logning Audit logning Og hvorfor er det lige pludselig blevet vigtigt Logning i SAS -platformen Ressource Inventory Model Introduktion til opsætning af logning
Læs mereBACK-END OG DATA: ADMINISTRATION HVAD ER DE NYE MULIGHEDER MED VERSION 7.1? STEFFEN BILLE RANNES, 4. FEBRUAR 2015
BACK-END OG DATA: ADMINISTRATION HVAD ER DE NYE MULIGHEDER MED VERSION 7.1? STEFFEN BILLE RANNES, 4. FEBRUAR 2015 SAS VISUAL ANALYTICS 7.1 ADMINISTRATOR Mulighed for at udføre handlinger på flere servere
Læs mereSingleton pattern i C#
Denne guide er oprindeligt udgivet på Eksperten.dk Singleton pattern i C# Denne artikel beskriver Singleton pattern og implementation i C#. Den forudsætter kendskab til C# men ikke til Singleton. Der er
Læs mereEksempel: et ordresystem note 5 Lagdeling s. 1
Eksempel: et ordresystem note 5 Lagdeling s. 1 Eksempel: et ordre-system NiceHair er et firma, som sælger udstyr, inventar og frisørartikler til frisørsaloner over hele landet. Det er ejet af et ægtepar
Læs mereVA 7.4 Tips og Tricks. Torben Skov
VA 7.4 Tips og Tricks Torben Skov Hjælp din bruger Sektion i precision mode Billed har link til info vindue (Dokumentation) Billed med info icon indsat Billede har link til info vindue (Dokumentation)
Læs mereModern Concurrency Abstractions for C#
Modern Concurrency Abstractions for C# Nick Benton Luca Cardelli Cédric Fournet Presenter: Henrik Kragh-Hansen September 27, 2007 Motivation for concurrency Forbedring af concurrency Baggrundsinformation
Læs mereOrCAD Capture TCL IDE med Eclipse
OrCAD Capture TCL IDE med Eclipse OrCAD Capture TCL er et script sprog til at lave applikationer til OrCAD Capture. Eclipse er et gratis udviklingsmiljø med debug muligheder. Denne guide hjælper med at
Læs mereForelæsning Uge 4 Mandag
Forelæsning Uge 4 Mandag Algoritmeskabeloner Kan (ved simple tilretningerne) bruges til at implementere metoder, der gennemsøger en arrayliste (eller anden objektsamling) og finder objekter, der opfylder
Læs mereIndhold. Senest opdateret:03. september 2013. Side 1 af 8
Indhold Introduktion... 2 Scenarier hvor API et kan benyttes... 2 Scenarie 1 Integration til lagerhotel... 2 Scenarie 2 Integration til økonomi system... 2 API Modeller... 2 Webshop2 API Model v1... 3
Læs mereIndhold. Senest opdateret : 30. juli 2010. Side 1 af 5
Indhold Introduktion... 2 Scenarier hvor API et kan benyttes... 2 Scenarie 1 Integration til lagerhotel... 2 Scenarie 2 Integration til økonomi system... 2 Webshop2 API Model... 3 Brugen af API et... 4
Læs mereTidligere gik denne i øvrigt under navnet DLINQ for Database LINQ, og man kan finde masse materiale om emnet under dette navn på Internettet.
Denne guide er oprindeligt udgivet på Eksperten.dk LINQ for SQL med C# LINQ for SQL er en af de nye teknologier med.net 3.5. Den gør det muligt at skrive (typesikre!) database søgninger direkte i programkoden
Læs mereTest med NUnit. Denne artikel introducerer NUnit. Den forklarer ideen med NUnit. Og den viser hvordan man konkret bruger det.
Denne guide er oprindeligt udgivet på Eksperten.dk Test med NUnit Denne artikel introducerer NUnit. Den forklarer ideen med NUnit. Og den viser hvordan man konkret bruger det. Den forudsætter kendskab
Læs mere#AlleKanKode. Lektion 2 - Konstanter og Variabler
#AlleKanKode Lektion 2 - Konstanter og Variabler Disclaimer / Ansvarsfraskrivelse Alt du deler og siger mm bliver optaget. Lad være med at dele privat oplysninger, adgangskoder, kreditkort oplysninger
Læs mereSpecialeforsvar: Fundamentet for et fleksibelt container bibliotek
Specialeforsvar: Fundamentet for et fleksibelt container bibliotek Foundations of an adaptable container library Bo Simonsen Datalogisk Institut, Københavns Universitet Denne præsentation, afhandlingen,
Læs mereUgeseddel 4 1. marts - 8. marts
Ugeseddel 4 1. marts - 8. marts Læs følgende sider i kapitel 6 i lærebogen: s. 233 258 og s. 291 317 (afsnit 6.3 overspringes). Begynd at overveje, hvad afleveringsopgaven skal omhandle. Læs vejledningen,
Læs mereForelæsning Uge 3 Mandag
Forelæsning Uge 3 Mandag ArrayList Collection (samling af objekter) med variabelt antal elementer Der er mange andre Collection typer (se Collection interfacet i JavaDoc) MusicOrganizer projektet Eksempel
Læs mereNintex Workflow UK/DK
Nintex Workflow UK/DK Når Nintex Workflows anvendes i et Dansk sproget SharePoint miljø, er der lidt forskel på hvad de forskellige elementer kaldes, såvel som rækkefølgen på disse. Noget er oversat, noget
Læs mereclass subklasse-navn extends superklasse-navn { } NorwaySpruce har superklassen Spruce, som igen har superklassen Tree.
Programmering 1999 Forelæsning 11, tirsdag 5. oktober 1999 Oversigt Klasse-hierarkier: superklasser og subklasser Nedarvning Polymorfi Programmering 1999 KVL Side 11-1 Hierarkier En klasse repræsenterer
Læs mereLektion 6. Grundlæggende programmering i VR
Lektion 6 Grundlæggende programmering i VR Plan for i dag Simpelt FPS Triggerzones og animationer C# og objekt orienteret programmering Interfaces Generics Google Cardboard Video om VRs fremtid App til
Læs mereForelæsning Uge 2 Mandag
Forelæsning Uge 2 Mandag Sætninger Simple sætninger (assignment, interne og eksterne metodekald) Sammensatte sætninger (blok, selektion, gentagelse) Udtryk og operatorer Java syntax og style guide Afleveringsopgave:
Læs mereProgram Dokumentation PC Software Skrevet af. Gruppen. Version 1.0
Program Dokumentation PC Software Skrevet af Gruppen. Version 1.0 Indholds fortegnelse 1. INDLEDNING...3 1.1. FORMÅL...3 1.2. REFERENCER...3 1.3. VERSIONSHISTORIE...3 1.4. DEFINITIONER...3 1.5. DOKUMENTATIONENS
Læs mereEG Data Inform. Byggebasen. WCF og webservices. Jens Karsø
EG Data Inform Byggebasen WCF og webservices Jens Karsø 10 Indholdsfortegnelse Byggebasen Services indledning... 2 Målsætning... 2 Valg af teknologier... 3 Kommunikationsmodel for byggebasen... 3 Services.byggebasen.dk...
Læs mereA Profile for Safety Critical Java
A Profile for Safety Critical Java Martin Schoeberl Hans Søndergaard Bent Thomsen Anders P. Ravn Præsenteret af: Henrik Kragh-Hansen November 8, 2007 Forfatterne Martin Schoeberl Udvikler af JOP processoren
Læs mereSWC Elementer i klassedefinition
SWC Elementer i klassedefinition Indhold Eksempel... 2 Karakteristika for en klasse... 3 Karakteristika for et instance field... 4 Karakteristika for en constructor... 5 Karakteristika for en property...
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2016 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 29. februar, 2016 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereHvordan vælger jeg dokumentprofilen?
Hvordan vælger jeg dokumentprofilen? Valget af OIOUBL profil i en konkret dokumentudveksling vil bl.a. afhænge af, hvilke OIOUBL profiler den anden part i udvekslingen understøtter. Et konkret eksempel
Læs mereInstallations guide Saxo ERPTrader. Microsoft Dynamics NAV 2009 / 2013 / 2013R2
Installations guide Saxo ERPTrader Microsoft Dynamics NAV 2009 / 2013 / 2013R2 Indhold Introduktion...3 Forudsætninger...3 Software krav...3 Installer MSI pakken...4 Importer Saxo ERPTrader objekterne...5
Læs mereDAXIF# - Delegate Automated Xrm Installation Framework. Delegate A/S
DAXIF# - Delegate Automated Xrm Installation Framework Delegate A/S Agenda Delegate A/S DAXIF# Kun et programmeringssprog Type stærke script (og selvdokumenterende) filer Unit tests afvikles før assembly
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 20. marts, 2019 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereInstallation og Drift. Aplanner for Windows Systemer Version 8.15.12
Installation og Drift Aplanner for Windows Systemer Version 8.15.12 Aplanner for Windows løsninger Anbefalet driftsopsætning Cloud løsning med database hos PlanAHead Alle brugere, der administrer vagtplaner
Læs mereATTRIBUTES MULTITHREADING DYNAMIC PROGRAMMING. Grundlæggende programmering Lektion 11
ATTRIBUTES DYNAMIC PROGRAMMING MULTITHREADING Grundlæggende programmering Lektion 11 1 ATTRIBUTES Information om adfærd 2 ATTRIBUTES En attribut er en deklarativ tag, der bruges til at formidle information
Læs mereArkitektur principper og design mønstre til realisering af enterprise applikationer baseret på rige domænemodeller (og.net)
Arkitektur principper og design mønstre til realisering af enterprise applikationer baseret på rige domænemodeller (og.net) Kim Harding Christensen EOS A/S Margrethepladsen 3 8000 Århus TLF: 8732 8787
Læs mereMS Visual Studio Basic 2010. En kort vejledning
Du kan hente programmet gratis her: MS Visual Studio Basic 2010 Express http://www.microsoft.com/visualstudio/eng/downloads#d-2010-express Tryk på Install Now og følg vejledningen. Indholdsfortegnelse
Læs mereDokumentering af umbraco artikeleksport:
Dokumentering af umbraco artikeleksport: Lav en artikel side 2-3. Installationsguide side 3-5. Opsættelse af databasen og web.config side 5-8. Umbraco: templates side 8. Umbraco: borger.dk tab side 8.
Læs mereModerne SAS-programmering på webben med SAS Studio. Georg Morsing SAS Institute
Moderne SAS-programmering på webben med SAS Studio Georg Morsing SAS Institute SAS-programmering med SAS Display Manager 1985 2015 Den nye SAS program editor i SAS Enterprise Guide August 2010 SAS Enterprise
Læs mereDesign by Contract. Design and Programming by Contract. Oversigt. Prædikater
Design by Contract Design and Programming by Contract Anne Haxthausen ah@imm.dtu.dk Informatics and Mathematical Modelling Technical University of Denmark Design by Contract er en teknik til at specificere
Læs mere.NET 3.5 og C# 3.0. Denne artikel viser hvordan man kan bruge nogle af de nye features i.net 3.5 og C# 3.0. Det er ikke en komplet oversigt.
Denne guide er oprindeligt udgivet på Eksperten.dk.NET 3.5 og C# 3.0 Denne artikel viser hvordan man kan bruge nogle af de nye features i.net 3.5 og C# 3.0. Det er ikke en komplet oversigt. Den forudsætter
Læs mereMsSQL: Basal performance tuning, part 1
Denne guide er oprindeligt udgivet på Eksperten.dk MsSQL: Basal performance tuning, part 1 Hvordan man skriver "God SQL" for bedre performance. Skrevet den 03. Feb 2009 af trer I kategorien Databaser /
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2018 Projekt, del II Institut for matematik og datalogi Syddansk Universitet 13. marts, 2018 Dette projekt udleveres i tre dele. Hver del har sin deadline, således
Læs mereInstallation og Drift. Aplanner for Windows Systemer Version 8.15
Installation og Drift Aplanner for Windows Systemer Version 8.15 Aplanner for Windows løsninger Tekniske forudsætninger Krav vedr. SQL Server SQL Server: SQL Server 2008 Express, SQL Server 2008 R2 eller
Læs mereOprettelse af Titelblok i Capture og Capture CIS
e-service Titelblok i OrCAD Capture og Capture CIS Side 1 af 11 Oprettelse af Titelblok i Capture og Capture CIS Note skrevet af : Nordcad Systems Technical Support Revision : April 2003, Release 14.2/9.2.3,
Læs mereStudiepraktik. Thomas Bøgholm Mikkel Hansen Jacob Elefsen
Studiepraktik Thomas Bøgholm boegholm@cs.aau.dk Mikkel Hansen mhan@cs.aau.dk Jacob Elefsen jelefs12@student.aau.dk 1 Studiepraktik -- program Program onsdag 10.00 10.15 Registrering af fremmøde og gennemgang
Læs mereSpeciale. Evaluering af Java til udvikling af indlejrede realtidssystemer ved brug af en eksisterende Java Optimized Processor (JOP)
Speciale Evaluering af Java til udvikling af indlejrede realtidssystemer ved brug af en eksisterende Java Optimized Processor (JOP) Speciale efterår 2005 Teknisk Informationsteknologi Jan Lauritzen & Mads
Læs mereDM507 Algoritmer og datastrukturer
DM507 Algoritmer og datastrukturer Forår 2013 Projekt, del I Institut for matematik og datalogi Syddansk Universitet 5. marts, 2013 Dette projekt udleveres i to dele. Hver del har sin deadline, således
Læs mereHvad er Objekter - Programmering
Denne guide er oprindeligt udgivet på Eksperten.dk Hvad er Objekter - Programmering En rigtig god gennemgang af hvad objekter er! Hvordan de oprettes og anvendes! Det er helt klart til nybegyndere, som
Læs mereForelæsning Uge 3 Mandag
Forelæsning Uge 3 Mandag ArrayList klassen Gør det let at lave en objektsamling (collection) med et variabelt antal elementer Der er mange andre slags objektsamlinger (se Collection interfacet i JavaDoc)
Læs mereDANMARKS TEKNISKE UNIVERSITET
DANMARKS TEKNISKE UNIVERSITET Skriftlig prøve, 14. december 2018, 4 timer Side 1 af 18 Kursus navn: 02101 Indledende Programmering Kursus : 02101 Tilladte hjælpemidler: Ikke-digitale skriftlige hjælpemidler
Læs mereKursusarbejde 3 Grundlæggende Programmering
Kursusarbejde 3 Grundlæggende Programmering Arne Jørgensen, 300473-2919 klasse dm032-1a 21. november 2003 Indhold 1. Kode 2 1.1. forestillinger.h............................................. 2 1.2. forestillinger.cc.............................................
Læs merePolymorfi. Arv (inheritance) Abstrakte klasser, substitutionsprincippet, overriding, statisk og dynamisk type. Coercion
Polymorfi Arv (inheritance) Abstrakte klasser, substitutionsprincippet, overriding, statisk og dynamisk type Coercion Tvangskonvertering (forfremmelse og begrænsning) Oversigt Abstrakt klasse abstrakt
Læs mereEn Kort Introduktion til Oracle
En Kort Introduktion til Oracle Henrik Bulskov 12. februar 2001 bulskov@ruc.dk 1 Start SQL*Plus... 1 1.1 TELNET... 1 1.2 WINDOWS SQL PLUS... 2 2 Kør et SQL-script... 3 3 Hjælp i SQL*Plus... 3 4 Editering
Læs mereIndholdsfortegnelse PSpice modul 3. Forudsætninger. Forberedelse til øvelser
Indholdsfortegnelse PSpice modul 3 Model Editor, opret diode ud fra model fundet på internettet.... 2 Parametrisk Analyse... 6 Ekstra - Parametrisk analyse på diode parameter... 9 Forudsætninger For at
Læs mereKapitel 6 Events i C#
Kapitel 6 i C# Når vi snakker programmering er en Event når der aktiveres specielt indbygget kode. Der sker en hændelse (event). Man siger at eventet bliver udført. De events vi skal gennemgå i dette kapitel
Læs mereKlasser og Objekter i Python. Uge 46 Learning Python: kap 15-16, 19-22.
Klasser og Objekter i Python Uge 46 Learning Python: kap 15-16, 19-22. Klasser og objekter En klasse beskriver en klump af samhørende funktioner og variable En klasse er en beskrivelse. En kage form Klassens
Læs mere