Moja aplikacja bracket-string-validator nabiera piór i kształtów nie, kształtów nie.
Mięśni raczej nie. Nadal dwie funkcjonalności: sprawdzanie poprawności wyrażenia nawiasowego oraz testowanie wydajności (benchmarking). (Co by tu można dodać?)
Ale za to część odpowiedzialną za sprawdzanie poprawności wyrażenia nawiasowego mam już napisaną (zbyt dużo powiedziane) w Angularze. (Jeszcze muszę dodać testowanie wydajności.) To raz. Dwa, że planuję przepisać część logiki na Javę, nadto dodać GUI w C oraz bazę danych obsługującą SQL.
Kłopot trochę z testami jednostkowymi i integracyjnymi. Same testy pisze się w miarę zwyczajnie, przynajmniej w JavaScripcie. Oby tylko w innych technologiach nie było innych podejść (?). W Javie to jeszcze mogę sobie to jakoś wyobrazić, "zekstrapolować" z JavaScriptu, ale w C i w Bashu nie... będę musiał się nauczyć. Nie ma rady! Też testowanie na różnych środowiskach – trzeba mi ogarnąć Travisa i jego konfigurację. Nie wiem, czy da się ustawić konkretną dystrybucję Linuksa. Zresztą, czego ja oczekuję za darmo? Przy czym jest też plan, z początków tworzenia aplikacji, by postarać się o większą generyczność implementacji, co bym nie musiał martwić się dystrybucją. Jednak to mniej ważna sprawa, dodatek w zasadzie. Aplikacja ma działać na jednym środowisku bezbłędnie; inne – opcjonalnie i w nieokreślonej przyszłości.
W tym świetle na dalszy plan schodzi rozbudowa obecnego interfejsu CLI. Planuję m.in. dodać debug mode. I tyle. Miałbym pewnie więcej pomysłów, ale w sumie nie ma sensu, dopóki (eee... albo "skoro") nikt tego nie używa.
Z bardziej operacyjnych spraw: nadal nie wiem, jak powinien u mnie wyglądać deployment (zob. też wątek na naszym forum). Przy tylu technologiach robi się skomplikowanie... ale przy tym fajnie. :) (W teorii. Najprzyjemniej rozmyślać o tym, czego to ja nie zaimplementuję.)
Myślę też... nad PHP (tak ostrożnie). Ale prawie go nie znam. Nie wiem, czy chce mi się uczyć na tę imprezę. Ale jakby... byłby przyczynek dla mnie do ruszenia Coyote. Ale to znów... Docker. A Dockera nie mam w planach. (Jeszcze?)
Dla chętnych: planowanych jest parę innych, mniej "przebojowych" spraw – można rzucić okiem: https://github.com/devsilv/devsilv-bracket-string-validator/issues
Nie jest to celem tego wpisu, ale – jeśli ktoś chciałby pomóc (wiedzą), to bardzo chętnie. :) Tutaj wątek, w którym proszę o ocenę: Ocena małego projektu JS (Node.js) + Bash
#oprogramowanie #bracket-string-validator #javascript #c #bash #cli #gui #web #angular #java #sql #database #deployment #php #nodejs #feedback
Sukces. Udało mi się zmusić aplikację w Angularze do zwracania poprawnej odpowiedzi, i to dynamicznie, czy podany string jest poprawnym wyrażeniem nawiasowym.
To kwalifikuje się na news miesiąca.
Angular jednak nie jest taki zły.
UPDATE:
import { Component } from '@angular/core';
import { isBracketStringValidCounter } from "../../../../logic/validation-module/testable/is-bracket-string-valid-counter";
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'bracket-string-validator';
input = "";
valid = undefined;
processInput(event) {
this.input = `You have typed: ${JSON.stringify(event.target.value)}`;
this.valid = `Is this a valid bracket string? — ${this.validateWebGui(event.target.value)}`;
}
validateWebGui(string) {
return isBracketStringValidCounter(string);
}
}
#angular #framework #oprogramowanie #moja-nauka-angulara #web #bracket-string-validator #udało-się
PS. Przypomniała mi się Java, jak zacząłem próbować opisywać typ funkcji z nawiasami trójkątnymi.
Nowości na moim blogu:
Bardzo chętnie przyjmę wszelkie oceny, recenzje i w ogóle komentarze zarówno odnośnie wpisu, jak i aplikacji.
Miłego czytania. :)
UPDATE: W artykule wspominam również o mojej nauce Angulara.
#blog #news #artykuł #bracket-string-validator #javascript #bash #moja-nauka-angulara #feedback
@Silv jakie masz problemy z nauką angulara, że nie możesz zrobić nawet pierwszej apki?
@no_solution_found: Być może nie byłoby to takie trudne od strony technicznej, ale nie mam motywacji, by każdy błąd sprawdzać w dokumentacji. Denerwuje mnie ta technologia (trochę jak nowe języki programowania), bo nie widzę dla niej zastosowania.
Tzn. ja się nie odnoszę do Twojego programu, nie zaglądałem nawet do kodu. Piszę ogólnie.