Felicitaciones por estar interesado en la programación. Así es como te sugiero que comiences:
- Elija un idioma y una plataforma: C # y Windows son excelentes, IMHO.
- Seleccione un buen material de instrucción (libros, recursos en línea, tutoriales en video, un curso universitario introductorio, etc.)
- Obtenga las herramientas que necesitará: una PC con Windows, Microsoft Visual Studio 2017 (gratis).
- Asegúrate de tener tiempo y paciencia.
En cuanto al material de instrucción, lo mejor es inscribirse en un curso (gratuito o no). Ya sea que se trate de un instructor o un entrenamiento de video a su propio ritmo, no hay nada como un curso formal para ayudarlo a comenzar con lo básico. Si decide enseñarse a sí mismo comprando uno o más libros, busque los que cubren el siguiente programa de estudios:
Los fundamentos (cómo funcionan las balas):
- Representación numérica
- álgebra de Boole
- Construcciones de programación (ejecución secuencial, if-then-else, loops, instrucción switch / case)
- Entrada y salida básica
- Programación modular (funciones, paso de parámetros).
- Estructuras de datos (matrices, listas, listas vinculadas, colas, árboles, tablas hash, conjuntos)
- Algoritmos: algoritmos numéricos, búsqueda, ordenación, recursión, etc.
- Excepciones y manejo de errores.
Programación orientada a objetos (cómo funcionan las armas):
- ¿Cuál es la mejor manera de aprender los scripts entre sitios (XSS)?
- ¿Qué debo aprender antes de comenzar a aprender la Unidad?
- Como aprender ciencias
- ¿Cuál es la mejor tecnología para aprender por un ingeniero de software?
- ¿Cuáles son las cosas básicas que debo tener en cuenta para aprender un nuevo idioma más rápido?
- Objetos y clases
- Encapsulacion
- Composición y herencia.
- Polimorfismo
Patrones de diseño (cómo funcionan las ametralladoras):
- Fábrica, patrón singleton, constructor, prototipo.
- Adaptador, fachada
- Iterador, comando, mediador
- Editor, suscriptor
- etc.
Programación GUI (cómo luchar una guerra):
- Fundamentos de eventos impulsados
- Formas y controles
- Arrastrar y soltar
- Portapapeles de Windows
- Muchos otros temas demasiado numerosos para nombrar
Programación de Windows (cómo luchar una batalla):
- Archivo I / O
- Programación en red
- Regex
- Multimedia
- Habla
- Cifrado
- Muchos otros temas demasiado numerosos para nombrar
Suena como mucho? Es. Pero recuerda esto: cada océano comienza con una gota de agua.
Le deseo suerte y lo aliento a embarcarse en este maravilloso viaje de ingeniería de software. Espero que te traiga tanta alegría como me ha traído. No hay nada más en la vida que quiera hacer excepto construir software útil, robusto y utilizable.