B.V. Electronic Østerbro 5 7800 Skive +45 97 52 50 22 www.bve.dk GuideOnLine Framework.

Slides:



Advertisements
Liknende presentasjoner
C++ for Java-programmerere
Advertisements

Open Source -til velsignelse og/eller forbannelse!?
Everyone Print Kalle Snarheim.
SingleGUIThread OpptaksThreads klientServerThread Monitor/BrowseklientMonitor/Browseklient klientServerThread Thread Modell SNC-VL10 SNT-V304 Nettverks.
Estimering af User interface • Funktionpoint – Funktionalitet uden hensyn til UI • Webapp projekt metric – Kompleksitet med hensyn til UI.
Ledelsesinformasjonsystem
1 Litt om OO og programmering Arne Maus. 2 OO og Java (og C++, C#)  Arven fra Simula  Programstruktur i Java  Generering av objekter  Beskyttelse.
Mobile Phone authorised Services through Near Field Communications Hans-Christian Haugli, Elin Melby, Josef Noll.
Web Services gjennom eksempler Johannes Brodwall.
Web Client Software Factory Inge StubdalLevel 300 Avanade.
Programmering i Java versjon januar 2005 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Mer sortering Mer Debugging Introduksjon til strukturer.
Eksempel: Administrasjon av biler. Eksempel •Program for å administrere informasjon om biler •Vi ser på tre deler: –Registrere biler: legge inn i tabell.
WPF/E Introduksjon til Olav Tollefsen Utvikler- og plattformteamet Microsoft Norge.
Presentasjon Side 1 Oppsett av byggemiljø med TFS NNUG Versjon 1.0.
E-Site Intro for utviklere. Innhold Info Funksjoner Aktører og tilgang Arkitektur, egne utvidelser (.Net 3.5) Objekter og user controls.
Making a Home Page. Why a Web Page? Easier to submit labs electronically (lack of color printers at university); Easier to submit labs electronically.
Tema: Introduksjon Hvorfor Velocity? Installasjon Velocity VS. JSF / JSP Eksempler Oppsumering.
C# for javaprogrammerere
Operativsystemer.  Tilstandsmaskiner kalles på engelsk Finite State Machines.  Tilstandsmaskiner er en metode til å beskrive systemer med logisk og.
Databaser. Introduksjon til Databaser Resten av foilene fra kap 10.1 som vi går gjennom på neste forelesning.
Objekt Orientert Programmering (OOP). Objektorientering (OO)1/6 Objektorientering er en grunnleggende måte å organisere komplekse fenomener på.
Web-applikasjoner Prosjekt3 Logging Gruppe 9 Malik Muhammad Naeem Kevan Qureshi.
Forum Produktutvikling og Design Temadag om Mekatronikk og produktutvikling Johan Rusaanes FMC Kongsberg Subsea.
| Microsoft Norge. Softgrid fra A til Å Lau Sørensen - Commaxx
Administrasjon av SQL Server 2008 Av: Ole Kristian Bangås Fagansvarlig SQL Server.
Kap 05 Abstrakte datastrukturer. Arv - Implementering Interface / Abstrakte klasser / Konkrete klasser Concrete classAbstract class Interface extends.
Hva er Interaksjon Design?
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Persistenslag i Fakir Teori og praksis. Bruk av persistenslag 4 Felles interface for alle record brokere: interface IDbRecordBroker : IDispatch { HRESULT.
DENMARK FINLAND ICELAND NORWAY SWEDEN Neste generasjon Datavarehus med SQL Server 2008 Tommy Strandvold 1 Pervasive Insight.
Microsoft for akademia Rune Zakariassen Fagansvarlig for forskning og høyere utdanning Microsoft Norge.
ADA 95 – del3 Foreleser: Olaf Hallan Graven Bok: Programming in ADA95 (2nd) John Barnes.
JavaOne oppsumering tobias k torrissen
Implementering av caching ved hjelp av Spring Christian Vestøl
Citation and reference tools for your master thesis
OOT Seminar H-97 CORBA Praktisk del. Valg av ORB implementasjon n Har valgt å bruke Visigenic sin ORB implementsjon n ORB’en er 100% Java kodet n Bygger.
E-Site Utviklerfunksjoner. CMS Sentrale funksjoner –Contents Folder Article... –Snarveier –Direkteredigering –Filadmin (Bilder, media,...)
Paradigmer i Programmering 3. Højere ordens funktioner Idag: Højere ordens funktioner Algebraiske datatyper Næste gang: I/O, Filer, interaktive programmer.
Database tilgang Opret forbindelse til din Ms SQL database inde i Visual Studio fra Server Explorer vinduet.
1 Kap 06 Ordnede / Sorterte lister Oppgave nr 06_02 Polynomer Klassehierarki Javadokumentasjon.
Løsningsforslag til MOFScript oppgave. Metamodellen.
Å lese tall fra en fil, klassen Scanner 1.Et Scanner-objekt kan knyttes til et strømobjekt eller til en streng. 2.Kan skanne teksten etter data av ulike.
02 - Java datatyper Grundlæggende om datatyper og variable.
CORBA Noen hull som må fylles: ORB Object Adapters CORBA services IDL Factory Objects.
C O M M E N T O R A / S Commentor A/S – Hørkær 24 – 2730 Herlev - Tel : (+45) Fax : (+45) Team System VSS user guide to TFVC.
1 Pointere, referencer, struct’s mv.. 2 Erklæringer Eksempel på erklæringer int i, *ip, f ( ), *fip( ), (*pfi) ( ); Erklærer en integer, en pointer til.
Klasser og NetBeans At lave nye klasser i NetBeans.
1 | 2010 Internetteknologi 2 (ITNET2) Kort teknisk ASP.NET introduktion Mandag den 4/ Jesper Tørresø.
Linq – The Basics Arve Bjørnerud 20. November 2009.
State Of The Union – Backend & Desktop –
Tabeller Dette er en tabell, eller array. Den kan defineres sånn som dette: public int[] heltallsTabell = new int[11]; //Her er 11 tabellens lengde for.
GPS simulator Et C# program som sender data fra en GPS fil til RS232 og simulerer en GPS engine. Tre linjer pr. sekund er satt opp.
09 – Arv og polymorfi i java
Indledende Datalogi /kelk 1 Need to know Løkker Klasser, instanser og Objekter Hvorfor objektorientering? Scope – hvor erklæres en variabel? ”Access Modifiers”
Operational Insights. Hva er Operational Insights? Del av Azure Portalen Software as a service (SaaS) Bruker kraften i Azure HDInsight (Big data processing.
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
En dag med Silverlight Intro. Expression Blend 2 Expression Studio Hvad sker der for det sorte tema? Hvorfor Expression Blend?
PDA BlueTooth Opsætning / kontrol af PDA for BlueTooth netværk. Internet via PAN / LAN accesspunkt. (Work net) Der kunne i stedet vælges interner og så.
Containerklasser – klassifikation og brug.  Michael E. Caspersen, 2001Introducerende objektorienteret programmeringContainerklasser.2 Mange objekter.
Typeparametrisering Generel kode (generisk kode).
Windows PowerShell Ikke kun for windows.
Biological quality assurance in Norway– Biological standards
LO2 – Understand Computer Software
Behind the scene Anders Hattestad ,
Database.
Advanced R: Functions, packages, & version control
What belongs in state storage API’s?
Developing an Educational Web Application for Student Training in Geographical Information Systems (GIS) Derek Morris Jr. , Edsel Norwood , Disaiah Bennett.
Simplified CRAN/HeNB management PoC (RAN Information Model “release 0”
Utskrift av presentasjonen:

B.V. Electronic Østerbro Skive GuideOnLine Framework

System Requirements.Net Framework 4.0 Microsoft SQL Server 2008 R2* Microsoft Visual Studio 2010 GuideOnLine VB or C# Project Templates VB or C# Item Templates *GO Core and some plugins can run without a database

Project Templates Kopier mapperne: \Templates\ProjectTemplates\Visual C#\GOLF til \Documents\Visual Studio 2010\Templates\ProjectTemplates\Visual C#. Kopier mappen \Templates\ProjectTemplates\Visual Basic\GOLF til \Documents\Visual Studio 2010\Templates\ProjectTemplates\Visual Basic

Item Templates Kopier mapperne: \ItemTemplates\Visual C#\GOLF til \Documents\Visual Studio 2010\Templates\ItemTemplates\Visual C# \ItemTemplates\Visual Basic\GOLF til \Documents\Visual Studio 2010\Templates\ItemTemplates\Visual Basic

New C# Project

New Visual Basic Project

New Project Opretter nyt projekt Tilføjer.Plugin til assembly name Sætter Assembly Version til 4.0.* Tilføjer referencer til GO.Core.dll GO.Forms.dll GO.Shared.dll GO.Windows.dll Opretter Post-build event, der kopierer assembly til C:\Program Files\B.V. Electronic\GuideOnLine 4.0\

New Plugin Plugins er en erstatning for kodeforløbet: 1.Instantier typen ved at kalde vilkårlig constructor. 2.Typen specificeres i kode. 3.Instantieringsrækkefølgen af forskelllige typer bestemmes i kode. 4.Brug instansen. 5.Når ingen længere har reference til instansen -> GC. I stedet opnås følgende kodeforløb: 1.Instantier alle typer ved at kalde default constructor. 2.Typerne og instantieringsrækkefølgen specificeres i database. 3.Sæt InstanceID. 4.Kald Initalize() metoden. 5.Brug instansen. 6.Kald Terminate() metoden. 7.Når ingen længere har reference til instansen -> GC.

New Plugin Plugins er typer, der implementerer IPlugin: public interface IPlugin { string InstanceID { set; get; } void Initialize(PluginInitializeEventArgs e); void Terminate(PluginTerminateEventArgs e); }

New Plugin PluginControlBase System.Windows.Forms.UserControlForms PluginFormBase System.Windows.Forms.Form PluginNamedBase Class Class PluginUserControlBase (WPF) UserControl WPF System.Windows.UserControl PluginWindowBase (WPF) Window (WPF) System.Windows.Windows.Window

New Plugin

C#

VB

Debug Vælg Start external program og peg på C:\Program Files\B.V. Electronic\GuideOnLine 4.0\GO.Main.Windows.exe Tilføj –ignoreupdates under Command Line Arguments Vælg Start Debugging Tilføj plugin under Management

Debug

Opgave Opret en ny plugin og start den i GuideOnLine.

C# Plugin Properties

VB Plugin Properties

Plugin Properties

Opgave Opret en property og sæt værdien i GuideOnLine. Vis værdien, når pluginen starter op.

Services Services skal registrere sig selv i en singleton klasse, der implementerer IServiceManager: public interface IServiceManager { event EventHandler ServiceAdded; event EventHandler ServiceRemoved; void Add(string instanceID, string displayName, string descr, INamedObjectservice); void Remove(INamedObject service); object GetService(string instanceID); object GetService(Service service); INamedObject[] GetServices(); } Som det ses af IServiceManager, så er det eneste der kræves af en type for at være en service, at den implementerer INamedObject: public interface INamedObject { string InstanceID { get; set; } string Description { get; set; } string DisplayName { get; set; } } INamedObject er meget simpel at implementere. Man kan dog i stedet lade sin type arve fra NamedObjectBase, som i følgende eksempel: MyService : NamedObjectBase { void DoSomething() {} } // Create service var service = new MyService(); // Register service serviceManager.Add("Test.MyService", "Min Service", "Min danske beskrivelse", service); // Use service var use = (MyService)serviceManager.GetService("Test.MyService"); use.DoSomething();

Consumers Consumers kan vælge selv at hente deres services fra IServiceManager, som vist i forrige eksempel. Ofte vil man dog vælge, at lade consumer typen arve fra ServiceBase, der implementer de mest gængse services: IServiceManager ServiceManager; Database Database; IActivationOptions ActivationOptions; IEnvironment Environment; IDirectory Directory; ILog ErrorLog; ILog InfoLog; ILog EventLog; IDatabaseDictionary Dictionary; IAccessManager AccessManager; ILogOnManager LogonManager; Eksempel: MyConsumer : ServiceBase { void DoSomething() { // Use inherited service ErrorLog.WriteLine(“Hello world”); } Det er vigtigt, ikke at cache services i MyConsumer, da en eventuel ny service kan blive registreret.

Data binding i WPF DataItems kan bruges sammen med data binding i WPF. Mulighed for at læse og skrive data uden at have underliggende kode.

Services LogListener ILogListener (GO.Logging) DataServer IDataServer (GO) DataSubscription DataSubscription (GO.DataServices) MessageConnection IMessageConnection (GO.MessageHandler) Printer PrinterBase (GO.PrintHandler) Activity (Workflow) ServiceCodeActivity (GO)