Skip to content

Commit 3091401

Browse files
committed
Fignolage des commentaires
1 parent 34c61bb commit 3091401

File tree

4 files changed

+24
-30
lines changed

4 files changed

+24
-30
lines changed

README.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ Un lien par ligne (2 noeuds (int) et un poids) et on utilise un code pour signif
2727
4 1 6
2828
1 4 3
2929
. . .
30-
30+
3131
*`. . .` signifie EOF*
3232

3333
## 2. Extraction des données du graph puis envoi au serveur (par `client.go`)
@@ -63,7 +63,7 @@ Par la même occasion, le serveur prépare un tableau trié (slice) contenant ch
6363

6464
[{1 2 1} {2 1 2} {7 8 3} {8 7 2} {2 9 3} {9 2 4} {5 6 2} {6 5 3} {3 2 3} {2 3 5}]
6565

66-
Avantages :
66+
Avantages :
6767
- Facile à implémenter
6868
- Clair à l'usage
6969

@@ -80,17 +80,17 @@ Voici à quoi ressemble l'objet chemin utilisé dans dijsktra contenant le point
8080
from int
8181
weight int
8282
}
83-
83+
8484
Voici les éléments contenant nos structures de données
85-
85+
8686
ways := make(map[int][]int) //va contenir tous les chemins du style [1] : [2,5,7,9] , [2] : [1,4,8] , …
87-
87+
8888
distances := make(map[int]int) //distance totale parcourue pour un point donné : [1] : 6, [2] : 2, …
89-
89+
9090
dijksTAB := make(map[int][]chemin) // contient en gros tout le travail (équivalent à notre tableau à la main)
91-
91+
9292
deadPoints := make(map[int]int) //nom des noeuds par lesquels on ne peut pas repasser
93-
93+
9494
neighbors := getAllNeighbors(graph, noeuds) //voisins de tous les noeuds
9595

9696
**Voici les grandes lignes du déroulement de l'algo dijkstra**
@@ -104,7 +104,7 @@ Voici à quoi ressemble l'objet chemin utilisé dans dijsktra contenant le point
104104

105105
**Récupération des chemins et de leur poids**
106106

107-
Il suffit maintenant de parcourir à l'inverse les chemins, pour calculer les poids totaux
107+
Il suffit maintenant de parcourir à l'inverse les chemins, pour calculer les poids totaux
108108
(On passe par un reverse du tableau ways contenants les différents noeuds)
109109

110110
### C. Renvois des données au client
@@ -116,8 +116,8 @@ Enfin, pour finir on renvois les données résultats au client sous la forme de
116116
On récupère ici les données renvoyées par le server sous la forme de string, que l'on écrit dans un fichier out.txt
117117
Ces dernières sont formatées ainsi :
118118

119-
D H [D H] 1
120-
D K [D X K] 2
119+
D H [D H] 1
120+
D K [D X K] 2
121121

122122
# Exemples et résultats :
123123

@@ -206,11 +206,11 @@ Le résultat prend en compte la totalité de l'application (connection et deconn
206206

207207
Nous avons utilisé au maximum des map (par rapport à des listes) pour diminuer la compléxité.
208208

209-
![Évalution de la compléxité](img/complex.png)
209+
![Évalution de la compléxité](img/complex.png)
210210

211-
Une analyse plus poussée du temps d'éxécution montre que pour une donnée de 300 arcs le temps d'éxécution du Dijkstra est d'environ 600ms;
211+
Une analyse plus poussée du temps d'éxécution montre que pour une donnée de 300 arcs le temps d'éxécution du Dijkstra est d'environ 600ms;
212212
quelques ms pour écrire dans le fichier de sortie et 14 secondes d'envoie TCP (!).
213-
<hr>
213+
<hr>
214214

215215

216216

src/Client.go

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ Ce fichier a pour but de communiquer avec le server et de récupérer la reponse
1919
3. Preparation et envoi des données au serveur
2020
4. Récupération des datas envoyées en retour par le serveur et écriture dans un fichier texte de sortie
2121
22-
- #? commentaires pas surs ou incompréhension (voir en CRTL+F)
2322
- DEBUG commentaires de debug
2423
*/
2524

@@ -48,18 +47,18 @@ func getArgs() (int, string, string) {
4847
_, err := os.Stat(filename)
4948
if os.IsNotExist(err) {
5049
fmt.Printf("Erreur : le fichier %v n'existe pas, ou il fait référence à un dossier", filename)
51-
os.Exit(1) //#? pourquoi pas panic ?
50+
os.Exit(1) // pourquoi pas panic ?
5251
} else { // J'ai mon port et mon fichier
5352
if len(os.Args) == 3 { //alors l'ip a été ommise
54-
ip_adress := "127.0.0.1" //adresse locale #?
53+
ip_adress := "127.0.0.1" //adresse locale
5554
return portNumber, ip_adress, filename
5655
} else { //j'ai 4 args => ip donnée
5756
ip_adress := os.Args[3]
5857
return portNumber, ip_adress, filename
5958
}
6059
}
6160
}
62-
// Ne devrait jamais retourner #? A quoi ça sert ?
61+
// Ne devrait jamais retourner
6362
}
6463
return -1, "", ""
6564
}
@@ -73,7 +72,7 @@ func main() {
7372
//Connection au serveur
7473
fmt.Printf("Dialing TCP server sur port : %d \n", port)
7574
portString := fmt.Sprintf("%s:%s", ip_adress, strconv.Itoa(port)) //formatage selon x.x.x.x:xxxx ex: 127.0.0.1:4000
76-
fmt.Printf(portString + "\n") //retour à la ligne ? #?
75+
fmt.Printf(portString + "\n") //retour à la ligne ?
7776
connection, err := net.Dial("tcp", portString) //on établie TCP
7877
if err != nil { //si erreur exit
7978
fmt.Printf("Connection echouée \n")
@@ -105,7 +104,6 @@ func main() {
105104
fmt.Printf("Fichier parsé et envoyé en in : %s\n", time.Since(s))
106105
s = time.Now() //encore un timer pour la réponse
107106
//Après avoir tout envoyé on récupère la réponse du serveur
108-
//outfile := fmt.Sprintf("out/out_%v.txt", time.Now().Unix()) // passer en GUID -> passer avec le nom d'entrée ///#? on peut enlever ça maintenant non ?
109107
outfile := fmt.Sprintf("out/%v", filepath.Base(filename)) // ou nomme le fichier de sortir en fonction de celui d'entrée
110108
content := ""
111109
for {
@@ -116,21 +114,20 @@ func main() {
116114
break //on sort de la boucle
117115
}
118116

119-
//resultString = strings.TrimSuffix(resultString, "\n") //on recupère les strings du reader et on retire des retours à la ligne #? A retirer ?
120117
//fmt.Printf("Réponse du serveur : %v \n ", resultString) DEBUG
121-
content += resultString //+ "\n" #? à retirer mais à vérifier //on incremente content avec les résultats récupérés à chaque passage dans le for
118+
content += resultString //on incremente content avec les résultats récupérés à chaque passage dans le for
122119

123120
}
124121
fmt.Printf("Réception et traitement des données in : %s\n", time.Since(s))
125122
s = time.Now() //encore un timer pour la réponse
126123
f, err := os.OpenFile(outfile,
127-
os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644) //meme open file que dans graph generator #? peut etre enlever append et mettre trunc comme dans graph gene
124+
os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644) //meme open file que dans graph generator
128125
if err != nil { //on affiche l'erreur si il y en a
129126
log.Println(err)
130-
panic(err) //#? si crash voir ici
127+
panic(err) // si crash voir ici
131128
}
132129
defer f.Close() //defer close pour l'ouverture du fichier de sortie
133-
err = f.Truncate(0) //#? je tronque mais je lève un erreur (je tronque pour que le fichier soir bien vide)
130+
err = f.Truncate(0) // je tronque mais je lève une erreur (je tronque pour que le fichier soir bien vide)
134131
if _, err := f.WriteString(content + "\n"); err != nil { //si il y a une erreur durant l'écriture l'afficher, sinon l'écrire
135132
log.Println(err)
136133
}

src/Server.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ Ce fichier a pour but de communiquer avec le client et de traiter les données q
2020
3. Preparation et envoi des données au client
2121
4. Récupération des datas envoyées en retour par le client et écriture dans un fichier texte de sortie
2222
23-
- #? commentaires pas surs ou incompréhension (voir en CRTL+F)
2423
- DEBUG commentaires de debug
2524
*/
2625
// DEBUT DE DIJKSTRA
@@ -206,7 +205,7 @@ func getPortS() int {
206205
//Cette fonction premet de retirer les valeurs dupliquées dans un slice
207206
func unique(slice []int) []int {
208207
keys := make(map[int]bool) // on fait une map qui associe un bool à chaque entier
209-
list := []int{} // slice d'int sans taille #? à vérifier
208+
list := []int{} // slice d'int sans taille
210209
for _, entry := range slice { //foreach
211210
if _, value := keys[entry]; !value { //on vérifie si la clé booléenne de l'entier éxiste, sinon on la créer, et on passe dans le if si la valeur est false, c'est à dire si on est jamais passé par celle ci
212211
keys[entry] = true //on passe à true pour indiquer qu'on à déjà vérifier ce noeud

src/graphGenerator.go

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ import (
1111

1212
/*
1313
Ce fichier à pour but de générer un graph de taille et de path donnés en entrés, dans le but d'être utilisés en fichier d'entrée pour Client.go
14-
- #? commentaires pas surs ou incompréhension (voir en CRTL+F)
1514
- DEBUG commentaires de debug
1615
*/
1716

@@ -92,7 +91,6 @@ func generateTie(size int) string { //param : nb de lien voulu
9291
}
9392
//fmt.Printf("neighb %d \n", neighb) DEBUG
9493
disp_from := alphabet //contient la liste des lettres de l'alphabet pour lesquels il reste des voisins à tirer
95-
//rand.Seed(time.Now().UnixNano()) #?(à virer?)
9694
var from, to int
9795
var toWrite string //noeud de départ -> noeud d'arrivé -> résultat de la fonction
9896
run := true //initialisation de booléens
@@ -123,7 +121,7 @@ func generateTie(size int) string { //param : nb de lien voulu
123121
if len(neighb[to]) > 1 {
124122
remove_element(neighb[to], from) // retrait de son reverse
125123
} else {
126-
remove_element(disp_from, to) // même chose que plus haut #? je suis quand meme pas méga sur de ce que je lis mdr
124+
remove_element(disp_from, to) // même chose que plus haut
127125
}
128126
draw = true //je précise que je dois tirer un nouveau from
129127
} else { // Si c'est le dernier départ alors on stop

0 commit comments

Comments
 (0)