Matlab Builder for .Net a ASP.NET web aplikácie.


    MATLAB Builder for .NET rozširuje MATLAB Compiler o možnosť automatického generovanie .NET alebo komponentov alebo COM objektov z .m súborov. Z každej MATLAB-ovskej funkcie vytvorí MATLAB Builder for .NET metódu .NET komponentu. Vytvorené dynamické knžnice (DLL súbory) je potom možné zvyčajným spôsobom použiť mimo prostredia Matlabu. To umožňuje použiť algoritmy vytvorené v MATLABe v .NET aplikáciách. Komponenty vytvorené pomocou MATLAB Builder for .NET nepotrebujú MATLAB k svojej funkčnosti, preto môžu byť bezplatne distribuované užívateľom , ktorí MATLAB nemajú. Pre spustenie je samozrejeme potrebné pomocné súbory ako CTF súbor a nainštalované MCR rovnakej verzie ako na vývojovom počítači.
    Pre vytvorenie .NET komponentu, je potrebný .m súbor s funkciou, ktorý sa pomocou MATLAB Builder for .NET prevedie s pravidla do tried v jazyku C# . Zrealizovať sa to dá buď priamo príkazom mcc, alebo za pomoci grafického nástroja, v ktorom sa vyberie cieľový jazyk projektu (C, Java, .NET) , v tomto pripade .NET , meno projektu, pridajú sa .m a .mex súbory, nastaví sa meno celého distribučného balíka a názov triedy. Tento grafický nástroj je možné spustiť priamo z MATLABu príkazom deploytool. Použitie príkazu mcc, buď to z pracovného prostredia MATLABu alebo z príkazového riadku operačného systému by mohlo vyzerať nasledovne:

mcc -B 'dotnet:mypackage,mypackageclass,2.0,private' myfunc1.m myfunc2.m

Parameter -B dotnet: oznamuje kompilátoru, že ako výstup ma použiť .NET, mypackage je názov .NET komponentu (.DLL knižnice), mypackageclass názov triedy, ktorá má byť vytvorená a myfunc1.m myfunc2.m sú mená zdrojových .m súborov. Ak všetko prebehne hladko, kompilátor vyprodukuje zdrojové kódy v jazyku C# a to súbor mypackageclass.cs obsahujúci samotnú triedu s funkciami z pôvodného .m súboru, mypackage_mcc_component_data.cs obsahujúci dešifrovací kľúč pre CTF súbor, spomínaný CTF súbor a potom zo zdrojových kódov vytvorí knižnicu mypackage.dll.
Vytvorené komponenty je potom možné začleniť do akejkoľvek .NET aplikácie. Výmena parametrov medzi funkciami vytvorenými MATLAB Builder for .NET a zvyškom programu je zabezpečovaná cez MWArray API (MathWorks Array Application Programing Interface) . MWArray API je hierarchia tried, ktorá reprezentuje hlavné dátové typy v MATLABe. Koreňová trieda je abstraktná trieda MWArray, ktorá má podtriedy:
MWNumericArray,MWLogicalArray,MWCharArray,MWCellArray,MWStructArray
Tieto podtriedy obsahujú konštruktory pre vytváranie MATLAB-ovských dátových typov zo štandardných .NET dátových typov a obsahujú aj metódy pre spätnú konverziu.

ASP.NET webovské aplikácie

Microsoft ASP.NET nasledovník ASP (Active Server Pages) je relatívne nová technológia, ktorá umožňuje programátorom vytvárať dynamické web aplikácie. ASP.NET môže byť použitá pre čokoľvek, od malých osobných stránok až po veľké portály. ASP.NET je kompilované, na .NET-e založené prostredie, čo umožňuje vytvárať aplikácie v ktoromkoľvek .NET kompatibilnom jazyku. Štruktúra ASP.NET je navrhnutá tak, aby webstránky bolo možné efektívne navrhovať vizuálnymi nástrojmi, vrátane MS Visual Studia. Tvorba stránok je výrazne ulahčená nástrojmi, v ktorých je možné ovládacie prvky formulárov vkladať a upravovať klikaním a ťahaním myšou, prípadné chyby odladiť integrovaným debuggerom. ASP kód prakticky celý generuje vývojové prostredie. Ručne je potom potrebné napísať iba algoritmus spracovania údajov z formulára, resp. reakcie na udalosti. ASP.NET stránky sú uložené v .ASPX súboroch. ASPX formát je velmi podobný HTML. ASPX súbor typicky obsahuje statické HTML alebo XHTML tagy, ako aj tagy ovládacích prvkov. Dynamický kód bežiaci na serveri sa uklada špeciálnych blokov <% -- dynamic code -- %> podobným spôsobom ako sa to robí v podobných webovských technológiách ako PHP, JSP a ASP. To je však potláčané z dôvodu vyššieho zataženia servera pre mnoho volaní roztriešteného kódu pri zostavovaní webstránky v prospech kódu oddeleného v samostatnom zdrojovom súbore. Takýto súbor je automaticky vytvorený vývojovým prostredím. Ma rovnaký názov ako ASPX stránka až na to, že po .aspx prípone nasleduje ďalšia prípona v závislosti od použitého programovacieho jazyka, napr mypage.aspx.cs alebo mypage.aspx.vb. Nasledovné programovanie stranky sa podobá skôr na programovanie bežnej aplikácie. Programátor musí ošetriť dáta a akcie na udalosti ako načítanie stránky alebo kliknutie na ovládací prvok.

Návod:
    videonávod
    videonávod pre Real-Time Workshop
Použitý kodek H.264, ktorý je súčasťou balíka kodekov ffdshow.

Zopár ukážkových príkladov:

MagicSquare

    aplikácia generujúca štvorcovú maticu náhodných čísel zadaného rozmeru Aplikácia demonštruje jednoduchý vstup a výstup numerických údajov vo forme matice.

Simulácia URO

    aplikácia generujúcu výstupný graf zo simulácie vloženého diskrétneho systému, s vloženou periódou vzorkovania a parametrami regulátora v zložkovom tvare. Aplikácia demonštruje vstup numerických údajov a výstup vo forme grafu.

Simulácia URO v Simulinku

    stránku generujúcu výstupný graf zo simulácie pevne daného systému pomocou simulácie vytvorenej v Simulinku. Do formulára je možné vložiť koeficienty regulátora. Aplikácia demonštruje hlavne použitie simulinkovských modelov v nových technológiách a  výstup vo forme grafu.