sciaga(1), Politechnika Wrocławska - Materiały, teoria systemow


2. Zmienne automatyczne: Zmienna tworzona „na nowo” przy każdym uruchomieniu funkcji, domyślny rodzaj zmiennych lokalnych, są automatycznie tworzone i usuwane w czasie wykonywania programu, są umieszczone w obszarze stosu

Zmienne statyczne: Wartość zmiennej zapamiętywana pomiędzy kolejnymi wywołaniami funkcji, są tworzone raz, przy wywołaniu programu

Zmienne dynamiczne: Mogą być tworzone i usuwanie w dowolnym momencie działania programu

-Są umieszczane w obszarze sterty (heap), maksymalny rezerwowany obszar zależy od systemu i dostępności pamięci, dają możliwość kontroli nad przydziałem pamięci (np. reakcję, gdy nie uda się utworzyć odpowiednio dużej tablicy, dostęp do zmiennych dynamicznych możliwy jest wyłącznie z użyciem wskaźników, nie mają nazw - powstają w czasie działania programu

3. Klasa jest podstawowym blokiem programu zorientowanego obiektowo. "Klasa" definiuje nowy typ danych. Obiekt jest fragmentem pamięci, któremu przyporządkowano pewien typ i sposób odwoływania się do niego przy użyciu języka programowania. W programowaniu zorientowanym obiektowo "obiekt" przeważnie oznacza zmienną lub stałą (ogólnie jakąś część pamięci) zgodną z opisem klasy.

4.Konstruktor w programowaniu obiektowym to specjalna metoda danej klasy, mająca za zadanie utworzyć obiekt tej klasy. Konstruktor jest to funkcja w klasie, wywoływana w trakcie tworzenia każdej instancji. Funkcja może stać się konstruktorem gdy spełni poniższe warunki

Należy dodać że każda klasa ma swój konstruktor. Nawet jeżeli nie zadeklarujemy go jawnie zrobi to za nas kompilator (stworzy wtedy konstruktor bezparametrowy).

Destruktor jest natomiast funkcją, którą wykonuje się w celu zwolnienia pamięci; następuje niszczenie obiektu danej klasy.

5. Główną zaletą programowania obiektowego jest łatwość przekładania poszczególnych wymogów na poszczególne moduły systemu. Kolejną zaletą jest możliwość wielokrotnego zastosowania poszczególnych modułów systemu. Ponadto każdy moduł odpowiedzialny jest za konkretne zadanie, nie występuje dublowanie funkcjonalności co pozwala szybko i skutecznie poprawiać powstałe błędy.

6. Dziedziczenie to operacja, która powoduje przeniesienie danych i metod z klasy bazowej do potomnej. Mechanizm ten uwalnia programistę od ponownego tworzenia i implementowania struktur danych oraz funkcji działających na tych strukturach. Udostępnia on możliwość korzystania z własnej bądź cudzej pracy jedynie poprzez rozszerzanie już zaimplementowanych elementów. Nie ma więc konieczności ponownego definiowania tego, co raz już zostało zrobione.

7. Hermetyzacja to sposób odizolowania od otoczenia wybranych danych i funkcji (operujących na tych danych) zgromadzonych w jednej strukturze. Widoczne są tylko niezbędne fragmenty programu, natomiast zmienne i funkcje pomocnicze są ukryte i niedostępne z zewnątrz. Dla terminu hermetyzacja spotyka się również określenie enkapsulacja.

8. Na czym polega analiza, modelowanie i projektowanie obiektowe?

Analiza : badanie i klasyfikacja obiektów pojęciowych (obiekty reprezentują pojęcia i koncepcje ze świata rzeczywistego)

Projektowanie: określenie koncepcji rozwiązania które sprosta wymaganiom, określenie co mają zawierać poszczególny klasy, jak maja ze sobą współpracować i jak mają być powiązane, stworzenie opisu schematu bazy danych lub klas programowych

Dopiero po analizie i projektowaniu można przejść do pisania kodu

Modelowanie: stworzenie uproszczonej koncepcji świata rzeczywistego, analiza obiektów i zależności między nimi, zaprojektowanie nowych.

9. .NET Framework, w skrócie .NET (wym. dot net) - platforma programistyczna opracowana przez Microsoft, obejmująca środowisko uruchomieniowe (Common Language Runtime - CLR) oraz biblioteki klas dostarczające standardowej funkcjonalności dla aplikacji. Technologia ta nie jest związana z żadnym konkretnym językiem programowania, a programy mogą być pisane w jednym z wielu języków - na przykład C++/CLI, C#, J#, Delphi 8 dla .NET, Visual Basic .NET. Zadaniem platformy .NET Framework jest zarządzanie różnymi elementami systemu: kodem aplikacji, pamięcią i zabezpieczeniami. W środowisku tym można tworzyć oprogramowanie działające po stronie serwera internetowego (IIS) oraz pracujące na systemach, na które istnieje działająca implementacja tej platformy.

10. Graficzny interfejs użytkownika (ang. Graphical User Interface, GUI), często nazywany też środowiskiem graficznym - ogólne określenie sposobu prezentacji informacji przez komputer oraz interakcji z użytkownikiem, polegającego na rysowaniu i obsługiwaniu widżetów. Cechy dobrego GUI:

-Intuicyjność

-Przejrzystość: Treściwe komunikaty, Nie zatłoczone okna

-Uporządkowanie: Grupowanie logiczne powiązanych ze soba kontrolek

-Spójność i konsekwencja: Jednolity wygląd wszystkich okien

- Łatwość nawigowania: Obsługa klawiatury- nie tylko myszy

- Zgodność ze standardami w informatyce i w danej dziedzinie

- Odpowiednia pomoc dla użytkownika: Plik pomocy (heeeelp)

-Ergonomia: Rozmiar kontrolek, wygląd nie rażący w oczy, równo pięknie cacy

-Sprawność działania: Pasek postępu jeżeli operacja trwa dłużej niż 2 sekundy

-Inne: Poprawność językowa, Zabezpieczenia

11. UML (ang. Unified Modeling Language, czyli Ujednolicony Język Modelowania) - język formalny służący do opisu świata obiektów w analizie obiektowej oraz programowaniu obiektowym. Służy do modelowania dziedziny problemu (opisywania-modelowania fragmentu istniejącej rzeczywistości - na przykład modelowanie tego, czym zajmuje się jakiś dział w firmie) - w przypadku stosowania go do analizy, oraz do modelowania rzeczywistości, która ma dopiero powstać - tworzy się w nim głównie modele systemów informatycznych. UML jest głównie używany wraz z jego reprezentacją graficzną - jego elementom przypisane są symbole, które wiązane są ze sobą na diagramach.Perspektywy widzenia systemu:

Zalety:

-jest notacja systemowa znana na całym świecie w procesach tworzenia systemów

-Pozwala opisać system z rożnych punktów widzenia

-UML - pokazuje co system ma zrobić a nie jak zrobić

Wady:

-Złożoność języka - trudny

-podobna symbolika elementów - ciężko zrozumieć program patrząc na niego pierwszy raz

12. Wybierz dwa dowolne rodzaje diagramów uml i opisz co przedstawiają i do czego służą. Opisz użyte w nich elementy.

Diagram klasw ujednoliconym języku modelowania, to statyczny diagram strukturalny, przedstawiający strukturę systemu w modelach obiektowych przez ilustrację struktury klas i zależności między nimi. Diagram klas przedstawia klasy (typy) obiektów w programie, w odróżnieniu od diagramu obiektów, który pokazuje jedynie egzemplarze (instancje) obiektów i ich zależności istniejące w konkretnym momencie. Diagram klas pokazuje określony fragment struktury systemu. Diagramów klas używa się do modelowania statycznych aspektów perspektywy projektowej. Diagramy klas pozwalają na sformalizowanie specyfikacji danych i metod. Mogą także pełnić rolę graficznego środka pokazującego szczegóły implementacji klas.

Diagramy obiektów obrazują obiekty występujące w systemie i ich związki. Są one zazwyczaj wykorzystywane do wyjaśnienia znaczenia diagramów klas. Każdy obiekt może być opisany przy pomocy trzech elementów: tożsamości, stanu i zachowania. Tożsamość jest cechą wyróżniającą obiekt, przedstawiając go jako indywidualną jednostkę. Określa się ją przy pomocny unikalnej i indywidualnej cechy obiektu, która nigdy nie ulega zmianie. Stan jest zbiorem wszystkich wartości i właściwości obiektu. Obiekt posiada zawsze zestaw właściwości. Ich wartości przez cały okres istnienia obiektu mogą się zmieniać. Zachowanie jest zbiorem usług, które mogą być wykonane przez obiekt na rzecz innych obiektów. Ukazuje dynamikę występującą w modelu, dzięki czemu w łatwy sposób możemy przedstawić relację występujące pomiędzy obiektami lub czynności które dopiero mają zostać wykonane. Dokładny opis obiektu przy pomocy tych trzech elementów pozwala na dokładną identyfikację; dzięki temu, jesteśmy w stanie rozróżnić obiekty podobne do siebie.

13. DBMS - jest to program, który zarządza bazami danych. Mogą składać się z różnych modeli baz danych takich jak model sieciowy czy model relacyjny. W skrócie pozwala użytkownikom i innym programom do zapisywania od odczytu danych w uporządkowany w struktury sposób.

14. Opisz 2 i 3 warstwowa architekturę dostępu do baz danych.

2-warstwowa :
-Lokalna baza danych: system bazy danych i aplikacje działają na jednym komputerze

-System klient- Server: aplikacje działają na wielu komputerach i odwołują się do wspólnej bazy np. system obsługi kont bankowych

Siec - Server baz danych

0x08 graphic

3-warstwowa:

-aplikacje działają na serwerze, klienci łącza się z nia za pomocą 3 ciego programu ( przeglądarka WWW )

Siec - Server aplikacji - Server baz danych

0x01 graphic

15. Model relacyjny - model baz danych oparty na postulatach relacyjności.

Dane w modelu relacyjnym są reprezentowane jako zbiór krotek, które w znormalizowanych bazach danych są unikatowe i nie gra roli ich kolejność. Model relacyjny składa się z trzech podstawowych elementów: struktury, integralności i manipulacji. Model relacyjny obsługuje różne typy kluczy. Każda relacja (tabela) posiada przynajmniej jeden klucz kandydujący. Klucz ten jest unikatowym identyfikatorem relacji i może być kombinacją atrybutów, często jednak obejmuje jeden atrybut (kolumnę). Klucz ma za zadanie jednoznacznie identyfikować każdą krotkę (wiersz). Klucz kandydujący jest zawsze kombinacją lub zbiorem atrybutów (kolumn) nawet, gdy zbiór składa się tylko z jednego atrybutu. Większość współczesnych relacyjnych baz danych korzysta z jakiejś wersji języka SQL pozwalającego wprowadzać zmiany w strukturze bazy danych, jak również zmiany danych w bazie i wybieranie informacji z bazy danych.

16. Spójność bazy danych, spójność procesów działających na bazie danych. Baza danych jest spójna jeśli jej stan odpowiada stanowi świata rzeczywistego. Spójność bazy danych oznacza poprawność czyli niesprzeczność danych w bazie. Zapobieganie problemom spójności może być realizowane po przez odpowiednio zaprojektowany schemat bazy i schemat relacji oraz przez użycie mechanizmu transakcji

17. Transakcja - zbiór operacji na bazie danych, które stanowią w istocie pewną całość i jako takie powinny być wykonane wszystkie lub żadna z nich. Warunki jakie powinny spełniać transakcje bardziej szczegółowo opisują zasady ACID. Atomowość (atomicity) - w ramach jednej transakcji wykonują się albo wszystkie operacje, albo żadna. Spójność (consistency) - o ile transakcja zastała bazę danych w spójnym stanie, po jej zakończeniu stan jest również spójny. (W międzyczasie stan może być chwilowo niespójny). Izolacja (isolation) - transakcja nie wie nic o innych transakcjach i nie musi uwzględniać ich działania. Czynności wykonane przez daną transakcję są niewidoczne dla innych transakcji aż do jej zakończenia. Trwałość (durability) - po zakończeniu transakcji jej skutki są na trwale zapamiętane (na dysku) i nie mogą być odwrócone przez zdarzenia losowe (np. wyłączenie prądu).

Przykładem transakcji może być transakcja bankowa jaką jest przelew. Muszą tu zostać dokonane 2 operacje - zabranie pieniędzy z jednego konta oraz dopisanie ich do drugiego. W przypadku niepowodzenia żadna z tych operacji nie powinna być zatwierdzona, gdyż zajście tylko jednej powodowałoby nieprawidłowości w bazie danych (pojawienie się lub zniknięcie pieniędzy).

18. SQL (ang. Structured Query Language) - strukturalny język zapytań używany do tworzenia, modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych. Język SQL jest językiem deklaratywnym. Decyzję o sposobie przechowywania i pobrania danych pozostawia się systemowi zarządzania bazą danych (DBMS). Składnia SQL: DML (Data Manipulation Language) służy do wykonywania operacji na danych - do ich umieszczania w bazie, kasowania, przeglądania, zmiany. Najważniejsze polecenia z tego zbioru to: SELECT - pobranie danych z bazy, INSERT - umieszczenie danych w bazie, UPDATE - zmiana danych, DELETE - usunięcie danych z bazy. Dzięki DDL (Data Definition Language) można operować na strukturach, w których dane są przechowywane - czyli np. dodawać, zmieniać i kasować tabele lub bazy. Najważniejsze polecenia tej grupy to: CREATE- utworzenie struktury (bazy, tabeli, indeksu itp.), DROP- usunięcie struktury, ALTER- zmiana struktury (dodanie kolumny do tabeli, zmiana typu danych w kolumnie tabeli). DCL (Data Control Language) ma zastosowanie do nadawania uprawnień do obiektów bazodanowych. Najważniejsze polecenia w tej grupie to: GRANT, REVOKE - odebranie użytkownikowi wszystkich praw do tabeli, które zostały przyznane poleceniem GRANT, DENY.

19. Hurtownia danych (ang. data warehouse) - rodzaj bazy danych, która jest zorganizowana i zoptymalizowana pod kątem pewnego wycinka rzeczywistości. Hurtownia danych jest wyższym szczeblem abstrakcji niż zwykła relacyjna baza danych. W skład hurtowni wchodzą zbiory danych zorientowanych tematycznie (np. hurtownia danych klientów). Dane te często pochodzą z wielu źródeł, są one zintegrowane i przeznaczone wyłącznie do odczytu. Hurtownia danych stanowi zatem rozbudowaną bazę danych, przechowującą olbrzymią ilość danych zbieranych w czasie. Dodatkowo zakłada się, że przeprowadzane na danych operacje mają charakter analityczny (wyszukiwanie i analiza).

0x01 graphic

20. Sztuczna inteligencja jest działem informatyki który zajmuje się : badaniem reguł rządzach inteligentnymi zachowaniami człowieka, tworzeniem formalnych tych zachowań, tworzeniem programów lub systemów symulujących te zachowania.

Realizacji Si poprzez :

- podejście symboliczne- tworzenie modeli matematyczno- logicznych analizowanych problemów i implementowanie ich w formie programów komputerowych.

Metody : logika rozmyta, systemy ekspertowe, algorytmy genetyczne/ ewolucyjne

- podejście subsymboliczne- tworzenie struktur i programów samouczących się, procedur ich uczenia i rozwiązania postawionych zadań

Metody: sieci neuronowe, sieci asocjacyjne

-podejście hybrydowe - elementy podejścia zarówno symbolicznego i subsymbolicznego

Zastosowania:

-sterowanie urządzeniami i pojazdami( np. sterowanie robotami automatycznymi, sterowanie automatycznymi skrzyniami iegów)

-sterowanie procesami przemysłowymi

-diagonsotyka urządzeń i procesów

- podejmowanie decyzji gospodarczych i finansowych( np. ocena wniosków kredytowych)

-diagnozy medyczne (np. wykrywanie chorób na podstawie Objawów i wyników badań)

- analiza obrazu i dźwięku

- zabawki i gry komputerowe

21.Opisz budowę prostego (pojedynczego) sztucznego neuronu? (wraz ze wzorami) Jak działa? Co to jest funkcja aktywacji?

0x08 graphic

Budowa prostego sztucznego neuronu

Zasada działania

- do wejść doprowadzane są sygnały xi

- wejścia są mnożone przez wagi wi (dodatnie lub ujemne) i sumowane

0x01 graphic

- wynik sumowania s jest argumentem funkcji aktywacji

- funkcja aktywacji f(s) określa wartość wyjściową neuronu y=f(s), może być progowa, liniowa i nieliniowa



Wyszukiwarka