como programar

Upload: danny-torres

Post on 14-Jan-2016

17 views

Category:

Documents


0 download

TRANSCRIPT

  • Cmo programar tu propio software Creado por Wilfredo Rodriguez, Dvortygirl, Oscar Avila

    6 partes:Prepara una ideaAprende un lenguaje de programacinConstruye tu prototipoPruebas

    alfaPruebas betaLanza tu programa al pblico

    Actualmente, los programas de computador estn implementados en todas

    partes, desde los automviles hasta los telfonos y pasando por casi cualquier

    empleo que existe. A medida que el mundo se vuelve cada vez ms digital, la

    necesidad de programas nuevos siempre ir en aumento. Si tienes una idea

    asombrosa para un programa, por qu no la haces por tu cuenta? Lee el

    primer paso que est debajo para saber cmo empezar a aprender un lenguaje

    de programacin, desarrollar tu idea para convertirla en un producto estable e

    iterar los procesos del programa hasta que est listo para su lanzamiento.

    Anuncio

    Parte 1 de 6: Prepara una idea

  • 1.

    1 Piensa en varias ideas. Un buen programa llevar a cabo una tarea que

    simplificar la vida del usuario. Examina el programa que est disponible

    actualmente para cumplir la tarea que quieres hacer y revisa si existe la

    manera de hacer que el proceso sea ms fcil o estable. Un programa exitoso

    es aqul que los usuarios encuentren muy til.

    Examina las tareas diarias que haces en tu computador. Existe la manera de

    automatizar algunas de esas tareas con un programa?

    Escribe todas las ideas que se te ocurran. Incluso si parece algo tonto o

    extravagante, puede tratarse de algo que podra convertirse en algo til o

    incluso brillante.

  • Anuncio

    2.

    2 Examina otros programas. Qu es lo que hacen? Cmo podran hacerlo

    de una mejor manera? Qu es lo que les falta? Las respuestas a estas

    preguntas pueden ayudarte a pensar en ideas para tu propia perspectiva.

  • 3.

    3 Escribe un documento de diseo. Esto documento explicar las

    caractersticas del proyecto y lo que quieres lograr con l. Al remitirte al

    documento de diseo durante el proceso de desarrollo hars que el proyecto

    no pierda su rumbo y permanezca enfocado. Lee esta gua para conocer ms

    detalles acerca de cmo escribir este documento. El documento de diseo

    tambin te ayudar a decidir el lenguaje de programacin ms conveniente

    para tu proyecto.

  • 4.

    4 Empieza con algo sencillo. Cuando apenas comiences con la programacin

    informtica, es conveniente que empieces con un proyecto pequeo y que lo

    amples con el tiempo. Aprenders mucho ms si fijas metas concretas que

    puedes alcanzar con un programa bsico. .

    Anuncio

    Parte 2 de 6: Aprende un lenguaje de programacin

  • 1.

    1 Descarga un buen editor de texto. Casi todos los programas se escriben en

    editores de texto y se compilan para que un computador los pueda ejecutar.

    Aunque puedes usar programas con el Bloc de notas o TextEdit, es muy

    recomendable que descargues un editor que resalte la sintaxis como

    Notepad++, JEdit o Sublime Text. Esto har que sea ms fcil analizar tu

    cdigo visualmente.

    Algunos lenguajes como Visual Basic incluyen un editor y un compilador en un

    solo paquete.

  • 2.

    2 Aprende un lenguaje de programacin. Todos los programas se crean por

    medio de los cdigos. Por lo tanto, si quieres crear tus propios programas,

    necesitars estar familiarizado(a) con al menos un lenguaje de programacin.

    Los lenguajes que necesites aprender dependern del tipo de programa que

    quieres crear. Algunos de los lenguajes ms tiles e importantes incluyen:

    C. Este es un lenguaje de bajo nivel que interacta muy de cerca con el

    hardware del computador. Es uno de los lenguajes de programacin ms

    antiguos que an tienen un uso extendido.

    C++. La mayor desventaja de C es que no est orientado a los objetos. Aqu es

    donde entra C++. Actualmente, C++ es el lenguaje de programacin ms

    popular del mundo. Los programas como Chrome, Firefox, Photoshop y

  • muchos ms estn hechos con C++. Tambin es un lenguaje muy popular para

    crear videojuegos.

    Java. Java es la evolucin del lenguaje C++ y es extremadamente verstil. La

    mayora de computadores (independiente de su sistema operativo) pueden

    ejecutar una mquina virtual Java, lo que permite usar el programa casi

    universalmente. Se usa ampliamente en los videojuegos y en los programas

    empresariales, adems de estar recomendado a menudo como un lenguaje

    esencial.

    C#. Este lenguaje basado en Windows es uno de los ms importantes para

    crear programas para este sistema operativo. Est relacionado estrechamente

    con los lenguajes Java y C++, por lo que debe ser fcil de aprender si ests

    familiarizado(a) con Java. Si quieres hacer un programa para los sistemas

    operativos Windows o Windows Phone, querrs analizar este lenguaje.

    Objective-C. Este es otro lenguaje relacionado con el C que est diseado

    especficamente para los sistemas Apple. Si quieres crear aplicaciones para el

    iPhone o el iPad, este es el lenguaje que necesitas.

  • 3.

    3 Descarga el compilador o el intrprete. Para cualquier lenguaje de alto nivel

    como C++, Java y muchos ms, necesitars un compilador para convertir tu

    cdigo en un formato que pueda usar el computador. Hay una variedad de

    compiladores para escoger, dependiendo del lenguaje de programacin que

    utilices.[1]

    Algunos lenguajes son "interpretados", lo que quiere decir que no necesitan un

    compilador. En vez de eso, solo necesitan que el intrprete del lenguaje est

    instalado en el computador para que el programa se ejecute instantneamente.

    Algunos ejemplos de lenguajes interpretados son el Perl y el Python.

  • 4.

    4 Aprende los conceptos bsicos de la programacin. Independiente del

    lenguaje que elijas, probablemente necesitars entender algunos conceptos

    bsicos comunes. Al saber la forma de manejar la sintaxis del lenguaje podrs

    crear programas mucho ms potentes. Algunos conceptos comunes incluyen:

    Declarar variables. Las variables son la manera en la que los datos quedan

    guardados temporalmente en el programa. Despus, estos datos pueden

    guardarse, modificarse, manipularse y llamarse en el programa.

    Usar sentencias condicionales como "If, else, when" (si esto ocurre, de lo

    contrario, cuando ocurra esto), entre otras. Estas son unas de las funciones

    bsicas de los programas y determinan la manera en la que funciona la lgica.

  • Las sentencias condicionales giran alrededor de las sentencias de "verdadero"

    y "falso".

    Usar bucles como "for, goto, do" (para, ir a, hacer) entre otros. Los bucles que

    permiten repetir los procesos varias veces hasta que se d el comando de

    parar.

    Usar secuencias de escape. Estos comandos ejecutan funciones como crear

    lneas nuevas, guiones, comillas, etc.

    Comentar el cdigo. Los comentarios son esenciales para recordar lo que hace

    tu cdigo, ayudar a otros programadores a entenderlo y para deshabilitar partes

    de l temporalmente.

    Entiende las expresiones regulares.

    5.

    5

  • Encuentra algunos libros sobre el lenguaje que escojas. Hay libros para

    todos los lenguajes y niveles de experiencia. Puedes encontrar libros sobre

    programacin en la librera de tu localidad o en cualquier tienda en lnea. Un

    libro puede ser una herramienta invaluable, ya que puedes tenerlo a la mano

    mientras trabajas.

    Ms all de los libros, el internet es una mina valiosa interminable de guas y

    tutoriales. Busca guas del lenguaje de tu eleccin en sitios web como

    CodeAcademy, Code.org, Udemy, Khan Academy entre muchos ms.

    6.

    6

  • Toma algunas clases. Cualquier persona puede aprender por su cuenta a

    crear un programa si se esfuerza, pero en ocasiones recibir clases de un

    profesor en un ambiente acadmico puede resultar realmente beneficioso. Las

    clases individuales con un experto pueden reducir enormemente el tiempo que

    necesitas para comprender los fundamentos y los conceptos de la

    programacin. De igual forma, las clases son un buen lugar para aprender las

    matemticas avanzadas y la lgica que necesitars para crear programas ms

    complejos.

    Las clases no son gratuitas, as que asegrate de inscribirte en sesiones que te

    ayudarn a aprender lo que en realidad quieres saber.

    7.

    7

  • Pregunta. El internet es una manera fantstica de conectarte con otros

    desarrolladores. Si tienes un proyecto muy difcil en el que no puedes avanzar,

    pide ayuda en sitios web como "Entre desarrolladores". Asegrate de preguntar

    de una manera inteligente y de justificar que trataste de solucionar tu problema

    de varias maneras.

    Anuncio

    Parte 3 de 6: Construye tu prototipo

    1.

    1

  • Empieza escribiendo un programa bsico con tu funcionalidad

    principal.Esto ser el prototipo que mostrar la funcionalidad que deseas

    alcanzar. Un prototipo es un programa rpido en el que debes iterar hasta que

    encuentres un diseo que funcione. Por ejemplo, si ests creando un programa

    de calendarios, tu prototipo sera un calendario bsico (con las fechas

    correctas!) que proporcione la opcin de aadir eventos.

    Tu prototipo cambiar frecuentemente durante el ciclo de desarrollo a medida

    que elaboras formas nuevas de solucionar los problemas o piensas en una idea

    posterior que quieres incorporar.

    El prototipo no tiene que ser bonito. De hecho, el arte y el diseo deben ser

    unas de las ltimas cosas en las que debes concentrarte. Regresando al

    ejemplo del calendario, lo ms probable es que tu prototipo deba estar

    compuesto nicamente por texto.

    Si ests creando un juego, tu prototipo debe ser divertido! Si el prototipo no es

    divertido, es probable que el videojuego completo tampoco lo sea.

    Si la mecnica que deseas simplemente no funciona en el prototipo, entonces

    quizs sea el momento de empezar de nuevo.

  • 2.

    2 Rene un equipo. Si ests desarrollando un programa por tu cuenta, puedes

    usar un prototipo para reunir un equipo. Un equipo te ayudar a localizar ms

    rpido los errores, iterar las caractersticas y disear el aspecto visual del

    programa.[2]

    Aunque un equipo definitivamente no es necesario para los proyectos

    pequeos, ayudar a reducir significativamente el tiempo de desarrollo.

    Administrar un grupo de personas es un proceso complejo y difcil que requiere

    de buenas habilidades de gestin y una estructura slida del equipo. Lee esta

    gua para conocer ms detalles acerca de cmo liderar un grupo.

  • 3.

    3 Si es necesario, empieza desde el principio. Cuando ests familiarizado(a)

    con el lenguaje, probablemente puedas poner en funcionamiento los prototipos

    en solo unos das. Debido a su naturaleza rpida y si no ests feliz con el

    resultado, no temas desechar tu idea y comenzar desde el principio adoptando

    un ngulo diferente. Es mucho ms fcil hacer cambios importantes en esta

    etapa del proyecto que en el futuro, cuando las caractersticas empiecen a

    quedar en su lugar.

  • 4.

    4 Comntalo todo. Usa la sintaxis de comentarios en tu lenguaje de

    programacin para dejar notas en casi todas las lneas de cdigo, a excepcin

    de las ms bsicas. Si tienes que alejarte del proyecto por un tiempo, esto te

    ayudar a recordar lo que estabas haciendo, adems de ayudarle a otros

    desarrolladores a entender tu cdigo. Esto es especialmente importante si

    ests trabajando como parte de un equipo de programacin.

    Durante las pruebas, puedes usar los comentarios para deshabilitar

    temporalmente algunas partes de tu cdigo. Simplemente encierra el cdigo

    que quieres deshabilitar con la sintaxis de comentarios para que no se compile.

    Puedes borrar la sintaxis de comentarios para restablecer el cdigo.

  • Anuncio

    Parte 4 de 6: Pruebas alfa

    1.

    1 Rene un equipo de pruebas. En la etapa alfa, el equipo de pruebas puede y

    debe ser pequeo. Un grupo pequeo te proporcionar comentarios centrados

    y te da la capacidad de interactuar individualmente con las personas del

    equipo. Cada vez que le hagas actualizaciones al prototipo, se envan las

    versiones a los miembros del equipo de pruebas alfa. Estas personas probarn

  • todas las caractersticas incluidas y tratarn de daar el programa mientras

    documentan sus resultados.

    Si ests desarrollando un producto comercial, querrs asegurarte de que todos

    los miembros del equipo de pruebas firmen un acuerdo de confidencialidad.

    Esto evitar que le cuenten a otras personas sobre el programa y prevendr las

    fugas de informacin a la prensa y a otros usuarios.

    Tmate algo de tiempo para proponer un plan de pruebas slido. Asegrate de

    que todos los miembros del equipo de pruebas tengan una manera sencilla de

    reportar los errores del programa y de acceder a las versiones nuevas del

    prototipo. Los repositorios de cdigo son una manera excelente y sencilla de

    manejar este aspecto.

    2.

    2

  • Prueba tu prototipo varias veces. Los errores son la perdicin de cualquier

    desarrollador. Los fallos en el cdigo y el uso inesperado pueden ocasionar

    todo tipo de problemas en el producto terminado. A medida que sigues

    trabajando en tu prototipo, hazle todas las pruebas que puedas. Haz todo lo

    posible para daar tu programa y luego trata de evitar que eso ocurra en el

    futuro.

    Si tu programa maneja fechas, prueba ingresando fechas extraas. Las fechas

    realmente antiguas o demasiado futuras pueden ocasionar reacciones extraas

    en el programa.

    Ingresa el tipo incorrecto de variables. Por ejemplo, si tienes un formulario que

    le pregunta la edad al usuario, en su lugar ingresa una palabra y observa lo que

    ocurre con el programa.

    Si tu programa tiene una interfaz grfica, haz clic en todo. Qu ocurre cuando

    regresas a una pantalla anterior o haces clic en los botones en el orden

    equivocado?

  • 3.

    3 Soluciona los errores en el orden de prioridad. Al revisar el programa en la

    etapa alfa, pasars mucho tiempo arreglando caractersticas que no sirven

    correctamente. Cuando organices los reportes de errores para el equipo de

    pruebas, tendrs que dar dos criterios para organizar los

    resultados: gravedad y prioridad.

    La gravedad de un error es una medida para determinar el dao que causa.

    Los errores que hacen fallar al programa, corrompen los datos y evitan que el

    programa se ejecute se conocen como "bloqueadores". Las caractersticas que

    no sirven o que proporcionan resultados incorrectos se conocen como errores

    "crticos", mientras que las caractersticas difciles de usar o de mal aspecto se

    conocen como errores "importantes". Tambin hay errores normales, menores

  • y triviales que afectan las secciones ms pequeas o las caractersticas menos

    importantes.

    La prioridad de un error determina el orden que debe tener cuando te pongas a

    la tarea de solucionar los problemas. Arreglar los errores de un programa es un

    proceso que demora bastante y le resta tiempo a las tareas de agregar

    caractersticas y perfeccionar el programa. Por lo tanto, tienes que tener en

    cuenta la prioridad de un error para asegurarte de cumplir con las fechas lmite.

    Todos los errores bloqueadores y crticos toman la prioridad ms alta, en

    ocasiones conocida como "P1". Los errores de tipo "P2" generalmente son

    aquellos clasificados como "importantes" que tienen programado su arreglo,

    pero no impiden que el producto final llegue a su destino. Los errores de tipo

    "P3" y "P4" generalmente no tienen programada una fecha para su arreglo y

    entran en la categora de "caractersticas deseables".

    4.

  • 4 Agrega ms caractersticas. Durante la fase alfa agregars ms

    caractersticas al programa para hacer que se acerque al concepto descrito en

    el documento de diseo. La etapa alfa es donde el prototipo evoluciona en la

    base para el programa completo. Al final de la etapa alfa, tu programa debe

    tener implementadas todas sus caractersticas.

    No te alejes demasiado de tu documento de diseo original. Un problema

    comn en el desarrollo de software es la "funcionalitis creciente", en el que se

    siguen aadiendo ideas nuevas que hacen perder el enfoque original y dividen

    el tiempo de desarrollo en muchas caractersticas diferentes. Quieres que tu

    programa sea el mejor en lo que se supone que debe hacer, ms no una

    herramienta que sirva para todo.[3]

    5.

  • 5 Prueba cada caracterstica a medida que la agregas. A medida que agregas

    caractersticas al programa durante la fase alfa, enva la versin nueva al

    equipo de pruebas. La frecuencia de las versiones nuevas depender

    completamente del tamao de tu equipo y del progreso que hagas en las

    caractersticas.

    6.

    6 Bloquea tus caractersticas cuando la etapa alfa termine. Cuando

    implementes todas las caractersticas y funciones en tu programa, puedes

    terminar la fase alfa. En este punto no debes aadir ms caractersticas y las

  • que estn incluidas bsicamente deben funcionar. Ahora puedes seguir a una

    etapa de pruebas y perfeccionamiento ms amplia, conocida como la fase beta.

    Anuncio

    Parte 5 de 6: Pruebas beta

    1.

    1 Aumenta el nmero de personas en tu equipo de pruebas. En la fase beta,

    el programa se pone a disposicin de un nmero ms grande de personas

    encargadas de hacer las pruebas. Algunos desarrolladores hacen pblica la

    fase beta, lo cual se conoce como "beta abierta". Esto permite que cualquier

    persona se inscriba y participe en las pruebas del producto.

  • Dependiendo de las necesidades de tu producto, determinars la viabilidad de

    hacer una fase beta abierta.

    2.

    2 Prueba la conectividad. Ya que los programas estn interconectados entre s

    cada vez ms, hay una buena probabilidad de que tu programa dependa de las

    conexiones con otros productos o servidores. Las pruebas beta te permiten

    asegurarte de que estas conexiones funcionan bajo una carga pesada, lo cual

    en ltima instancia te garantiza que el pblico podr utilizar tu programa

    cuando llegue el momento del lanzamiento.

  • 3.

    3 Perfecciona tu programa. En la fase beta no se agregan ms caractersticas,

    as que puedes concentrar tu atencin en mejorar la esttica y la facilidad de

    uso del programa. En esta fase, el diseo de la interfaz del usuario se convierte

    en una prioridad, ya que es importante garantizar que los usuarios no tengan

    problemas para navegar por el programa o aprovechar las caractersticas.

    El diseo y la funcionalidad de la interfaz del usuario pueden ser muy

    complejas. Hay personas cuya profesin es el diseo de interfaces del usuario.

    Solo asegrate de que tu proyecto personal sea fcil de usar y agradable a la

    vista. Quizs no sea posible desarrollar una interfaz del usuario profesional sin

    un presupuesto ni un equipo.

  • Si tienes el presupuesto, existen muchos diseadores grficos independientes

    que podras contratar para disear una interfaz del usuario. Si tienes un

    proyecto slido que esperas convertir en el siguiente producto revolucionario,

    encuentra un buen diseador de interfaces del usuario y hazlo parte de tu

    equipo.

    4.

    4 Sigue buscando los errores. A lo largo de la fase beta, debes seguir

    catalogando y priorizando los reportes de errores que enva tu base de

    usuarios. Ya que hay ms personas que tendrn acceso al producto para

    probarlo, es probable que aparezcan errores nuevos. Soluciona los errores con

    base en su prioridad mientras tienes en cuenta tu fecha lmite definitiva.[4]

    Anuncio

  • Parte 6 de 6: Lanza tu programa al pblico

    1.

    1 Promueve tu programa. Si quieres tener usuarios, querrs asegurarte de que

    sepan sobre la existencia de tu programa. Al igual que cualquier otro producto,

    necesitars hacer un poco de publicidad para que las personas conozcan tu

    programa. El alcance y la profundidad de tu campaa publicitaria estarn

    determinados por las funciones de tu programa y los recursos que tengas

    disponibles. Algunas maneras sencillas para dar a conocer tu programa

    incluyen:

    Hacer publicaciones sobre tu programa en foros relacionados. Asegrate de

    seguir las reglas para publicar en el foro que selecciones para que las personas

    no denuncien tus publicaciones.

  • Enva comunicados de prensa a los sitios web de tecnologa. Encuentra

    algunos blogs y sitios web de tecnologa que concuerden con el gnero de tu

    programa. Envale comunicados de prensa a los editores detallando tu

    programa y la funcin que cumple. Incluye algunas capturas de pantalla.

    Haz algunos videos de YouTube. Si tu programa est diseado para completar

    una tarea especfica, haz algunos videos de YouTube que muestren tu

    programa en accin. Haz que los videos tengan una estructura de gua.

    Crea pginas en las redes sociales. Puedes crear pginas gratuitas en

    Facebook y Google+ para tu programa, adems de usar Twitter para noticias

    de la empresa y del programa.

    2.

    2

  • Hospeda tu programa en tu sitio web. Para los programas pequeos, lo ms

    probable es que puedes hospedar el archivo en tu sitio web. Querrs incluir un

    sistema de pagos si vas a cobrar por tu programa. Si tu programa se vuelve

    muy popular, quizs necesites hospedar el archivo en un servidor que pueda

    soportar ms descargas.

    3.

    3 Establece un servicio de soporte tcnico. Cuando tu programa est

    disponible al pblico, sin lugar a dudas tendrs usuarios con problemas

    tcnicos o que no entienden el funcionamiento del programa. Tu sitio web debe

    tener disponible documentacin minuciosa sobre el programa, como tambin

  • alguna clase de servicio de soporte. Esto puede incluir un foro de soporte

    tcnico, un correo electrnico de soporte, ayuda en vivo o una combinacin de

    las opciones anteriores. Las opciones que proporciones dependern de tus

    recursos disponibles.

    4.

    4 Actualiza constantemente tu producto. En la actualidad, casi todos los

    programas tienen correcciones y actualizaciones que se publican mucho

    despus del lanzamiento inicial. Estas correcciones pueden solucionar errores

    crticos o leves, actualizar protocolos de seguridad, mejorar la estabilidad,

    agregar funciones o incluso rehacer la esttica del programa. Mantener tu

    programa actualizado ayudar a que siga siendo competitivo.