Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

JavaBlock - darmowy edytor i symulator zapomnianych schematów blokowych

Ostatnio wielu laików bierze się za programowanie. I na pierwszy rzut biorą Pascala, C++, Javę, albo nawet i C#. Czy dobrze? Nie zawsze...

Patrząc na najczęściej spotykane problemy przy programowaniu (nie patrząc na te "zróbcie za mnie"):
- wybór środowiska (błędnie zwanego tylko kompilatorem)
- składnia języka - jak się tworzy pętle, warunki itd
- deklaracja zmiennych
- źle ustawione klamry
- błędnie napisane wzory i problem z obsługą debuggera

Jak więc laicy powinni rozpocząć programowanie? Od starych dobrych schematów blokowych. Dlaczego?

Czym są schematy blokowy?

Schematy blokowe to graficzna metoda zapisu postępowania. Zapewne każdy spotkał się ze schematami blokowymi, gdzie przedstawione są sposoby postępowania i uwzględniający różne możliwości, gdzie z jednego bloku wychodzą dwie strzałki.

W niektórych szkołach uczą schematów blokowych, jednak albo z bardzo starym i niewygodnym oprogramowaniem, jakim jest Eli, albo "na wiarę", czyli "to powinno być dobrze". Często są problemy z symulacją (interpretacją) długiego schematu o dużej liczbie iteracji - łatwo się pomylić.

Za pomocą schematów blokowych łatwiej jest wizualizować działanie algorytmu - co i kiedy się dzieje. Od razu widać, co prowadzi do czego, nie ma więc problemu z np. źle ustawionymi klamrami (często połączone z kompletnym brakiem wcięć)

JavaBlock

JavaBlock oferuje zarówno tworzenie i symulację schematów blokowych. Jest to graficzny program napisany w pełni w Javie działający zarówno jako samodzielna aplikacja, jak i aplet internetowy.

Co prawda nie napiszemy w nim bardziej skomplikowanego programu (przynajmniej na razie:)), ale może służyć do prezentacji graficznej prostych algorytmów, oraz nauki programowania.

"Składnia" w JavaBlock
JavaBlock do symulacji używa JavaScript. Interpreter jest jednak wzbogacony o kilka "translatorów". Można bowiem używać składni pascalowej, tzn. := do przypisania, = do porównania. Wystarczy włączyć "Tryb Pascala" z poziomu Menu.

Do wczytywania oraz wypisywania danych służą przygotowane funkcje:a=Read(message) - wczytuje dowolny typ danych wyświetlając wpisany komunikat (opcjonalnie) i zapisuje ją do zmiennej a a=ReadNumber(message) - wczytuje liczbę (wiadomość opcjonalna) i zapisuje ją do zmiennej a Write(message) - wypisuje do konsoli (na prawym panelu "Wyjście") podany ciąg znaków (string) Writeln(message) - j.w, tylko przechodzi do następnej linijki

Oraz ich odpowiedniki-polecenia (działające tylko w bloku Wejścia/Wyjścia): read a - wczytuje i zapisuje do zmiennej a readNumber a - wczytuje liczbę i zapisuje ją do zmiennej a write str - wypisuje ciąg znaków, gdzie str to jakiś ciąg znaków (string) writeln str - j.w, tylko że przechodzi do nowej linii.

W przypadku tych poleceń NIE STOSUJEMY ŚREDNIKÓW. W innym przypadku jest to opcjonalne.

Budowa stringów

Przy wypisywaniu często trzeba wypisać wartość zmiennej. Robi się to np. tak:writeln "wartosc a="+a+"." Writeln("wartosc a="+a+".")przy czym pierwszy TYLKO w bloku Wejścia/Wyjścia, ten drugi działa w pozostałych (np. w skrypcie osadzonym)

Można również śledzić wartości zmiennych uzupełniając pole "Śledź" w zakładce "Wartości zmiennych" na prawym panelu nazwami zmiennych, lub wyrażeniami (poszczególne wyrażenia/nazwy zmiennych oddzielając przecinkami). Można od razu śledzić np. "2*a*a".

Możliwości JavaBlock

* Tworzenie i symulacja schematów blokowych
* Dzielenie się schematami za pośrednictwem pastebin.com (nie trzeba wysyłać pliku, wystarczy ID, lub adres WWW)
* rysowanie niskopoziomowe
* implementacja głównych poleceń LOGO
* Zapis schematu do obrazka

Program jest dostępny w polskiej oraz angielskiej wersji językowej.

Wymagania:
* Java SE6 (Windows, Linux, MacOS, BSD, Solaris)
* min. 256 MB RAM
* parę MB na HDD
* CPU w miarę dzisiejszy (1GHz powinien wystarczyć)

Linki

Projekt na sourceforgeApletExeManual (PL)

Aplet ze schematem prezentującym LOGO:LogoAplet ze schematem prezentującym zamianę systemów liczbowych:Systemy 

Komentarze

0 nowych
  #1 30.03.2015 10:28

Witaj,
w tym wpisie http://www.dobreprogramy.pl/Dropcio/Jak-zaczac-programowanie-krok-po-kroku,34871...
pisałeś że chcesz napisać "Wstęp do programowania", jestem tym zainteresowany zarówno jako odbiorca jak i potencjalny wydawca.
Jeżeli nadal Cię interesuje temat i masz jakieś materiały do przekazania to pisz formless@poczta.fm