Napisano dnia 1.07.2022 r. o godzinie 22:00
Autor: Piotr Sperka
Asystent elektronika… niewielka, darmowa aplikacja, którą tworzyłem na przestrzeni mniej więcej pomiędzy 2006 a 2014 rokiem, i poniekąd uczyłem się na niej programowania. Pierwotnie napisałem ją w Delphi. W późniejszym czasie, około 2010 roku, postanowiłem uczyć się Javy, i w trakcie nauki przepisałem Asystenta Elektronika na nową technologię. Rozwój aplikacji zakończyłem mniej więcej w czasie, gdy rozpocząłem pracę zawodową. Cóż, zabrakło czasu i chęci na pracę po pracy.
Przez dłuższy czas byłem przekonany, że źródła aplikacji zaginęły gdzieś w mroku dziejów. Tak, nie używałem wtedy żadnego systemu kontroli wersji… Niedawno jednak znalazłem je na starym dysku. Odnaleziony kod postanowiłem bardzo delikatnie obrobić i wypuścić jako open source.
Kiedy aplikacja była w ciągłym rozwoju, miała swoją niewielką grupę użytkowników. Gdy odnalazłem jej kody źródłowe, stwierdziłem, że może pomimo wieku wciąż się komuś przyda?
Tak jak pisałem we wstępie, aplikacja nie była utrzymywana od ośmiu lat, natomiast wcześniej służyła jako poletko do nauki programowania. To powoduje, że po prostu nie może być napisana dobrze i zgodnie ze sztuką. Tak więc bardzo proszę, nie traktujcie jej jako próbki moich obecnych umiejętności. 😉
Postanowiłem nie poświęcać na jej obróbkę więcej czasu, niż to niezbędne. Przynajmniej póki co. Projekt przekonwertowałem na Mavena, dodałem resource z tłumaczeniami po polsku i angielsku, i wykonałem bardzo, naprawdę bardzo delikatny refaktoring. W kodzie wciąż jest masa pozostałości po generatorze formatek i ogólnie sporo bardzo brudnego kodu.
Aplikacja powstała na bazie źródeł, które miały być docelowo wersją 2.3. Posiada ona bardzo prosty plugin loader, umożliwiający dynamiczne ładowanie wtyczek i rozbudowę aplikacji o dodatkowe moduły. Wraz z aplikacją dostarczona jest tylko jedna wtyczka, która zawiera większość funkcji z dawnej gałęzi 2.2. Dlaczego nie wszystkie? Otóż usunąłem z niej mocno przestarzałe i na pewno obecnie bezużyteczne moduły, jak na przykład od dawna nieaktualizowaną bazę mikrokontrolerów, czy od dawna niedziałający moduł aktualizacji.
Poniżej przedstawiam listę funkcjonalności, które oferuje aplikacja wraz z dostarczoną wtyczką:
Jeśli jesteś zainteresowany lub zainteresowana, aplikację możesz pobrać TUTAJ. Pamiętaj, że do uruchomienia potrzebujesz Java Runtime Environment (JRE) w wersji 11 lub nowszej. Natomiast aktualne źródła dostępne są na moim GitHubie, TUTAJ.
Jak pisałem już wcześniej, cieszę się, że udało mi się przypadkiem odnaleźć źródła Asystenta Elektronika. Choć obecnie dzięki wszechobecnemu dostępowi do Internetu, wszelkie wyliczenia można bardzo łatwo odnaleźć w kilka minut, to jednak jeśli udostępniony kod i aplikacja przyda się chociaż jednej osobie — będę zadowolony.
Na koniec jak zawsze — zapraszam do kontaktu. Staram się zawsze odpisać, nawet jeśli zajmie to trochę czasu. Do następnego! 😉