Come aggirare le convenzioni di denominazione Symbian?
-
22-07-2019 - |
Domanda
Sto per scrivere una libreria C ++ che deve essere utilizzata da un'applicazione Windows e su Symbian. Linux non è un requisito attuale ma dovrebbe anche essere possibile anche in genere.
Per questo motivo, vorrei utilizzare le convenzioni di denominazione STL / Boost anziché Symbian's , a cui penso, è difficile abituarsi.
Questo sembra già presentare un problema, quando si compila il codice con Carbide.c ++ in quanto applica la convenzione di denominazione Symbian.
Come posso usare " normale " nomi ed essere ancora compatibile con Symbian?
Per la prima volta ho pensato di ricondizionare #define
-ing i nomi delle classi per la piattaforma Symbian, ma temo che ciò causerà confusione.
Potrebbero verificarsi altri problemi non rispettando la convenzione di denominazione di Symbian?
Soluzione
Le convenzioni di codifica non sono rigide. Sono lì per facilitare la comprensione del codice per noi umani. Se stai scrivendo una libreria multi-piattaforma, sentiti libero di usare qualunque convenzione ti trovi a tuo agio.
Ovviamente, la tua libreria probabilmente deve interfacciarsi con il sistema operativo sottostante in qualche modo. Con l'aiuto di Apri le librerie C / C ++ , puoi fare molte cose senza la necessità di utilizzare API C ++ Symbian native e le loro convenzioni di denominazione.
In Carbide.c ++ potresti voler disabilitare l'analisi statica di CodeScanner poiché è davvero utile solo per scrivere il codice scritto in Symbian C ++ nativo.
Quindi, in sintesi, i problemi sono i seguenti:
- Le persone che provengono da un background nativo di Symbian C ++ non hanno immediatamente familiarità con le convenzioni
- L'utilizzo di API C ++ Symbian native può esporre alcune peculiarità specifiche della piattaforma (eccezioni rispetto a foglie, trappole, programmi di pianificazione attivi ecc.)
- Gli analizzatori statici specifici di Symbian come CodeScanner assumono lo stile del codice Symbian C ++ e possono generare errori / avvisi di cui non è necessario preoccuparsi