Presentation laddar. Vänta.

Presentation laddar. Vänta.

Per Ahlberg Developer Evangelist, DPE Microsoft AB

Liknande presentationer


En presentation över ämnet: "Per Ahlberg Developer Evangelist, DPE Microsoft AB"— Presentationens avskrift:

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

64


Ladda ner ppt "Per Ahlberg Developer Evangelist, DPE Microsoft AB"

Liknande presentationer


Google-annonser