Or just mix everything and do not worry about this?
No, ti prego di preoccuparti di questo.
Ho lavorato in linguaggi di alto livello e ho lavorato in linguaggi di basso livello. Ho lavorato quando il tempo non era un fattore in cui era vitale per la vita. Una cosa che è sempre stata vera: è meglio pensare di rendere le cose facili da leggere prima di pensare di renderle veloci.
- As for me, I prefer linux-kernel-like codestyle with all_lower_case() function names and 8-spaces wide tabs as indents.
A nessuno importa quello che ti piace. Si preoccupano se possono leggerlo. Ciò che rende leggibile il tuo codice è un buon nome, uno stile coerente e un buon uso dello spazio bianco. (8 spazi, davvero? Sheesh)
Sei libero di impostare il tuo stile purché non lo mescoli con altri stili. Sei libero di usare cose che usano altri stili ma non farlo da copia e incolla. Dovresti nascondere gli altri stili dietro alle astrazioni. Vieni a pensarci anche quando non pensi allo stile dovresti nascondere un altro codice dietro alle astrazioni. Le funzioni wrapper sono un modo per farlo.
- ST provides its own HAL with names of functions like HAL_Delay(), HAL_UART_Receive() etc. They use two-space indentation, all brackets on new line and other ST-specific codestyle features.
A meno che tu non stia facendo qualcosa di sciocco come aggiungere il codice al tuo usando il copia e incolla, l'unica parte di questo che potrebbe apparire nel tuo codice sono i nomi. I wrapper si prendono cura di questo.
- Also, it is very common to use FreeRTOS on embedded systems. They use function names like xTaskCreate() and in general its own coding standard.
Secondo verso, uguale al primo.
How to manage all this stuff in such situations? Make wrapper inline functions?
Usa la migliore astrazione possibile. Non dare per scontato che le funzioni inline siano l'unica cosa che puoi usare. Le funzioni virtuali possono essere molto potenti. Se sei preoccupato per la velocità, fermati. Non preoccuparti di questo fino a quando un test non ti dimostrerà necessario.
Ricorda RTOS non significa veloce. Significa sempre lento. Non lasciare che il tuo ambiente ti dica quali sono i tuoi requisiti. L'attività a portata di mano dovrebbe dirti che.
Lavora per creare un posto nel codice in cui tutto parla in uno stile con un solo vocabolario. Sposta via i dettagli e scrivi qualcosa che faccia un buon punto di vista.