Cómo comenzar a desarrollar aplicaciones y programar software

Las aplicaciones móviles y las aplicaciones web están programadas en diferentes idiomas.

Android: Java
iOS: Objective-C
Web: Ruby, PHP, Python, muchos otros son posibles.

Si desea comenzar a crear aplicaciones móviles, comience con Java. No necesariamente porque creará aplicaciones de Android en el futuro, sino porque aprender Java lo ayudará a aprender otros lenguajes de programación más fácilmente. Java también tiene muchos libros excelentes y tutoriales en línea para ayudarlo a aprender.

También debe responder por qué quiere aprender a programar. Si desea crear una aplicación móvil solo para aprender, continúe y aprenda a programar. Si tienes una idea de que quieres convertirla en una aplicación, entonces probablemente deberías contratar a un programador.

Escribí un libro electrónico que lo ayuda a decidir si debe aprender a programar o si debe contratar a un programador para crear su aplicación. Míralo: ¿Deberías aprender a codificar?

Lo primero que debe hacer es aprender a programar comenzando con un buen lenguaje de enseñanza . Y no hay nada mejor que Smalltalk: vea la respuesta de Richard Kenneth Eng a ¿Qué lenguaje de programación se considera el más fácil para los principiantes?

Después, puede centrarse en lenguajes particulares para la programación móvil, como Java o Kotlin para Android, y Objective-C o Swift para iOS.

Hay un buen curso sobre el desarrollo de Android en coursera: Coursera Esto no le enseña mucho sobre la programación en sí, sino mucho sobre el ecosistema de Android y lo que necesita para desarrollar aplicaciones serias. Lo puedes tomar de ahí.

Hay tantos lenguajes de programación que se utilizan en diferentes áreas. Cada uno de ellos viene con diferentes características, flexibilidad y eficiencia. Tú eliges el que más te convenga.

1. Lenguajes de programación para software de computadora: C y C ++ son los lenguajes más preferidos para software de computadora. C es muy fácil y útil para proyectos pequeños y medianos y para el desarrollo de sistemas operativos. C ++ vino después de C. Está orientado a objetos (que es un muy buen enfoque para el desarrollo de software, usted piensa que casi todo en su código son objetos que tienen propiedades y hacen algo) y tiene muchas características nuevas y útiles. Es muy flexible y le permite desarrollar proyectos muy grandes. Yo recomendaría C ++.

Lenguajes de programación para el desarrollo web: lo que vemos como una página web es, de hecho, un texto interpretado por su navegador y transformado en una página web. Haga clic derecho en esta página web y haga clic en “ver fuente de la página”. Verá un texto que explica qué contiene esa página: texto, imágenes, botones, etc. Llamamos a ese texto como HTML, un lenguaje de marcado. Para diseñar la página web, usa CSS. Si desea agregar alguna funcionalidad dinámica a su página web, use Javascript, que es un lenguaje de programación del lado del cliente (navegador) basado en la web. Para conectarse a un servidor y procesar / guardar / obtener datos, utiliza PHP, que es un lenguaje de programación basado en web del lado del servidor. Es muy flexible en comparación con los lenguajes estrictamente escritos como C y C ++. Aprenda HTML, CSS, Javascript y PHP en ese orden. Hay muchas bibliotecas y marcos útiles escritos para estos idiomas. Por lo tanto, puede (y debe) usarlos.

Lenguajes de programación para aplicaciones móviles: las aplicaciones de Windows Phone se pueden programar usando C # y Visual Basic. Las aplicaciones de iPhone se pueden programar utilizando Objective-C y C ++. Las aplicaciones de Android se desarrollan principalmente utilizando Java. Recomiendo Java ya que Android es mucho más popular que los demás.

Nota 1: Java es un lenguaje multiplataforma. Las aplicaciones desarrolladas por Java se pueden ejecutar en Linux y Windows. Puede desarrollar aplicaciones web con Java tanto en el cliente (navegador) como en el lado del servidor. Además, puede desarrollar aplicaciones de Android.

Nota 2: Existen muchas alternativas a estos idiomas, pero estos son los idiomas más preferidos y más utilizados.

2. Aprende Java. Además, puede desarrollar aplicaciones móviles con Javascript y HTML para Android, iOS y Windows Phone. Será rápido desarrollar aplicaciones móviles si conoce estos idiomas y trabajó antes en el desarrollo web. Además, estas aplicaciones funcionarán en estas tres plataformas. Sin embargo, no serán tan rápidos como una aplicación desarrollada con Java, Objective-C o C #.

Hay algunos idiomas diferentes.

  • Java – android
  • Rápido, objectifve c – iOs
  • C # – windowsPhone

y algunos no nativos.

Comenzaría con Android, debido a la gran base de usuarios.

En realidad, hay un libro para su caso: Aprenda Java para el desarrollo de Android.

También developers.android.com es un gran recurso para comenzar.

Como nota al margen: familiarícese con la programación orientada a objetos y el stackoverflow

Editar: cambiado a orientado a objetos. Thx Philip Davidson

Si terminas trabajando en el desarrollo de aplicaciones iOS, aquí hay una buena explicación de cómo hacer una transición de esa experiencia a una carrera: Convierte tu trabajo de desarrollo iOS a tiempo parcial en una carrera

¡Buena suerte!

Simplemente comienza a aprender sobre cualquier lenguaje de programación y comienza a codificar tu primera aplicación

Debe aprender los conceptos básicos del desarrollo de software antes de cualquier idioma. If / else lógica, forloops, etc. Existen en todos los idiomas.

Mire las opciones como Firebase o la biblioteca de volley de Google para el almacenamiento y comience desde allí, firebase es popular en este momento.

More Interesting

¿Workday es un excelente lugar para trabajar para ingenieros? ¿Por qué está clasificado como el "Mejor lugar para trabajar" según: En Workday, divertirse es una prioridad fundamental: San Francisco Business Times?

¿Qué habilidades necesita tener una investigación de software vulnerable?

¿Qué porcentaje del software que se está construyendo en estos días es crítico para el rendimiento? ¿Cómo ha cambiado eso con el tiempo?

Cómo reparar un error prohibido 403

¿Cómo debemos lidiar con las suites de prueba de larga duración?

¿Cuáles son algunos algoritmos que deben saber para un ingeniero de software típico?

¿Cuál es la mejor manera de aprender sobre ingeniería de software?

¿Está bien que un ingeniero senior con 7 años de experiencia trabaje continuamente en un campo técnico durante 3 años más?

Cómo estimar la probabilidad de que un proyecto de software se rompa debido a un cambio incompatible con versiones anteriores en al menos una de sus dependencias

¿Hay algún programa de software que aprender antes de estudiar ingeniería mecánica?

¿Cuáles son los mejores teclados ergonómicos?

¿Diría que la programación es más fácil en los tiempos modernos? ¿Diría que los idiomas son menos complejos de lo que solían ser debido a que la tecnología realiza una gran parte del trabajo duro?

¿Por qué debería preocuparme por los patrones de diseño si estoy versado en clases de C ++ y uso código preescrito?

¿Cuál es el mejor proyecto UNIX de código abierto al que puedo contribuir más?

¿Cuál es una mejor herramienta para la integración continua: Jenkins, TeamCity o Cruise Control para un proyecto Java?