¿Cómo debo programar mi aplicación? ¿Debo usar una API o escribir mi propio código?

Te responderé en latín:

nanos gigantum humeris insidentes

O, como dijo el viejo Isaac Newton:

Si he visto más, es poniéndome sobre los hombros de gigantes.

En otras palabras: sería mejor construir sobre lo que ya está hecho, que comenzar de nuevo. No reinventa una estufa cada vez que quiere cocinar, ¿verdad?

Si está haciendo una pregunta como esta, supongo que no ha estado programando durante tanto tiempo. Está bien, una vez comencé a no saber nada también. Diablos, nací sin saber nada.

En aquel entonces, tenía el síndrome “No inventado aquí”. Cada vez que necesitaba codificar algo, lo inventaba yo mismo. Sistemas de bases de datos, mapeo relacional de objetos, un pequeño código aquí y allá, una abstracción ingeniosa. ¡Simplemente me gustó la codificación!

Entonces, un día tuve que entregar mi proyecto a otro programador. No teníamos documentación, por supuesto, porque estaba muy ocupado codificando cosas nuevas. Era solo un gran montón de código de espagueti, usando diferentes estilos, formatos, idiomas, paradigmas, y no me llevó mucho tiempo ver que esta no era una excelente manera de codificar.

Entonces, aprendí. Se necesita un gran hombre (o mujer) para admitir haber cometido errores. En estos días uso código de fuente abierta y trato de entender cómo funciona. Utilizo un conjunto limitado de paradigmas, y siempre trato de encontrar un buen patrón para implementar una determinada característica. Pruebo mi código, me aseguro de que tenga efectos secundarios mínimos, y así sucesivamente.

Más importante aún, documento casi todas las líneas de código que escribo y cada decisión que tomo. Si siento que debo escribir una función de utilidad o paquete, siempre considero si aún no está disponible. Cuando escribo la función o diseño el paquete, siempre lo hago para que otras personas también puedan usarlo.

Como resultado, paradójicamente, me he convertido en un codificador mucho mayor escribiendo menos código que escribiendo más código.

Estas son las formas en que soy consciente de cómo puede programar una aplicación:
– Programa en un idioma nativo como Java / Android; C objetivo; Rápido.
– Puede escribir aplicaciones web con HTML / CSS / JavaScript y utilizar herramientas como PhoneGap | Inicio para convertir en Android, iOS, aplicaciones de Windows.
– Use MIT App Inventor para crear su aplicación sin ningún conocimiento de programación.

Tienes que especificar qué tipo de aplicaciones. Hay muchos tipos. Aplicaciones de Android, aplicaciones de iOS, aplicaciones web, etc.
De todos modos, no importa qué tipo de aplicaciones quieras programar. Tienes que aprender la programación para ese tipo de aplicación que deseas programar.
Las aplicaciones de Android están programadas con JAVA.
Las aplicaciones de iOS están programadas con Objective-C o SWIFT.
Las aplicaciones web están programadas con PHP, RUBY, ASP.net, etc.
Las aplicaciones de escritorio están programadas con una mayor variedad de idiomas.

Y necesita mucho tiempo para aprender un lenguaje de programación si nunca escuchó de ellos.
espero que esto te ayude.

No estoy seguro de si se refiere a iOS SDK API o marcos de trabajo de terceros.

Sin embargo, se debe evitar reinventar la rueda. Si ya hay una solución probada disponible, úsela en lugar de crear su propia solución.
Use su tiempo sabiamente y dedíquelo a cosas como mejorar el rendimiento de sus aplicaciones o agregar nuevas funciones.

Interesante pensamiento.

Use el código de otras personas donde pueda, ahorra mucho tiempo.

Dicho esto, tengo una colección de algoritmos y soluciones útiles a los que me refiero, pero no estoy seguro de que lo llame una “API”.

Tiene la opción de escribir sus propias API, sin embargo, es reinventar la rueda.
Si tiene API de terceros que están disponibles y son rentables, puede usarlas.