Szybko rozwijające się technologie webowe i pojawiające się wciąż nowe rozwiązania powodują, że czasami trudno wybrać odpowiednie narzędzia do tworzenia aplikacji internetowych. Wiele z nich dostępnych jest jako oprogramowanie Open Source, a na forach internetowych i blogach można znaleźć wiele informacji na ich temat. Jednak ze względu na to, że różnorodność i liczba rozwiązań jest znaczna, poniżej w kilkunastu punktach przygotowałem listę przydatnych wg mnie narzędzi dla programistów aplikacji webowych.
IDE
Atom oraz Brackets są darmowymi edytorami, natomiast dla Sublime konieczne jest zakupienie płatnej licencji, więc jeśli kryterium wyboru jest cena, warto wybrać jeden z dwóch pierwszych IDE. Dla każdego z nich dostępnych jest wiele rozszerzeń, która ułatwiają programowanie.
Budowa aplikacji
Grunt jest rozwiązaniem starszym w stosunku do Gulp, który z kolei w szybkim tempie znalazł wielu zwolenników. Duża zaletą Gulp w stosunku do Grunt jest to, że używa on języka JavaScript do definiowana zadań, co pozwala jeden język używać do pisania kodu aplikacji oraz definiowania zadań budujących i testujących tworzone oprogramowanie.
CSS
Składnia obu języków jest podobna, ale nie identyczna np. w Sass zmienne oznaczamy za pomocą $
, natomiast w Less – @
. Zaletą Sass jest możliwość wykorzystania niezwykle rozbudowanej biblioteki Compass.
Testowanie aplikacji w przeglądarce
Chrome Dev Workspaces umożliwia modyfikowanie kodu aplikacji bezpośrednio w przeglądarce, co umożliwia sprawdzanie efektów zmian w kodzie „na żywo”. Z kolei Browser Sync umożliwia uaktualnianie widoku aplikacji w przeglądarce po zmianie jakiekolwiek rodzaju pliku w kodzie źródłowym wykonanej w dowolnie wybranym IDE.
Linting
Każde z narzędzi umożliwia weryfikacje jakości kodu ECMAScript/JavaScript, co pozwala wykryć błędy czy potencjalne problemy. Zaletą ESLint są rozbudowane możliwości konfiguracyjne, co jednak w niektórych przypadkach wymaga czasu, by przygotować bazową konfigurację.
Testowanie aplikacji
Jasmine jest biblioteką do testów BDD (ang. Behavior Driven Development), z kolei PhantomJS jest przeglądarką internetową uruchamianą w konsoli systemu operacyjnego, co pozwala testować aplikację na maszynach zdalnych bez dostępu do środowiska graficznego.
Generatory i szablony aplikacji
Google Web Starter Kit można pobrać ze strony Google’a i na podstawie przygotowanych szablonów budować aplikację, z kolei Yeoman dostarcza generator mający szereg możliwości dostępnych na etapie przygotowania generatora do utworzenia szablonu aplikacji z wybranymi bibliotekami.