Ladda ner presentationen
Presentation laddar. Vänta.
1
Per Ahlberg Developer Evangelist, DPE Microsoft AB
Välkomna!!! Per Ahlberg Developer Evangelist, DPE Microsoft AB
2
Varför ”The Code Machine”?
Träffa er som utvecklar applikationer och lösningar Informera och utbilda Diskutera Svara på frågor Fokus på Microsoft .NET Olika kod scenarier: ASP.NET, Mobilitet, COM+, språk Uppgradering, .NET/Java Kod, kod, och mer kod
3
Mer resurser för Er ”Code Machine” kommer att fortsätta MSDN TV
Uppgradering Mer om Office 2003 SQL Server ”Yukon” MSDN TV Ni bestämmer innehållet Web Communitys Chatta med oss Support kvällar Artiklar
4
Hur kan vi bli bättre? Era utvärderingar är viktiga!
Betygsätt innehåll, talare, relevans Kommentera gärna Kommentarer från förra kvartalet: Kod exempel i C# alt. VB.NET För hög/låg nivå… För högt tempo/för svåra demo För mycket ”svensk-engelska” För olika ämne Inget för C++ utvecklare
5
Resurser för utvecklare
Utbildning Kurser och litteratur TechEd (Juli, Barcelona), PDC (Oktober,LA) Lokala utvecklarkonferenser CTEC kurser Utvecklargrupper Programmering Arkitektur och design ”Regional Directors”
6
MSDN Prenumerationer Prioriterad tillgång till mjukvara
Automatisk publicering, månadsvis Library Operating Systems Professional Enterprise Universal
7
Vilka är vi som är här?
8
Rika klienter Per Ahlberg
9
Hur såg det ut tidigare? Enklare lösningar Avancerade lösningar
Skrivs internt på företaget Skrivs i Office/VBA, Visual Basic 6 ActiveX kontroller i HTML sidor för distribution Många ASP lösningar, trots allt rätt krävande Oftast direkt kopplade till databaser i LAN Via ODBC etc. Relativt få DCOM lösningar Avancerade lösningar Fler skiktade lösningar med DCOM alt. egna protokoll C++ MFC applikationer
10
Vad går utvecklingen? För enklare lösningar: Avancerade lösningar
Skrivs i ASP.NET Enklare distribution, snabbare drift/underhåll Ribban har blivit högre för webblösning Vi får snyggare/bättre webblösningar Skrivs i InfoPath Office 2003 Mer smarta klienter Avancerade lösningar Blandning mellan ASP.NET och Windows applikationer Webservices VB.NET, C#
11
Rika klienter – typiska fördelar
Bättre UI Enklare att anpassa kulturellt Bättre grafik! Håller ”state” Dvs. lätt att hålla värde (på klienten) Använder den kraft som finns i maskinen Multitrådning Många appl. blir enklare och snabbare att jobba med Tillgång till alla andra resurser som finns på klienten Office Skrivare
12
Multitrådade applikationer
Enkelt i .NET System.Treading namespace System.Treading.Tread Använd en ”Tråd klass” för att skicka parametrar Många andra funktioner körs på egna trådar Asynkrona Webservices Grafiska komponenter Mellan trådar Det finns funktioner för att låsa resurser (eg. objekt) mellan trådar Använd ”call-back” funktioner för asynkron hantering Använd Delegater för kommunikation mellan trådar Används för mycket annat också!
13
Asynkrona webservices
Demo Asynkrona webservices TCMDemo_Async
14
Utskrift från rika klienter
Enklare i .NET Fortfarande rätt svårt om man skall göra det själv System.Drawing.Printing namespace Använd Crystal reporter Bättre än nånsin Rapport generering på klienten eller servern Kommunikation via webservices Bättre förhandsgranskning, generering av PDF-filer Använd Word Enkelt att ändra mallen Bra för blanketter med mera
15
Demo Utskrift TCMDemo_printing
16
Vad är en globaliserad applikation?
Hanterar internationell data Exempel datum, nummer format, kalender, sortering Inmatning och visning på kultur 12.000,00 för de-DE, 12, fö en-US Feb 3rd, 2001 kan visas som 03/02/01 en-GB 01/02/03 ja-JP 02/03/01 en-US World-wide binaries Endast en ”core binaries” som används för många kulturer Ny marknad? Bara lägg till ett översätt UI
17
Inbyggt Internationellt stöd
Kultur medvetna API, som System.Globalization CultureInfo DateTimeFormatInfo NumberFormatInfo CompareString System DateTime.ToString Decimal.ToString Kontroller som använder dessa API, som WindowsForms DateTime picker
18
Globalisering detaljer
System.Globalization.CultureInfo Ett antal kultur specifika inställningar CurrentCulture Datum och nummer formatering Sträng jämförelse mm CurrentUICulture Väljer språk (vilket språk UI skall ladda) Kan sättas per tråd
19
Sätta CurrentCulture, CurrentUICulture
Underförstått CurrentUICulture Plockas från GetUserDefaultUILanguage Kan ändras av användaren Annars = installerat språk Operativsystemets språk resurser CurrentCulture Hämtas från GetUserDefaultLCID Ändras vid ändringar i kontrollpanelen, ”Regional Options”, ”Set Locale”
20
Sätta CurrentCulture, CurrentUICulture
Specifikt I ett individuellt som API som tar kultur som parameter Thread.CurrentThread.CurrentUICulture = new CultureInfo(“de”) Thread.CurrentThread.CurrentCulture = new CultureInfo(“de-DE”) DateTime.Parse(strMyDate, “en-NZ”)
21
Demo Kultur parametrar i API TCMDemo_Cultures
22
Kontrollpanelen Som standard, kontrollpanelens kultur påverkar CurrentCulture, inte CurrentUICulture För att få dom att ändras tillsammans, använd Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
23
Om jag inte vill att formatering skall ändras?
För UI, använd kultur specifik formatering Vissa komponenter behöver icke formaterad data, som 1,111.11 MM/DD/YYYY Använd: CultureInfo.InvariantCulture
24
“Localization” Separata översättningsbara resurser
Använd ”Resource Manager” för att ladda dom Hård koda inte resurser Resource manager Laddar resurser per ”UIculture” Finns i System.resources namespace
25
Laddning av resurser Skapa en ”Resource Manager” Exempel
RM konstruktor anger från vilken fil som resursen skall laddas ”Resource manager” både strängar och objekt Exempel RM.GetString (“string1”, “en-NZ“) RM.GetString (“string1”) RM.GetObject(“Button1.Cursor”) Laddar resurser baserat på Thread.CurrentThread.CurrentUICulture …
26
TCMDemo_Globalisering
Laddning av resurser TCMDemo_Globalisering
27
Resurs filer, struktur
28
“Localization” Namnsättning
.resources files: <myproject>.<xx-XX>.resources Satellite assemblies <myproject>.resources.dll Katalog placering för ”Satellite assemblies”: Underkataloger på kultur, xx eller xx-XX Myproject.dll \fr\myproject.resources.dll \de-DE\myproject.resources.dll
29
Skapa en ”Satellite Assemblies”
Skapa en/flera resursfiler Som en textfil - .txt Som en XML fil - .resx Kör resgen.exe Ger en Binär .resources fil Kör al.exe Ger en separat ”Satellite Assemblies” Du kan även kompilera in resurserna i en ”portable executable (PE) image” Eller använd Visual Studio!
30
TCMDemo_MultiLanguage
Flerspråksstöd TCMDemo_MultiLanguage
31
Hämta och köra appl. från webben
Enkel distribution Både som WinForms eller Windows Control .EXE (System.Windows.Forms.Form) .DLL (System.Windows.Forms.UserControl) <html><body><a href=”foo.exe">Call executable</a></body></html> … <object id=“WebControl1“ classid=" height="300" width="300"> <param name=“Value1" value=“per"> </object>
32
Nedladdning av applikationer
Första gången: HTTP request: GET /foo.exe HTTP/1.1 …
33
Nedladdning av applikationer
Server svar: … Content-Type: application/octet-stream Accept-Ranges: bytes Last-Modified: Fri, 01 Feb :41:16 GMT ETag: "50aae089c1aac11:916" Content-Length: 45056 <<stream of bytes from foo.exe>>
34
Nedladdning av applikationer
Lagras på två ställen: Browser internet cache .NET download cache c:\windows\assembly\Download\ Gacutil, använd /ldl eller /cdl
35
Nedladdning av applikationer
Om Assembly finns i ”cachen”: HTTP request: …. If-Modified-Since: Fri, 01 Feb :41:16 GMT If-None-Match: "50aae089c1aac11:916" Server svar: … Date: Fri, 01 Feb :42:03 GMT ETag: "a0fa92bc8aac11:916" Content-Length: 0
36
Hämta och ladda Assembly från kod
Om Assembly finns i ” AppBase” behövs det ej! AppBase kan dock vara lokal katalog System.Reflection [Assembly].LoadFrom(…) Activator.CreateInstance(…)
37
Demo Windows Forms i IE TCMDemo_WindowsForm
38
string appbase = AppDomain.CurrentDomain.BaseDirectory
Sökning av Assembly Om dom inte finns i egen katalog Global Assembly Cache (GAC) Download cache Hämtas hos original servern (AppBase) string appbase = AppDomain.CurrentDomain.BaseDirectory
39
Windows Forms Controls i IE
Demo Windows Forms Controls i IE TCMDemo_FormsControl
40
Säkerhet – det lata alternativet
Ändra säkerhet på ”Internet zon” Lägg till URL i ”Trustet sites” listan
41
Säkerhet – med publika nycklar
Skapa en publik nyckel (sn.exe) Använd en gemensam publik nyckel Kör ConfigWizards.exe Lita på alla Assemblies med samma publika nyckel
42
Rika klienter kommer faktiskt att öka. - Tack vare
Rika klienter kommer faktiskt att öka! - Tack vare .NET - Tack vare Webservices
43
Office 2003 Per Ahlberg
44
Nyheter i Office 2003 Utökat XML Stöd i alla produkter
"Visual Studio Tools for Office“ Office InfoPath Smart Documents Smart Tags, Version 2
45
XML stödet i Office Word 2003
Inbyggt XML Stöd Eget filformat Templates kan innehålla XML schema Du kan spara endast data eller hela dokumentet Ett world dok. kan nu innehålla XML taggar Skapa XML taggar helt intuitivt Kan konsumera webservices Via smart dokument ”Task panel” ”Live” eller statiskt XML i Word dokumentet
46
XML Stödet i Office Excel 2003
Utökat XML stöd Koppla direkt till Webservices (som en klient) Mappning mellan XML ”spreadsheet” och egen definierade XML Schema Importera/Exportera data mellan Webservices Smart Documents
47
XML stödet i Office Access 2003
Extrahera XML direkt från en eller flera tabeller Söka och välja ut data för export tex. till ett Import Importera data som refereras med XSD Skapa XSLT för transformering av data
48
XML stödet i Office Visio 2003
Spara diagram som Visio XML fil Kan innehålla data XML schema
49
XML stödet i Office Frontpage 2003
Skapa XSLT med grafiskt stöd verktyg XSLT data views rapport verktyg Sortering Gruppering Filtrering
50
Demo XML stödet i Office 2003
51
Microsoft Office InfoPath 2003
Enkelt formulär verktyg som bygger på XML schema ”Taggar” dina fält mot XML element Använder XSLT för visning av formulär Formulärhantering Komplexa formulär med hierarkiska strukturer ”freeform” text Tabeller Data validering Data aggregering Multipla vyer Kopplas direkt till en webservice Eller lagra informationen som en XML-fil
52
Demo InfoPath
53
"Visual Studio Tools for Office“
Addin till visual studio 2003 Hämtas på nätet Installera först Office 2003 “primary interop assemblies (PIAs)” installeras då automatiskt Använd ”managed” kod mot Word/Excel Samma objekt modell som innan Går att använda samma trick som innan – spela in macro, copy/paste
54
Demo "Visual Studio Tools for Office”
55
Avslutning Per Ahlberg
56
Vad har vi pratat om i dag?
Rika klienter Enkelt att göra avancerade lösningar i Visual Studio .NET Denna typ av klienter kommer alltid att behövas Kommunicerar med XML Web Services Nya möjligheter för distribution/uppdatering Office 2003 Dess kraftfulla integrering med Visual Studio .NET XML Stödet Smart tags Info Path
57
Kvar att prata om? Rika klienter Office 2003
Avancerade n-lagers lösningar Säkerhet Avancerad utskrifter Crystal Reporter på servern Många fler fördelar… Office 2003 Alla nya ”fräcka” funktioner Web Services kopplingar i World/Excel Nya funktioner i Access Office 2003 Objekt modeller Office 2003 Web Services Toolkit Plus mycket, mycket mer…
58
Era viktigaste verktyg
Visual Studio .NET och MSDN Microsoft: msdn.microsoft.com Communitys Sök på tex. Google! Nyhetsgrupper msnews.microsoft.com
59
Resurser för utvecklare
Utbildning Kurser och litteratur TechEd (Juli, Barcelona), PDC (Oktober,LA) Lokala utvecklarkonferenser CTEC kurser Utvecklargrupper Programmering Arkitektur och design ”Regional Directors”
60
Support för Office 2003 Mängder med gratis information och hjälp finns att tillgå online på För dig som köpt Office 2003 i kartong i butik: Två kostnadsfria supportärenden hos Microsoft support Supportärenden kan anmälas online direkt på Om du skulle göra slut på dina två supportärenden kan du vända dig direkt till Microsoft eller till Microsofts certifierade support-partners: Solvus, Växjö Support, HP. Se för mer info. Har du köpt Office 2003 färdiginstallerat i datorn (OEM): Hårdvaruleverantören eller inköpsstället är genom avtal med Microsoft ansvarig för supporten och är den du ska kontakta. Se för mer info. Samtliga Microsofts supportkunder: Microsoft erbjuder kostnadsfri support vid misstänkt virusproblem eller misstänkt bug
61
30:e juni – 4:e juli i Barcelona
Möt 6000 utvecklare och IT-proffs Välj bland över 270 djupgående tekniska sessioner Flertalet laborationer Träffa experter från Microsoft och partners
62
MSDN Prenumerationer Prioriterad tillgång till mjukvara
Automatisk publicering, månadsvis Library Operating Systems Professional Enterprise Universal
63
Tack för idag! Fyll i utvärderingarna
Hur kan vi förbättra oss till nästa gång! Skriv kommentarer Ta gärna med lite skräp när ni går! Frågor, kommentarer, förslag till: Per Ahlberg
Liknande presentationer
© 2024 SlidePlayer.se Inc.
All rights reserved.