niedziela, lutego 17, 2008

Jak to rzeczy proste okazują się trudnymi ;-)

Od kilku dni bezskutecznie próbuje zrobić wydawało by się rzecz banalną - zmienić kod w rysunek.
Zamiast:


if (condition) {
doFirst();
} else {
doSecond();
}

chciałbym dostać coś takiego:


I tak dalej, to samo z for, while, do-while, switch i innymi - docelowo całe metody w postaci rysunków.
Niby pikuś do zrobienia, skoro mam już kod w postaci statementów.... Sęk w tym, że jakoś nie mogę złamać tego miejsca pomiędzy drzewem kodu, a rysunkiem.
Czuję, że powinienem każdego takiego blokowego statementa traktować jak oddzielny bloczek, dzięki temu taki if jak wyżej miałby tylko swoje wymiary: szerokość, wysokość oraz współrzędne punktów wejścia i wyjścia. Najgłębiej położony bloczek wpływałby na wymiary nadbloczka, ten znów na nad bloczek i tak w górę, aż cały rysunek byłby gotowy.... i tutaj się gubię :-)
Z czasem to złamię, ale wolałbym szybciej niż później ;-)
Jedną z prób o jakiej myślę jest załatwienie tego wszystkiego "od dołu", czyli najpierw rozrysować sobie statementy tak by mieć ich modele rysunkowe, wyznaczyć na nich najważniejsze punkty, a następnie sprobować je wszystkie zakodować tak by każdy z nich z osobna był zdolny do wyprodukowania kodu rysunku SVG. Następnym etapem byłaby próba odgryzienia temu głowy ;-) a w rzeczywistości stworzenia zagnieżdżania bloczków.... brzmi prosto, ale nie umiem sobie tego wyobrazić ;-) czyżby czas przyszedł na użycie TDD? ;-)


Podobne postybeta
Nie taka Java wolna jak ją opisują...
Piszemy serwis społecznościowy w Google App Engine
Architektura
Google AppInventor for Android, ktoś się już bawił?
Sprawdzanie zdjęcia ;-)