scriptcs nrw conf 2013
TRANSCRIPT
![Page 1: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/1.jpg)
SCRIPTCS
C# als Skriptsprache!?
Fabian Deitelhoff @FDeitelhoff
![Page 2: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/2.jpg)
Was ist scriptcs?
Fabian Deitelhoff @FDeitelhoff
Vollständige Engine für C#-Code
![Page 3: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/3.jpg)
Wer hat‘s erfunden?
Fabian Deitelhoff @FDeitelhoff
Glenn Block (@gblock)
Justin Rusbatch (@jrusbatch)
Filip Wojcieszyn (@filip_woj)
![Page 4: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/4.jpg)
Was will scriptcs?
Fabian Deitelhoff @FDeitelhoff
C# mit einem Texteditor schreiben & ausführen
![Page 5: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/5.jpg)
Ziele & Werte?
Fabian Deitelhoff @FDeitelhoff
Öffentliche Werte, Anwendungsfälle & Akzeptanzkriterien
![Page 6: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/6.jpg)
Werte
Fabian Deitelhoff @FDeitelhoff
Einfachheit, Agilität, schnelle Entwicklung
![Page 7: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/7.jpg)
Anwendungsfälle
Fabian Deitelhoff @FDeitelhoff
Rapid Prototyping, Anwendungen, Erweiterungen, Skripte
![Page 8: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/8.jpg)
Akzeptanzkriterien
Fabian Deitelhoff @FDeitelhoff
Kein Handbuch, keine Abhängigkeiten, lose Skripte, Pakete
![Page 9: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/9.jpg)
Fabian Deitelhoff @FDeitelhoff
![Page 10: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/10.jpg)
Ein paar kurze Fakten
Fabian Deitelhoff @FDeitelhoff
Open Source (GitHub), sehr aktiv, sehr beliebt
![Page 11: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/11.jpg)
Technische Basis
Fabian Deitelhoff @FDeitelhoff
Basiert hauptsächlich auf Roslyn und NuGet
![Page 12: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/12.jpg)
Roslyn?
Fabian Deitelhoff @FDeitelhoff
C#- und VB.NET-Compiler als Dienste
![Page 13: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/13.jpg)
Fabian Deitelhoff @FDeitelhoff
![Page 14: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/14.jpg)
Und was genau?
Fabian Deitelhoff @FDeitelhoff
Ein bestimmter Aspekt von Roslyn
![Page 15: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/15.jpg)
NuGet?
Fabian Deitelhoff @FDeitelhoff
Paketverwaltung für die Microsoft-Plattform & .NET
![Page 16: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/16.jpg)
Installation
Fabian Deitelhoff @FDeitelhoff
Zwei Varianten. Eine schnell, die andere schneller
![Page 17: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/17.jpg)
Variante 1
Fabian Deitelhoff @FDeitelhoff
Quellen von GitHub besorgen
Die Datei build.cmd ausführen
![Page 18: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/18.jpg)
Variante 2
Fabian Deitelhoff @FDeitelhoff
Chocolatey installieren
Den Befehl cinst scriptcs ausführen
@powershell
-NoProfile
-ExecutionPolicy Unrestricted
-Command "iex ((New-Object Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))"
&& SET PATH=%PATH%;%systemdrive%\chocolatey\bin
![Page 19: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/19.jpg)
Alles startklar?
Fabian Deitelhoff @FDeitelhoff
Auf die Plätze, fertig, los!
![Page 20: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/20.jpg)
Erste Gehversuche mit REPL
Fabian Deitelhoff @FDeitelhoff
Read-Eval-Print-Loop. Schnell, unkompliziert, für zwischendurch
![Page 21: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/21.jpg)
REPL-Features
Fabian Deitelhoff @FDeitelhoff
DEMO
![Page 22: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/22.jpg)
REPL-Features
Fabian Deitelhoff @FDeitelhoff
Direkte Ausführung, multiline, nette Gimmicks
![Page 23: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/23.jpg)
C# Skriptdateien
Fabian Deitelhoff @FDeitelhoff
REPL ist schön, aber schnell zu eingeschränkt
![Page 24: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/24.jpg)
C# Skriptdateien
Fabian Deitelhoff @FDeitelhoff
Datei auf, relevanter Code rein, speichern, fertig
![Page 25: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/25.jpg)
Editoren?
Fabian Deitelhoff @FDeitelhoff
Vollkommen egal! Ich bevorzuge Sublime Text 2
![Page 26: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/26.jpg)
C# Skriptdateien
Fabian Deitelhoff @FDeitelhoff
Keine Namespaces, keine Klassen, nur wichtige Dinge
![Page 27: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/27.jpg)
Features
Fabian Deitelhoff @FDeitelhoff
#load, #r, Parameter, Standards, Pakete
![Page 28: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/28.jpg)
C# Skriptdateien
Fabian Deitelhoff @FDeitelhoff
DEMO
![Page 29: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/29.jpg)
C# Skriptdateien
Fabian Deitelhoff @FDeitelhoff
![Page 30: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/30.jpg)
Standards
Fabian Deitelhoff @FDeitelhoff
• System
• System.Core
• System.Data
• System.Data.DataSetExtensions
• System.Xml
• System.Xml.Linq
• System
• System.Collections.Generic
• System.Linq
• System.Text
• System.Threading.Tasks
![Page 31: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/31.jpg)
Pakete
Fabian Deitelhoff @FDeitelhoff
scriptcs Script Packs & „normale“ Pakete
![Page 32: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/32.jpg)
Pakete
Fabian Deitelhoff @FDeitelhoff
Verwaltung läuft über NuGet
scriptcs -install <Paketname>
![Page 33: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/33.jpg)
Script Packs
Fabian Deitelhoff @FDeitelhoff
Simplere Anwendung, Automatismen, Factory-Methode
![Page 34: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/34.jpg)
Weitere Pakete
Fabian Deitelhoff @FDeitelhoff
Identische Installation, „normale“ NuGet-Pakete
![Page 35: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/35.jpg)
Pakete
Fabian Deitelhoff @FDeitelhoff
DEMO
![Page 36: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/36.jpg)
Debugging
Fabian Deitelhoff @FDeitelhoff
Auch bei Skriptdateien tauchen Fehler auf…
![Page 37: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/37.jpg)
Debugging
Fabian Deitelhoff @FDeitelhoff
Läuft über Visual Studio
![Page 38: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/38.jpg)
Debugging
Fabian Deitelhoff @FDeitelhoff
DEMO
![Page 39: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/39.jpg)
Was können wir?
Fabian Deitelhoff @FDeitelhoff
Installation, REPL, Skripte, Referenzen, Pakete, Debugging
![Page 40: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/40.jpg)
That‘s it!
Fabian Deitelhoff @FDeitelhoff
Wir kennen scriptcs
![Page 41: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/41.jpg)
Anwendungsbeispiele
Fabian Deitelhoff @FDeitelhoff
Und was macht man jetzt damit?
![Page 42: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/42.jpg)
PDF-Datei manipulieren
Fabian Deitelhoff @FDeitelhoff
Ich brauche Seite 2 und 3
![Page 43: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/43.jpg)
Konfigurationen
Fabian Deitelhoff @FDeitelhoff
Können auch als C# Skriptdateien abgelegt werden
![Page 44: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/44.jpg)
scriptcs ebnet den Weg
Fabian Deitelhoff @FDeitelhoff
Die Anwendungsszenarien kommen von uns!
![Page 45: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/45.jpg)
Zukunft
Fabian Deitelhoff @FDeitelhoff
Export als exe-Datei & Visual Studio Projekt
![Page 46: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/46.jpg)
Vielen Dank für die Aufmerksamkeit!
Fabian Deitelhoff @FDeitelhoff
![Page 47: Scriptcs NRW Conf 2013](https://reader033.vdocuments.net/reader033/viewer/2022051617/55a21b321a28ab885d8b46a3/html5/thumbnails/47.jpg)
Fabian Deitelhoff @FDeitelhoff
Fabian Deitelhoff
Informatikstudent Master of Science
Schwerpunkt Biomedizinische Informatik
Autor, Speaker, Trainer, Softwareentwickler
Kontaktinformationen
E-Mail: [email protected]
Twitter: @FDeitelhoff
Blog: http://www.fabiandeitelhoff.de