Im Laufe des Tracks wird die Entwicklung einer kleinen Datenbankanwendung vorgestellt. Bei der Präsentation der Entwicklung kommen die „bordeigenen“ Mittel von Visual Studio 2010, Expression Blend und einige kostenlose Zusatztools zum Einsatz. Der komplette Quellcode dieser beiden Anwendungen wird den Teilnehmern nach der Konferenz zur Verfügung gestellt.
An allen 3 Tagen der Konferenz werden durchgängig Vorträge zu Silverlight gehalten. Am Donnerstag und Samstag geht es dabei um die Grundlagen sowie am Samstag um die Vorstellung der neuen Werkzeuge Silverswitch und Lightswitch. Beide Werkzeuge sind allerdings kostenpflichtig, werden aber aufgrund Ihrer möglicherweise hohen Bedeutung für Visual FoxPro Entwickler nicht in Vendor-Sessions abgehandelt, sonder in regulären Vorträgen.
Properties in Silverlight und WPF sind fast immer sogenannte Dependency Properties. Sie zu verstehen ist grundlegend, um die Funktionsweise von Silverlight überhaupt zu begreifen, wo Properties keinen statischen Wert haben, sondern von vielen Dingen gesteuert werden, d.h. abhängig sind (=dependent), wie z.B. von der Zeitachse einer Animation, von Styles und vom XAML-Code. Wir wollen in dieser Session eigene Dependency Properties anlegen um eine praktische Vorstellung davon zu gewinnen, was diese sind und wie sie funktionieren.
Wenn in einer Silverlight-Anwendung Datenkommunikation nun asynchron über Services organisiert werden muß, ist auf einmal eine Menge zu bedenken, was bisher „wie von selbst“ passiert ist. WCF-Services stellen zwar relativ komfortable Mechanismen zur Verfügung, um Daten zu senden und zu empfangen, doch wie verhält es sich mit Weitergabe von Fehlerinformationen des Servers? Wie vor allem mit Austausch von State-Informationen (wurde der Datensatz im SL-Client neu angelegt oder geupdated…), die der Server braucht, um das richtige damit anzustellen? Wie organisiere ich sich evtl. gegenseitig überholende Anfragen (z.B. auf jeden Tastendruck im Client), damit die richtige Ergebnismenge schließlich ausgewertet wird? Für diese und viele andere Herausforderungen der Praxis der Datenkommunikation von datenzentrischen Silverlight-Anwendungen helfen Ria-Services mächtig viel Code zu sparen, Flexibilität und Datenfunktionalität zu gewinnen.
Ria Services bieten die Möglichkeit, mit Drag&Drop ohne viel Mühe Daten aus der Serverkonfiguration zum Client zu bringen. Dabei werden „deklarative“ (also im XAML-Code) niedergelegte) Datenkonfigurationen angelegt, mit denen Ria-Services arbeiten. Kann man damit arbeiten? Was sind die Vorteile und Grenzen? Wie kann ich für größere Flexibilität die entsprechenden Klassen im Code anlegen und was ist dafür zu beachten? Wir werden uns in dieser Session mit verschiedenen zentralen Klassen der Ria-Services und ihrer Anwendung befassen, die es ermöglichen, das asynchrone Datahandling von Silverlight höchst komfortabel zu gestalten.
Die Migration des Layouts von bestehenden VFP Anwendungen nach Silverlight ist mit kostenlos erhältlichen Werkzeugen einfach möglich. In dieser Session wird die VFP Beispielanwendung Tasmanian Traders migriert. Dafür wird zunächst die VFP Datenbank mit dem kostenlosen Sedna Upsizing Wizard in eine SQL Server Datenbank portiert. Mit dem kostenlos erhältlichen Visual Web Developer 2010 Express wird eine Silverlight Geschäftsanwendung erstellt. Anschließend wird die Migration des Layouts mit dem dFPUG - Silverlight Wizard durchgeführt.
In Silverlight ist eine Printing API enthalten, die einfache Druckausgaben
ermöglicht.
Für VFP Entwickler ist aber auch interessant, dass man VFP Berichtsdateien, auf
der Serverseite direkt ausführen und die Ausgabe als PDF Datei an den
Silverlight Client senden kann.
Die Ausführung von VFP Code ist in Silverswitch Client-Anwendungen einfach möglich. So lassen sich Validierungen einfach in VFP programmieren und es lässt sich die Benutzeroberfläche genau wie in einer VFP Anwendung steuern.
Silverlight 5 bietet umfangreiche Neuheiten für die Entwicklung von Geschäftsanwendungen. An Beispielen werden die neuen Funktionen gezeigt. Dazu gehören unter anderem vektor-orientiertes drucken, XAML debugging, Animationen und Übergänge in der Benutzeroberfläche, verbesserte Datenbindung, Zugriff auf USB Geräte und COM Server, auch aus Anwendungen, die im Browser ausgeführt werden.
Silverswitch ist die Entwicklungsumgebung für Silverlight Anwendungen. Die in der Session V-VFX erstellte VFX Beispielanwendung wird in dieser Session nach Silverswitch mit dem VFX - Silverlight Wizard migriert. Dabei wird die gesamte Funktionalität der VFX Anwendung in Silverswitch verfügbar gemacht. Beide Anwendungen werden gleichzeitig auf der gleichen Datenbank laufen.
In dieser Session wird die VFP Beispielanwendung Tasmanian Traders nach Silverswitch migriert. Die erstellte Silverswitch Anwendung wird diskutiert und weitere Features von Silverswitch werden vorgestellt.
Bei diesem Treffen werden einige interessante Funktionen gezeigt, wie zum Beispiel die Verwendung einer Webcam, die Erkennung von Strichcodes oder die Unterstützung von Multitouch-Bildschirmen. Die Weiterentwicklung von migrierten Silverswitch Anwendungen wird an Beispielen mit VFP Code und C# Code gezeigt.
Visual Studio LightSwitch ist ein neues, auf .NET und Silverlight basierendes Rapid Application Development (RAD)-Werkzeug für datengetriebene Desktop- und Web-Anwendungen, das programmieren mit C# und VB.NET erlaubt. Die beiden Vorträge behandeln Aufbau und Anwendungsgebiete von LightSwitch, die Einbindung und Erstellung von SQL Server-Datenbanken, die Definition von Screens, die Sicherheitsfunktionen und das Deployment. Der Vortrag enthält auch einen Ausblick auf die Erweiterbarkeit von LightSwitch mithilfe einer Vollversion von Visual Studio.
Ein Merry go round durch verschiedene dFPUG-Online-Dienste, die sowohl in einer Visual FoxPro-Version als auch einer Silverlight-Version vorgestellt werden. Folgende Anwendungen (unverbindliche Liste) werden im Rahmen der einzelnen Demo-Sessions jeweils kurz vorgestellt:
Vorgeführt wird, was derzeit mit VFP/VFX/Silverswitch/Silverlight machbar ist und wie einfach oder schwierig oder vielleicht auch gar nicht so ohne weiteres etwas umzusetzen ist.
If you are going to write native iOS applications, you need to learn Objective-C. This session introduces the basic constructs of the language that are critical for creating your first iOS Apps. You will also learn about object-oriented language features, memory management, and how Apple implements design patterns such as Model-View-Controller and Delegation.
This session teaches you the essentials for using the Xcode development environment for building iOS applications, including writing code, layout out user interfaces, and reacting to user input. You will also learn many tips and tricks for making full use of Xcode's features including debugging, performance tools, source control, and so on.
If you want your Apps to get the most visibility and sales, you want to
create a universal application that works on either the iPhone/iPod or iPad.
This session helps you avoid many of the bad programming practices (found in
most iOS sample code) that will prevent your Apps from working on all iOS
devices. You will learn how to create user inter-faces that adapt to a variety
of form factors, resolutions, and orientations, as well as best practices for
deciding when to create alternate user interface views that are specific to each
device.
When it comes to smaller iPhone apps that can be created relatively quickly,
many developers aban-don solid principles of good architecture and
object-oriented programming. This session provides an overview of best practices
in creating iOS applications with architectures that are flexible, extensible,
and easy to maintain—especially since most successful iOS applications are
continually revised with new features requested by users.
This session outlines solid design patterns with separation of application tiers
helps make all of this possible.
This session covers the basics of persisting data locally on iOS devices by means of property lists and Core Data. You will learn how Core Data allows you to design your business entities on an Entity Model diagram and persist, modify, and retrieve these entities without writing any SQL code and de-monstrates best practices along the way.
It’s one thing to create a sample app or test application for your own use. It’s a completely different experience creating an App that will be accepted by Apple’s reviewers and do well in the App store. This session guides you through real world experience on how to avoid the pitfalls of getting your App rejected as well as the steps you should take to design, code and test your application so it passes App store review with flying colors, as well as steps you can take so your users rate your App well!
HTML5 allows you to create Apps that an run on most smart phones and tablets (iPhone/iPad, Android, Windows 7 Phone, etc). When creating a new iOS application, one of the big questions you will answer is "should I use HTML5 or write a native iOS application?". This session introduces the features of HTML5 and helps you choose the right technology--which may be a mix of both!
The MM.NET Application Framework helps you climb the .NET learning curve by providing a high-level Framework for creating .NET business applications. Many of the building blocks you would otherwise have to design and create yourself such as business objects, data access classes, database manager, security manager, data-driven multi-lingual capabilities and so on, have already been built for you as high-performance, reusable components. This session demonstrates how MM .NET teaches you best practices through ist solid, object-oriented architecture, documentation and sample applications, and how you can quickly build your .NET Windows, ASP.NET, Silverlight, and Business Layer applications using the solid foundation supplied by MM .NET.
Seit vielen Jahren verwenden FoxPro-Entwickler die Technologie der Active FoxPro Pages, um Fox-Pro Code in HTML-Seiten einzubinden und serverseitig ausführen zu lassen. Nunmehr stellt der ur-sprüngliche Erfinder Peter Herzog seine Weiterentwicklung der AFPX vor. Außer den Grundlagen lernen Sie folgende neue Features kennen:
Besonders hervorzuheben sind dabei die Ausführbarkeit auch innerhalb von Desktop-Anwendungen sowie die Bereitstellung des Quellcodes für dFPUG-Mitglieder und Konferenzteilnehmer:
ActiveX controls provide a way to add both functionality and a modern appearance to your VFP applications. Unfortunately, there are few new ActiveX controls these days, especially ones that take advantage of features in Windows Vista and Windows 7. On the other hand, the .Net framework comes with many attractive looking controls, and there's an entire industry devoted to providing even more. This session discusses techniques for creating ActiveX controls from .Net components so we can take advantage of these controls without having to convert our applications to .Net.
Like Windows Vista before it, Windows 7 changes the rules for many aspects of application development, including the user interface, dialogs, deployment, security, and file access. This session looks at things you need to know to create Windows 7-compatible applications with Visual FoxPro, including why your application can't run as administrator any more, how Windows 7's User Account Control impacts your application, and taking advantage of Windows 7 features such as dialogs and taskbars.
The Windows API (Win32API) contains thousands of useful functions. However, finding which function to use when, and how to call it from a VFP application, can be challenging. This session discusses how API functions are called in VFP, where to find information on the API, and presents lots of useful API functions you can call in your VFP applications today.
As VFP developers, we're used to storing application data in tables. However, another use for tables is to store information about application behavior. This session looks at how data-driving key pieces of your applications can make them more flexible and more maintainable. In addition, we'll examine how to make your application scriptable so advanced users can customize its behavior.
VFPX, the open source project hosted on CodePlex, has some terrific tools to enhance the Visual FoxPro Interactive Development Environment (IDE) and components to impress your customers in the applications you write for them. This session covers some of the recent updates and additions to VFPX in 2011.
We are going to cover as much of these tools as time allows:
Attendees will learn...
It is my opinion that the combination of the projecthook class, and the
project and file objects are the single most exciting features in the release of
Visual FoxPro 6.0. Wait, version 6.0? So why would a session be so relevant in
2011? Mostly because I run across developers all the time who are not using them
and find themselves doing repetitive things each time they open up a project
file or do a build of an executable. These repetitive processes can be
eliminated from the daily grind.
Projecthooks, along with calls to the project and file objects, expose the
events of the Project Manager and extend a developer's ability to add
functionality to the Interactive Development Environment (IDE) of Visual FoxPro.
The projecthook is a VFP baseclass that allows custom code to run in response to
actions taken by the developer when interacting with the Project Manager. The
project and file objects are COM objects that allow developers to perform
actions that were previously regulated to "hacking" the project files (.PJX).
Visual FoxPro 7 provided additional events to the projecthook class and really
made it simple to configure the VFP development environment specific to each
project. Visual FoxPro 9 added better integration with source code control
through the projecthook. For developers who work with numerous projects each day
this single tool can save hours every month.
This session will introduce this important developer class and built in COM
objects, and demonstrate some of their
powerful uses. The numerous demonstrations will show real world functionality
VFP developers can write with these classes to enhance their development
environment. Throughout this session you will see functionality hooked into a
real working set of projecthook classes you can take back to the office and
start using and extending right away.
The enhanced Data Explorer shipped with Sedna and now residing with additional updates on VFPX has improvements to help VFP developer be more productive with data of all types (VFP or backend SQL). This session will show you numerous ideas to extend this powerful tool and inspire add-ons you can share with the Fox Community. During the session Rick will demonstrate and walkthrough several extensions he has written to help make his life inside the VFP IDE easier when it comes to working with data.
Windows 8 mit steht mit neuen Multi-Touch Bedienungskonzepten a la iPhone vor
der Tür. Die Kunden verlangen nach modernen Oberflächen. Microsoft hat zuerst
mit WPF und jetzt mit Silverlight
gezeigt, wie man moderne Oberflächen mit neuen Bedienungskonzepten baut. Bei
Bedarf auch im Browser.
Microsofts jahrelange Predigten über Mehrschicht-Architekturen und die
Theorien dahinter sind eine feine Sache - wenn Sie Ihre Software von Grund auf
neu schreiben wollen und sich das leisten können. Der Schlüssel zu einer
erfolgreichen Erweiterung Ihrer Software um neue Möglichkeiten ist jedoch
in den meisten Fällen der Erhalt Ihrer jahrelangen Investitionen in Ihre
bestehende VFP Codebasis. Nicht Neu-Schreiben, sondern sanfte Migration. Bauen
Sie neue Oberflächen in Silverlight, WPF, ASP.NET mit HTML5 oder einer anderen
Umgebung Ihrer Wahl. Rufen Sie jahrelang erprobten VFP Code aus neuen
Oberflächen auf. Auch aus dem Internet. Greifen Sie von überall auf die VFP
Datenbanken Ihrer Anwendungen zu. Natürlich auch schreibend und im parallelen
Betrieb mit Ihren vorhandenen VFP Anwendungen. Kombinieren Sie erprobte
Zuverlässigkeit und neue Möglichkeiten. Dieser Vortrag ist keine
Technologie-Schau, sondern zeigt erprobte Vorgehensweisen und Code, der bereits
bei Kunden im Einsatz ist.
Es spricht Bände, dass Google eine eigene Suchmaschine installiert hat, um die Google APIs zu durchsuchen. Ständig gibt es neue Google Produkte, während andere mehr oder weniger leise eingestellt werden. Im Laufe der Jahre sind so zahlreiche Tools entstanden, die auch in einer Desktopanwendung sinnvoll eingesetzt werden können. Wir schauen uns das Google Chart Tool an, um interaktive Diagramme zu erstellen und in die Anwendung einzubinden. Die Integration von Google Maps erlaubt die Suche von Anschriften und die Routenplanung. Die Google Suche ermöglicht Anwendern die schnelle Suche nach Zusatzinformationen zu gespeicherten Daten. Google Translate übersetzt Texte, während Google Contacts die Speicherung und den Zugriff von Kontakten ermöglicht. Dokumente können auf Google Docs abgelegt werden, Office Dokumente in PDF Dateien konvertiert werden, Finanzinformationen über die Google Finance API abgefragt werden, und ganz sicher wird Google bis zur Konferenz noch weitere neue Features bereitstellen.
Wir alle wissen, dass der einzige Ort zum speichern von Daten eine Datenbank ist. Erstaunlicherweise glauben 150% unserer Kunden, dass Daten sinnvollerweise in Excel abgelegt werden. Nachdem der Kunde den ersten Versuch des Exports mit COPY TO abgelehnt hat, verzweifeln die meisten Entwick-ler am Versuch mit OLE Automatisierung Exceldokumente zu erstellen. Das muss nicht so sein! Excel unterstützt seit der Version XP, und damit seit über sechs Jahren, das XMLSS (XML Spreadsheet) Format. Wir beschäftigen uns damit, wie aus VFP dieses einfache, textbasierte Format erstellt werden kann, welche Funktionen es bereitstellt, und wie wir möglichst viel Arbeit an der Erstellung des Exceldokumentes auf den Kunden abwälzen können. Nach dieser Session werden Sie nie wieder eine Zeile Code zur Automatisierung von Excel schreiben.
Seit die neuen leistungsfähigen Silverlight-Migrationswerkzeuge von Visual Extend bekannt sind, begeistern sich immer mehr Neueinsteiger für VFX. Zur diesjährigen Konferenz wird eine aktualisierte Version von VFX 13 vorgestellt. Rapid Prototyping sowie die Umwandlung in Silverlight-Anwendungen ist mit VFX problemlos möglich. In dieser Session wird als erster Schritt eine VFX Beispielanwendung mit Formularen zur Datenbearbeitung, Auswahllisten, 1:n Formular und Parent/Child-Beziehung zwischen Formularen erstellt. Dabei wird die gesamt Funktionalität mit Generatoren erstellt, ohne dass Code geschrieben werden muss. Lernen auch Sie diese elegante und schnelle Art der Visual FoxPro-Programmierung kennen!
Between two or more developers, application program code is a not only
telling the computer what to do, but should enhance the ability of another
developer to read it and allow the a developer to easily understand the intent
of what it is supposed to do. Effectively, code is a way for developers to
communicate with each other on what it should do. And just like in daily life,
if the developers speak a different dialect of the same natural language it can
easily lead to bad communication, misunderstandings, and other potential
problems.
The purpose of programming standards and the creation of a document is to
consolidate and clearly define the approved standards and guidelines currently
being practiced by the development staff at your company. The document should be
a living document and should undergo a regular review of the standards and
guidelines as the development team determines better ways to practice their
craft. All code written is expected to follow these guidelines unless
technically prohibited, or until such time that a revision of these guidelines
is released.
Why do we need a written set of standards and guidelines for developers?
Shouldn't we expect a developer to be mature enough to follow best practices and
accepted industry standards with respect to software development and programming?
Naturally good and experienced developers have the innate ability to write good
code and over time have developed some standards they follow. But as you bring
different developers together, each with their own experiences and standards you
start to get code that is harder to read and understand. Having standards is a
way to have everyone get on the same page, and enhances the ability to read,
enhance, and support each other's code.
Attendees will learn...
Active, .NET, mit Internet Anbindung… das waren die Schlagworte der
Vergangenheit. Der neue Trend nennt sich Cloud Computing.
Diese Session beschäftigt sich mit einem Aspekt des Cloud Computings, dem
Cloudspeicher, manchmal auch Onlinefestplatte genannt, also der Ablage von Daten
außerhalb des eigenen Netzwerkes.
Es stehen verschiedene Speicherlösungen zur Verfügung. Einige sind relationale
Datenbanken wie Microsoft SQL Azure oder Oracle on AWS. Andere sind
nicht-relationale Datenbanken, wie database.com von SalasForce, SimpleDB von
Amazon, BigTable von Google oder Google Storage. Viele sind Dokumentenorientiert
wie Google Documents, Evernote, Dropbox oder RackSpace Cloud Files. Zahlreiche
Speichersysteme bieten Webservices an, andere verwenden ODBC (SQL Azure) oder
das lokale Dateisystem (Dropbox).
Neben den technischen Aspekten behandeln wie die Vor- und Nachteile von
Cloudspeicher, rechtliche und praktische Aspekte und die Frage der Kosten.
Anwendungen architektonisch richtig aufzubauen ist nicht einfach. Insbesondere, wenn die Anwendung jahrelang im Einsatz sein soll und systematisch gewartet und erweitert werden soll. Das Design-Pattern MVVM bietet hier entsprechende Lösungsansätze, mit Caliburn-Micro gibt es fertig vorbereitete Klassen, die bei der Implementierung helfen. Am laufenden Projekt wird gezeigt worauf man achten muss und wie‘s gemacht wird.
Immer häufiger hört und liest man den Begriff "agile Softwareentwicklung". Doch was steckt genau dahinter? Nach einer Einführung in die Grundprinzipien agiler Entwicklung erläutere ich Ihnen am Beispiel Scrum einen sehr erfolgreichen Vertreter der agilen Vorgehensweisen. Einer der Hauptvorteile von Scrum liegt darin, dass dieser schlanke Prozess innerhalb kürzester Zeit zu erlernen und sehr schnell in die Tat umzusetzen ist. Wenn sich das Projektumfeld hierauf einlässt, sind sowohl Kunde, als auch Entwicklungsteam, gleichermaßen von dieser Arbeitsweise begeistert. In diesen Vortrag fließt die praktische Erfahrung aus der erfolgreichen Einführung von Scrum in unserem eigenen Unternehmen, sowie meiner Beratungstätigkeit im Kundenumfeld ein.
Seit dem Release von Visual Studio 2010 gehört der Team Foundation Server bereits ab der Professional Edition einer Visual Studio Subscription zum Lieferumfang. Durch diesen kostengünstigen Einstieg wird der Einsatz des Application Lifecycle Management (ALM) Tools für ein deutlich größeres "Publikum" interessant. Selbst wenn Sie alleine oder in einem kleinen Team entwickeln, ergibt sich ein deutlicher Mehrwert. In dieser Session erhalten Sie zunächst einen kurzen Überblick über die integrierten ALM-Features. Im Anschluss gehen wir anhand eines kleinen agilen Projektes in die Praxis. In Form eines "Walkthrough" arbeiten wir uns von der Neuanlage eines Teamprojektes durch wesentliche Kernbereiche des Produkts. Die Source Code Versionskontrolle, sowie das damit integrierte Arbeiten mit Arbeitsaufgaben stehen hier bspw. auf der Agenda.
Wer nach Alternativen für FoxPro sucht, wird erschlagen von einer Riesenauswahl an verfügbaren Programmiersprachen, RAD-Tools, Generatoren und Frameworks, als Open Source und von kommerziellen Anbietern.
Dieser Talk versucht eine Einordnung der verschiedenen Angebote und ihrer typischen Vor- und Nachteile. Verglichen werden Entwicklungsumgebungen wie Java, oder .NET, Deployment- Plattformen (Desktop, Web, Mobile) und Betriebssysteme. Soll der Partner ein Global Player oder lieber Mittelstand sein? Und: Wie teuer ist "kostenlos" wirklich?
Stephan Wald ist Director Technical Support von BASIS Europe und betreut selbst ein Toolset für die kaufmännische Softwareentwicklung unter Java. Er kommt in Projekten regelmäßig mit zahlreichen Tools und Programmiersprachen aus der Microsoft-Welt, aber auch mit anderen kommerziellen und Open Source-Technologien in Berührung.
Viele Foxpro-Entwickler liebäugeln mit dem plattformunabhängigen Java als attraktiver Zukunftsperspektive für die eigene Anwendung. In diesem Vortrag erläutert Stephan Wald, welche spezifischen Vorteile der FoxPro-Entwickler zusätzlich zu den Java-immanenten Vorzügen speziell mit BASIS realisieren kann, wie zum Beispiel das Deployment auf Desktop, Webbrowser und als WebApp auf Mobilgeräten mit dem gleichen Quellcode; SaaS ohne Windows Remote Desktop und Citrix, oder mit der echten 3-Tier-Architektur.
Im zweiten Schwerpunkt des Vortrags wird erläutert, welcher Aufwand für die Umstellung der Altanwendungen von FoxPro auf die BASIS-Technologie veranschlagt werden muss, und wo Fallstricke lauern können.
In diesem Vortrag erhalten Sie Informationen zum Release-Plan des PolarFox Projektes, der nächsten Generation von Visual FoxPro. Die Teilnehmer erhalten detaillierte Informationen darüber, wie sich Alaska Software die Zukunft für Visual FoxPro-Entwickler vorstellt. Schwerpunkte des Vortrages sind:
Sehen Sie, wie PolarFox existierende VFP-Formulare lädt und diese automatisch in eine native, multithreaded Win32-Applikation überführt. Erleben Sie, wie PolarFox aus Ihrem bestehenden VFP-Formular eine funtionsfähige HTML/Ajax-Anwendung erstellt, die auch unter iPad oder Android nutzbar ist.
Visual FoxPro-Entwickler, die auf der Grundlage Ihres bestehenden Know-Hows mit der Visual FoxPro-Sprache jetzt Web oder Connected Mobile-Anwendungen erstellen wollen, sollten unbedingt den Vortrag <CXP:Now/> besuchen.
Dieser Vortrag richtet sich an jeden Visual FoxPro-Entwickler, der sein vorhandenes Wissen und seine Erfahrung für die Programmierung von Web oder Connected Mobile-Anwendungen einsetzen möchte.
<CXP/> ist eine neue Technologie von Alaska Software basierend auf Xbase++ 2.0, welche sowohl Eigenschaften der Xbase++- als auch der Visual FoxPro-Sprache in sich vereint. Die <CXP/> Technologie stellt somit den ersten Meilenstein auf unseren Weg zu einem leistungsfähigen Visual FoxPro-Nachfolger dar. Dank <CXP/> und der Xbase++ Compiler-Technologie, können Web oder Connected Mobile-Anwendungen mit hoher Leistungsfähigkeit und Sicherheit in ähnlicher Weise wie mit PHP oder ASP erstellt werden.
Sehen Sie, welche Leistungsmerkmale die zugrundeliegende <CXP:InfraStruktur/> Ihnen bereits jetzt bietet, um die Programmierung für das Web und für mobile Endgeräte zu vereinfachen. Desweiteren lernen Sie, wie Sie mit JQuery und <CXP/> moderne und ansprechende Benutzeroberflächen gestalten. Sehen Sie, wie mit nur 6 <CXP/> Pages und jeweils 40 Zeilen Code eine Kunden- und Produktverwaltung für das iPhone realisiert wird.
Besucher dieses Vortrages werden bestens für den ersten Community Technologie-Preview auf unserem Weg zu PolarFox vorbereitet sein; dieser CTP startet am 10. Nov. 2011.
Hinter diesem eher „trockenen“ Titel versteckt sich ein sehr spannendes Thema! Denn Visual Studio kann uns nicht nur als Entwicklungsumgebung für die Softwareentwicklung im Sinne der Erstellung von Anwendungen dienen! VS stellt uns auch eine sehr weitreichende Möglichkeit zur Verwaltung von Datenbankstrukturen in einem Visual-Studio-Projekt zur Verfügung. Hierbei geht es um die weitgehende Abdeckung der Verwaltung von Datenbanken im Rahmen des Application Lifecycle Managements. Was bedeutet das konkret? Die DB-Struktur kann gemeinsam mit dem Anwendungscode in die Quellcodeverwaltung aufgenommen und versioniert werden. Alle Vorzüge wie Labeling, Branching/Merging, Versionshistorie- und vergleiche stehen damit zur Verfügung. Weiter geht es mit der Möglichkeit, manuelle Strukturabgleiche auf Objektebene mit existierenden Datenbanken durchführen zu können. Mit wenigen Klicks erzeugt man in voneinander abhängigen Tabellen mehrere tausend Testdatensätze. Schnell hat man einen Unit Test für eine Stored Procedure geschrieben. Schlussendlich erzeugt man ein DB-Build und schickt das Ergebnis zu Kunden, die unterschiedliche DB-Stände haben und alle haben ab sofort den gleichen Stand. Alle Features und Vorzüge kann ich an dieser Stelle leider nicht beschreiben, kann Ihnen aber für diese Session versprechen, dass Ihnen einige Schmerzpunkte, die Sie bislang mit der Verwaltung, der Entwicklung und dem Deployment von DB-Strukturen hatten, genommen werden!
In dieser inhaltlich hoch komprimierten und praxisorientierten Session
erfahren Sie, wie Sie Performanceprobleme bei Datenbankabfragen mit den
Bordmitteln des SQL Servers schnell analysieren und auch beheben können.
Manchmal genügt schon eine kleine gezielte Optimierung, um eine Abfrage um ein
Vielfaches zu beschleunigen, manchmal liegen die Ursachen aber auch ganz
woanders. Schwerpunkte in diesem Vortrag sind die Analyse von Ausführungsplänen
und die Arbeit mit dem SQL Profiler sowie die dazugehörigen Informationen zur
internen Funktionsweise des SQL Servers. In diesem Zusammenhang wird neben
Execution Plans und Plan Caches auf die Themen Buffer Pool und Version Store,
Locking und Transactions sowie Waits und Queues eingegangen und daraus
resultierende Optimierungsmöglichkeiten abgeleitet.
Der MS SQL Server bietet eine weitreichende Palette an Möglichkeiten, Informationen zum aktuellen internen Status und zur Historie diverser Betriebsaspekte zu sammeln bzw. abzufragen. Dies beginnt bei den eigentlichen LOG-Dateien des MS SQL Servers selbst sowie des Betriebssystems, geht über die verschiedenen Verlaufs-Historien und mitgelieferte Status-Reports bis hin zu diversen System Views sowie den DMVs (Dynamic Management Views). Außerdem kann man Informationen zur Backup- und Restore-Historie sowie zur Mail-Historie abfragen, sich über die zeitliche Entwicklung der Dateigrößen von MDF und LDF informieren sowie Berichte über die aktuelle Rollen- und Rechtevergabe erzeugen. Neben dem Einsatz der für all diese Informationen relevanten Views runden Auditing-Möglichkeiten sowie Performance Counter den Überblick über Status-Analysen des MS SQl Server umfassend ab.
Entscheidet man sich bei einer Applikation für den MS SQL Server als Datenbank-Plattform, dann hat man verschiedene architektonische Möglichkeiten. Der übergreifende Werkzeugkasten für alle Varianten umfaßt die vielfältigen Möglichkeiten der Datenabfrage von einfachen SELECT-Statements und Views über diverse Arten von User Defined Functions bis hin zu Common Table Expressions. Möchte man auch die eigentliche Geschäftslogik innerhalb des MS SQL Servers implementieren, kommt man an Stored Procedures nicht vorbei und dann werden plötzlich Aspekte wie die ggf. große Wirkung eines kleinen ";" relevant, man muß sich mit Isolation Level und Transaktionen beschäftigen, wird mit dynamischem SQL konfrontiert und kann sich nicht am Thema "Cursor vs. temporäre Tabellen" vorbeimogeln. Weitere Aspekte sind dynamisches SQL und EXECUTE, Linked Server und OPENQUERY(), Arbeit mit SQL Server Agent sowie Security, Eventhandling, Fehlerbehandlung und Protokollierung. Die vorliegende Session gibt für Ein- und Umsteiger einen Überblick zu diesen Themen und Empfehlungen für die ersten Schritte.
Es steht außer Frage, dass bestehende FoxPro-Applikation in naher Zukunft modernisiert werden müssen, um dem zukünftigen Markt gerecht zu werden. Doch wohin soll die Reise gehen? In dieser Session wird aufgezeigt, welche Möglichkeiten der Advantage Database Server von Sybase hierfür bietet um den Umstieg möglichst schmerzfrei und ohne große Reibungsverluste zu gewährleisten.
Advantage kann noch viel mehr, als auf bestehende DBF Tabellen in
unterschiedlichsten Konstellationen zuzugreifen.
Lernen Sie in dieser Session, wie Sie Ihre Datenbank mit Stored Procedures,
Triggern, Replikation, Online-Backup und ähnlichen Features erweitern können, um
auch für kommende Anforderungen gewappnet zu sein.
ADO.NET basiert auf unverbundenen Datenmengen. Dieses Konzept bietet Vorteile, aber auch wiederum Nachteile, welche durch navigierenden Zugriff direkt auf die zugrundeliegende Datenbank umgangen werden können. Diese Session zeigt, wie man mit dem Advantage Database Server unter Zuhilfenahme des Advantage Extended Reader navigierend arbeiten kann und somit Funktionalitäten wie Serverside Cursor und Pessimistic Locking nutzen kann.
Entwickeln auf der Windows Plattform mit Visual Studio Lightswitch und
Updates aus der Microsoft Welt.
Weitere Details zur Keynote können erst nach Erscheinen der offiziellen
Ankündigungen von Microsoft zur nächsten Windows Version publiziert werden.
In einer Late Lunch Mini-Session gibt es eine Kurzvorstellung zu Windows 8 / METRO. Die nächste Version von Windows 8 wird eine neue Benutzeroberfläche bieten: Windows Metro. Unter Metro wird keine heute bekannte Anwendung laufen. Weder Visual FoxPro Anwendungen, noch Office oder Visual Studio werden in der Metro Oberfläche ausgeführt werden können. Anwendungen, die unter Metro laufen sollen, müssen neu entwickelt werden. Und genau das beabsichtigt Microsoft. Es soll ein riesiger Markt für Metro Anwendungen geschaffen werden.
Metro Anwendungen sind Desktop Anwendungen mit einer modernen Benutzeroberfläche, die mit XAML oder HTML 5 beschrieben ist. Die Beschreibung der Benutzeroberfläche mit XAML ist dabei sehr ähnlich zu einer Silverlight Benutzeroberfläche. Metro Anwendungen können nicht mit lokalen Daten arbeiten, können aber mit einem Server kommunizieren. Dieser Serverteil einer Metro Anwendung wird identisch mit dem Serverteil einer Silverlight Anwendung sein. Wer sich bereits heute mit Silverlight beschäftigt wird morgen Metro Anwendungen entwickeln können.
Wir zeigen eine kurze Vorschau auf eine erste Windows 8 Metro Anwendung, die mit einer VFP Datenbank auf der Serverseite arbeitet. Und natürlich wird auf der gleichen VFP Datenbank gleichzeitig mit einer vorhandenen VFP Anwendung und einer Silverlight Anwendung gearbeitet. Wir haben also die Möglichkeit unsere Kunden mit ihren VFP Anwendungen und VFP Datenbanken weiterarbeiten zu lassen und gleichzeitig Anwendungen, basierend auf den neuesten Technologien und mit den modernsten Benutzeroberflächen, anzubieten. Mit Silverlight können wir jetzt und langfristig Internetanwendungen erstellen und mit Metro werden wir Windows 8 Desktop Anwendungen anbieten können.