Junior — Middle
Quais são os princípios fundamentais de desenvolvimento de software que você aplica no seu trabalho?
sobes.tech IA
Resposta da IA
Princípios principais do desenvolvimento de software que aplico:
- Código limpo: escrevo código que é fácil de ler e manter, usando nomes claros para variáveis e funções.
- Princípio da responsabilidade única (SRP): cada função ou módulo é responsável por uma única tarefa.
- DRY (Não te repitas): evito duplicação de código, extraindo partes repetitivas para funções ou pacotes.
- Testabilidade: escrevo testes unitários para componentes-chave para garantir fiabilidade.
- Idempotência e tratamento de erros: trato corretamente erros e exceções para que a aplicação não falhe.
- Uso de interfaces: para abstração e facilitar a substituição de implementações.
Exemplo em Go demonstrando o princípio da responsabilidade única e o uso de interfaces:
package main
import "fmt"
type Notifier interface {
Notify(message string) error
}
type EmailNotifier struct {}
func (e EmailNotifier) Notify(message string) error {
fmt.Println("Enviando email com mensagem:", message)
return nil
}
func SendAlert(n Notifier, msg string) {
err := n.Notify(msg)
if err != nil {
fmt.Println("Erro ao enviar notificação:", err)
}
}
func main() {
email := EmailNotifier{}
SendAlert(email, "Servidor está fora do ar!")
}
Este método facilita a manutenção e expansão do código.