Red de conocimiento informático - Conocimiento del nombre de dominio - Cómo programar

Cómo programar

Lo primero es lo primero: no te apresures a elegir un lenguaje

Un error común entre los novatos es dudar a la hora de juzgar qué lenguaje de programación es bueno y se debe aprender primero. Tenemos muchas opciones, pero no puedes hablar mejor ese idioma. Debemos entender: al final, no importa el idioma. Es importante comprender las estructuras de datos, la lógica de control y los patrones de diseño. Cualquier lenguaje o incluso un lenguaje de secuencias de comandos simple tendrá varias características que son comunes a todos los lenguajes de programación, lo que significa que todos los lenguajes están conectados. Estoy trabajando en mi licenciatura en Ciencias de la Computación y programo en Pascal, Ensamblador y C, y en realidad nunca lo he considerado como una carrera para obtener las recompensas. He estado aprendiendo programación por mi cuenta y no la necesito en el trabajo. Utilizo mis conocimientos existentes y consulto varios documentos y libros para aprender su uso. Así que no tengas prisa por elegir qué lenguaje de programación elegir. Averigua qué quieres desarrollar, utiliza un lenguaje que haga el trabajo y listo.

Dependiendo de las distintas plataformas de desarrollo, hay muchas formas diferentes de desarrollo de software disponibles: desde aplicaciones de sitios web hasta software de escritorio, software para teléfonos inteligentes y herramientas de secuencias de comandos de línea de comandos. En este artículo, destacaré algunos recursos y tutoriales introductorios populares que pueden ayudarlo a aprender a programar y desarrollar en varias plataformas convencionales. Voy a asumir que eres un lector muy experto, pero para los novatos, cuando hable de código de programación, lo haré en un nivel básico. Porque incluso si lees un manual de introducción a la programación por tu cuenta, si descubres que puedes entenderlo, naturalmente te sentirás muy feliz, lo que te ayudará a seguir estudiando.

Desktop Scripting

La forma más sencilla de empezar a programar en Windows o Mac es empezar con un lenguaje de scripting o de macros, como AutoHotkey (Windows) o Automator (sistema Apple). Algunos programadores de hardware gritan ante sus pantallas estos días que AHK y AppleScript no son lenguajes de programación reales. Quizás tengan razón en que técnicamente este tipo de lenguajes solo pueden realizar cierta programación de alto nivel. Pero para los principiantes que solo quieren comenzar y quieren implementar algunos programas que puedan ejecutarse automáticamente en sus computadoras, estos lenguajes serán un excelente punto de entrada y se sorprenderán con su rica funcionalidad.

Por ejemplo, el Texter favorito de todos es una aplicación de Windows desarrollada por Adam usando AutoHotkey que puede ejecutarse de forma independiente. Por lo tanto, este lenguaje de secuencias de comandos está lejos de limitarse al desarrollo de software de secuencias de comandos a pequeña escala. Si desea comenzar con AutoHotkey, aquí tiene la guía de Adam: cómo convertir cualquier acción en un atajo de teclado usando AutoHotkey (luego puede descargar el código fuente de Texter para ver las partes internas de una aplicación de Windows completamente funcional desarrollada con AHK).

Desarrollo web

Además de limitarte a un lenguaje de programación específico y un sistema operativo específico, también puedes desarrollar tu programa asesino en el navegador y ponerlo a disposición en Internet. Ejecute, esta es la aplicación web. Bienvenido al maravilloso mundo de la programación web.

HTML y CSS: Al desarrollar un sitio web, lo primero que necesitas saber es HTML (de qué están hechas las páginas web) y CSS (una etiqueta de estilo que mejora la apariencia). HTML y CSS no son lenguajes de programación; son sólo información estructural y de estilo de la página. Sin embargo, debe aprender a escribir HTML y CSS simples manualmente antes de poder comenzar a desarrollar aplicaciones web. Una página web es la parte de visualización frontal de cualquier aplicación web. Esta guía HTML es un buen lugar para comenzar.

JavaScript: una vez que puedes crear una página estática con HTML y CSS, las cosas empiezan a ponerse interesantes porque es hora de aprender JavaScript. JavaScript es un lenguaje de programación en navegadores web. Su magia es crear algunos efectos dinámicos en la página. JavaScript puede crear marcadores, scripts de Greasemonkey y Ajax, por lo que es un factor en todo tipo de cosas buenas en la web. Aprenda JavaScript desde aquí.

Secuencias de comandos del lado del servidor: una vez que aprenda el conocimiento de la página web, debe comenzar a agregarle algunas operaciones dinámicas del servidor. Para lograr esto, debe centrar su atención en el lado del servidor. lenguajes de programación, como PHP, Python, Perl o Ruby. Por ejemplo, si desea crear un formulario de contacto basado en web que envíe correos electrónicos según la entrada del usuario, necesitará utilizar secuencias de comandos del lado del servidor. Los lenguajes de scripting como PHP le permiten comunicarse con una base de datos en un servidor web, por lo que si desea crear un sitio web donde los usuarios puedan iniciar sesión y registrarse, este lenguaje es exactamente lo que necesita. Webmonkey es un excelente sitio web de recursos de desarrollo web, que contiene una gran cantidad de manuales de instrucciones para varios lenguajes de programación web. Consulte su Guía para principiantes de PHP. Cuando se sienta más cómodo, consulte el tutorial de PHP y MySQL de WebMonkeys para aprender a usar PHP para interactuar con una base de datos. Lo mejor que hay en Internet es la documentación oficial en línea y la referencia de funciones del lenguaje PHP. Cada punto de conocimiento (como la función strlen) tiene comentarios de usuario y comentarios enumerados al final, que son muy valiosos para el documento en sí. (Me gusta mucho PHP, pero hay muchos otros lenguajes de programación del lado del servidor entre los que puedes elegir).

Marcos web: en los últimos años, los desarrolladores web han tenido que pasar por el proceso de desarrollo de sitios web dinámicos. Escriba código repetido una y otra vez para problemas repetidos. Para evitar este problema de repetir el trabajo cada vez que desarrollan algunos sitios web nuevos, algunos programadores han creado algunos marcos y han dejado que los marcos completen el trabajo repetitivo por nosotros. El muy popular marco Ruby on Rails, por ejemplo, utiliza el lenguaje de programación Ruby para proporcionarnos una arquitectura específicamente orientada a la web que se puede utilizar para completar aplicaciones web ordinarias. De hecho, Adam utilizó Rails para desarrollar su primera aplicación web seria (¡e impresionante!), MixTape.me. Así construyó un sitio web sin ninguna experiencia. Algunos otros marcos de desarrollo web incluyen CakePHP (para programadores de PHP), Django (para programadores de Python) y jQuery (para JavaScript).

API web: API (Interfaz de programación de capa de aplicación) Se refiere a la ruta del programa. para el intercambio entre diferentes software. Por ejemplo, si desea colocar un mapa dinámico en su sitio web, puede utilizar Google Maps sin desarrollar su propio mapa. La API de Google Maps le permite introducir fácilmente un mapa en su página a través de JavaScript. Casi todos los servicios web modernos que conoce y ama proporcionan API a través de las cuales puede obtener sus datos y widgets y utilizar estos elementos interactivos en sus aplicaciones, como Twitter, Facebook, Google Docs, Google Maps, y la lista sigue y sigue. La integración de otras aplicaciones web en su aplicación web a través de API es ahora la vanguardia del desarrollo web enriquecido.

Toda buena API de servicio web convencional viene con documentación completa y algunas instrucciones de inicio rápido (por ejemplo, esto es Twitter). Enloquecerse.

Secuencia de comandos de línea de comando

Si desea desarrollar un programa que pueda leer texto o archivos, ingresar y generar algo útil, entonces el lenguaje de secuencia de comandos de línea de comando será una buena opción. Sin embargo, no es tan atractivo ni atractivo como las aplicaciones web y las aplicaciones de escritorio, pero como lenguaje de programación para un desarrollo rápido, no puede ignorarlas.

Muchos scripts web que se ejecutan en la plataforma Linux también se pueden ejecutar en modo de línea de comandos, como Perl, Python y PHP, por lo que si aprendes a usarlos, podrás usarlos en ambos. ambientes. Mi camino de aprendizaje nunca ha dejado a Peal demasiado lejos. Aprendí Python por mi cuenta usando este excelente libro gratuito en línea Dive into Python.

Si convertirte en un maestro de Unix también es tu objetivo de aprendizaje, entonces definitivamente debes dominar el lenguaje de programación bash. Bash es un lenguaje de secuencias de comandos de línea de comandos en entornos Unix y Linux que puede hacer todo por usted: desde secuencias de comandos de bases de datos de respaldo automático hasta programas interactivos para el usuario con todas las funciones. Al principio no tenía ninguna experiencia con scripts de bash, pero eventualmente desarrollé un administrador de tareas personales con todas las funciones usando bash: Todo.txt CLI.

Complementos (Complementos)

Las aplicaciones web y los navegadores actuales pueden enriquecer sus funciones a través de algún software de extensión. A medida que algunos software existentes, como Firefox y WordPress, reciben cada vez más atención por parte de los desarrolladores, y el desarrollo de complementos se vuelve cada vez más popular, la gente dice "Pero si tan solo pudiera hacer ESTO

Como Siempre que domines HTML, JavaScript y CSS, podrás desarrollar muchas cosas que desees en cualquier navegador. Los marcadores, los scripts de usuario de Greasemonkey y los estilos de usuario con estilo están escritos en el mismo idioma que las páginas más comunes y vale la pena examinarlos.

Las extensiones de navegador más avanzadas, como la extensión de Firefox, pueden ayudarte mucho. Para desarrollar extensiones de Firefox, por ejemplo, es necesario dominar JavaScript y XML (un lenguaje de marcado similar al HTML, pero con un formato más estricto). En 2007 escribí cómo crear una extensión para Firefox, resultado de mi torpe investigación sobre algunos materiales de aprendizaje en línea.

Muchas aplicaciones web gratuitas y populares proporcionan marcos de extensión, como WordPress y MediaWiki. Todas estas aplicaciones están escritas en PHP, por lo que sólo puedes hacer estas cosas si estás familiarizado con PHP. Así es como se escribe un complemento de WordPress. Los desarrolladores que quieran aprovechar las tecnologías de vanguardia de Google Wave pueden comenzar escribiendo widgets y gadgets utilizando HTML, JavaScript, Java y Python. El primer bot Wave que escribí comenzó con esta guía de inicio rápido de una tarde.

Desarrollar aplicaciones web en el escritorio

El mejor resultado de aprender a programar es que lo que se aprende en un entorno se puede aplicar a otro entorno. La ventaja de aprender a desarrollar aplicaciones web primero es que tenemos algunos métodos para hacer que las aplicaciones web se ejecuten directamente en el escritorio. Por ejemplo, Adobe AIR es una plataforma de ejecución instantánea multiplataforma que permite que los programas que usted escribe se ejecuten en el escritorio de cualquier sistema operativo equipado con AIR.

Las aplicaciones de AIR están escritas en HTML, Flash o Flex, por lo que permiten que sus aplicaciones web se ejecuten en un entorno de escritorio. AIR es una excelente opción para desarrollar e implementar aplicaciones de escritorio, como mencionamos en estas 10 aplicaciones que hacen que valga la pena instalar AIR.

Desarrollo de aplicaciones móviles

El desarrollo de aplicaciones móviles que pueden ejecutarse en teléfonos inteligentes iPhone o Android ahora está experimentando un auge, por lo que también puedes soñar con cómo estar en iTunes App Store. Gana dinero con tu programa genio. Sin embargo, como novato en la codificación, saltar directamente al desarrollo móvil puede tener una curva de aprendizaje pronunciada, ya que requiere familiaridad con lenguajes de programación de alto nivel como Java y Objective C. Sin embargo, deberías echar un vistazo a cómo es realmente la programación para iPhone y Android. Lea este sencillo ejemplo de desarrollo de aplicaciones para iPhone para obtener una comprensión preliminar del proceso de desarrollo de programas para iPhone. Todos los programas de Android están escritos en Java. Aquí hay un sencillo video tutorial para enseñarle cómo desarrollar su primer programa Hello Android (Nota: es posible que necesite un agente para ver este video).

Por último: Paciencia, trabajo duro, intentar, fracasar

Los buenos programadores tienen la cualidad de nunca darse por vencidos hasta lograr sus objetivos y quedarán gratamente sorprendidos por los logros que han obtenido. mediante deliberaciones a largo plazo y fracasos. Aprender a programar puede ser muy gratificante, pero el proceso de aprendizaje puede resultar frustrante y solitario. Si es posible, lo mejor es buscar un socio que haga esto con usted. Si quieres dominar la programación, como cualquier otra cosa, debes persistir, intentarlo una y otra vez y adquirir más experiencia.