{"id":1104,"date":"2014-05-04T17:39:48","date_gmt":"2014-05-04T15:39:48","guid":{"rendered":"http:\/\/blog.m-ri.de\/?p=1104"},"modified":"2014-05-04T17:48:02","modified_gmt":"2014-05-04T15:48:02","slug":"adc-in-muenchen-garching-vom-29-30-04-2014","status":"publish","type":"post","link":"http:\/\/blog.m-ri.de\/index.php\/2014\/05\/04\/adc-in-muenchen-garching-vom-29-30-04-2014\/","title":{"rendered":"ADC++ in M\u00fcnchen Garching vom 29.-30.04.2014"},"content":{"rendered":"<h2>Ein Fazit und eine kurze Zusammenfassung zu Anfang.<\/h2>\n<p>Um die 100 C++ Entwickler kamen dieses Jahr nach Garching zur ADC++, die von ppdev AG (Johannes Preishuber) mit einigen Sponsoren veranstaltet wurden.<\/p>\n<p>Nach Johannnes Preishuber hat der Fu\u00dfball (Champions League Halbfinale Bayern M\u00fcnchen \u2013 Real Madrid) einen kleinen Strich durch die Veranstaltung gemacht. Es war f\u00fcr viele Interessierte kein Hotelzimmer mehr in der N\u00e4he verf\u00fcgbar. Dadurch war die Teilnehmerzahl leider nur um die 100.<\/p>\n<p>Lohnend war der Ausflug auf die Konferenz in jedem Fall. Zum einen um etwas \u00fcber den Tellerrand zu schauen. Zum anderen um zwischen den Sessions auch Kontakte zu pflegen und auch fachlich mal zu erkunden was andere machen und wie andere etwas machen. F\u00fcr mich sind das immer wieder kleine Aha-Erlebnisse.<br \/>\nIch bin vielleicht etwas verw\u00f6hnt von den beiden ADC\u2019s (2011 Prien am Chiemsee, 2012 Ohlstadt im Zugspitzland). In Bad Aibling 2013 war ich leider nicht dabei.<\/p>\n<p>Die Location war nicht so malerisch. Der Konferenzort funktional, aber nicht ganz so gem\u00fctlich und sch\u00f6n.<br \/>\nToll war in jedem Fall wieder die Abendveranstaltung, die in der Flugzeugwerft Schlei\u00dfheim in toller Atmosph\u00e4re stattfand. Hier\u00a0 l\u00e4sst sich ppdev AG immer etwas Tolles einfallen. Mein Lob daf\u00fcr!<\/p>\n<p>Hier ein kleiner Bericht \u00fcber die Sessions an denen ich teilgenommen habe.Je nach Struktur und Inhalt kann ich mehr oderweniger wiedergeben. Sollte ich Dinge falsch verstanden haben oder falsch wiedergeben, bitte ich das zu entschuldigen. Ich hoffe jedenfalls hier keine gravierenden Fehler in diesem Bericht gemacht zu haben.<\/p>\n<p><!--more--><\/p>\n<h1>Tag 1<\/h1>\n<h2>Keynote<br \/>\n(Tarek Madkour)<\/h2>\n<p>Die Keynote wurde vom Produktmanager Tarek Madkour von Microsoft gehalten, der Nachfolger von Steve Teixeira in der C++ Produktgruppe.<br \/>\nDie Keynote war eine kleine Werbeveranstaltung f\u00fcr VisualStudio, was aber nicht verwundert, denn als C++ Entwickler f\u00fcr Microsoft Produkte ist VisualStudio f\u00fcr die meisten der Anwesenden hier das prim\u00e4re Arbeitswerkzeug.<br \/>\nIn einem kleinen Tiefflug ging es \u00fcber die Konzepte wie VisualStudio \u00fcber Major Releases, Updates und CTPs an den Entwickler gebracht wird. Dabei wurden auch der aktuelle Stand und kommende Features genannt. Insbesondere was Leistungsmerkmale aus C++14 betrifft.<\/p>\n<p>Altbekannte Stichworte wie Perfomance\/Speed fanden Raum. Anschlie\u00dfend zeigte Tarek Madkour einige neue Features im VisualStudio. Ich war selbst erstaunt, dass auch VisualStudio selbst Funktionen integriert, die ich immer nur mit VisualAssist von WholeTomato in Verbindung gebracht habe.<br \/>\nErw\u00e4hnt wurden auch anstehenden \u00c4nderungen im Linker, die mit VS-2013 Update 2 kommen werden. Tarek Madkour versprach bei Standard Projekten eine Zeitersparnis von 50% im Linkvorgang.<\/p>\n<p>Auch ein Thema in der Zukunft bei Microsoft wird Cross Platform Development sein. D.h. es wird auch bei Microsoft dar\u00fcber nachgedacht, wie Entwickler mit VisualStudio evtl. in der Zukunft eine Entwicklungsumgebung haben f\u00fcr Windows, Windows Apps, iOS und Android. Ich bin gespannt wie das aussehen kann.<\/p>\n<p>Interessant Randbemerkung f\u00fcr mich:<br \/>\nEine Umfrage welche Versionen aktuell benutzt werden zeigte, dass doch ein Gro\u00dfteil der Entwickler auch die neuen Versionen nutzt und auch die M\u00f6glichkeit Updates.<\/p>\n<p>Bei dieser Frage war es das erste Jahr bei dem sich bei VC6 niemand mehr gemeldet hat. Aber vielleicht hat man sich nur nicht getraut \ud83d\ude09 . Erstaunlich viele Teilnehmer verwenden tats\u00e4chlich aktuelle VisualStudio Versionen mit den entsprechenden aktuellen Updates.<\/p>\n<h2>Refactoring- Cause it pays off in the long run<br \/>\n(Hadi Hariri)<\/h2>\n<p>Ein sehr kurzweiliger Vortrag, der professionell und sehr humorvoll vorgetragen wurde. Refactoring ist f\u00fcr viele Entwickler oft ein \u201enice to have\u201c. Das Refactoring ein Plus an Code-Qualit\u00e4t, besserem Verst\u00e4ndnis und vor allem Kostenreduktion bedeutet.<\/p>\n<p>Ein Verweis das \u201eUnit-Testings\u201c Pflicht ist wurde nicht nur einmal im Vortrag erw\u00e4hnt. Und das leuchtet ein, aber es ist wie mit dem Rauchen: \u201eWir wissen, dass es schlecht ist, aber viele tun es trotzdem!\u201c, \u201eWir wissen auch das Unit-Testing auch C++ Projekten gut tut, aber wir tun es dennoch nicht konsequent!\u201c.<br \/>\nEs ist eben oft nicht einfach unseren Managern den kostenreduzierenden Aspekt f\u00fcr Unit Testing und Refactoring klar zu machen.<\/p>\n<p>Sprechende gute Beispiele und passend eingebaute Scherze lie\u00dfen die Zeit schnell vergehen.<br \/>\nLeider geriet der Vortrag am Ende doch etwas zu einer Eigenwerbung (Resharper, und neue C++ Tools, die noch im Beta Stadium sind).<\/p>\n<h2>PreDebugging<br \/>\n(Matthias Wedemeyer)<\/h2>\n<p>Leider muss ich sagen, dass mich dieser Vortrag etwas entt\u00e4uscht hat. Viel kann ich dazu nicht wiedergeben. Aber aus meiner Erfahrung heraus, war ein Gro\u00dfteil der gezeigten Tools und Vorgehensweisen \u00fcberfl\u00fcssig oder das Ergebnis einfacher erreichen. Das wurde mir auch auf R\u00fcckfrage im Vortrag best\u00e4tigt.<\/p>\n<p><em>(Pers\u00f6nliche Anmkerung; Ich empfinde es in der Zeit von PDB Dateien anachronistisch noch Map-Dateien zu verwenden.<\/em><br \/>\n<em> Dazu ist nur etwas \u201einterne Buchhaltung\u201c n\u00f6tig ausgelieferte Binaries immer mit PDB Datei in einem Archiv abzulegen. Warum so etwas thematisieren, in der Zeit von virtuellen Maschinen in der man jede \u201ealte Entwicklungsumgebung\u201c jederzeit wiederherstellen kann.<\/em><\/p>\n<p><em>Auf die Minidumps wurde meines Erachtens viel zu kurz eingegangen. Minidumps liefern schnell und einfach eine Vielzahl an mehr Daten, die hier m\u00fchsam einzeln zusammen getragen wurden.<\/em><br \/>\n<em>Auch ist ein Minidump in einer Unhandled Exception immer g\u00fcnstiger und effektiver ist als eine \u201eSelbstanalyse\u201c.<\/em><\/p>\n<p><em>Es ist vielleicht interessant zu wissen wo diese Informationen f\u00fcr das Post-Mortem-Debugging her kommen, aber f\u00fcr mich erscheint es tausend Mal einfacher einen Minidump zu schreiben und diesen in mein VisualStudio zu laden oder in den WinDbg. Zudem auch das Volumen der Daten und die Auswertungsm\u00f6glichkeiten mit einem Minidump effektiver sind als Textdateien.<\/em><\/p>\n<p><em>Minidumps lassen sich immer ohne Problem jederzeit schreiben. Funktionieren, f\u00fcr 64bit und 32bit Anwendungen und liefern je nach Typ eine Vielzahl an Informationen mehr, die hier nicht mal angesprochen wurden.<\/em><br \/>\n<em>Ich kann allen Entwicklern nur raten sich mit Minidumps auseinander zu setzen.(Siehe auch Session von Jochen Kalmbach))<\/em>.<\/p>\n<h2>Creating Windows 8.1 Phone and Store Apps<br \/>\n(Tarek Madkour)<\/h2>\n<p>Ein Vortrag, der mich einfach interessiert hat, weil er ich selbst mal \u00fcber meinen Tellerrand schauen wollte. Denn wie Tarek Madkour gleich zu Anfang des Vortrages zeigte, so ver\u00e4ndert sich die Anwendersicht auf Informationen, der Zugriff auf Informationen. Wo fr\u00fcher ein PC das Zentrum war, so wird immer mehr Information f\u00fcr mobile Ger\u00e4te zug\u00e4nglich.<\/p>\n<p>Tarek ging auf die aktuelle Marktverteilung der Handytechnologien ein (2014 f\u00fcr Android 68,5%, iOS 19,1% und Windows 10,1%).<br \/>\nDetailliert erl\u00e4uterte die Technologien f\u00fcr Windows Apps und Windows Phone Apps. Insbesondere welche UI Techniken der Entwickler w\u00e4hlen kann (DirectX, XAML mit C# oder C++, HTML5\/JS).<\/p>\n<p>An einem Beispiel zeigte wie man eine Universal App baut, die also auf beiden Windows App Plattformen l\u00e4uft (WindowsApp und WindowsPhoneApp). Eigentlich wird hier nicht eine Anwendung gebaut, sondern VisualStudio erzeugt eine Windows App\u00a0 eine Windows Phone App und dazu ein drittes Projekt, das Code enth\u00e4lt, den beide zuvor genannten Objekte benutzen. Defakto ist das Shared Projekt nur ein Container f\u00fcr gemeinsam genutzte Sourcen und dieses Projekt hat keine bin\u00e4re Ausgabe. Diese Shared-Code Projekte k\u00f6nnen aber dennoch alle Source Typen (CPP, C#, PNGs und andere enthalten). Innerhalb des Shared Codes k\u00f6nnen auch #ifdef\u2018s verwendet werden die wieder speziell auf ein Target abzielen. Weiterhin gibt es auch hier durch Intellisense entsprechende Unterst\u00fctzung, was m\u00f6glich ist und was nicht.<\/p>\n<p>Das Konzept dieser Shared-Projekts l\u00e4sst sich \u00fcbrigens auch in anderen Projekten nutzen.<br \/>\nIn Zukunft soll diese Grenze und Aufteilung in zwei Anwendungstypen und zwei Stores zusammenwachsen so zumindest ist dies das gro\u00dfe Ziel am Horizont.<\/p>\n<p>In einem zweiten Beispiel zeigte er wie man aus einer WindowsApp zus\u00e4tzlich eine WindowsPhone App baut.<\/p>\n<h2>Rich Client migration from MFC to C++11 &amp; XAML Real live Scenarios<br \/>\n(Cosmin Dumitru)<\/h2>\n<p>Cosmin Dumitru ging zuallererst auf den Status Quo ein. D.h. es wird weiter MFC geben (stand VS-2013), es wird Bugfixes geben was ATL und MFC betrifft. Dies ist angek\u00fcndigt und bekannt. Was aber weiter mit der MFC und ATL passiert wei\u00df niemand <em>(Pers\u00f6nliche Anmerkung: Auch die n\u00e4chsten VisualStudio Versionen werden ATL und MFC enthalten, was aber nicht hei\u00dft, dass wir auf gro\u00dfe Neuerungen hoffen k\u00f6nnen,\u00a0 es ist mit Sicherheit nicht zu erwarten, dass die MFC oder die MFC deprecated wird.)<\/em><\/p>\n<p>Bei einer kurzen Umfrage ergab in dieser Session, dass mindestens 2\/3 der anwesenden ca. 70 Entwickler noch existierende MFC Anwendungen haben,\u00a0 die in Produktion laufen und auf absehbare Zeit nicht legacy werden.<\/p>\n<p>In den Migrationspfaden ist es teilweise m\u00f6glich fast alle Codeformen in WindowsApps zu \u00fcbernehmen.<br \/>\n<em>(Pers\u00f6nliche Anmerkung: Da aber die MFC extrem an die Windows UI (GDI) und andere Technologien (COM) gebunden ist, ist dies f\u00fcr die MFC einfach nicht m\u00f6glich. W\u00e4re die MFC modularer gebaut worden, g\u00e4be es auch hier Wege.)<\/em><\/p>\n<p>Ein Weg aus dem Dilemma kann es sein, Anwendungen zu zerlegen, so dass man sich von der MFC UI trennt und andere Teile die in C++ (neutral) entwickelt wurden \u00fcbernimmt. Es wurde hier etwas viel\u00a0 auf Pattern eingegangen die es m\u00f6glich machen die Anwendung neu zu entwerfen.<br \/>\n<em>(Pers\u00f6nliche Anmerkung: Grunds\u00e4tzlich ist es sowieso nicht m\u00f6glich eine Anwendung ohne gutes Design in funktionierende neue Schichten zu zerlegen.).<\/em><\/p>\n<p>Leider war die Session Cosmin Dumitrus nicht ganz fl\u00fcssig und ich konnte teilweise dem Projekt etwas schwer folgen. Geschuldet mag dies zum Teil durch eine technische Panne auf dem Rechner von Cosmin Dumitru sein.<\/p>\n<p>Als Kritik muss ich leider sagen, dass es nicht ohne weiteres m\u00f6glich ist ein MVVM Pattern auf einen existierenden Fat-Client anzuwenden. Wenn Fat-Clients so konzipiert w\u00e4ren, h\u00e4tten die Entwickler vermutlich schon andere Wege (Web-Oberfl\u00e4che, Windows-Forms) gefunden eine Migration zu schaffen.<\/p>\n<h2>Abendveranstaltung und FAQ im Flugzeugmuseum<\/h2>\n<p>In tollem Ambiente in der Flugzeug Werft in Schlei\u00dfheim hatten wir auch noch einen tollen Abend in\u00a0 netter Gemeinschaft und gutem Essen. Etwas sp\u00e4ter fand noch eine FAQ statt mit 5 der aktuell anwesenden Referenten (Bayern lag zu diesem Zeitpunkt schon 0:3 zur\u00fcck). Die FAQ war ein leichtes Spiel f\u00fcr alle Beteiligten. Es gab einfach keine hei\u00dfen wirklich Themen. Insofern war keiner der 5 \u201eSpezialisten\u201c wirklich gefordert.<\/p>\n<p>Aber doch ergab sich eine interessante Fragen und auch Neuigkeit.<br \/>\nAuf eine Frage aus dem Plenum, was als n\u00e4chste UI f\u00fcr Desktop Anwendungen zu sehen ist, antwortete Tarek Madkour mit folgender Antwort (sinngem\u00e4\u00df, wie ich es geh\u00f6rt habe):<br \/>\n<em><strong>\u201eWe have had Win32 and MFC forever but we are talking at Microsoft about this in the last weeks. We will see the answer in the next month.\u201c<\/strong><\/em><\/p>\n<p>Das bedeutet letzten Endes, dass wir tats\u00e4chlich noch einmal auf eine Antwort auf die UI-Frage von Microsoft bekommen werden, nachdem WPF, Windows Forms, MFC und Windows API letzten Endes keine aktuell zufriedenstellenden Antworten f\u00fcr uns als Entwickler bieten. Was nicht hei\u00dft, dass nicht eine der bisherigen Antworten (WPF, XAML) als endg\u00fcltige Antwort fest geklopft werden.<br \/>\nIch bin gespannt was sich hinter diesen S\u00e4tzen verbirgt und ich bin gespannt wie lang die Halbwertzeit dieser Technologie dann sein wird.<\/p>\n<p>Ein Aspekt der auch an unserem Tisch in den Gespr\u00e4chen thematisiert wurde, war, dass sich viele Entwickler bei allen guten neuen Entwicklungen des Standards auch die Integration von Graphik und GUI w\u00fcnschen. Michael Wong konnte hier nat\u00fcrlich nur sagen, dass er den Wunsch geh\u00f6rt hat.<\/p>\n<p>Auch eine Frage der Integration von CMake in VisualStudio traf auf offene Ohren. Tarek Madkour antwortete, dass \u00fcber Multiplattform Konzept in VisualStudio nachgedacht wird (s.o. Keynote). D.h. nicht nur, dass in VS vielleicht irgendwann f\u00fcr Android oder iOS Anwendungen entwickelt werden k\u00f6nnten. Dies schlie\u00dft nicht nur Gedanken \u00fcber den Compiler ein, sondern eben auch wie ein Build f\u00fcr andere Plattformen erfolgen kann und hier findet nat\u00fcrlich auch CMake einen Platz in den \u00dcberlegungen.<\/p>\n<p>Es wurden noch andere Fragen gestellt \u00fcber manches Thema, aber hier gebe ich auch zu, dass mein Interesse und Auffassungsverm\u00f6gen auch beschr\u00e4nkt ist und manche Gespr\u00e4che am Tisch auch interessant waren. \ud83d\ude42<\/p>\n<h1>Tag 2<\/h1>\n<h2>Keynote: Modern, MobileApps forAndroid and iOS with C++<br \/>\n(John Thomas)<\/h2>\n<p><em>(Pers\u00f6nliche Anmerkung: Gleich auffallend, dass hier Windows Apps nicht genannt werden \ud83d\ude42 .)<\/em><\/p>\n<p>Nach einer Darstellung der eigenen Geschichte und der von Embarcadero (Borland). Er zeigte, dass in der Vergangenheit der Markt haupts\u00e4chlich von Intel und Windows dominiert wurde. Der Markt \u00e4ndert sich rapide. Betriebssysteme iOS und Android verdr\u00e4ngen Palm, RIM, Symbian und Mobile Phone. Das Handy wird zum prim\u00e4ren aktuellen Ger\u00e4t, das den Anwender in seinem t\u00e4glichen Handeln begleitet. Die Anteile von Tablets werden gegen\u00fcber Notebooks immer gr\u00f6\u00dfer.<\/p>\n<p>Und es ist zu erwarten, dass es noch weitaus mehr Intelligente Ger\u00e4te geben wird (Tuner, Fernseher, K\u00fchlschr\u00e4nke).<br \/>\nSomit werden Smartphones und Tablets mit Ihren Oberfl\u00e4chen dominierende Ger\u00e4te im Alltag und haben den PC und den Laptop schon l\u00e4ngst in Zahlen verdr\u00e4ngt.<\/p>\n<p>Das Problem sind die vielen Arten von Ger\u00e4ten, f\u00fcr die nun Entwickler Software entwickeln m\u00fcssen. Das ist eine M\u00f6glichkeit und Chance, aber auch eine \u201eBedrohung\u201c.<br \/>\nNach einer Umfrage wurden 85% der Windowsentwickler bereits mit Anforderungen f\u00fcr mobile Ger\u00e4te konfrontiert. 58% entwickeln bereits f\u00fcr mobile Ger\u00e4te. 43% Replizieren bestehende Software f\u00fcr Mobile Ger\u00e4te. Nur 15% haben keine Anforderung f\u00fcr mobile Ger\u00e4te.<\/p>\n<p>Aber das ist kein Wechsel der Zielplattform ausschlie\u00dflich zu mobilen Ger\u00e4ten, den 95% der Entwickler beabsichtigen bestehend Windows Desktop Software weiter zu entwickeln. Apps sind also nicht die prim\u00e4re Form der neuen Software Welt. Sie sind nur eine neue Darstellungsform.<\/p>\n<p>Die hier angefragten Plattformen waren (bei Mehrfachnennung) 83% Android, 67% iOS, Windows Phone 33%, 17% WindowsRT.<br \/>\n85% sehen in Nativen Apps die L\u00f6sung. In einem kurzen Exkurs wurde erkl\u00e4rt, dass Facebook auch mitseiner App mit HTML5 und Javascript begonnen hat, aber aufgrund mangelnder Performance, eine Kehrtwende zur\u00fcck auf native Apps gemacht hat.<br \/>\n74% aller App Entwickler haben Probleme mit HTLM5 und Javascript. Das reicht von Problemen \u00fcber Performance bis zum Zugriff auf spezielle Ger\u00e4tefunktionen.<\/p>\n<p>C++ ist eine gute Sprache, leidet aber daran, dass es keinen Standard f\u00fcr UIs gibt.<br \/>\n<em>(Pers\u00f6nliche Anmerkung ; Ein Thema, dass in der Abendveranstaltung an unserem Tisch immer wieder diskutiert und besprochen wurde).<\/em><\/p>\n<p>Native Apps sind Antworten, auf die W\u00fcnsche von Anwendern: Performance, intelligente effektive Eingabe, Sicherheit und die Integration anderer Dienste. Ideal w\u00e4re also eine Multi-Device Application Platform, bestehend aus Client UI, Datenbank, Middleware und Web\/Cloudservices.<br \/>\nWie erwartet kommt nun der \u201eWerbeblock\u201c \ud83d\ude09 . \u00a0Embarcadero liefert f\u00fcr alle Bereiche entsprechende Technologien(FMX, InterBase, DataSnap\/FireDac, RestFM\/BaasFM).<\/p>\n<p>Der Anteil an C++ wird nach John Thomas weiter zu nehmen. Java hat ein Standing, aber es ist eben Interpretiert und wenn es um eine bessere User Experience und mehr Hardwaren\u00e4he geht, dann geht kein Weg an C++ vorbei.<\/p>\n<p>Ich spare mir hier die Tour durch die einzelnen Technologiebereiche.<br \/>\nWir stehen unzweifelhaft f\u00fcr einer neuen noch nie dagewesenen Vielfalt von Ger\u00e4ten und M\u00f6glichkeiten der Nutzung von Software und Diensten in unserem Alltag.<\/p>\n<h2>Debugging Tools for Windows<br \/>\n(Jochen Kalmbach)<\/h2>\n<p>Auf diese Session von meinem langj\u00e4hrigen Mit-MVP habe ich mich gefreut. Und ich halte dieses Thema f\u00fcr so wichtig, dass jeder Entwickler die hier behandelten Themen zumindest kennen sollte.<\/p>\n<p>Es ging grunds\u00e4tzlich in einem Schnelldurchgang durch fast alle Werkzeuge aus den Debugging Tools f\u00fcr Windows.<br \/>\nDie Debugging Tools sind mittlerweile sowohl Teil des WDK und SDK.<\/p>\n<ul>\n<li><em>WinDbg<\/em> ist der Hauptdebugger neben den weniger relevanten cdb, ntsd und kd. WinDbgverf\u00fcgt \u00fcber sehr viele Extensions, die weit \u00fcber Leistung des Debuggers in VisualStudio hinaus gehen.<\/li>\n<li><em>Gflags<\/em>, sehr n\u00fctzliches Tool, dass auch mit dem AppplicationVerifier verwendet wird. Es setzt die OS-Kernel Flags)<\/li>\n<li>Die Palette der Symbolstore Tools: <em><span style=\"text-decoration: underline;\">symstore<\/span><\/em>, <em>symcheck<\/em>, <em>dbh<\/em><\/li>\n<li><em>Umdh<\/em> (Memory Leak Analyse)<\/li>\n<li>Und einiges andere zus\u00e4tzlichen Hilfsmitteln<\/li>\n<\/ul>\n<p>Bei WinDbg ist der gro\u00dfe Vorteil, dass er nicht installiert werden muss. Xcopy Deployment oder starten vom USB Stick ist also m\u00f6glich. Dieser Debugger arbeitet immer, auch wenn andere Debugger versagen. WinDbg kann auch \u00fcber Skripte automatisiert werden.<\/p>\n<p>Es folgt ein kurzer \u00dcberblick \u00fcber die Befehle und Funktionsweisen. WinDbg Befehle fallen in drei Kategorien. Normale Befehle (beginnen mit einem Buchstaben), Meta-Befehle (beginnen mit einem Punkt), Extension-Commands (beginnen mit einem ! Ausrufezeichen).<br \/>\nEs folgen weitere direkte Anwendungsbeispiele wie die Dump-Analyse. Stichworte wie WER, LocalDumps, Dumperzeugung mit dem Taskmanager etc. werden genannt und in kleinen Beispielen gezeigt.<\/p>\n<p>Um nat\u00fcrlich passende Symboldateien zu haben ben\u00f6tigt man zu dem entsprechenden Build auch die entsprechenden PDB Dateien. Entsprechend stellte Jochen Kalmbach den SymbolStore (Symstore) vor. Vor allem n\u00fctzlich ist auch die M\u00f6glichkeit den Symbolstore an ein bestehendes Source Control System anbinden. Dann kann WinDbg und VisualStudio sogar den passenden Sourcecode aus dem Control System laden.<\/p>\n<p>Weiter ging es mit einem schnellen \u00dcberblick \u00fcber spezielle Befehl f\u00fcr die Leaksuche in WinDbg.<br \/>\nAnschlie\u00dfend kam das kleine \u201eSuper-Helferlein\u201c (meine Wortsch\u00f6pfung) an die Reihe.\u00a0 Es wurde gezeigt wie man mit GFLAGS Heap Defekte finden kann und auch eine Leak Suche m\u00f6glich wird.<\/p>\n<p>Aufgrund der fortgeschrittenen Zeit wurde am Ende noch auf M\u00f6glichkeiten der Automatisierung mit cdb eingegangen.<br \/>\nHier wurde ein Thema behandelt bei dem jeder Entwickler zumindest alle die hier genannten M\u00f6glichkeiten kennen sollte.<\/p>\n<h2>Even simpler C++ with C++14<br \/>\n(Peter Sommerlad)<\/h2>\n<p>Hier hat mich gereizt einen \u00dcberblick von C++14 geboten zu bekommen. Zu Anfang gab es seine kurze Umfrage wer bereits C++11 Features benutzt, nach meiner Sch\u00e4tzung waren das \u00fcber 50%. C++14 nutzte von den anwesenden noch niemand. Von den Anwesenden waren 100% der Anwesenden regelm\u00e4\u00dfige Nutzer von C++.<\/p>\n<p>\u00dcber einen kleinen Einstieg mit einem Beispiel des kleinem Einmaleins und der Grundlagen f\u00fcr das \u201eComeback\u201c von C++ ging es mit einer Zusammenfassung von C++11 weiter (auto, uniforme Initialisierung, Lamdas, Move-semantics, decltype, \u2026 etc.)<br \/>\nWeiter ging der Vortrag \u00fcber Dinge, die wir mit C++ nicht mehr ben\u00f6tigen oder brauchen (Speichermanagement new\/delete und andere).<br \/>\nDann ging es in die neuen C++14. Nach Herb Sutter ist C++14 ein \u201eBug fix release\u201c.<\/p>\n<p>Leider muss ich sagen, dass ich hier in meinem Blog kaum darstellen kann was hier alles angesprochen wurde und wie es begr\u00fcndet wurde. Aber ich habe gemerkt, dass ich mich doch \u00fcber einige neue Aspekte in C++14 dringend nachlesen muss, insbesondere die Regeln f\u00fcr die Move-Semantic und die Aspekte der Kopierbarkeit von Objekten bei existierenden virtuellem Destruktor; genauso wie die neuen Erweiterungen und Neuerungen von auto, \u201ereferencyness\u201c (J.Wakely) und einiges andere.<\/p>\n<p>Insgesamt ein Vortrag, der mich teilweise herausgefordert hat, bei der Menge an Stoff, die hier her\u00fcber gebracht wurde und einen fast erschlagen hat.<\/p>\n<h2>Funktionale Programmierung in C++<br \/>\n(Rainer Grimm)<\/h2>\n<p>Diese Session war mehr oder weniger ein theoretischer Ausflug.<br \/>\nEs war interessant abstrakte Konzepte der Funktionalen Programmierung kennen zu lernen. Ganz ist mir der Nutzen in meiner \u201eC++-Welt\u201c nicht aufgegangen, aber die Paradigmen kennen zu lernen und damit auch gedanklich zu spielen war relativ nett.<\/p>\n<p>Allerdings f\u00e4llt es mir zu dieser Session wirklich schwer Inhalte wiederzugeben. Auch hier mag mein interner F\u00fcllungsgrad bei dieser Konferenz einfach schon das Maximum erreicht haben. \ud83d\ude42<\/p>\n<h2>Fazit<\/h2>\n<p>Es hat Spa\u00df gemacht bekannte Gesichter wieder mal im Real Life zu sehen und auch neue Bekanntschaften zu machen. Und es h\u00e4tte noch mehr Spa\u00df gemacht wenn mein Zug (Deutsche Bahn) nicht schon bei der Abfahrt 20min. Versp\u00e4tung gehabt h\u00e4tte. Aber daf\u00fcr kann ja niemand bei der Konferenz etwas\u2026<\/p>\n<h2><strong>Letzte Anmerkung:<\/strong><\/h2>\n<p><strong>Sollten mir bei der Wiedergabe der Inhalte Fehler unterlaufen sein, so sind die einzig und alleine mir zuzuschreiben und keinem der Referenten. Ich bitte dies zu entschuldigen und werde mich um Korrektur bem\u00fchen, sofern mir solche Fehler auch bekannt gemacht werden.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ein Fazit und eine kurze Zusammenfassung zu Anfang. Um die 100 C++ Entwickler kamen dieses Jahr nach Garching zur ADC++, die von ppdev AG (Johannes Preishuber) mit einigen Sponsoren veranstaltet wurden. Nach Johannnes Preishuber hat der Fu\u00dfball (Champions League Halbfinale Bayern M\u00fcnchen \u2013 Real Madrid) einen kleinen Strich durch die Veranstaltung gemacht. Es war f\u00fcr &hellip; <a href=\"http:\/\/blog.m-ri.de\/index.php\/2014\/05\/04\/adc-in-muenchen-garching-vom-29-30-04-2014\/\" class=\"more-link\"><span class=\"screen-reader-text\">\u201eADC++ in M\u00fcnchen Garching vom 29.-30.04.2014\u201c <\/span>weiterlesen<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1104","post","type-post","status-publish","format-standard","hentry","category-allgemein"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/posts\/1104","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/comments?post=1104"}],"version-history":[{"count":1,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/posts\/1104\/revisions"}],"predecessor-version":[{"id":1105,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/posts\/1104\/revisions\/1105"}],"wp:attachment":[{"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/media?parent=1104"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/categories?post=1104"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.m-ri.de\/index.php\/wp-json\/wp\/v2\/tags?post=1104"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}