Visual Basic.NET kolekcje danych, technologia LINQ
|
|
- Gabriel Urban
- 6 lat temu
- Przeglądów:
Transkrypt
1 Platforma.NET laboratorium 3 Prowadzący: mgr inż. Tomasz Jaworski Strona WWW: Visual Basic.NET kolekcje danych, technologia LINQ Poniższa instrukcja laboratoryjna zawiera omówienie zagadnień kolekcji danych w języku VB.NET oraz podstawy technologii LINQ 1. Kolekcje Kolekcja, zwana również kontenerem, jest strukturą danych (np. klasą), która posiada możliwość przechowywania ogólnie pojętych danych, np. tekstów, liczb, obiektów lub innych kolekcji. Dane w kolekcji przechowywane są w sposób zorganizowany wg. konkretnych założeń (np. są zawsze posortowane). Kolekcja posiada również charakterystyczny dla siebie zestaw operacji, pozwalających na przetwarzania zawartych w niej danych, np. dodawanie, usuwanie, wyszukiwanie duplikatów. Warto pamiętać, że podstawowe kontenery i kolekcje platformy.net Framework zostały umieszczone w przestrzeni nazw System.Collections. Przykłady kontenerów z różnych języków programowania: array list map Tablica (wym. erej /əˈreɪ/) to jedno- lub wielo-wymiarowa tablica dostępna popularnych językach programowania. Przeważnie wbudowana w język, jednak w VB jest klasą Array. Nie posiada możliwości dodawania nowych oraz usuwania istniejących elementów, jednak istnieje statyczna metoda Array.Resize. Przykład: Dim wartosci() As Double = New Double(10) {} Array.Resize(Of Double)(wartosci, 20) Lista (wym. lyst /lɪst/) posiada możliwość dodawania i usuwania elementów (Add, Remove), oraz m.in.: wyszukiwania (IndexOf, LastIndexOf) i konwersji na tablicę (ToArray). Dim str As List(Of String) = New List(Of String) str.add("ala") str.add("ma") str.add("kota") str.addrange(new String() {"a", "kot", "ma", "Alę"}) Dim pozycja = str.indexof("kot") Dim slowa() As String = str.toarray() Mapa, zwana Tablicą Asocjacyjną, jest kolekcją par uporządkowanych (klucz, wartość). Klucz jest najczęściej unikalny, choć nie jest to wymóg konieczny zależy to od rodzaju tablicy asocjacyjnej. Przykładem tablicy asocjacyjnej może być słownik służący do szyfrowania wiadomości. Łatwo sobie wyobrazić sytuację, w której dwie osoby uzgadniają, że będą przesyłały sobie wiadomości składające się ze skończonego zbioru słów (np. 10,000). W trakcie ustalania szczegółów każdemu z tych słów przypisują jakąś wartość numeryczną (na podstawie klucza). Zatem, kiedy nadawca chce wysłać wiadomość, korzysta z tablicy asocjacyjnej, mapując słowa wiadomości na wartości liczbowe, które następnie przesyła do odbiorcy. 1 Wymagana wersja środowiska.net Framework 3.5 1
2 Przykład: Dim slownik As Dictionary(Of String, Integer) = _ New Dictionary(Of String, Integer) slownik.add("ala", 1) slownik.add("ma", 2) slownik.add("kota", 3) slownik.add("kot", 4) slownik.add("alę", 5) slownik.add("a", 6) Dim kod_slowa As Integer If slownik.containskey("kot") Then kod_slowa = slownik("kot") ' kod_slowa = 4 End If A zatem, przy tak zdefiniowanym słowniku, tekst Ala ma kota a kot ma Alę zostanie wysłany jako ciąg liczb: queue Kolejka (wym. kju /kjuː/) to kolejka FIFO (ang. First In, First Out). Dwie najważniejsze metody to: Enqueue dodaje nowy element na ostatnie miejsce w kolejce, Dequeue pobiera element z pierwszego miejsca kolejki (i usuwa go), Dim kol As Queue(Of String) = New Queue(Of String) kol.enqueue("ala") kol.enqueue("ma") kol.enqueue("kota") MessageBox.Show(kol.Dequeue()) ' "Ala" MessageBox.Show(kol.Dequeue()) ' "ma" MessageBox.Show(kol.Dequeue()) ' "kota" set stack table Zbiór zbiór elementów przechowywanych w sposób dowolny. Najważniejszą cechą zbioru jest unikalność jego elementów. Dim a As HashSet(Of Integer) = New HashSet(Of Integer) Dim w As Boolean w = a.add(1) ' true w = a.add(2) ' true w = a.add(3) ' true w = a.add(2) ' false w = a.add(1) ' false Stos (wym. stak /stæk/) to kolejka LIFO (ang. Last In, First Out). Dwie najważniejsze metody to: Push kładzie nowy element na wierzchołek stosu, Pop zdejmuje element z wierzchołka stosu (i usuwa go), Dim stos As Stack(Of Double) = New Stack(Of Double) stos.push(1) stos.push(2) stos.push(3) wartosc = stos.pop() ' wartosc=3 wartosc = stos.pop() ' wartosc=2 wartosc = stos.pop() ' wartosc=1 Tabela danych, podobnie jak typowa tabela bazy danych, może posiadać dowolną ilość kolumn oraz wierszy. Każda z kolumn posiada m.in. nazwę oraz typ przechowywanych danych. Przykład: Dim dt As DataTable = New DataTable() dt.columns.add("id", GetType(Integer)) dt.columns.add("imie", GetType(String)) 2
3 dt.columns.add("nazwisko", GetType(String)) dt.rows.add(new Object() {1, "Esmerelda", "Weatherwax"}) dt.rows.add(new Object() {2, "Moist", "von Lipwig"}) dt.rows.add(new Object() {3, "Havelock", "Vetinari"}) dt.rows.add(new Object() {4, "Mustrum", "Ridcully"}) Dim wiersz = dt.newrow() wiersz("id") = 5 wiersz("imie") = "Samuel" wiersz("nazwisko") = "Vimes" Linq LINQ (ang. Language Integrated Query) jest funkcjonalnością platformy.net Framework, tworzącą warstwę abstrakcji między różnymi źródłami danych (np. kontenery, bazy danych, XML) a kodem programu. Mówiąc prościej, LINQ pozwala na intuicyjne, podobne do SQLa, podejście do wyszukiwania i przetwarzania danych w kolekcjach, np. tablicach. Uwaga! LINQ dostępny jest dopiero od wersji 3.5 środowiska.net Podczas tworzenia nowego projektu należy wybrać odpowiednią wersję środowiska: Poniżej znajduje się kilka przykładów wykorzystania technologii LINQ wraz z komentarzami. 3
4 Przykład: Wybranie wszystkich liczb mniejszych od 6 Dim liczby() As Integer = New Integer() {0, 9, 2, 8, 3, 7, 4, 6, 5} Dim wyn As IEnumerable(Of Integer) wyn = From liczba In liczby Where liczba < 6 Select liczba wyn = liczby.where(function(liczba) liczba < 6) Dim lista As List(Of Integer) = New List(Of Integer)(wyn) For Each i As Integer In wyn Console.Write(i.ToString() + " ") For Each i As Integer In lista Console.Write(i.ToString() + " ") Wynik: Opis przykładu: Tworzona jest tablica (kolekcja) liczby typu Integer oraz zmienna wyn typu IEnumerable(Of ) typu najczęściej zwracanego przez metody zapytań LINQ (np. Where oraz Select). Zmienna tego typu dostarcza enumerator pozwalający na iterowanie 2 po pewnej kolekcji. W tym przypadku będzie to kolekcja zwrócona przez klauzulę Where/Selekt. Typ zapytania określa typ wyniku przykład wykonuje zapytanie na liczbach typu Integer a w klauzuli select nie jest dokonywana żadna konwersja typów. Zatem wynik (wyn) będzie typu: IEnumerable(Of Integer). W przypadku poniższej linii kodu: Dim wyn = From liczba As Integer In num Where liczba < 6 Select tekst = liczba.tostring() wynik będzie typu IEnumerable(Of String), ponieważ w klauzuli select dokonano konwersji liczby na ciąg znaków (metoda.tostring()) Konstrukcja For Each o następującej składni: For Each nazwa_zmiennej [ As typ_danych ] In grupa [ kod ] [ Exit For ] [ kod ] [ nazwa_zmiennej ] wykorzystuje fakt, że grupa (np. lista, tablica) zawiera implementację interfejsu IEnumerable(Of typ_danych), który posiada zdolność zwracania iteratora podstawy działania pętli For Each. Zatem poniższe dwie pętle są sobie równoważne: For Each liczba As Integer In num Console.WriteLine(liczba) For i As Integer = 0 To num.length - 1 Console.WriteLine(num(i)) Wersja alternatywna, oparta o wyrażenia Lambda Konwersja wyniku LINQ na listę liczb Integer Przykład alternatywny zawiera wyrażenie lambda (λ-expression) wykonywane dla każdego elementu kolekcji wejściowej (tutaj liczby). Wyrażenie lambda to funkcja bez nazwy, tzw. delegat anonimowy. Function(liczba As Integer) liczba < 6 2 Iterowanie przetwarzanie elementu po elemencie aż do napotkania końca (ostatniego lub pustego elementu) 4
5 Lewa strona zawiera listę parametrów lub ich brak. Prawa strona zawiera operacje wykonywane w ramach wyrażenia lambda. Wyrażenia lambda wykorzystywane są najczęściej do wykonywania prostych obliczeń czy testów logicznych. Powyższy przykład sprawdza, czy liczba jest mniejsza od 6 i zwraca prawdę lub fałsz w zależności od wartości liczba. Przykład: Pobranie imienia osoby o identyfikatorze id=2 z tabeli dt zdefiniowanej we wcześniejszym tekście. Dim w = From row As DataRow In dt.rows _ Where row("id") = 2 Select row("imie") Dim w = dt.select().where(function(row As DataRow) row("id") = 2) Wynik: w = Moist Opis przykładu: Wykorzystana została (przedstawiona wcześniej) tabela dt typu DataTable, posiadająca kolekcję wierszy Rows. Powyższy przykład wykorzystuje tę kolekcję w następujący sposób: Dla każdego wiersza z kolekcji wykonywane jest wyrażenie logiczne row("id") = 2. Jeśli wynik jest fałszem, to wiersz jest odrzucany. Jeśli wynik jest prawdą, to z wiersz jest dodawany do wewnętrznej kolekcji (tymczasowej). Następnie kolekcja ta przekazywana jest do klauzuli select, wykonującej konwersję typów z DataRow na String. Konwersja dobywa się za pomocą wyrażenia row("imie"), które pobiera wartości pola imie z wiersza row. Zatem wynik jest kolekcją tekstów (String) o typie określonym jako: IEnumerable(Of String). Przykład: Obliczenie ilości miejsca zajmowanego przez wszystkie pliki z katalogu i jego podkatalogów. Imports System.IO Dim pliki() As String = Directory.GetFiles("c:\ATI Stream", "*.*", _ SearchOption.AllDirectories) Dim info = From plik As String In pliki Select New FileInfo(plik) Dim info = pliki.select(function(nazwa) New FileInfo(nazwa)) Dim razem = Aggregate plik As FileInfo In info _ Into suma = Sum(plik.Length) Dim razem = info.aggregate(0, Function(licznik As Long, _ plik As FileInfo) licznik + plik.length) Wersje alternatywne z wyrażeniem lambda. MessageBox.Show("Bajtów: " + razem.tostring()) Opis przykładu: Wykorzystana jest metoda statyczna GetFiles do pobrania listy plików z wybranego katalogu i jego podkatalogów. Wynikiem jest kolekcja (tablica) obiektów typu String. Pierwsze wyrażenie, tworzące zmienną info, wykorzystuje klauzulę select do zamiany kolekcji typu String na kolekcję typu FileInfo (informacje o pliku) w następujący sposób: Dla każdego elementu z kolekcji pliki (element został nazwany jako plik) tworzony jest nowy obiekt operatorem New. Obiekt taki zapisywany jest do kolekcji wyjściowej info. Drugie wyrażenie wykonuje agregację polegającą na przeiterowaniu przez wszystkie elementy kolekcji info i wyznaczenie dla każdego elementu (plik) wartości 5
6 liczbowej (plik.length). Operator sum zapewnia ostateczne zsumowanie wygenerowanej kolekcji długości plików. Przykład: Wyszukanie największego pliku lub plików w katalogu. Dim wielkosci = From plik As FileInfo In info Select plik.length Dim wielkosci = info.select(function(plik As FileInfo) plik.length) Dim dlug = wielkosci.max() Dim lista_najwiekszych = From plik As FileInfo In info Where _ plik.length = dlug Select plik Dim lista_najwiekszych = info.where(function(plik As FileInfo) _ plik.length = dlug) For Each plik As FileInfo In lista_najwiekszych Console.WriteLine(plik.Name) Zastąpienie zmiennej dlug wyrażeniem wielkości.max() spowodowało znaczny spadek prędkości wykonywania programu Opis przykładu: Przykład wykorzystuje klauzulę select do wygenerowania kolekcji dlugości poszczególnych plików (zmienna wielkości jest typu IEnumerable(of Long)). Operator.Max() określa największą długość pliku (i zapisuje do zmiennej a). Drugie wyrażenie zwraca listę plików (ponieważ może być kilka plików o tym samym rozmiarze) poprzez porównanie długości każdego pliku (plik) z kolekcji info ze zmienną dlug. Ostateczny wynik w postaci listy plików jest wyświetlany na konsoli. Dalsze informacje na temat technologii LINQ [1] - strona główna [2] - operatory zapytań (select, where, itp.) [3] - przegląd najważniejszych funkcjonalności [4] przykładów LINQ Zadanie 1 a) Stworzyć kolekcję napisów dla dowolnych 10 słów i wyświetlić ją na ekranie. b) Korzystając z klauzuli select stworzyć dodatkową kolekcję zawierającą długości poszczególnych słów Zadanie 2 Stworzyć prostą tabelę kontaktów zawierającą kolumny imie, nazwisko, a następnie konstrukcją from where select wybrać tylko te wiersze, w których osoba ma na imię Anna. Zadanie 3 wymagana znajomość złączeń LEFT/RIGHT JOIN Stworzyć dwie tabele typu DataTable, gdzie pierwsza zawiera: imie typ String nazwisko typ String 6
7 typ String typ_kontaktu typ Integer, 0-prywatny, 1-domowy, 2-praca plec typ Integer, 1-kobieta, 2-mężczyzna Druga natomiast zawiera dwie kolumny i trzy wiersze: id typ Integer, identyfikator typu kontaktu (0, 1, 2) nazwa typ String, zawiera nazwę typu ( prywatny, domowy, praca ) Korzystając z dokumentacji klauzuli JOIN: Wygenerować wynik, w którym kolumna typ_kontaktu z tabeli pierwszej zostanie zastąpiona kolumną nazwa z tabeli drugiej. a) Wykonać podobną operację dla kolumny plec tabeli pierwszej. Zadanie 4 Stworzyć program (może być konsolowy), który wylosuje 100,000 liczb (funkcja Rnd()), policzy ich średnią arytmetyczną: 1 X = N korzystając: a) metody.average() lub.sum() kolekcji b) konstrukcję Aggregate As N x i i= 1 7
Przykład powyżej pokazuje, że w zapytaniu można umieszczać funkcje zarówno zdefiniowane w ramach środowiska, jak również własne.
LINQ w Microsoft Visual Basic 'zapytanie pobierające wszystkie liczby z kolekcji 'zmienna zapytanie jest typu: System.Collections.Generic.IEnumerable(Of Integer) Dim zapytanie = From wiersz In liczby 'lub
Programowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04 Cel zajęć. Celem zajęć jest zapoznanie się ze sposobem działania popularnych. Wprowadzenie teoretyczne. Rozważana w ramach niniejszych zajęć
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04 Cel zajęć. Celem zajęć jest zapoznanie się ze sposobem działania popularnych kolekcji. Wprowadzenie teoretyczne. Rozważana w ramach niniejszych
Kiedy potrzebne. Struktura (rekord) Struktura w języku C# Tablice struktur. struktura, kolekcja
1 struktura, kolekcja Kiedy potrzebne Duża liczba danych takiego samego typu tablice a jak nieznana liczba elementów? dane zawierające wartości różnego typu (osoba: pesel, nazwisko, rok urodzenia, pracuje/niepracuje,
Lista, Stos, Kolejka, Tablica Asocjacyjna
Lista, Stos, Kolejka, Tablica Asocjacyjna Listy Lista zbiór elementów tego samego typu może dynamicznie zmieniać rozmiar, pozwala na dostęp do poszczególnych elementów Typowo dwie implementacje: tablicowa,
Wykład 4. Klasa List Kolejki Stosy Słowniki
Wykład 4 Klasa List Kolejki Stosy Słowniki Klasa List Poważną niedogodnością tablic jako kolekcji danych jest fakt, że muszą one mieć stały rozmiar. Programista musi wiedzieć z góry ile miejsca powinien
LibreOffice Calc VBA
LibreOffice Calc VBA LibreOffice Calc umożliwia tworzenie własnych funkcji i procedur przy użyciu składni języka VBA. Dostęp do edytora makr: Narzędzia->Makra->Zarządaj makrami->libreoffice Calc Aby rozpocząć
Language INtegrated Query (LINQ)
Języki Programowania na Platformie.NET (część 2) http://www.kaims.pl/ goluch/ goluch@eti.pg.gda.pl Zastosowanie LINQ pozwala na dostęp do danych w formie podobnej do SQL. Możliwy jest dostęp do danych:
Kolekcje mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011
Kolekcje mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 Kolekcja obiekt, który grupuje inne obiekty, traktując je jako jeden zestaw danych i pozwalający na wykonywanie operacji
Sprawdzenie czy połączenie przebiegło poprawnie if (mysqli_connect_errno()) { echo Błąd; Połączenie z bazą danych nie powiodło się.
Za operacje na bazie odpowiada biblioteka mysqli (i jak improved). Posiada ona interfejs obiektowy jak i proceduralny. Podłączenie do bazy (obiektowo) mysqli:: construct() ([ string $host [, string $username
Metody getter https://www.python-course.eu/python3_object_oriented_programming.php 0_class http://interactivepython.org/runestone/static/pythonds/index.html https://www.cs.auckland.ac.nz/compsci105s1c/lectures/
Struktury danych (I): kolejka, stos itp.
Letnie Warsztaty Matematyczno-Informatyczne Algorytmy i struktury danych Struktury danych (I): kolejka, stos itp. Struktury danych (I): kolejka, stos itp. Struktura danych stanowi sposób uporządkowania
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka
Wprowadzenie do programowania w języku Visual Basic. Podstawowe instrukcje języka 1. Kompilacja aplikacji konsolowych w środowisku programistycznym Microsoft Visual Basic. Odszukaj w menu startowym systemu
Platforma.NET laboratorium 4 Aktualizacja: 15/11/2013. Visual Basic.NET dostęp do bazy danych. Baza Microsoft SQL Server Compact
Platforma.NET laboratorium 4 Aktualizacja: 15/11/2013 Prowadzący: mgr inż. Tomasz Jaworski Strona WWW: http://tjaworski.kis.p.lodz.pl/ Visual Basic.NET dostęp do bazy danych Baza Microsoft SQL Server Compact
Bloki anonimowe w PL/SQL
Język PL/SQL PL/SQL to specjalny język proceduralny stosowany w bazach danych Oracle. Język ten stanowi rozszerzenie SQL o szereg instrukcji, znanych w proceduralnych językach programowania. Umożliwia
Materiały do laboratorium MS ACCESS BASIC
Materiały do laboratorium MS ACCESS BASIC Opracowała: Katarzyna Harężlak Access Basic jest językiem programowania wykorzystywanym w celu powiązania obiektów aplikacji w jeden spójny system. PROCEDURY I
Wykład 5 Wybrane zagadnienia programowania w C++ (c.d.)
Wykład 5 Wybrane zagadnienia programowania w C++ (c.d.) Kontenery - - wektor vector - - lista list - - kolejka queue - - stos stack Kontener asocjacyjny map 2016-01-08 Bazy danych-1 W5 1 Kontenery W programowaniu
Programowanie w języku Java. Kolekcje
Programowanie w języku Java Kolekcje Definicja Kolekcja to obiekt, który grupuje elementy danych (inne obiekty) i pozwala traktować je jak jeden zestaw danych, umożliwiając jednocześnie wykonywanie na
Kolekcje. Na podstawie:
Kolekcje Na podstawie: http://wazniak.mimuw.edu.pl Kolekcje w Javie Kolekcja (kontener) to po prostu obiekt, który grupuje wiele elementów w jeden twór. Pozwala na zapis, odczyt, korzystanie z danych oraz
INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227
INFORMATYKA W SZKOLE Dr inż. Grażyna KRUPIŃSKA grazyna@fis.agh.edu.pl D-10 pokój 227 Podyplomowe Studia Pedagogiczne Sortowanie Dane wejściowe : trzy liczby w dowolnym porządku Dane wyjściowe: trzy liczby
Java Collections Framework
Java Collections Framework Co to jest Java Collections Framework JCF Zunifikowana architektura do reprezentacji i manipulacji kolekcjami danych. Składa się z: Interfejsów Definuje abstrakcyjne typy możliwych
Podstawy programowania skrót z wykładów:
Podstawy programowania skrót z wykładów: // komentarz jednowierszowy. /* */ komentarz wielowierszowy. # include dyrektywa preprocesora, załączająca biblioteki (pliki nagłówkowe). using namespace
1. Wyświetlić wszystkie liczby zawarte w tablicy tabl(). 2. Wyświetlić wyłącznie liczby ujemne zawarte w tablicy tabl().
LINQ w Microsoft Visual Basic zadania Zestaw danych: Dim tabl() As Integer = {-1, -2, 0, 1, 2, 3} 1. Wyświetlić wszystkie liczby zawarte w tablicy tabl(). For Each x In tabl 2. Wyświetlić wyłącznie liczby
Kolekcja (kontener) to po prostu obiekt, który grupuje wiele elementów w jeden twór.
Kolekcje Kolekcje w Javie Kolekcja (kontener) to po prostu obiekt, który grupuje wiele elementów w jeden twór. Pozwala na zapis, odczyt, korzystanie z danych oraz ich wzajemną komunikację. Przykład: ręka
Kiedy i czy konieczne?
Bazy Danych Kiedy i czy konieczne? Zastanów się: czy często wykonujesz te same czynności? czy wielokrotnie musisz tworzyć i wypełniać dokumenty do siebie podobne (faktury, oferty, raporty itp.) czy ciągle
java.util.* :Kolekcje Tomasz Borzyszkowski
java.util.* :Kolekcje Tomasz Borzyszkowski Wstęp Kolekcje w Java dają programiście pewien standardowy sposób radzenia sobie z przetwarzaniem grup obiektów. Implementacja kolekcji w Java składa się z następujących
Programowanie obiektowe
Programowanie obiektowe Język programowania Ruby Marcin Młotkowski 12 kwietnia 2018 Plan wykładu 1 Wstęp 2 Typy numeryczne Łańcuchy znaków (klasa String) Przedziały Tablice i tablice asocjacyjne Nazwy
PODSTAWY BAZ DANYCH 13. PL/SQL
PODSTAWY BAZ DANYCH 13. PL/SQL 1 Wprowadzenie do języka PL/SQL Język PL/SQL - rozszerzenie SQL o elementy programowania proceduralnego. Możliwość wykorzystywania: zmiennych i stałych, instrukcji sterujących
PHP: bloki kodu, tablice, obiekty i formularze
1 PHP: bloki kodu, tablice, obiekty i formularze SYSTEMY SIECIOWE Michał Simiński 2 Bloki kodu Blok if-else Switch Pętle Funkcje Blok if-else 3 W PHP blok if i blok if-else wyglądają tak samo i funkcjonują
Podstawy programowania. Podstawy C# Tablice
Podstawy programowania Podstawy C# Tablice Tablica to indeksowany zbiór elementów Tablica jest typem referencyjnym (deklaracja tworzy tylko referencję, sama tablica musi być utworzona oddzielnie, najprościej
Wstęp do programowania. Różne różności
Wstęp do programowania Różne różności Typy danych Typ danych określa dwie rzeczy: Jak wartości danego typu są określane w pamięci Jakie operacje są dozwolone na obiektach danego typu 2 Rodzaje typów Proste
Algorytmy i. Wykład 3: Stosy, kolejki i listy. Dr inż. Paweł Kasprowski. FIFO First In First Out (kolejka) LIFO Last In First Out (stos)
Algorytmy i struktury danych Wykład 3: Stosy, kolejki i listy Dr inż. Paweł Kasprowski pawel@kasprowski.pl Kolejki FIFO First In First Out (kolejka) LIFO Last In First Out (stos) Stos (stack) Dostęp jedynie
Podstawy programowania. 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń.
Podstawy programowania Programowanie wyrażeń 1. Operacje arytmetyczne Operacja arytmetyczna jest opisywana za pomocą znaku operacji i jednego lub dwóch wyrażeń. W językach programowania są wykorzystywane
Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych
Programowanie obiektowe i zdarzeniowe wykład 4 Kompozycja, kolekcje, wiązanie danych Obiekty reprezentują pewne pojęcia, przedmioty, elementy rzeczywistości. Obiekty udostępniają swoje usługi: metody operacje,
Podstawy i języki programowania
Podstawy i języki programowania Laboratorium 2 - wprowadzenie do zmiennych mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 23 października 2017 1 / 26 mgr inż. Krzysztof Szwarc Podstawy i
dr inż. Piotr Czapiewski Tworzenie aplikacji w języku Java Laboratorium 1
Ćwiczenie 1 Uruchamianie programu w Netbeans Uruchom środowisko Netbeans. Stwórz nowy projekt typu Java Application. Nadaj projektowi nazwę HelloWorld (Project Name), zwróć uwagę na folder, w którym zostanie
Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Podstawy VBA cz. 2. Programowanie komputerowe
Wydział Zarządzania AGH Katedra Informatyki Stosowanej Podstawy VBA cz. 2 Programowanie 1 Program wykładu Typy danych Wyrażenia Operatory 2 VBA Visual Basic dla aplikacji (VBA) firmy Microsoft jest językiem
Realizacja ekstensji klasy. Paulina Strzelecka, Tomasz Roszkowski
Realizacja ekstensji klasy Paulina Strzelecka, Tomasz Roszkowski Przechowywanie obiektów (odwolañ do obiektów) w Javie typ wbudowany - tablica zbiór klas kontenerowych Paulina Strzelecka, Tomasz Roszkowski
1. Wprowadzenie do języka PHP
1. Wprowadzenie do języka PHP Język PHP jest generalnie w swojej składni podobny do języka C, chociaż występuje tu szereg różnic. 1.1. Zmienne W PHP nazwy zmiennych poprzedzamy znakiem dolara ($). Nie
Systemy GIS Tworzenie zapytań w bazach danych
Systemy GIS Tworzenie zapytań w bazach danych Wykład nr 6 Analizy danych w systemach GIS Jak pytać bazę danych, żeby otrzymać sensowną odpowiedź......czyli podstawy języka SQL INSERT, SELECT, DROP, UPDATE
DECLARE VARIABLE zmienna1 typ danych; BEGIN
Procedury zapamiętane w Interbase - samodzielne programy napisane w specjalnym języku (właściwym dla serwera baz danych Interbase), który umożliwia tworzenie zapytań, pętli, instrukcji warunkowych itp.;
Kontenery i iteratory. Wykorzystanie kontenerów w praktyce.
Instrukcja laboratoryjna nr 2 Programowanie w języku C 2 (C++ poziom zaawansowany) Kontenery i iteratory. Wykorzystanie kontenerów w praktyce. dr inż. Jacek Wilk-Jakubowski mgr inż. Maciej Lasota dr inż.
Podstawy programowania w języku Visual Basic dla Aplikacji (VBA)
Podstawy programowania w języku Visual Basic dla Aplikacji (VBA) Instrukcje Język Basic został stworzony w 1964 roku przez J.G. Kemeny ego i T.F. Kurtza z Uniwersytetu w Darthmouth (USA). Nazwa Basic jest
Platformy Programistyczne Podstawy języka Java
Platformy Programistyczne Podstawy języka Java Agata Migalska 6 maja 2014 Plan wykładu 1 Sztuka wysławiania się w języku Java 2 Cały świat jest obiektem 3 Kolekcje 4 Zmienne i metody statyczne 5 Słowo
Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)
Rok akademicki 2012/2013, Wykład nr 2 2/25 Plan wykładu nr 2 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia niestacjonarne I stopnia Rok akademicki 2012/2013
LINQ TO XML. Autor ćwiczenia: Marcin Wolicki
LINQ TO XML Celem ćwiczenia jest zapoznanie się z możliwościami przetwarzania dokumentów XML na platformie.net. W toku zadania zostaną przedstawione dwie technologie: LINQ TO XML i XPath. Autor ćwiczenia:
Oczywiście plik musi mieć rozszerzenie *.php
Oczywiście plik musi mieć rozszerzenie *.php Znaczniki PHP komunikują serwerowi gdzie rozpoczyna się i kończy kod PHP. Tekst między nimi jest interpretowany jako kod PHP, natomiast poza nimi jako kod HTML.
Kurs programowania. Wykład 9. Wojciech Macyna. 28 kwiecień 2016
Wykład 9 28 kwiecień 2016 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa
Wykład 5. SQL praca z tabelami 2
Wykład 5 SQL praca z tabelami 2 Wypełnianie tabel danymi Tabele można wypełniać poprzez standardową instrukcję INSERT INTO: INSERT [INTO] nazwa_tabeli [(kolumna1, kolumna2,, kolumnan)] VALUES (wartosc1,
Podstawowe funkcje dodatku linq w C#
Podstawowe funkcje dodatku linq w C# 1. Łączenie Tabel Do łączenia dwóch lub więcej tabel wykorzystujemy komendę join. Składnia całego wyrażenia gotowego do wyświetlenia w DataGridView wygląda następująco:
GUI - projektowanie interfejsów cz. II
Katedra Inżynierii Wiedzy, Uniwersytet Ekonomiczny w Katowicach Wykład 2 Java Foundations Classes przyciski; pola tekstowe; panele; okna dialogowe; biblioteka Swing. Metodyka (paradygmat) programowania
TEMAT ĆWICZENIA Zapoznanie z technologią LINQ
POLITECHNIKA WROCŁAWSKA KOŁO NAUKOWE KREDEK Laboratorium nr 4 TEMAT ĆWICZENIA Zapoznanie z technologią LINQ Wykonał: Mateusz Woszczyk 155693 Termin: Cz / 19.00 Data wykonania ćwiczenia: 20.11.2011 1. LINQ
SQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL
Wprowadzenie do SQL SQL - Structured Query Language -strukturalny język zapytań Światowy standard przeznaczony do definiowania, operowania i sterowania danymi w relacyjnych bazach danych Powstał w firmie
Instrukcje cykliczne (pętle) WHILE...END WHILE
Instrukcje cykliczne (pętle) Pętle pozwalają na powtarzanie fragmentu kodu programu. PĘTLE LOGICZNE WHILE...END WHILE While (warunek)...... End While Pętla będzie się wykonywała dopóki warunek jest spełniony.
Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u
Funkcje w PL/SQL Funkcja to nazwany blok języka PL/SQL. Jest przechowywana w bazie i musi zwracać wynik. Z reguły, funkcji utworzonych w PL/SQL-u będziemy używać w taki sam sposób, jak wbudowanych funkcji
SQL (ang. Structured Query Language)
SQL (ang. Structured Query Language) SELECT pobranie danych z bazy, INSERT umieszczenie danych w bazie, UPDATE zmiana danych, DELETE usunięcie danych z bazy. Rozkaz INSERT Rozkaz insert dodaje nowe wiersze
Język SQL, zajęcia nr 1
Język SQL, zajęcia nr 1 SQL - Structured Query Language Strukturalny język zapytań Login: student Hasło: stmeil14 Baza danych: st https://194.29.155.15/phpmyadmin/index.php Andrzej Grzebielec Najpopularniejsze
Kurs programowania. Wykład 9. Wojciech Macyna
Wykład 9 Java Collections Framework (w C++ Standard Template Library) Kolekcja (kontener) Obiekt grupujacy/przechowuj acy jakieś elementy (obiekty lub wartości). Przykładami kolekcji sa zbiór, lista czy
Wstęp do programowania
Wstęp do programowania Stosy, kolejki, drzewa Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. VII Jesień 2013 1 / 25 Listy Lista jest uporządkowanym zbiorem elementów. W Pythonie
Tworzenie raportów XML Publisher przy użyciu Data Templates
Tworzenie raportów XML Publisher przy użyciu Data Templates Wykorzystanie Szablonów Danych (ang. Data templates) jest to jedna z metod tworzenia raportów w technologii XML Publisher bez użycia narzędzia
Kolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Rozszerzenie obiektowe w SZBD Oracle
Rozszerzenie obiektowe w SZBD Oracle Cześć 2. Kolekcje Kolekcje Zbiory obiektów, rodzaje: tablica o zmiennym rozmiarze (ang. varray) (1) (2) (3) (4) (5) Malinowski Nowak Kowalski tablica zagnieżdżona (ang.
Wprowadzenie. Organizacja pracy i środowisko programistyczne. Mirosław Ochodek
Wprowadzenie Organizacja pracy i środowisko programistyczne Mirosław Ochodek Miroslaw.Ochodek@pwsz.pila.pl Miroslaw.Ochodek@cs.put.poznan.pl Dane kontaktowe Mirosław Ochodek E-mail: Miroslaw.Ochodek@pwsz.pila.pl
Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop Spis treści
Programowanie dla początkujących w 24 godziny / Greg Perry, Dean Miller. Gliwice, cop. 2017 Spis treści O autorach 11 Podziękowania 12 Wprowadzenie 13 CZĘŚĆ I ZACZNIJ PROGRAMOWAĆ JUŻ DZIŚ Godzina 1. Praktyczne
Algorytmika i Programowanie VBA 1 - podstawy
Algorytmika i Programowanie VBA 1 - podstawy Tomasz Sokół ZZI, IL, PW Czas START uruchamianie środowiska VBA w Excelu Alt-F11 lub Narzędzia / Makra / Edytor Visual Basic konfiguracja środowiska VBA przy
Programowanie Obiektowe (Java)
1. Wprowadzenie do kontenerów Wykład ósmy Kontenery s ą obiektami, które potrafi ą przechowywa ć inne obiekty w określony sposób. O kontenerach można myśle ć jako o gotowych do użycia strukturach danych.
Kompletna dokumentacja kontenera C++ vector w - http://www.cplusplus.com/reference/stl/vector/
STL, czyli o co tyle hałasu W świecie programowania C++, hasło STL pojawia się nieustannie i zawsze jest o nim głośno... często początkujące osoby, które nie znają STL-a pytają się co to jest i czemu go
PL/SQL. Część 1 Bloki PL/SQL. Piotr Medoń
PL/SQL Część 1 Bloki PL/SQL Piotr Medoń Cele Zapoznanie się z podstawowymi typami PL/SQL Zapoznanie się z blokiem PL/SQL Zapoznanie się z instrukcjami sterującymi wykonaniem 2 Blok PL/SQL Struktura bloku
Podstawy Informatyki. Wykład 6. Struktury danych
Podstawy Informatyki Wykład 6 Struktury danych Stałe i zmienne Podstawowymi obiektami występującymi w programie są stałe i zmienne. Ich znaczenie jest takie samo jak w matematyce. Stałe i zmienne muszą
Podstawy programowania 2. Przygotował: mgr inż. Tomasz Michno
Instrukcja laboratoryjna 2 Podstawy programowania 2 Temat: Zmienne dynamiczne tablica wskaźników i stos dynamiczny Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny 1.1 Tablice wskaźników Tablice
Metody Metody, parametry, zwracanie wartości
Materiał pomocniczy do kursu Podstawy programowania Autor: Grzegorz Góralski ggoralski.com Metody Metody, parametry, zwracanie wartości Metody - co to jest i po co? Metoda to wydzielona część klasy, mająca
Wykład 8. SQL praca z tabelami 5
Wykład 8 SQL praca z tabelami 5 Podzapytania to mechanizm pozwalający wykorzystywać wyniki jednego zapytania w innym zapytaniu. Nazywane często zapytaniami zagnieżdżonymi. Są stosowane z zapytaniami typu
Zasady programowania Dokumentacja
Marcin Kędzierski gr. 14 Zasady programowania Dokumentacja Wstęp 1) Temat: Przeszukiwanie pliku za pomocą drzewa. 2) Założenia projektu: a) Program ma pobierać dane z pliku wskazanego przez użytkownika
Autor: Joanna Karwowska
Autor: Joanna Karwowska SELECT [DISTINCT] FROM [WHERE ] [GROUP BY ] [HAVING ] [ORDER BY ] [ ] instrukcja może
KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów
KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów SQL3 wprowadza następujące kolekcje: zbiory ( SETS ) - zestaw elementów bez powtórzeń, kolejność nieistotna listy ( LISTS ) - zestaw
Laboratorium Wstawianie skryptu na stroną: 2. Komentarze: 3. Deklaracja zmiennych
1. Wstawianie skryptu na stroną: Laboratorium 1 Do umieszczenia skryptów na stronie służy znacznik: //dla HTML5 ...instrukcje skryptu //dla HTML4 ...instrukcje
Programowanie obiektowe
Programowanie obiektowe Laboratorium 1. Wstęp do programowania w języku Java. Narzędzia 1. Aby móc tworzyć programy w języku Java, potrzebny jest zestaw narzędzi Java Development Kit, który można ściągnąć
Programowanie i struktury danych
Programowanie i struktury danych 1 / 30 STL Standard Template Library, STL (ang. = Standardowa Biblioteka Wzorców) biblioteka C++ zawierająca szablony (wzorce), które umożliwiają wielokrotne użycie. Główne
Stos LIFO Last In First Out
Stos LIFO Last In First Out Operacje: push - dodanie elementu na stos pop - usunięcie elementu ze stosu empty - sprawdzenie, czy stos jest pusty size - zwrócenie liczby elementów na stosie value (peek)
Język ludzki kod maszynowy
Język ludzki kod maszynowy poziom wysoki Język ludzki (mowa) Język programowania wysokiego poziomu Jeśli liczba punktów jest większa niż 50, test zostaje zaliczony; w przeciwnym razie testu nie zalicza
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
Grupa A (LATARNIE) Imię i nazwisko: Numer albumu: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: Nazwisko prowadzącego: 11: 12: Suma: Ocena: Zad. 1 (10 pkt) Dana jest relacja T. Podaj wynik poniższego zapytania (podaj
Kolekcje w Javie cz. 1
Kolekcje w Javie cz. 1 Programowanie obiektowe Jacek Sroka na podstawie materiałów Janusza Jabłonowskiego 8 kwietnia 2013 Po co są kolekcje? Po co są kolekcje? A po co są programy? Żeby manipulować danymi.
Wykład 9 Kolekcje, pliki tekstowe, Przykład: Notatnik
Wizualne systemy programowania Wykład 9 Kolekcje, pliki tekstowe, Przykład: Notatnik 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Kolekcje List
Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery. Łukasz Bartczuk
Tworzenie stron internetowych z wykorzystaniem HTM5, JavaScript, CSS3 i jquery Łukasz Bartczuk Moduł 5 Podstawy JavaScript Agenda Czym jest JavaScript? Podstawowe typy danych Zmienne Tablice Funkcje Zakres
TABLICA (ang. array) pojedyncza zmienna z wieloma komórkami, w których można zapamiętać wiele wartości tego samego typu danych.
Złożone typy danych - TABLICE TABLICA (ang. array) pojedyncza zmienna z wieloma komórkami, w których można zapamiętać wiele wartości tego samego typu danych. * Może przechowywać dowolny typ danych, typ
Wprowadzenie do programowania w VBA
Wprowadzenie do programowania w VBA Spis treści Struktura programu... 1 Typy danych... 2 Deklaracja zmiennych i stałych... 2 Deklaracja tablic... 3 Instrukcja przypisania... 3 Wprowadzanie danych... 3
PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych:
PHP może zostać rozszerzony o mechanizmy dostępu do różnych baz danych: MySQL moduł mysql albo jego nowsza wersja mysqli (moduł mysqli ma dwa interfejsy: proceduralny i obiektowy) PostgreSQL Oracle MS
Podstawy otwartych języków programowania Przechowywanie danych
Podstawy otwartych języków programowania Przechowywanie danych Wiktor Wandachowicz Sposoby przechowywania danych Typy podstawowe Pojedyncze obiekty Tablice obiektów i tablice typów podstawowych jednowymiarowe
Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno
Instrukcja laboratoryjna 5 Podstawy programowania 2 Temat: Drzewa binarne Przygotował: mgr inż. Tomasz Michno 1 Wstęp teoretyczny Drzewa są jedną z częściej wykorzystywanych struktur danych. Reprezentują
Opis implementacji: Implementacja przedstawia Grę w życie jako przykład prostej symulacji opartej na automatach.
Nazwa implementacji: Gra w życie Autor: Piotr Fiorek Opis implementacji: Implementacja przedstawia Grę w życie jako przykład prostej symulacji opartej na automatach. Zaprojektuj prostą grę, której celem
Test przykładowy 2 PAI WSB Wrocław /06/2018
Imię i Nazwisko: Student ID: Part 1: (Prawda lub Fałsz (T lub F)) 15. Która z poniższych deklaracji funkcji jest nieprawidłowa: A. function Sum(a, b, c){; B. function Sum(var a, var b); C. function Sum(a){;
Programowanie obiektowe
Laboratorium z przedmiotu Programowanie obiektowe - zestaw 02 Cel zajęć. Celem zajęć jest zapoznanie z praktycznymi aspektami projektowania oraz implementacji klas i obiektów z wykorzystaniem dziedziczenia.
Po uruchomieniu programu nasza litera zostanie wyświetlona na ekranie
Część X C++ Typ znakowy służy do reprezentacji pojedynczych znaków ASCII, czyli liter, cyfr, znaków przestankowych i innych specjalnych znaków widocznych na naszej klawiaturze (oraz wielu innych, których
SQL, LIKE, IN, CASE, EXISTS. Marcin Orchel
SQL, LIKE, IN, CASE, EXISTS Marcin Orchel Spis treści 1 LIKE 2 2 BETWEEN 4 3 IN 5 4 EXISTS 6 5 WYRAŻENIA CASE 7 6 Zadania 9 1 Rozdział 1 LIKE Predykat LIKE jest testem dopasowującym wzorzec łańcucha. Składnia
BAZY DANYCH. Obsługa bazy z poziomu języka PHP. opracowanie: Michał Lech
BAZY DANYCH Obsługa bazy z poziomu języka PHP opracowanie: Michał Lech Plan wykładu 1. PHP - co to jest? 2. Bazy danych obsługiwane przez PHP 3. Podstawowe polecenia 4. Sesje 5. Przykład - dodawanie towaru
Oracle PL/SQL. Paweł Rajba.
Paweł Rajba pawel@ii.uni.wroc.pl http://www.kursy24.eu/ Zawartość modułu 9 Kolekcje Operacje na kolekcjach Testowanie kolekcji Kolekcje w bazie danych Funkcje tabelaryczne Kolekcje wielopoziomowe - 2 -
Programowanie MorphX Ax
Administrowanie Czym jest system ERP? do systemu Dynamics Ax Obsługa systemu Dynamics Ax Wyszukiwanie informacji, filtrowanie, sortowanie rekordów IntelliMorph : ukrywanie i pokazywanie ukrytych kolumn
Autor: Joanna Karwowska
Autor: Joanna Karwowska Jeśli pobieramy dane z więcej niż jednej tabeli, w rzeczywistości wykonujemy tak zwane złączenie. W SQL istnieją instrukcje pozwalające na formalne wykonanie złączenia tabel - istnieje