środa, 23 maj 2012
NEXT / Artykuły / NEXT 3/2008 / Artykuły z NEXT 3/2008 / .NET dla programistów
NEXT 3/2008 - okładka





Temat numeru:
Przejdź do innych artykułów:

NEXT 3/2008 - .NET dla programistów

.NET dla programistów - ikonka środowisko programowania Visual Studio 2008

Data: 19 luty 2008
Identyfikator: 080375

Visual Studio 2008 to najnowszy pakiet firmy Microsoft przeznaczony do pisania programów. Dzięki temu narzędziu programista może pisać zarówno aplikacje do Windows (.NET oraz w kodzie natywnym), rozbudowane programy ASP.NET (strony WWW) wykorzystujące AJAX, usługi Web, aplikacje n-warstwowe, systemy bazodanowe, programy do urządzeń mobilnych czy telefonów komórkowych.

Strona 1 z 6
< Poprzednia 1 2 3 4 5 6 Następna >
.NET dla programistów - rozkładówka

Zdaniem eksperta

Paweł Małkowski
redaktor działu Software i Internet


Visual Studio to od kilku lat jedno z najlepszych IDE na rynku. Już wersja 2003 wydawała się w pełni dopracowana, a jednak programiści Microsoftu opracowali jeszcze dwie kolejne wersje, tj. 2005 i 2008. Prace nad tą ostatnią zostały właśnie zakończone. Jej premiera zbiegła się prawie z wydaniem nowej wersji .NET Framework 3.5. Znajdziesz w nim wiele ciekawych usprawnień, o których dokładniej przeczytasz w tekście. Bardzo dobrym posunięciem Microsoftu było przygotowanie kilku wersji Visual Studio, w tym jednej darmowej. Dzięki temu to popularne środowisko programistyczne jest dostępne dla większej liczby użytkowników.

Bazą i niezbędnym elementem aplikacji pisanych w Visual Studio jest platforma .NET. Jest to środowisko uruchomieniowe programu. Wraz z wprowadzeniem nowej wersji Visual Studio, Microsoft wprowadził kolejną wersję tego środowiska – .NET 3.5. Zawiera ona wiele przydatnych mechanizmów, takich jak: weryfikacja typów, zarządzanie wyjątkami, zarządzanie procesem wyszukiwania i załadowania pliku assembly (pakietu .NET), w którym zaimplementowana jest dana funkcja, itp. Zapewnia warstwę bezpieczeństwa (np. weryfikuje, czy uruchamiany kod jest prawidłowy, czy nie ma błędu w dostępie do pamięci itp.) oraz zawiera automatyczny odśmiecacz pamięci.

Częścią runtime jest także tzw. biblioteka klas bazowych (BCL), która zawiera tak naprawdę API dla programisty. Środowisko .NET 3.5 jest w pełni zgodne z wcześniejszymi wersjami. Lista nowych, a także ciekawych elementów, które znalazły się w .NET 3.5, znajduje się w ramce. Na szczególną uwagę zasługują trzy technologie: Windows Workflow Foundation, Windows Communication Foundation oraz Windows Presentation Foundation, które szerzej omówimy w dalszej części artykułu.

Windows Workflow Foundation

Wraz z wprowadzeniem Visual Studio 2008 integralną częścią środowiska stał się specjalny projektant procesów biznesowych wykorzystujący Windows Workflow Foundation. Jest to specjalne API przeznaczone do realizacji mechanizmu workflow (przepływu danych). Pozwala zdefiniować diagram, a następnie użyć takiego elementu we własnej aplikacji jako sposobu opisu pewnego procesu.

Niektóre nowe elementy BCL w .NET 3.5

  • Wbudowane wsparcie dla technologii AJAX (kontrolki UpdatePanel, ScriptManager oraz wiele klasycznych kontrolek ASP.NET dostosowanych zostało do AJAX itp.).
  • Mechanizm OCS do synchronizacji danych.
  • Integracja ASP.NET z jądrem IIS 7.0 (Windows 2008).
  • Nowe kontrolki w ASP.NET.
  • Aplikacje Windows Forms korzystające z analogicznych mechanizmów autoryzacji, ról i konfiguracji, jak np. systemy ASP.NET (ASP.NET Membership Provider).
  • Pełne wsparcie Windows Vista (spójny wygląd aplikacji) oraz obsługa mechanizmu UAC.
  • Dodanie mechanizmu do łatwego pisania pluginów.
  • W językach C# i VB.NET wprowadzone zostały pewne struktury znane dotychczas z języków dynamicznych i funkcyjnych, m.in. metod rozszerzeń, wyrażeń lambda, typów anonimowych i mechanizmu inferencji typów, co pozwoliło na wprowadzenie nowego sposobu pracy z danymi – LINQ. Oprócz tego nadal dostępne są elementy z C# 2.0, jak np. typy ogólne, klasy częściowe, metody anonimowe, delegaty, iteratory itp.
  • Wsparcie dla tzw. suite B – zestawu algorytmów kryptograficznych opublikowanych przez NSA (w tym AES, ECDSA itp.).
  • Mechanizm tworzenia sieci Peer to Peer oraz zwiększenie wydajności klas obsługujących gniazdka
  • Zmiany w klasach bazowych związane z definiowaniem wątków, mechanizmami refleksji i wydajnością.

Workflow może definiować zasady akceptacji wydatków (w zależności od wysokości, kategorii itp.) oraz określać przepływ informacji o dokumencie, który wpłynął do centrali. Warto też dodać, że swego rodzaju przepływem (z zapisywaniem stanu) jest też nawigacja użytkownika po stronach serwisu internetowego czy poruszanie się po ciągu formatek w aplikacji przeznaczonej do użytku lokalnego.

Workflow ma dwa główne mechanizmy do tworzenia diagramów. Pierwszy to diagram przepływów (ang. flowchart). Przypomina on klasyczny, formalny zapis algorytmów, gdzie odpowiednie kształty reprezentują rozmaite instrukcje warunkowe, pętle czy bloki operacji. W ten sposób można zdefiniować kolejno wykonywane kroki.

Drugi mechanizm to diagram stanów (ang. stateflow), w którym definiowane są zdarzenia określające operację przechodzenia pomiędzy poszczególnymi etapami. Za jego pomocą można np. zorganizować obieg dokumentów, w którym, gdy pojawia się nowy e-mail (zdarzenie), uruchamiany jest proces. Spowoduje on przekazanie tego dokumentu do właściwej komórki organizacyjnej.

Podstawowym elementem, z którego składa się przepływ, jest aktywność. Może to być zarówno komponent typu wywołaj kod, wywołaj usługę Web, ale także specjalny element napisany na potrzeby danego procesu. W przepływie dostępne są także komponenty: pojemniki, pętle czy warunki. Przy procesie projektowania warto wiedzieć, że aktywność może też czekać na zewnętrzne zdarzenie, np. gdy użytkownik potwierdzi przyjęcie danego dokumentu.

Każdy warunek może być zdefiniowany jako wyrażenie odwołujące się do właściwości albo fragment kodu. Takie wyrażenia mogą być dostarczane niezależnie od samej definicji przepływu, która może być zapisana w postaci dokumentu XML (dokładniej XAML – Extensible Application Markup Language) albo być częścią niezależną od reszty aplikacji. W ten sposób bardzo łatwo wymienić definicję procesu biznesowego bez konieczności zmian w strukturze budowy samej aplikacji.

W momencie gdy program startuje przepływ, powstaje nowa instancja, która obsługuje dane żądanie. Przepływ, np. czekając na decyzję człowieka, może być usunięty z pamięci i zapisany na dysku. Gdy przyjdzie komunikat skierowany do danej instancji, zostaje ona automatycznie wczytana do pamięci.

Inną ciekawą usługą dostępną w WF jest kompensacja. Oczywiście workflow pozwala na stosowanie normalnych rozproszonych transakcji, ale taki mechanizm nie nadaje się do procesów kilkudniowych. W przypadku kompensacji definiowane są operacje, które mają być wykonane przy wycofywaniu danego przepływu (np. towar z powrotem wraca do magazynu).

Workflow Foundation daje możliwość zupełnie innego spojrzenia na architekturę aplikacji. Zamiast implementować proces biznesowy w tabelkach bazodanowych czy bezpośrednio w kodzie programu, można zdefiniować go „obok” głównej aplikacji, co pozwoli na dużą elastyczność systemu. Warto też dodać, że WF 3.5 umożliwia komunikację z usługami WCF. Dzięki temu można zaimplementować aktywności jako usługi WCF i potem łatwo wywołać je z poziomu procesu biznesowego.


Tagi: programowanie  
Ocena: +++++    (aby ocenić, musisz się zalogować w serwisie)

< Poprzednia 1 2 3 4 5 6 Następna >

Podobne artykuły:

Komentarze:

Redakcja nie ponosi odpowiedzialności za treść komentarzy.
Komentarze wyświetlane są poczynając od najstarszych.

20.02.2008, 15:00
Opinia

Artykuł ciekawy i na tych 2 stronach zgrabnie ujmuje temat, aczkolwiek trochę mnie zdziwiło stwierdzenie, jakoby C++.NET był językiem dającym większe możliwości od C#. Nie jestem pewien, być może faktycznie tak jest, ale moja dotychczasowa styczność z platformą .NET sugeruje, że języki te, choć wykazują swoje przewagi w różnych zastosowaniach, posiadają zbliżone możliwości.
  windows_xp_2003 firefox
20.02.2008, 15:04
Opinia

Przepraszam za pomyłkę: moje powyższe stwierdzenie dotyczy artykułu "Sztuka programowania" ze strony 134.
  windows_xp_2003 firefox
28.02.2008, 20:24
NICE

MI pasują takie artykuły jak chodziłem do szkoły to w programie miałem tylko Visuala niestety wtedy niebylo NEXTA :P:
  windows_xp_2003 opera
03.03.2008, 19:57
Spox

Artykuł jak zawsze super opisany
Pozdro dla ekipy Nexta
  windows_xp_2003 firefox
Niezalogowany

Aby mieć dostęp do niektórych części serwisu NEXT (np. forum dyskusyjnego, oceny numeru, newslettera), musisz posiadać konto w naszym serwisie. Zachęcamy do darmowej rejestracji!

Jeżeli posiadasz już konto w serwisie, to zaloguj się.