Programowanie w Ruby



Podobne dokumenty
Programowanie w Ruby

Programowanie obiektowe

Kurs rozszerzony języka Python

Zaawansowany kurs języka Python

Wykład nr 1 Język Ruby i framework Rails

Podstawy programowania skrót z wykładów:

Wprowadzenie do języka Ruby

Język JAVA podstawy. Wykład 3, część 3. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Bloki anonimowe w PL/SQL

Język Python. Język Python 1/35

1 Podstawy c++ w pigułce.

Programowanie w Ruby

KURSY PROGRAMOWANIA DLA DZIECI

KURSY PROGRAMOWANIA DLA DZIECI

Przegląd języka Python. Łukasz Anwajler

Wykład 15. Literatura. Kompilatory. Elementarne różnice. Preprocesor. Słowa kluczowe

Podstawowe elementy proceduralne w C++ Program i wyjście. Zmienne i arytmetyka. Wskaźniki i tablice. Testy i pętle. Funkcje.

Programowanie robota mobilnego E-puck w języku Python

Środowisko programisty

Redis, skrypty w języku Lua

Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Algorytmy i struktury danych

1 Podstawy c++ w pigułce.

Skrypty i funkcje Zapisywane są w m-plikach Wywoływane są przez nazwę m-pliku, w którym są zapisane (bez rozszerzenia) M-pliki mogą zawierać

KOTLIN. Język programowania dla Androida

DIAGRAMY SYNTAKTYCZNE JĘZYKA TURBO PASCAL 6.0

Podstawy Programowania Podstawowa składnia języka C++

Programowanie Obiektowe i C++

Python wstęp do programowania dla użytkowników WCSS

Pętla for. Wynik działania programu:

Pascal - wprowadzenie

Wstęp do programowania

Microsoft IT Academy kurs programowania

Programowanie I. O czym będziemy mówili. Plan wykładu nieco dokładniej. Plan wykładu z lotu ptaka. Podstawy programowania w językach. Uwaga!

Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PODSTAWOWY.

Wstęp do programowania

Języki i metody programowania

Magia Ruby : programowanie na wesoło / Eric Weinstein. Warszawa, Spis treści

Umieszczanie kodu. kod skryptu

Pętle while, for, do while, instrukcje break, continue, switch 1. Pętle

I. KARTA PRZEDMIOTU CEL PRZEDMIOTU WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI EFEKTY KSZTAŁCENIA

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Programowanie w Ruby

Wydział Zarządzania AGH. Katedra Informatyki Stosowanej. Pętle. Programowanie komputerowe

Informatyka I. Wykład 3. Sterowanie wykonaniem programu. Instrukcje warunkowe Instrukcje pętli. Dr inż. Andrzej Czerepicki

Instrukcja wyboru, pętle. 2 wykład. Podstawy programowania - Paskal

Informatyka 1. Plan dzisiejszych zajęć. zajęcia nr 1. Elektrotechnika, semestr II rok akademicki 2008/2009

Metody Metody, parametry, zwracanie wartości

Programowanie obiektowe

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe

Wykład 0 Informacje Podstawowe

Programowanie w Ruby

Podstawy programowania C. dr. Krystyna Łapin

PROGRAMOWANIE W PYTHONIE OD PIERWSZYCH KROKÓW

Struktura pliku projektu Console Application

Instrukcje sterujące. Programowanie Proceduralne 1

Program szkolenia PODSTAWY VBA (VISUAL BASIC FOR APPLICATIONS) I FORMULARZE.

EPI: Interfejs Graczny 2009/2010 Podstawy Rubiego

Dzi kuj za uwag! Spotkania z Pythonem. Cz ± 1 - podstawy - rozwi zania zada« Michaª Alichniewicz. Gda«sk Studenckie Koªo Automatyków SKALP

JAVA. Platforma JSE: Środowiska programistyczne dla języka Java. Wstęp do programowania w języku obiektowym. Opracował: Andrzej Nowak

Python. Skąd taka nazwa? Kurs systemu UNIX 1

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Laboratorium 3. Instrukcje wyboru

Visual Basic for Applications. Wstęp

Wykresy i interfejsy użytkownika

Podstawy programowania - 1

Programowanie strukturalne i obiektowe

do MATLABa programowanie WYKŁAD Piotr Ciskowski

Funkcje i instrukcje języka JavaScript

ZMODYFIKOWANY Szczegółowy opis przedmiotu zamówienia

Cw.12 JAVAScript w dokumentach HTML

Wykład III PASCAL - iteracja cz, 2, - liczby losowe, - tablice

Python wprowadzenie. Warszawa, 24 marca PROGRAMOWANIE I SZKOLENIA

Program szkolenia VBA (VISUAL BASIC FOR APPLICATIONS) W EXCELU PRZEKROJOWY.

System operacyjny Linux

Podstawy. Jan Koprowski Politechnika Gdańska, FTiMS Informatyka Stosowana

Liczby losowe i pętla while w języku Python

WYKORZYSTANIE PORTALU DYDAKTYCZNEGO W NAUCE JĘZYKÓW PROGRAMOWANIA

Wstęp do programowania

Programowanie. Projektowanie funkcje programu tworzenie algorytmu i struktur danych. Programowanie implementacja algorytmu kompilacja programu

Podstawy programowania (1)

EPI: Interfejs Graficzny 2011/2012 Laboratorium nr 2 Programowanie obiektowe

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Matlab Składnia + podstawy programowania

Podstawy Programowania

Instrukcje sterujące. wer. 11 z drobnymi modyfikacjami! Wojciech Myszka :53:

Programowanie skryptów powłoki

Języki skryptowe w programie Plans

Programowanie obiektowe

Programowanie, algorytmy i struktury danych

Programowanie w SQL. definicja bloku instrukcji BEGIN...END, warunkowe wykonanie instrukcji IF...ELSE, wyrażenie CASE,

Programowanie obiektowe i C++ dla matematyków

System operacyjny Linux

Podstawy programowania w języku Visual Basic dla Aplikacji (VBA)

Michał Bielecki, KNI 'BIOS'

LibreOffice Calc VBA

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Wprowadzenie do Scilab: podstawy języka Scilab

Komentarze w PHP (niewykonywane fragmenty tekstowe, będące informacją dla programisty)

Podstawy programowania. Wykład: 5. Instrukcje sterujące c.d. Stałe, Typy zmiennych c.d. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Transkrypt:

Programowanie w Ruby Wykład 1 Marcin Młotkowski 3 października 2012

Plan wykładu Sprawy organizacyjne Wykład Źródła wiedzy Zaliczenia O języku Historia i pochodzenie języka O języku Instrukcje złożone Procedury i funkcje

Informacje organizacyjne Terminy konsultacji poniedziałek 10:15 12:00, pok. 303 Strona wykładu http://www.ii.uni.wroc.pl/~marcinm/dyd/ruby/

Plan wykładu Sprawy organizacyjne Wykład Źródła wiedzy Zaliczenia O języku Historia i pochodzenie języka O języku Instrukcje złożone Procedury i funkcje

Cele wykładu Poznanie języka Ruby, jego składni i semantyki poznanie środowiska Ruby on Rails

Plan wykładu 1. Język Ruby: typy podstawowe, składania, semantyka 2. Typy wbudowane 3. refleksje (introspekcje) 4. wątki 5. środowisko graficzne 6. Ruby on Rails

Źródła internetowe Oficjalna strona http://www.ruby-lang.org/pl/

Źródła internetowe Oficjalna strona http://www.ruby-lang.org/pl/ Dokumentacja http://www.ruby-doc.org/ Inne materiały internetowe Patrz: strona wykładu

Książki do Ruby L. Carlson, L. Richardson. Ruby. Receptury, Helion 2007 H. Fulton. Ruby. Tao programowania w 400 przykładach, Helion 2008 D. Flanagan, Y. Matsumoto. Ruby. Programowanie, Helion 2009 M.Fitzgerald. Ruby. Wprowadzenie, Helion 2007

Książki do Ruby on Rails S. Holzner. Ruby on Rails, Helion 2008 B. Tate, L. Carlson, C. Hibbs. Ruby on Rails. Wprowadzenie, Helion 2009

Zasady prowadzenia pracowni Pierwsza część semestru (ok. 10 tyg) Po wykładzie będą ogłaszane listy krótkich zadań do zrobienia na najbliższą pracownię.

Zasady prowadzenia pracowni Pierwsza część semestru (ok. 10 tyg) Po wykładzie będą ogłaszane listy krótkich zadań do zrobienia na najbliższą pracownię. Druga część semestru Do wykonania będzie większy projekt, preferowane środowisko: Ruby on Rails

Zasady prowadzenia pracowni Pierwsza część semestru (ok. 10 tyg) Po wykładzie będą ogłaszane listy krótkich zadań do zrobienia na najbliższą pracownię. Druga część semestru Do wykonania będzie większy projekt, preferowane środowisko: Ruby on Rails Zaliczenie semestru Zdobycie przynajmniej połowy możliwych do zdobycia punktów.

Zasady prowadzenia pracowni Pierwsza część semestru (ok. 10 tyg) Po wykładzie będą ogłaszane listy krótkich zadań do zrobienia na najbliższą pracownię. Druga część semestru Do wykonania będzie większy projekt, preferowane środowisko: Ruby on Rails Zaliczenie semestru Zdobycie przynajmniej połowy możliwych do zdobycia punktów. Egzamin To jest kurs, więc egzaminu nie ma ;-)

Plan wykładu Sprawy organizacyjne Wykład Źródła wiedzy Zaliczenia O języku Historia i pochodzenie języka O języku Instrukcje złożone Procedury i funkcje

Yukihiro Matsumoto a.k.a Matz

Nazwa języka

Stan obecny języka Aktualna wersja 1.9.3

Stan obecny języka Aktualna wersja 1.9.3 Rozwój języka Społeczność

Pochodzenie języka Trochę z Perla ($, $ ) Trochę ze Smalltalka Trochę z Pythona

Co jest fajnego w Rubym programowanie strukturalne programowanie obiektowe programowanie funkcjonalne

Ogólnie o języku język skryptowy typowanie dynamiczne (duck typing) brak deklaracji typów sporo typów wbudowanych

Co jest fajnego w Ruby? Skąd taka popularność? Ruby on Rails!!!

Praca interaktywna $ irb irb(main):001:0> puts("a kuku") A kuku => nil irb(main):002:0> 2+2 => 4 irb(main):003:0>

Wyrażenia w Ruby m Arytmetyka stałe: 1024, 3.1415 wyrażenia: (2 + 2) * 4

Wyrażenia w Ruby m Arytmetyka stałe: 1024, 3.1415 wyrażenia: (2 + 2) * 4 Napisy napis, napis

Składnia Separacja instrukcji instrukcje są w kolejnych wierszach instrukcje można oddzielać średnikiem

Instrukcja warunkowa if slowo = dlugie if krotkie.length < slowo.length puts Krótkie else ; puts Długie end

Instrukcja warunkowa case zwierze = hau case zwierze when hau, woof puts pies when miau puts kot else puts??? end

Jeszcze inna instrukcja warunkowa puts Zimno if temperatura <= -20 puts Pogoda unless temp < 15 && temp > 20

Wyrażenia logiczne Fałsz: nil oraz false Operatory: and, &&, or,, not,! ==, defined?

Wyrażenia logiczne Fałsz: nil oraz false Operatory: and, &&, or,, not,! ==, defined? Wartość wyrażenia logicznego Wartością wyrażenia logicznego, gdy jest prawdziwe, jest ostatni operand.

Wyrażenia logiczne Fałsz: nil oraz false Operatory: and, &&, or,, not,! ==, defined? Wartość wyrażenia logicznego Wartością wyrażenia logicznego, gdy jest prawdziwe, jest ostatni operand. Przykłady nie and nie false and 99 nie false

Pętla while a, b = 0, 1 while b < 10 puts b a, b = b, a + b end

Pętla for for x in 1..10 puts x end for el in [1,2,3,4,5,6,7,8,9,10] sum = sum + el end

I jeszcze inne pętle 5.times do puts Hurra!\n end i += 1 while i < 100

Pętle, uzupełnienie Instrukcja break kończy pętlę

Pętle, uzupełnienie Instrukcja break kończy pętlę Instrukcja next przechodzi na koniec pętli

Pętle, uzupełnienie Instrukcja break kończy pętlę Instrukcja next przechodzi na koniec pętli Instrukcja redo powtarza pętlę od początku bez przeliczania warunku lub pobierana kolejnego elementu (w iteratorze)

Przykład def suma(n) s=i=0 for i in 1..n s += i end return s end

Dygresja I Kompilator wsadowy $ ruby plik.rb

Dygresja I Kompilator wsadowy $ ruby plik.rb Plik wykonywalny #!/usr/bin/ruby def silnia(n) if n == 0; 1 else n * silnia(n-1) end end

Dygresja II Środowisko/edytor vim, gedit, geany, notepad,...

Dygresja II Środowisko/edytor vim, gedit, geany, notepad,... RubyMine firmy JetBrains Produkt bezpłatny do celów edukacyjnych. Licencja: u mnie, przez maila.