Skip to content

Commit

Permalink
Merge pull request #64 from fabianoflorentino/development
Browse files Browse the repository at this point in the history
Development to Main
  • Loading branch information
fabianoflorentino authored Dec 22, 2024
2 parents 6624778 + 3b5ffa2 commit efd0c86
Show file tree
Hide file tree
Showing 10 changed files with 218 additions and 88 deletions.
48 changes: 43 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,9 @@ Capítulos do Curso
--cap=22 --topics Exercícios Ninja: Nível 10
--cap=23 --topics Tratamento de Erro
--cap=24 --topics Exercícios Ninja: Nível 11
--cap=25 --topics Documentação
--cap=26 --topics Exercícios Ninja: Nível 12
--cap=27 --topics Teste e Benchmarking

Outline do Curso por Capítulo

Expand All @@ -157,6 +160,10 @@ Outline do Curso por Capítulo
--cap=21 --overview Canais
--cap=22 --overview Exercícios Ninja Nível 10
--cap=23 --overview Tratamento de Erro
--cap=24 --overview Exercícios Ninja Nível 11
--cap=25 --overview Documentação
--cap=26 --overview Exercícios Ninja Nível 12
--cap=27 --overview Teste e Benchmarking

Capítulo 1: Visão Geral do Curso

Expand Down Expand Up @@ -485,6 +492,31 @@ Capítulo 24: Exercicios Ninja Nível 11
--na-pratica-exercicio-5 --nivel-11 Apresenta o quinto exercício prático do curso.
--na-pratica-exercicio-5 --nivel-11 --resolucao Exibe a resolução do quinto exercício prático.

Capítulo 25: Documentação
--introducao Introdução
--go-doc go doc
--godoc godoc
--pkg-go-dev https://pkg.go.dev/
--escrevendo-documentacao Escrevendo documentação

Capítulo 26: Exercicios Ninja Nível 12

--na-pratica-exercicio-1 --nivel-12 Apresenta o primeiro exercício prático do curso.
--na-pratica-exercicio-1 --nivel-12 --resolucao Exibe a resolução do primeiro exercício prático.
--na-pratica-exercicio-2 --nivel-12 Apresenta o segundo exercício prático do curso.
--na-pratica-exercicio-2 --nivel-12 --resolucao Exibe a resolução do segundo exercício prático.
--na-pratica-exercicio-3 --nivel-12 Apresenta o terceiro exercício prático do curso.
--na-pratica-exercicio-3 --nivel-12 --resolucao Exibe a resolução do terceiro exercício prático.

Capítulo 27: Teste e Benchmarking

--introducao Introdução
--testes-em-tabelas Testes em tabelas
--testes-como-exemplo Testes como exemplo
--go-fmt-govet-golint go fmt, govet e golint
--benchmark Benchmark
--cobertura Cobertura

```
## Estrutura do Projeto
Expand Down Expand Up @@ -524,6 +556,9 @@ Capítulo 24: Exercicios Ninja Nível 11
│   ├── concorrencia
│   │   ├── overview.yml
│   │   └── topics.go
│   ├── documentacao
│   │   ├── overview.yml
│   │   └── topics.go
│   ├── exercicios_ninja_nivel_1
│   │   ├── overview.yml
│   │   ├── resolution_exercises.go
Expand All @@ -537,6 +572,10 @@ Capítulo 24: Exercicios Ninja Nível 11
│   │   ├── resolution_exercises.go
│   │   ├── resolution_exercises_test.go
│   │   └── topics.go
│   ├── exercicios_ninja_nivel_12
│   │   ├── overview.yml
│   │   ├── resolution_exercises.go
│   │   └── topics.go
│   ├── exercicios_ninja_nivel_2
│   │   ├── overview.yml
│   │   ├── resolution_exercises.go
Expand Down Expand Up @@ -594,6 +633,9 @@ Capítulo 24: Exercicios Ninja Nível 11
│   ├── structs
│   │   ├── overview.yml
│   │   └── topics.go
│   ├── teste_benchmarking
│   │   ├── overview.yml
│   │   └── topics.go
│   ├── tratamento_de_erro
│   │   ├── overview.yml
│   │   └── topics.go
Expand All @@ -619,14 +661,10 @@ Capítulo 24: Exercicios Ninja Nível 11
│   └── overview.go
└── tree.log

38 directories, 90 files
41 directories, 97 files

```
## Documentação Técnica
[`pkg/format/questionnaire.go`](docs/questionarie.md)
## Licença
Este projeto é licenciado sob a licença MIT. Consulte o arquivo [LICENSE](LICENSE) para obter detalhes.
82 changes: 0 additions & 82 deletions docs/questionarie.md

This file was deleted.

2 changes: 2 additions & 0 deletions internal/chapter/chapter.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ import (
"github.com/fabianoflorentino/aprendago/internal/ponteiros"
"github.com/fabianoflorentino/aprendago/internal/seu_ambiente_de_desenvolvimento"
"github.com/fabianoflorentino/aprendago/internal/structs"
"github.com/fabianoflorentino/aprendago/internal/teste_benchmarking"
"github.com/fabianoflorentino/aprendago/internal/tratamento_de_erro"
"github.com/fabianoflorentino/aprendago/internal/variaveis_valores_tipos"
"github.com/fabianoflorentino/aprendago/internal/visao_geral_do_curso"
Expand Down Expand Up @@ -66,5 +67,6 @@ func New() []func() {
exercicios_ninja_nivel_11.ExerciciosNinjaNivel11,
documentacao.Documentacao,
exercicios_ninja_nivel_12.ExerciciosNinjaNivel12,
teste_benchmarking.TesteEBenchmarking,
}
}
31 changes: 30 additions & 1 deletion internal/documentacao/topics.go
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
// Package documentacao provides functionalities to handle documentation topics
// for the "aprendago" project. It includes functions to display documentation
// sections, generate menu options for documentation topics, and print help
// information related to documentation.
package documentacao

import (
Expand All @@ -6,10 +10,14 @@ import (
"github.com/fabianoflorentino/aprendago/pkg/format"
)

// rootDir represents the root directory for documentation files within the project.
const (
rootDir = "internal/documentacao"
)

// Package documentacao provides functions to execute and display various sections
// related to Go documentation. It includes topics such as introduction to documentation,
// usage of go doc, godoc, and pkg.go.dev, as well as writing documentation.
func Documentacao() {
fmt.Printf("\n\nCapítulo 25: Documentação\n")

Expand All @@ -20,16 +28,34 @@ func Documentacao() {
executeSections("Escrevendo documentação")
}

// Package documentacao provides functionalities related to documentation topics in Go.
// It includes a menu with various documentation options and their respective execution functions.

// MenuDocumentacao returns a slice of MenuOptions containing different documentation topics
// and their associated execution functions. Each option is represented by a string and
// an ExecFunc that executes the corresponding section.
func MenuDocumentacao([]string) []format.MenuOptions {
return []format.MenuOptions{
{Options: "--introducao", ExecFunc: func() { executeSections("Introdução") }},
{Options: "--introducao-documentacao", ExecFunc: func() { executeSections("Introdução") }},
{Options: "--go-doc", ExecFunc: func() { executeSections("go doc") }},
{Options: "--godoc", ExecFunc: func() { executeSections("godoc") }},
{Options: "--pkg-go-dev", ExecFunc: func() { executeSections("https://pkg.go.dev/") }},
{Options: "--escrevendo-documentacao", ExecFunc: func() { executeSections("Escrevendo documentação") }},
}
}

// HelpMeDocumentacao provides a list of documentation topics and their descriptions.
// It prints a formatted help message for Chapter 25: Documentation.
//
// The topics include:
// - Introdução: Introduction to the topic
// - go doc: Information about the 'go doc' command
// - godoc: Information about the 'godoc' command
// - https://pkg.go.dev/: Link to the Go package documentation website
// - Escrevendo documentação: Tips on writing documentation
//
// This function is part of the 'documentacao' package, which contains utilities and helpers
// for generating and managing documentation in Go projects.
func HelpMeDocumentacao() {
hlp := []format.HelpMe{
{Flag: "--introducao", Description: "Introdução"},
Expand All @@ -43,6 +69,9 @@ func HelpMeDocumentacao() {
format.PrintHelpMe(hlp)
}

// executeSections formats and processes a given section of documentation.
// It takes a section name as a string and uses the FormatSection function
// from the format package to apply formatting to the section within the root directory.
func executeSections(section string) {
format.FormatSection(rootDir, section)
}
3 changes: 3 additions & 0 deletions internal/menu/capitulo_options.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ import (
"github.com/fabianoflorentino/aprendago/internal/ponteiros"
"github.com/fabianoflorentino/aprendago/internal/seu_ambiente_de_desenvolvimento"
"github.com/fabianoflorentino/aprendago/internal/structs"
"github.com/fabianoflorentino/aprendago/internal/teste_benchmarking"
"github.com/fabianoflorentino/aprendago/internal/tratamento_de_erro"
"github.com/fabianoflorentino/aprendago/internal/variaveis_valores_tipos"
"github.com/fabianoflorentino/aprendago/internal/visao_geral_do_curso"
Expand Down Expand Up @@ -64,6 +65,7 @@ func MenuCapituloOptions([]string) []format.MenuOptions {
{Options: "--cap=24 --topics", ExecFunc: func() { exercicios_ninja_nivel_11.HelpMeExerciciosNinjaNivel11() }},
{Options: "--cap=25 --topics", ExecFunc: func() { documentacao.HelpMeDocumentacao() }},
{Options: "--cap=26 --topics", ExecFunc: func() { exercicios_ninja_nivel_12.HelpMeExerciciosNinjaNivel12() }},
{Options: "--cap=27 --topics", ExecFunc: func() { teste_benchmarking.HelpMeTesteEBenchmarking() }},
}
}

Expand Down Expand Up @@ -100,6 +102,7 @@ func HelpMeCapituloOptions() {
{Flag: "--cap=24 --topics", Description: "Exercícios Ninja: Nível 11"},
{Flag: "--cap=25 --topics", Description: "Documentação"},
{Flag: "--cap=26 --topics", Description: "Exercícios Ninja: Nível 12"},
{Flag: "--cap=27 --topics", Description: "Teste e Benchmarking"},
}

fmt.Println("Capítulos do Curso")
Expand Down
3 changes: 3 additions & 0 deletions internal/menu/capitulo_outline.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ import (
"github.com/fabianoflorentino/aprendago/internal/ponteiros"
"github.com/fabianoflorentino/aprendago/internal/seu_ambiente_de_desenvolvimento"
"github.com/fabianoflorentino/aprendago/internal/structs"
"github.com/fabianoflorentino/aprendago/internal/teste_benchmarking"
"github.com/fabianoflorentino/aprendago/internal/tratamento_de_erro"
"github.com/fabianoflorentino/aprendago/internal/variaveis_valores_tipos"
"github.com/fabianoflorentino/aprendago/internal/visao_geral_do_curso"
Expand Down Expand Up @@ -66,6 +67,7 @@ func MenuCapituloOutline([]string) []format.MenuOptions {
{Options: "--cap=24 --overview", ExecFunc: func() { exercicios_ninja_nivel_11.ExerciciosNinjaNivel11() }},
{Options: "--cap=25 --overview", ExecFunc: func() { documentacao.Documentacao() }},
{Options: "--cap=26 --overview", ExecFunc: func() { exercicios_ninja_nivel_12.ExerciciosNinjaNivel12() }},
{Options: "--cap=27 --overview", ExecFunc: func() { teste_benchmarking.TesteEBenchmarking() }},
}
}

Expand Down Expand Up @@ -100,6 +102,7 @@ func HelpMeCapituloOutline() {
{Flag: "--cap=24 --overview", Description: "Exercícios Ninja Nível 11"},
{Flag: "--cap=25 --overview", Description: "Documentação"},
{Flag: "--cap=26 --overview", Description: "Exercícios Ninja Nível 12"},
{Flag: "--cap=27 --overview", Description: "Teste e Benchmarking"},
}

fmt.Printf("\nOutline do Curso por Capítulo\n")
Expand Down
2 changes: 2 additions & 0 deletions internal/menu/helpme.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ import (
"github.com/fabianoflorentino/aprendago/internal/ponteiros"
"github.com/fabianoflorentino/aprendago/internal/seu_ambiente_de_desenvolvimento"
"github.com/fabianoflorentino/aprendago/internal/structs"
"github.com/fabianoflorentino/aprendago/internal/teste_benchmarking"
"github.com/fabianoflorentino/aprendago/internal/tratamento_de_erro"
"github.com/fabianoflorentino/aprendago/internal/variaveis_valores_tipos"
"github.com/fabianoflorentino/aprendago/internal/visao_geral_do_curso"
Expand Down Expand Up @@ -84,4 +85,5 @@ func HelpMe() {
exercicios_ninja_nivel_11.HelpMeExerciciosNinjaNivel11()
documentacao.HelpMeDocumentacao()
exercicios_ninja_nivel_12.HelpMeExerciciosNinjaNivel12()
teste_benchmarking.HelpMeTesteEBenchmarking()
}
2 changes: 2 additions & 0 deletions internal/menu/options.go
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ import (
"github.com/fabianoflorentino/aprendago/internal/ponteiros"
"github.com/fabianoflorentino/aprendago/internal/seu_ambiente_de_desenvolvimento"
"github.com/fabianoflorentino/aprendago/internal/structs"
"github.com/fabianoflorentino/aprendago/internal/teste_benchmarking"
"github.com/fabianoflorentino/aprendago/internal/tratamento_de_erro"
"github.com/fabianoflorentino/aprendago/internal/variaveis_valores_tipos"
"github.com/fabianoflorentino/aprendago/internal/visao_geral_do_curso"
Expand Down Expand Up @@ -98,6 +99,7 @@ func Options(args []string) {
exercicios_ninja_nivel_11.MenuExerciciosNinjaNivel11(args),
documentacao.MenuDocumentacao(args),
exercicios_ninja_nivel_12.MenuExerciciosNinjaNivel12(args),
teste_benchmarking.MenuTesteEBenchmarking(args),
)
}

Expand Down
Loading

0 comments on commit efd0c86

Please sign in to comment.