introduction c++ .net advanced c# c# 4 collections algorithms linq c# 3 c# 2 abstraction polymorphism namespaces course office c# syntax cornerstones excel iterators destructors and resource acquisition is initializa c++ references and const references const-ness in c++ advanced creation of instances on the heap and the copies of objects and avoiding copying objects copy constructors controlling the lifetime of an object mutable fields the operators new/delete temporary and anonymous objects const correctness instance- vs. class members new[]/delete[] and placement naming conventions constructors and default constructors concepts of object-orientation: abstraction and en inline member functions restricting access to members unified modeling language (uml) classes constructors specialization and generalization fields simulation of reality methods "is-a" and "has-a" relationship the dependency inversion principle problem of pasta-object-oriented architecture inheritance: generalization – specialization ass the assert() macro translation units name mangling and application binary interfaces (a compile time and link time dependencies with udts modularization using types in size and using types static and dynamic linked libraries internal and external linkage how to reduce compile time dependencies problems with preprocessor macros separate compilation the preprocessor – symbols and macros including and #include guards the one definition rule (odr) type conversion const member functions the stl type std::string the copy-operator= lvalues and c++11 rvalues equality operators comparison operators and equivalence the output operator non-member function operators and friends unified modeling language (uml) basics the substitution principle dealing with specialized behavior overriding and hiding non-public inheritance object slicing and the extra layer of indirection aggregation: whole – part associations pointers basic c-string functions advanced c-strings: buffers a glimpse of the topic "stack versus heap" "geometric" properties of the heap and the stack automatic versus dynamic arrays lost pointers and memory leaks concatenation and formatting dynamic memory and dynamic array allocation integer overflow in memory and integer division mathematical number systems revisited numeric representation of integers in software c/c++ integral conversion in memory the decimal numeral system numeric representation of fractional numbers in so floaty <-> integral conversion and reinterpreta alignment memory representation operators precedence control structures associativity evaluation order constants fundamental types recursion functions separated function definitions pointers to pointers automatic arrays c-strings as arrays and their memory representatio arrays and pointer decay bitwise integral operations introducing cpu registers static versus automatic storage classes encapsulation with classes abstracted types with member functions reflection delegates and events custom attributes object-based and generic collections error handling with exceptions enums assemblies value types and reference types abstract types when to use inheritance sealed types interfaces static and dynamic type of objects how to understand and fix bugs byte order memory representation of arrays and pointer arithm the octal and hexadecimal numeral system the heap: segmentation and "why do programs crash? the teddybear principle array addressing with "cast contact lenses" underflow and channelling incl. examples the stack pointer and the base pointer how variable argument lists work with the stack the static storage class and the data segment function stack frames and the decrementing stack function call stacks c/c++ calling conventions stack overflow the make system abstract types with pure virtual member functions virtual destructors (c++11: the "rule of five") the "rule of three" run time type identification (rtti) and dynamic_ca protected members c++11: explicit overrides and final methods optimization extension methods on ienumerable<t> deferred execution algorithms in c#3 lambda expressions extension methods implicit typing automatically implemented properties object and collection initializers: new ways to in nullable types anonymous methods methods and method groups variance of delegates delegates generic types static classes separate getter/setter property access modifiers dissection of the .net 1 type system tour through other .net programming languages presentation techniques materials: perception and visualization successful presentation getting information and handling sources html5 canvas browser plugins events polling interactivity gui xerox apple terminal mainframe k hosting scripting languages home-brew dynamic dispatch expando objects in c# dynamic objects in javascript dynamic com automation with c# duck typing and consistency dynamic language runtime (dlr) basics dynamic programming in vb and c#4 why dynamic programming > tuple<t generic variance lazy<t> improvements in code generation working with com pitfalls joins and subqueries) tips grouping aggregation associative collections operations on .net's idictionarys comparison and implementation of .net's interfaces generics types in java an interface-based approach the dependency inversion principle (dip) ordered and unordered collections sequential collections – linked lists pattern matching in functional programming languag arrays revisited value and reference semantics of elements size and capacity lists indexed collections a way to categorize collections divide and conquer complexity and o-notation mergesort and quicksort analysis of sorting algorithms selection-sort and insertion-sort algorithmic complexity advanced query expressions (ordering ganzheitliche handlungskompetenz personal impression of the presenter route of a presentation tuples as pseudo collections filling collections with structured data collections abstracting data processing: stack and immutable collections and defense copies producing collection objects empty collections kung fu beyond collections: .net's linq and java's set-like associative collections bst-based implementation implementation strategies of map/dictionary-like a analysis of algorithms’ costs equivalence-based associative collections: .net's object-based vs. generic collections sequential and associative collections a 20k miles perspective on trees in computer scien hashtable-based implementation equality multimaps normalparabel nullstellen excel history formatting mathematische funktionen polynome quadratische gleichungssysteme lineare gleichchungssysteme graph wertetabellen function cellrelations (c++11: the rule of five) the rule of three bjarne stroustrup basic query expressions (projection and selection) anonymous types introducing linq to objects
See more