環境構築: Setup del Entorno de Desarrollo
Este documento detalla los pasos para configurar una estación de trabajo de élite en Sanwa Monozukuri. Nuestro objetivo es la 標準化 (Hyōjunka - Estandarización) para que cualquier artesano pueda colaborar en cualquier proyecto sin fricciones de configuración.
🛠️ Herramientas Base (El Cimiento)
1. Sistema Operativo
Preferimos sistemas basados en Unix (macOS o Linux/Arch/Debian) por su cercanía con nuestros entornos de despliegue y su robustez técnica.
2. Gestor de Paquetes
Utilizamos gestores que permitan versiones reproducibles:
- macOS: Homebrew
- Linux:
apt,pacmanonixsegún la distribución.
3. Terminal y Shell
El terminal es nuestro pincel principal.
- Shell:
zshofishson los estándares. - Prompt: Recomendamos Starship por su velocidad (escrito en Rust) y claridad visual.
🐹 Toolchain de Go
Para proyectos de microservicios y orquestación:
- Instalación:
brew install goo descarga desde golang.org. - Variables de Entorno: Asegúrate de que
$GOPATHy$GOBINestén correctamente configurados en tu.zshrco.bashrc. - Herramientas Obligatorias:
gofmt: Para mantener la 和 (Armonía) visual del código.golangci-lint: Nuestro estándar de auditoría estática.
🦀 Toolchain de Rust
Para sistemas críticos, seguridad y alto rendimiento:
- Instalación: Nunca instales Rust vía gestor de paquetes del sistema. Usa siempre rustup:
curl --proto '=https' --tlsv1.2 -sSf [https://sh.rustup.rs](https://sh.rustup.rs) | sh
- Componentes Necesarios:
clippy: Nuestro mentor de estilo y mejores prácticas.rust-analyzer: El motor de inteligencia para el editor.rustfmt: Formateo automático estricto.
🛡️ Seguridad y Soberanía (要 - Kaname)
Un entorno Sanwa debe ser inexpugnable.
1. Firma de Commits (GPG/SSH)
Todo código en GitHub debe estar firmado. Sin firma, el código no se integra en la rama principal.
# Ejemplo para generar llave SSH para firma
ssh-keygen -t ed25519 -C "tu@sanwa.com"
2. Gestión de Secretos
- Bitwarden: Solicita acceso a la organización Sanwa para obtener las llaves de API y secretos de desarrollo local. Nunca guardes secretos en archivos
.envque no estén en.gitignore.
🎨 Editor de Código: El 道場 (Dojo)
Recomendamos VS Code o Neovim por su soporte de LSP.
Extensiones Mandatorias (VS Code):
- Go: (Go Team at Google)
- rust-analyzer: (rust-lang)
- Error Lens: Para ver los errores en línea y actuar con 改善 (Kaizen) inmediata.
- Even Better TOML: Para configuraciones de Rust.
📐 Flujo de Trabajo Local
- Clonación: Usa SSH para clonar repositorios de la organización.
- Linting: Configura tu editor para ejecutar
rustfmtygofmtal guardar. - Pruebas: Antes de cada Push, ejecuta el set de pruebas local:
- Go:
go test ./... - Rust:
cargo test
- Go:
"Un entorno de trabajo ordenado es el reflejo de una mente disciplinada. Cuida tus herramientas y ellas cuidarán de tu código."