Wpis z mikrobloga

Wychodzę dzisiaj z betą mojej strony do nauki programowania :D
Coś a'la Scratch, układa się bloczki i z tego wychodzi działający kod. Całość jednak dla osób trochę bardziej zaawansowanych.
Głównym celem jest przybliżenie tajników OOP.
Delikwent układa/pisze kod, a potem może śledzić jak w trakcie jego wykonywania zmienia się stos i sterta w pamięci komputera.
Ciągle jest tam trochę niedociągnięć, ale coś już działa :V
Zacząłem to pisać jako projekt prywatny, a ostatecznie przekształciłem to w moją pracę inżynierską.
Kto kliknie, ten będzie zarabiał 15 tyś. złotych miesięcznie - sprawdzone info ( ͡º ͜ʖ͡º)
Teraz muszę popracować tylko nad stworzeniem trochę większej liczby lekcji, a z tym jak na razie jest cienko :D

Tutaj stronka z IDE: TREPL

#programowanie #scratch #naukaprogramowania #trepl
Pobierz Lord_Fixer - Wychodzę dzisiaj z betą mojej strony do nauki programowania :D
Coś a'la...
źródło: comment_VRWj3YS4G1FB7uB8Hk76OJZqfBgZWXm7.jpg
  • 38
jest przybliżenie tajników OOP.

Delikwent układa/pisze kod, a potem może śledzić jak w trakcie jego wykonywania zmienia się stos i sterta w pamięci komputera.


@Lord_Fixer: a w jaki sposob to przybliza tajniki OOP? To przeciez zupelnie inny poziom abstrakcji
@edgar_k: W taki, że tworzysz sobie klasy i obiekty i >widzisz jak zachowują się one w pamięci :P


No to pokazujesz co się dzieje w pamięci, a nie same oop. Bo żeby tworzyć i testować obiekty to coś z nich trzeba jednak już coś umieć :P
@Roballo: Ale jest zestaw gotowych programów (póki co uszczuplony, ale mam nadzieję go poszerzyć), które implementują znane i lubiane struktury danych. Mireczek klika, dostaje gotową kolejkę, czy stos, widzi jak to jest reprezentowane w pamięci i mówi "o, przecież" :D Przynajmniej taki jest plan :P Ale ogólnie przyznam, że może i rzeczywiście jest to bardziej program do nauczania, niż nauki OOP.
@Lord_Fixer: muszę przyznać, że wygląda to mega. Pytanie jednak... dlaczego nowy język? Potrzebowałeś jakiejś prostszej warstwy abstrakcji, by nie wchodzić zbyt głęboko w szczegóły języka?

Sama wizualizacja wygląda natomiast spoko... więc pytanie: czy to jest open source?
@noisy:

Pytanie jednak... dlaczego nowy język?

Były ku temu 3 powody:
1. Nie chciałem być ograniczony do elementów zawartych w tylko jednym języku programowania
2. Chciałem aby całość działała po stronie klienta bez potrzeby komunikacji z serwerem
3. Nudziło mi się i chciałem napisać własny język
I ogólnie to ten trzeci aspekt był decydujący :D Póki są to projekty prywatne, to lubię się "zabawić" :P

czy to jest open source

Jeszcze
@Lord_Fixer: z chęcią osobiście z tego bym korzystał robiąc tutoriale z programowania, jednak dużo łatwiej było by, gdyby faktycznie to odzwierciedlało konkretne języki programowania. Czy masz to napisane w taki sposób, by możliwe było podłączenie innej logiki i nieco innej warstwy prezentacji, dla dowolnego języka?

BTW, w czym to napisałeś?
@sequel, @Tarzan_boj, @Veuch, @behereit, @aciapacia, @siwersss, @gaily, @adios, @Mr_Av3r4ge, @razenas, @mafias, @Roballo, @-PPP-, @mfek00, @Dante651, @sooner, @Hoff, @wypokowy_hazardzista, @noisy, @Kiro, @binerek, @elwin013, @PiersiowkaPelnaZiol

drogie mireczki, zaplusowaliście ten post... to Was wołam, bo jeżeli macie konto na FB, to koledze na pewno przydadzą się lajki: https://www.facebook.com/trepl.xyz/

Zawsze najtrudniej jest uzbierać pierwsze
@noisy: Oczywiście jest to możliwe, ale wymagałoby ręcznej implementacji danego języka w javascripcie/typescripcie.
Trzeba bowiem odpowiednio zaimplementować słuchaczy, którzy będą w stanie aktualizować warstwę prezentacji.
Ogólnie 90% całości napisane jest w typescripcie. Po stronie serwera oczywiście jest trochę innego kodu, ale to jest raczej nieistotne.
Niestety był to trochę przymus, skoro miała być to aplikacja działająca w przeglądarce. Ale moim zdaniem TS daje radę i całkiem przyjemnie się to implementowało.
@Lord_Fixer: strasznie nieczytelne, zmniejsz trochę paddingi w tych kolorowych kwadratach i wyłącz powiększanie się ich przy najechaniu myszki :) imo te okienko z kodem powinno być szersze a te podglądem pamięci pomniejszone
@Mati365:

zmniejsz trochę paddingi w tych kolorowych kwadratach

Chodzi o padding góra-dół?

wyłącz powiększanie się ich przy najechaniu myszki

"Powiększenie" niestety muszę zostawić, bo umożliwia kliknięcie w wolną przestrzeń pomiędzy bloczkami i ręczne wpisanie kodu, lub (jak kto woli) upuszczenie przesuwanego bloczka.

te okienko z kodem powinno być szersze a te podglądem pamięci pomniejszone

Dostosuję :) Choć już teraz można sobie je ręcznie skalować.