Docstoc

ppt2 - Customizing and Extending Visual Studio 2005 Team System

Document Sample
ppt2 - Customizing and Extending Visual Studio 2005 Team System Powered By Docstoc
					     Microsoft Visual Studio 2005


             kiterjeszthetőség


Albert István
ialbert@aut.bme.hu
Automatizálási és Alkalmazott Informatika Tanszék
MSDN Kompetencia Központ
A kiterjeszthetőség célja

 A kiterjeszthetőség segítségével hozzáalakítható
 az eszköz a szoftverfejlesztési folyamathoz
    Így nem a folyamat igazodik az eszközhöz


 Például:
    Saját help rendszer
    Új nyelvek
    Új szerkesztők
    Ablakok (tool windows)
Visual Studio Extensibility
Lehetőségek




                                  Csomagok



                                   AddIn-ek
 Integráció mélysége




                                                            Integráció ára
                                    Makrók



                       VS felhasználó szintű testreszabás
Kiterjeszthetőség

Típus          Előnyei                            Korlátai
Testreszabás   Egyszerű                           Nem vezérli az IDE-t, csak
                                                  módosítja

Makrók         Az IDE teljes elérése              Nem ad új lehetőséget
                                                  Forráskóddal
Add-in-ek      Az IDE teljes elérése              Nem készíthet:
               Teljesítmény és forráskódvédelem    Új dokumentum típust,
               Lehetőség van :                     Új projekt típust,
                    Új ablakok létehozására,       Új debug motort,
                    Parancsok létrehozására,       Stb.
                    Opciók
Csomagok       Az IDE teljes elérése              Összetett fejlesztési
               Teljesítmény és forráskódvédelem   modell
               A teljes spektrum kihasználása
Makrók

 A Visual Studio ‘automation object model’-je több
 mint 140 osztályt ismer, ami lefedi az teljes IDE
 funkcionalitását
 A makrók kihasználhatják a .NET Framework
 lehetőségeit
 Tools / Macros menü
 Korlátok
    Csak Visual Basic-ben
    Nem használhatók új ablakok, parancsok, stb. létrehozására
Add-in-ek

 Testreszabás, automatizálás, kiterjesztés
 Új funkciókat hozhat létre
 Egyszerű
     Add-in varázsló
     XML regisztrálás
     Bármilyen nyelven, ami támogatja a COM-ot
 Használhatja a teljes Visual Studio
 objektummodellt
 Új ablakok, parancsok, konfigurációs lapok
 létrehozása
Visual Studio felületelemek
Csomagok (packages)

 A lehetséges legmélyebb integráció
   Transzparens, teljes értékű új funkcionalitás

 Teljes hozzáférés a közös shell funkciókhoz és az
 automation objektum modellhez

 Új, kiterjesztett funkciók a Visual Studio komponenseihez
   IDE

   Debugger

   Source Control

   Data Sources

   Etc.
Eszközök és támogatás


  http://msdn.microsoft.com/vstudio/extend/
  http://affiliate.vsipmembers.com/affiliate/default.aspx


  Visual Studio 2005 SDK
     Szabadon letölthető



  Visual Studio Industry Partner ( VSIP ) program
Kiterjesztési pontok
 IDE
   Project rendszer, nyelvek, szerkesztők, ablakok
   .NET Designers, menük, parancsok, eszköztár integráció, opciók,
   tulajdonság szerkesztő
   Help integráció, telepítés
 Debugger
   Saját debug engine
   Kifejezés kiértékelő
   Típus megjelenítők (Type Visualizers)
 Source Control
   Source Control Provider
 Adatforrások
   Új tervezés idejű adatforrások, Drag-n-Drop
   Data Source Provider
 Stb.
Architektúra

                                                      Natív csomagok
        Felügyelt csomagok
                                    vagy
       MPF 8.0
                       Interop Assemblies
                              Natív interfészek

                             Visual Studio 2005


A Visual Studio 2005 mint platform                Az SDK tartalma
  Natív interfészek biztosítják a                   Natív interfész IDL-ek
  kiterjeszthetőséget                               Interop Assemblies
  Interop Assemblies lehetővé teszik a              Példák, sablonok, dokumentáció
  felügyelt kódú fejlesztést
                                                    Package Wizard
Programozási modell
 Új funkció hozzáadása a VsPackage interfész
 segítségével
 A kiterjesztés logikai egysége
     CoCreate-able COM objektumok - IVsPackage;
     Egyéb COM objektumok
 Az IDE és a csamagok közti kapcsolatot a COM
 interfészek határozzák meg

 A Microsoft is ugyanezt az architektúrát használja !
Késleltetett betöltés

 Csak akkor tölti be a kódot, ha már nagyon kell
 A csomag tudatja magáról, hogy mit csinál, így
 az IDE tudja, hogy mikor kell betölteni
    Tartalmazza azokat a felhasználói elemeket is,
    amelyeket meg kell jeleníteni, így azok betöltés
    nélkül felkínálhatók a felhasználónak
 Gyorsabb indulást eredményez
IDE szolgáltatások

 Az interfészeket COM objektumok implementálják
 Az IDE funkcionalitás ezeken az interfészeken keresztül
 érhető el
     Automation
     Makrók
     Add-in-ek
 A csoamgok új szolgáltatásokat kínálhatnak
     És felhasználhatják a többi szolgáltatást
IDE szolgáltatások
Egyéb lehetőségek

 Designer
 Debugger
 MS Build
 Súgó
Designer
 Az elkészített saját komponensek tulajdonságai
 tervezési időben szerkeszthetőek
Testreszabás attribútumokkal

 A komponenst reprezentáló osztály
 tulajdonságai attribútumokkal megjelölhetőek
    Szerkeszthető-e vagy sem
    Szerkesztő
        String – fájl / mappa / stb.

 Saját szerkesztő készíthető
    A Visual Studio hosztolja
Debugger

 Attribútumokkal testreszabható, hogy mi jelenjen meg a
 debugger ablakban (watch window)
     Milyen szöveg reprezentálja az objektumot
         Hivatkozhat saját mezőire
     Mely tagok ne jelenjenek meg
         Tipikusan nem kell látni a tulajdonságot és a mezőt egyszerre

 Visualizerek
     Egy adott típushoz tartozó GUI definiálható, amely debuggolás
     közben megjeleníti a vizsgált objektumot
     Egyszerű
MS Build kiterjesztés

 make-szerű
 Hasonlít a NANT-ra
     Ami hasonlít az ANT-ra
 XML alapú
 A Visual Studio projekt fájljai ebben a formátumban
 vannak
 Testreszabható
     Saját taszkok, eszközök, stb.
 Például LINQ projekt: C# 3.0 fordító
Saját súgó

 A forráskód szabványos módon
 „felkommentezhető”
 A fordító XML kimenetet állít elő
 Az XML tetszőleges formába átalakítható
     HTML, ... MSDN stílusú help
 A Visual Studio szerkesztőben a kommentek
 azonnal megjelennek
     Osztályra, metódusra, paraméterre, ...
 Az elkészített súgó beépül az MSDN-be
Visual Studio Team System

 Rendszer szintű tervező eszközök
     System Designer, Database Designer, stb.
 Munkaelemek (Work Items)
     Taskok, bugok, stb.
 Forráskód verziónáló (Source Control)
     Nem SourceSafe
 Team Build szolgáltatás
 Csapat portál (Team Portal)
     SharePoint alapú
     Jelentések (bug reports, build reports, stb.)
  Visual Studio Team System Architecture
  Team Foundation Client Tier                                      Version Control              Build Machine
                                                                        Proxy
                                       MS Project
  Visual Studio Packages
                                        Plug-In                         Version
                                                                        Control                      Build
                                       MS Excel                          Proxy                      Process
     Internet Explorer                                                  Service
                                        Plug-In

  SQL RS         WSS
                              Team Foundation Object Model
  Proxies       Proxies
                                                                              VSTF
                                                                   Clients of VSTF                    Report Client
                                                                    VSTF Adjuncts
                                                                                                      Custom reporting
                                                                                                           tools
Team Foundation App Tier

  SQL        Windows       Work Item        Version    Team
                                                                     Core
Reporting   SharePoint     Tracking         Control    Build                         Adapters
                                                                    Services                                MS Excel
Services     Services       Service         Service   Service




  SQL        Windows                        Version   Team Build        Core
Reporting   SharePoint    Work Items                                                            Warehouse
Services     Services                       Control      Data           Data

Team Foundation Data Tier
Példák

 Nyelvek: C#, VB, stb.
 LINQ: Language Integrated Query
 DSL: Microsoft Domain Specific Language Tools For
 Visual Studio 2005
 VSTO: Microsoft Visual Studio for Office
 VSTS Designers
 Web Preformance Test in VSTS
 Checkin házirend
 Saját help beillesztése
Kérdések ?

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:15
posted:3/2/2011
language:Hungarian
pages:26