LINUX.ORG.RU

История изменений

Исправление KivApple, (текущая версия) :

STM32 и Linux-одноплатники для начала. Хочу запилить набор универсальных библиотек для себя, чтобы никогда не писать один код дважды.

Хочу всю периферию запихнуть в классы для удобной работы. А потом написать классы для всяких датчиков, серв и прочего. Причём, хочу активно использовать полиморфизм. То есть, условно говоря, I2C расширитель портов должно быть можно использовать точно также, как и обычные GPIO (в том числе передавать во всякие другие классы, которые принимают GPIO-пины как параметры).

Сейчас я использую С++, но я понял определённую бесперспективность данной затеи - если я захочу пойти дальше самых жирных микроконтроллеров типа STM32 в сторону AVR и 8051, например, то меня ждут большие проблемы (хотя памяти вполне может и хватить - не хватит поддержки компиляторов). Получается, что мне нужно в итоге получать сишный код, ибо компилятор Си есть везде.

Vala кажется подходящим вариантом, но как выпилить из него все зависимости от сторонних библиотек. Мне на самом деле мало надо - только наследование структур и виртуальные методы для них. Никаких исключений, множественного наследования и т. д.

Исправление KivApple, :

STM32 и Linux-одноплатники для начала. Хочу запилить набор универсальных библиотек для себя, чтобы никогда не писать один код дважды.

Хочу всю периферию запихнуть в классы для удобной работы. А потом написать классы для всяких датчиков, серв и прочего. Причём, хочу активно использовать полиморфизм. То есть, условно говоря, I2C расширитель портов должно быть можно использовать точно также, как и обычные GPIO (в том числе передавать во всякие другие классы, которые принимают GPIO-пины как параметры).

Сейчас я использую С++, но я понял определённую бесперспективность данной затеи - если я захочу пойти дальше самых жирных микроконтроллеров типа STM32 в сторону AVR и 8051, например, то меня ждут большие проблемы (хотя памяти вполне может и хватить - не хватит поддержки компиляторов). Получается, что мне нужно в итоге получать сишный код, ибо компилятор Си есть везде.

Vala кажется подходящим вариантом, но как выпилить из него все зависимости от сторонних библиотек. Мне на самом деле мало надо - только наследование структур и виртуальные методы для них.

Исходная версия KivApple, :

STM32 и Linux-одноплатники для начала. Хочу запилить набор универсальных библиотек для себя, чтобы никогда не писать один код дважды.

Хочу всю периферию запихнуть в классы для удобной работы. А потом написать классы для всяких датчиков, серв и прочего. Причём, хочу активно использовать полиморфизм. То есть, условно говоря, I2C расширитель портов должно быть можно использовать точно также, как и обычные GPIO (в том числе передавать во всякие другие классы, которые принимают GPIO-пины как параметры).

Сейчас я использую С++, но я понял определённую бесперспективность данной затеи - если я захочу пойти дальше самых жирных микроконтроллеров типа STM32 в сторону AVR и 8051, например, то меня ждут большие проблемы (хотя памяти вполне может и хватить - не хватит поддержки компиляторов). Получается, что мне нужно в итоге получать сишный код, ибо компилятор Си есть везде.