Ethereum Studio – nowe webowe środowisko developerskie

Ethereum na swoim blogu opublikowało nowe narzędzie IDE dla programistów tworzących oprogramownie oparte o Ethereum. Jakie jest to nowe środowisko i czy może się równać z popularnym środowiskiem Remix IDE?
Zobaczmy pokrótce co nowego oferuje to narzędzie.

Pierwsze wrażenie

Środowisko dostępne jest pod adresem: https://studio.ethereum.org/

Wchodząc pod podany link ukazuje się widok umożliwiający stworzenie projektu. Istnieją 3 gotowe przykładowe projekty: Hello World, Coin oraz CryptoPizza NFT. Można też stworzyć własny, pusty projekt. Na potrzeby testu wybiorę szablon o najciekawszej nazwie, czyli CryptoPizza. Ukazuje się poniższy ekran:

ethereum-studio-ide
Projekt CryptoPizza NFT w Ethereum Studio.

Wygląda to przyzwoicie. Ekran podzielony jest na część edycyjną oraz część będącą wyrenderowaną stroną WWW (częścią kliencką tworzonego dappsa). Dostępne są wszystkie niezbędne funkcjonalności wymagane do pracy edycyjnej nad programem (edycja, zapis, zmiana nazw). Co jednak zauważyłem – modyfikacja kodu strony webowej nie powoduje przeładowania widoku strony (trzeba więc manualnie kliknąć guziczek odśwież wyrenderowany widok). Takie zachowanie może być upierdliwe na dłuższą metę.

Uruchomienie CryptoPizzy

Środowisko umożliwia kompilację smart contractu i załadowanie go do sieci – sieci blockchain w przeglądarce (chociaż to i tak za dużo pewnie powiedziane). Nie mówimy więc tutaj aktualnie o wsparciu interakcji z prawdziwymi sieciami choćby testowymi, tym bardziej nie z Mainnetem. Środowisko Remix oprócz takiego symulatora blockchaina w przeglądarce posiada wsparcie dla sieci testowych no i produkcyjnej Mainnet.

Na starcie mamy do dyspozycji 2 konta, które mają po 100 Etherów. Jako, że mamy sumulowaną sieć w przeglądarce – narzędzie to nie integruje się jeszcze z Metamaskiem.

Projekt sukcesywnie kompiluje się (za pomocą kompilatora Solidity 0.5.1, niestety nie mogę znaleźć możliwości zmiany wersji, co też jest możliwe w Remix IDE). Po kompilacji kontrakt zostaje załadowany do “sieci”.

crypto-pizza-uploaded
Kontrakt załadowany do symulatora sieci blockchain w przeglądarce.

Po załadowaniu kontraktu mamy możliwość zarówno interakcji z nim za pośrednictwem warstwy UI tworzonego dapps’a (czyli po prostu dodajemy na widoku nową pizzę). Możliwe jest także wykorzystanie widoku funkcjonalności kontraktu i komunikacja bezpośrednio z kontraktem.

Przykładowy projekt działa bez problemu i zgodnie z założeniami. Oto stworzona przeze mnie CRYPTO PIZZA:

crypto-pizza-interaction
Pizza Przemka stworzona.

Pobranie zawartości projektu na własną maszynę jest obecnie niemożliwe. Istnieje przycisk umożliwiający wykonanie tej akcji – niestety rezultatem jego działania jest okienko informujące o niemożności pobrania. Wygląda na to, że trochę pracy trzeba jeszcze wykonać zanim środowisko stanie się w pełni użyteczne.

Podsumowanie

IDE Ethereum Studio robi dobre wrażenie. Jest nowoczesne i funkcjonalne. Brakuje aktualnie jeszcze kilku ważnych funkcji, ale jak na wczesną wersję zapowiada się ciekawie. Wątpię, żeby intencją było zastąpienie popularnego obecnie Remix IDE, które funkcjonalnie na ten moment deklasuje Ethereum Studio. Fajniej mieć wybór niż go nie mieć. Jestem pewien, że te 2 środowiska będą mogły egzystować w sieci wspólnie.

Sprawdziłeś to IDE? Jak Tobie się podoba? Widzisz jakieś ciekawe funkcjonalności?
Daj znać w komentarzu – Przemek.