Jak już wspomniałem w którymś wątku, na potrzeby programowania modułów opartych na Arduino zaszła potrzeba stworzenia programatora umożliwiającego obsługę customowych urządzeń. Źródła obecnego Hapcan Progammera nie są dostępne, a nawet jeśli by były to zapewne dorobienie czegokolwiek będzie trudne.
Dlatego postanowiłem rozpocząć projekt nowego programmera, który być może stopniowo byłby w stanie zastąpić obecne rozwiązanie.
Kilka mądrze brzmiących skrótów opisujących projekt:
- Język C#, środowisko Visual Studio 2015 Community (darmowe)
- klasyczny WPF (Windows Presentation Foundation) z wykorzystaniem wzorca MVVM (Model-View-ViewModel)
- XAML jako język tworzenia interfejsu programu
- biblioteka Caliburn.Micro ułatwiająca implementację wzorca MVVM
- MEF (Managed Extensibility Framework), dla ułatwienia implementacji aplikacji jak i pluginów
Brzmi groźnie jeśli ktoś nie jest zorientowany, ale w sumie jest dosyć proste i łatwiejsze niż rzeźbienie tego wszystkiego ręcznie. Zaznaczę od razu, że mistrzem świata w C# też nie jestem, głównie piszę w C++ na co dzień, a naukę powyższych frameworków rozpocząłem 5 dni temu i w miarę bezproblemowo się w nich poruszam, w razie czego posiłkując się googlami

Po co ten wątek?
Otóż chciałem zapytać, czy jest ktoś chętny z tutaj obecnych aby pomóc w implementacji i rozwijaniu nowego programatora - aby projekt mógł się rozwijać nieco szybciej


Podobnie z MEF - służy on do obsługi pluginów w które będzie wyposażony programator i jego znajomość w zasadzie ogranicza się do napisania jednej dodatkowej linijki kodu w pluginie - reszta dzieje się magicznie sama.
Poza tym, dobra chwila aby nauczyć się C#/WPFa czy MVVM używanych praktycznie w każdym nowym programie pisanym na platformie .NET., tworząc program, który ma jakieś faktyczne zastosowanie aniżeli kolejny kalkulator z tutoriala

Dodatkowo fajnie by było przegadać z kimś rozwiązanie takie czy inne i wybrać lepsze niż samemu główkować

Kod za jakiś niedługi zapewne czas pojawi się na githubie, póki co jeszcze prototypuję i sprawdzam co i jak ma szansę zadziałać.