Bonjour à toutes et tous,
Bonjour, je débute en C++, alors je vais tenté de resté très très très imble et sâchez que je prend toute vos réponses en considération. Attention : mon niveau est déconcertant
Voilà comme premier projet, je veut faire un colorateur syntaxique, oui je sais, c'est gros, c'est dûr et pas la peine de réinventer la roue
Bon, mon colorateur syntaxique devra faire, à peu prêt comme pygments pour les connaisseurs, colorer en html... il devra être modulable et performant...
J'ai déjà fait un bout de code, mais, pour pas trop me ridiculiser, dès le début, voilà comment il est constuit :
- Plus que trois fichier : main.cpp, fonctions.h et langages.h
- Plus que deux namespace : KolorEngine, KolorEngineLangage
- Plus de variable globale
Descriptions des fichiers :
langages.h :
- Namepace : KolorEngineLangage (qui contient les fonctions de parsage)
- Description du fichier : contient les prototypes des fonctions de parsage
fonctions.h :
- Namespace : KolorEngine (qui contient les fonctions uselles du programme)
- Description du fichier : contient les fonctions uselles du programme
main.cpp :
- Namespace : KolorEngine, KolorEngineLangage, std
- Description du fichier : fichier contenant tout le code du programme
- Nombre de parties : 4
Description des parties :
- Partie 1 : Les includes, contient toutes les inclusions nécessaire au bon fonctionnement du programme (mes deux header, <map>, <boost/regex.hpp>, <boost/function.hpp>, <iostream>
- Partie 2 : La fonction main, appel les fonctions, traite la demande et renvois le code
- Partie 3 : Définie les fonctions de l'espace nom KolorEngine
- Partie 4 : Définie les fonctions de l'espace nom KolorEngineLangage
Fonction de KolorEngine :
- implode, qui rassemble tout les arguments (sauf les index 0 et 1) pour pouvoir les passer aux REGEX.
- Appel_fonction, qui contient le liste des langages et qui me permet de les appeler par leurs noms
Voilà, armez vous de patience, je tente d'apprendre, dites moi en quoi mon approche est mauvaise, qu'elle points sont à revoir (et je sais qu'il y en a).
Par avance merci de votre aide
Partager