Visual Basic

Testreszabása névtér

A nevem teret biztosít tulajdonságok és módszerek, amelyek „csak a munka.” Megoldásában közös programozási feladatok szolgáltatásai iránti igény csökkentése céljából a fejlesztés a teljes .NET Framework. Ellentétben sok formái és az infrastruktúra névtér My «élezett» egyszerű megoldás a gyakori problémákat. Azonban ha van más követelmények, nincs szükség arra, hogy rajta. Segítségével a My adaptációs modell, akkor lehet változtatni a viselkedését tagjainak, ahogy lennie kell az alkalmazásban.

Állítsa be a meglévő tagjai a My névtér

Az egyik legnagyobb kihívások, amelyekkel a fejlesztők, amikor az univerzális infrastruktúra - konfigurációs feladat. Ezért tagjai My névtér támogatja az alapértelmezett konfiguráció a legtöbb esetben megfelelő. Így a tér System.Security nevet tartalmaz egy nagy teljesítményű, szabadon skálázható infrastruktúra kiépítése védelem alapján szerepeket. Azonban a közös feladat, például, osztály beállításokat, meg kell végre nevében az aktuális felhasználó Windows, nehéz lehet:

My.User alapértelmezett magában az aktuális felhasználó Windows és inicializálja a kód nem szükséges. De My.User az alapértelmezett konfiguráció, valamint sok más tagjai a My Space, meg lehet változtatni, ha szükséges:

My.Application.Log vezérli a fájlt a.config, és ez a további előnye - meg lehet változtatni telepítése után az alkalmazás, mert újrafordítás nem szükséges.

Beállítás My.Computer.Network

My.Computer.Network egyszerű, meghatározására szolgáló módszerek a rendelkezésre álló hálózat, valamint a feltöltési és letöltési fájlokat:

Beállítás My.Settings

Modell kiterjesztése My névtér egyszerűsíti és teszi következetesebb a folyamat megosztási döntések fejlesztők.

Ábra. 1. Alkalmazás RegistrySettingsProvider

Saját névtér meghosszabbítása

Saját névtér megoldást nyújt számos közös programozási feladatot, de ha dolgozik speciális területeken találkozhatnak a probléma nem oldja meg. Tehát My.Computer támogatja olvasás és írás a soros port, de nem támogatja az USB-port; My.Application tartalmaz nyomokban funkciókat, de nem ad olyan eszközt, amely az összeomlás; programban aktívan munkát az adatokkal, használhatja a csomópont «My.Data» felső szintű rutinszerű műveletek az adatokat. A modell alkalmazásáról tágulási szereplő My névtér, akkor új tagokat is. Transzfer névtér kiterjesztés My más fejlesztők ugyanabban a tartományban lehetővé teszi számukra, hogy kiterjesztések ugyanolyan könnyen, mint a többi tartalmát a My Space.

Talán kíváncsi, miért is kellene egyáltalán bővíteni. Ma, a fejlesztők külső osztály könyvtár konkrét problémák megoldására, miért kódot írni, ha valaki már csinált ilyet? Gyakran fejlesztők a harmadik fél (vagy állami) osztálykönyvtárat, de igényel némi erőfeszítést, hogy megtanulják. Milyen problémákat megoldja a könyvtár? Hogyan kell használni? És használni? Te biztosan lesz ilyen kérdéseket. A meglévő különböző szabványok fejlesztése megnehezíti a tanulási folyamatot. Modell kiterjesztése My névtér egyszerűsíti és teszi következetesebb a folyamat megosztási döntések fejlesztők. Követve a világos szabályok, tudunk megoldást annak biztosítására, hogy a fejlesztő tudni fogja, hogyan kell használni őket, és hogy a fejlesztők minden képzettségi szinten lesz képes hatékonyan alkalmazni azokat a tevékenységüket.

Eltérően más terek .NET Framework nevek alapján a külső szerelvény (DLL), My tér a gyökér térben a Visual Basic projekt nevét és található egy fájl a memóriában. A 2. lista mutatja egy részét annak tartalmát.

2. lista Saját névtér felülvizsgálata

Mivel az előre meghatározott felső szintű tagok kerülnek beállításra a fordító állandók, ezeket az értékeket át kell adni a fordító a parancssori paramétereket. A Visual Studio fordító állandók vannak beállítva a Compile oldal Projekt tervező.

nyomós My.User

Én mutatják aziránt saját MyType példáját My.User, visszatér egy egyéni típusú ExtendedUser. Az utóbbi tartalmazza segítő módszerek és bejelentkezéseket hitelesítés végrehajtásához. Először hozzon létre egy osztály könyvtár és add hozzá a következő osztályokba:

Ezután hozzon létre egy Windows Forms projekt és adjuk hozzá a linket az osztály könyvtári. Add a definíciót My.User:

Értéket rendelni _MyType «egyéni», és kapcsolja be az előre meghatározott tagjai a felső szintű névtér én, átadva a megfelelő érveket a fordító. A következő érvek szólnak a befogadás valamennyi tagjának az előre meghatározott, kivéve, hogy csak egy bizonyos My.User:

Testreszabása névtér

Amikor kiválasztunk egy fejlesztési stratégia, telepítési és támogatási névtér kiterjesztés én, a legegyszerűbb módja annak, hogy ossza meg a problémát két részre: a létrehozása a névtér kiterjesztés és létrehozása My osztály könyvtár. névtér kiterjesztése My - ezt a kódot a nyilvánosságra hozatal az osztályokra a My Library, a fentiek szerint, és az osztály könyvtári - szerelvény (DLL), amely tartalmazza a fajta nyilvánosságra a terjeszkedés.

Ha a Visual Basic fordító vezetünk egyéni MyType nevem tér kiürül, és meg kell, hogy add vissza a szükséges tagja.

Ajánlások fejlesztés

A következő irányelvek segíthetnek minimalizálni a támogatást névtér kiterjesztés alkatrészek Saját költségeket.

Csak az mellék logika. Logic, amely tartalmazza a megfelelő névtér kiterjesztés én, tartalmaznia kell a „töltelék” szükséges funkciókat a közzététel e névtérben. Mivel a forráskód ez az összetevő szerepel a projektben, frissítse az expanziós nagyon drága eljárás, amelyet el kell kerülni, ha lehetséges.

Próbálj meg nem tesz semmilyen feltételezéseket a projekteket. Általánosságban elmondható, hogy nem kell semmilyen feltételezéseket tulajdonságait a projekt, különösen a linkeket, import irányelvek vagy konkrét fordító beállításai (pl off Szigorú paraméter). Ehelyett arra törekszünk, hogy minimalizáljuk a függőség, használja a teljes hivatkozások minden típusú a kulcsszó Globális és győződjön meg arról, hogy a kiterjesztés be van fordítva a szigorú paraméter azonosítja a hibákat ebben a kiegészítőben.

Elkülöníteni a kiterjesztés kódot. Hogy megkönnyítse elkülönítése névtér kiterjesztés My helyezze a kódot egy külön fájl vagy mappa a projektben.

Fejlődő Class Libraries for My

Mint a legtöbb objektum modell, néhány elrendezési sablonok működik a My névtér, és néhány - nem. Fejlődő bővítmények én, használja a következő irányelveket.

API feltételek nélkül. Saját névtér módszereket kell biztosítani a végső megoldás egy adott problémára. A bemeneti paramétereket kell venni csak a szükséges adatokat a feladat elvégzéséhez. Módszerek, hogy támaszkodnak a korábbi állapotot, a My általában rosszul. A My.Computer.FileSystem vannak jó példák API feltételek nélkül, jól működik keretében a My.

Global példányok. Az egyetlen állami fenntartású Saját, - a globális az egész projekt. Tehát My.Application.Info magában állam, amely közös az egész alkalmazást.

Egyszerű típusú paraméterek. A legegyszerűbb módszer általában nem szükséges paramétereket az összetett típusok. Úgy kell egy húr, elemi típusok, és így tovább. D.

Gyári módszerekkel. Másolatok bizonyos típusú létrehozni nem olyan egyszerű. Gyár Extensions Saját megkönnyítik az ilyen típusú. Egy példa a jól működő gyár módszer - My.Computer.FileSystem.OpenTextFileReader. Mivel többféle Stream, ez a módszer egyértelműen jelzi, hogy melyik Áramlat kell használni, és hogyan.

Ezek az ajánlások nincsenek általános szabályok fejlesztésének osztálykönyvtáraknak. Ez az ajánlás, amelynek célja a fejlesztők a Visual Basic és a tér nevem. Szabályok fejlesztési osztályok .NET Framework.

Csomagolás és telepítés Extensions

Visual Studio sablon fájl (.vstemplate) kifejezés a tartalmat, ami egyaránt lehet használni, mint egy alapot az új projektek (projekt template), vagy adjunk hozzá egy meglévő projekt (sablon elem). Csomagolás Saját bővítmények formájában sablon fájlok, akkor gond nélkül integrálható a Visual Studio és lehetővé teszi a felhasználók számára, hogy meghosszabbította a projekt révén a dialógusok Új elem hozzáadása és New Project. Az előnye ennek a megoldásnak, hogy a Visual Studio sablonokat lehet beállítani a felhasználói szinten vagy a számítógép szintjén. Egy példa a tér tágulását nevem, csomagolva egy Visual Studio elemsablon tartalmazza a forráskódot, amely lehet letölteni ezt a cikket.

következtetés

A nevem helyet biztosít egy teljes értékű készlet a tagok és a szolgáltatások, amelyek megkönnyítik a megoldás számos programozási feladatot. Azonban míg ez meg nagyon nagy, ez nem több, mint egy kiindulási pont a további fejlesztéseket. Kiterjeszthetõségében modell lehetővé teszi, hogy hozzon létre, ossza meg és javítsa tér My nevek igények változása a kérelmet.

Kapcsolódó cikkek