Programowanie w języku Ruby

II rok studiów stacjonarnych inżynierskich, kierunek Informatyka, wydział IET

Zasady zaliczania przedmiotu

Oddawanie zadań prostych

Oddawanie zadania złożonego

Materiały pomocnicze

Różne

Ruby

Ruby on Rails

Wybrane slajdy z wykładu

Prezentacja którą należy utworzyć
Data modyfikacji slajdów: 16-02-2018, 09:49

Tematyka ćwiczeń laboratoryjnych

L. p. Tematyka Jak się przygotować do ćwiczenia
1
  • Składnia języka Ruby
  • Typizacja
  1. Przeczytaj jakie funkcjonalności związane z tworzeniem skryptów Ruby oferuje edytor Visual Studio Code [Ikona programu 'Visual Studio Code']
  2. Uruchom ten edytor za pomocą komendy code lub kliknij ikonę programu
  3. Przy użyciu opcji "Open folder..." (Ctrl+K Ctrl+O) wybierz katalog w którym będą przechowywane Twoje skrypty
  4. W obrębie panelu "EXPLORER" najedź kursorem myszy na nazwę powyższego katalogu i kliknij ikonę "New File" - utwórz pusty plik/skrypt o nazwie main.rb
  5. Napisz skrypt wypisujący sumę dwóch liczb
  6. Za pomocą sekwencji klawiszy Ctrl+` otwórz panel terminala
  7. W przypadku MS Windows:
    • Kliknij napis "Customize" i określ którego z dostępnych terminali chcesz używać do wydawania poleceń systemowych: "Git Bash", "PowerShell", ...
    • Z listy dostępnych terminali wybierz ten, który wspiera sekwencje sterujące ANSI - sprawdź czy po wydaniu polecenia ruby -e 'puts "\e[31mTest\e[0m"' napis "Test" wyświetla się na czerwono
  8. W obrębie panelu terminala wpisz polecenie ruby main.rb, co spowoduje uruchomienie Twojego skryptu
  9. Jeżeli chcesz aby określona sekwencja klawiszy (np. Ctrl+Alt+R) uruchamiała polecenie ruby <nazwa_bieżącego_skryptu>, to:
    • Naciśnij Ctrl+K Ctrl+S, a następnie otwórz plik keybindings.json i umieść, pomiędzy parą nawiasów kwadratowych, pokazaną poniżej treść:
      [
        { "key": "ctrl+alt+r", "command": "workbench.action.tasks.runTask", "args":"ruby" }
      ]
      
    • Utwórz, w katalogu z kodem źródłowym, podkatalog .vscode
    • W tym ostatnim, utwórz plik tasks.json o następującej zawartości:
      {
        "version": "2.0.0",
        "tasks": [
                   {
                     "label": "ruby",
                     "command": "ruby",
                     "args": [ "${file}" ]
                   }
                 ]
      }
      
  10. Zainstaluj gem-a rubocop: gem install rubocop --no-document
  11. Zastąp zawartość skryptu main.rb następującą:
    =begin
    Przykładowy kod ze strony http://rubocop.readthedocs.io/en/latest/basic_usage/
    =end 
    def badName
    if something
          test
    end
    end
    
  12. Za pomocą programu rubocop sprawdź zgodność tego skryptu z zasadami pisania poprawnego kodu w Ruby - wykonaj: rubocop main.rb
  13. Wywołaj program następująco: rubocop --auto-correct main.rb - rubocop dokona autokorekty skryptu źródłowego, tzn. doprowadzi go, na tyle ile to możliwe, do stanu zgodności z w/w zasadami
  14. Ponownie sprawdź zgodność skryptu z powyższymi zasadami
  15. Ręcznie popraw skrypt i doprowadź go do stanu "brak wykroczeń", tzn. po wydaniu polecenia rubocop main.rb ma się wypisać tekst: "... no offenses detected"
  16. Zainstaluj rozszerzenie vscode-ruby oraz (wymienione tam) gem-y potrzebne do prawidłowego działania debuggera
  17. Naciśnij Ctrl+,, wybierz "USER SETTINGS" i dopisz:
    "ruby.lint": {
      "reek": false,
      "rubocop": true,
      "ruby": true, //Runs ruby -wc
      "fasterer": false,
      "debride": false,
      "ruby-lint": false
    }
    
    a następnie naciśnij Ctrl+S
  18. Przeczytaj jak korzystać z debuggera
  19. Zainstaluj gem-a rcodetools: gem install rcodetools --no-document
  20. Sprawdź czy działa autouzupełnienie - dopisz na końcu skryptu tekst puts 1.e. Jeżeli nie pojawiło się menu z propozycjami nazw metod, to naciśnij Ctrl+Spacja
  21. Zainstaluj gem-a pry: gem install pry --no-document
  22. Zaznajom się z możliwościami programu pry
  23. Przeczytaj opis testów minitest, TDC oraz przyglądnij się przykładom testów
2
  • Przetwarzanie tekstu
  • Tworzenie jednolinijkowców
  • Wyrażenia regularne
Zaznajom się z:
3
  • Programowanie funkcyjne
  • Obiektowość
  • Programowanie sterowane testami - TDD
  • Programy 'gem' oraz 'rake'
Zaznajom się z:
4 Tworzenie prostych aplikacji internetowych
  • Interfejs Rack
  • Podstawy języka dziedzinowego (DSL) "Sinatra"
Zaznajom się z:
5 Framework "Ruby on Rails" - Kontroler oraz testy funkcjonalne Zaznajom się z:
6 Framework "Ruby on Rails" - Model oraz testy jednostkowe Zaznajom się z:
7 Framework "Ruby on Rails" - Widok oraz testy integracyjne Zaznajom się z:

[Ranking popularności języków]


Rysunek ze strony https://www.udemy.com/blog/modern-language-wars/