Aprender Programación: ¿Cómo empezar?

Aquí podrás hablar de cualquier cosa relacionada con la tecnología y la informática: software, hardware, internet, problemas con tu PC, robótica, I+D+i, etc.

Moderator: Viento

User avatar
Godah
Cofre Sin Fondo
Cofre Sin Fondo
Posts: 4431
Joined: 14 Aug 2009, 10:09
PSN ID: Queso_Godah
Xbox Live ID: Godah
Location: Pendulando entre Lleida y BCN

Aprender Programación: ¿Cómo empezar?

Post by Godah » 26 Feb 2010, 22:14

Muuy buenas, mis queridos foreros/as:
Debido al Máster que tengo intención de estudiar (Interdisciplinario de los Media y Sistemas Cognitivos Interactivos) (Tiene agüita el nombre), el coordinador me ha recomendado que empiece a empaparme con cursillos básicos de programación.

Engloba conocimientos de lingüística computacional, que es una rama en la que estoy bastante versado, pero como provengo de una Filología, tengo nulo conocimiento de Informática en sí. Claro, como usuario me considero bastante perspicaz y autosuficiente, sé manejar un ordenador, software, y cosillas de esas, más o menos como todos vosotros. También por mi formación conozco cómo programar pequeñas interfaces lingüísticas, como analizadores sintácticos o desglosadores morfológicos, pero eso es un conocimiento muy pequeño y específico dentro de la Informática. Pero no sé nada de programación.

Como sé que aquí hay gente que domina del tema, me gustaría pedir consejo, sobre cualquier cosa. No me he mirado cursos, pero me gustaría saber exactamente cómo empezar. ¿Cursos presenciales, a distancia, autodidacta? ¿La programación se aprende universalmente o depende de si haces C++ y cosas de esas? Es que programación para mí es algo muy universal, me suena muy general, por lo que ando muy perdido. Evidentemente tampoco hace falta que adquiera una base sólida, tan sólo necesito ir empezando con los rudimentos para que al empezar el Máster no se me haga todo cuesta arriba.

Pues eso, que gracias por adelantado, espero consejos :Kupo:

User avatar
Black Flare
Plumaje Fénix
Plumaje Fénix
Posts: 796
Joined: 18 Jan 2010, 13:35
Location: Pitágoras.

Re: Programación: ¿Cómo empezar?

Post by Black Flare » 26 Feb 2010, 22:19

Te puedo dar un consejillo, y es que una vez que conoces programar en un lenguaje (Como dices C++), ya sabes hacerlo en cualquiera. Eso me pasa a mi que en la universidad he dado asignaturas en Java y en C++, y ahora me ponen a programar a Ada y me resulta mucho más fácil que cuando empecé en Java.

Saber programar no es saberse un lenguaje, para aprender este sólo falta con mirarse los libros, los manuales, etc... Lo que necesitas para programar es tener una disciplina y conocer la estructuración de un programa.

Si tienes alguna consulta más específica no dudes en consultarla, como empezar no te puedo decir mucho por que no es muy exacto la forma de hacerlo. Yo aprendí en las clases donde la primera asignatura de programación no damos nada de lenguajes de programación, sino una cosa llamada Diagramas de Flujo y pseudocódigo que es más importante que saber lo que hace un objeto Scanner en java, por ejemplo...
Image

User avatar
Pappapishu
Compañero de fatigas
Compañero de fatigas
Posts: 11986
Joined: 31 Jan 2010, 10:43
PSN ID: Pappaìshu
Twitter: @Pappapishu
STEAM: pappapishu
Location: Puerto Pollo, Isla Plunder
Contact:

Re: Aprender Programación: ¿Cómo empezar?

Post by Pappapishu » 26 Feb 2010, 22:25

Bien, respondiendo tus preguntas, no, la programacion no es universal, es por lenguaje, si bien muchas cosas son extrapolables hay muchas diferencias entre lenguajes (de ahí que no haya solo uno). Los conceptos básicos sí son universales, luego cada lenguaje tiene sus peculiaridades.

Personalmente te recomiendo, si te apetece el rollo autodidacta que empieces con algo de pseudocodigo y programes en .Net o Java...y cualquier duda nos preguntas a los frikis programadores de aqui!:)
Image
https://www.instagram.com/madridwolvesqt/

User avatar
Godah
Cofre Sin Fondo
Cofre Sin Fondo
Posts: 4431
Joined: 14 Aug 2009, 10:09
PSN ID: Queso_Godah
Xbox Live ID: Godah
Location: Pendulando entre Lleida y BCN

Re: Aprender Programación: ¿Cómo empezar?

Post by Godah » 26 Feb 2010, 22:39

Ya veo, así que aprendiendo un lenguaje ya tendría cierta base para no ir tan perdido...
¿Qué es eso del pseudocódigo? ¿Conocéis algunas webs interesantes con las que ir empapándome? :Namingway:
Gracias por postear ^^

Ah, por cierto, acabo de encontrar en mi carpeta de tercero los archivos de una gramática que escribí para un analizador sintáctico. Os lo posteo para que veáis si este tipo de lenguaje se aproxima a los cánones de programación, o por lo contrario creeis que no me puede servir...

Esto de aquí son reglas para que analice cada tipo de sintagma, y dentro de cada tipo; verbal, nominal, adjetival, pues las diferentes posibilidades (sólo es un extracto). No hace falta que lo entendáis (aunque siendo informáticos igual sí que lo entendéis xD), sólo es para que veáis por donde van los tiros del tipo de lenguaje que más o menos domino (muy sencillo)

RULE SV -> V SADV
<SV num> = <V num>
<SV per> = <V per>
<SV sem> = <V sem>
<SV tip> = <V tip>
<SADV tip> = <V tip>
RULE SV -> V SADJ
<SV num> = <V num>
<SV per> = <V per>
<SADJ num> = <V num>
<SADJ gen> = <SV gen>
<SV sem> = <V sem>
<V tip> = cop

RULE SV -> V_1 V_2
<SV num> = <V_1 num>
<SV per> = <V_1 per>
<SV sem> = <V_1 sem>
<V_1 tip> = aux
<V_2 form> = impers
<V_2 tip> = intr
RULE SV -> V_1 V_2 SN
<SV num> = <V_1 num>
<SV per> = <V_1 per>
<SV sem> = <V_1 sem>
<V_1 tip> = aux
<V_2 form> = impers
<V_2 tip> = trans


RULE SADJ -> ADJ
<SADJ num> = <ADJ num>
<SADJ gen> = <ADJ gen>
RULE SADJ -> ADV ADJ
<SADJ num> = <ADJ num>
<SADJ gen> = <ADJ gen>





RULE SPREP -> PREP SN
<PREP apos> = <SN apos>




RULE SADV -> ADV
<SADV cla> = <ADV cla>
<SADV tip> = intr




RULE SNEG -> ADVNEG

User avatar
Black Flare
Plumaje Fénix
Plumaje Fénix
Posts: 796
Joined: 18 Jan 2010, 13:35
Location: Pitágoras.

Re: Aprender Programación: ¿Cómo empezar?

Post by Black Flare » 26 Feb 2010, 23:13

Yo hice una gramática para una asignatura y no se parece mucho, ya que usamos un lenguaje diferente (Y no le veo mucho sentido... xD)

Pseudocodigo es un tipo de código intermedio entre nuestro lenguaje y el de cualquier lenguaje de programación, tiene una serie de normas donde puedes ver el lugar de un bucle, condicionales, variables, etc..

Te pongo ejemplo de un pseudocodigo para que entiendas mas o menos como va.

numero = 0

Mientras (numero < 20) {
mostrar numero
numero = numero + 1
}

Si (numero = 20) {
mostrar "El último número de la serie es: 20"
}
Image

User avatar
Godah
Cofre Sin Fondo
Cofre Sin Fondo
Posts: 4431
Joined: 14 Aug 2009, 10:09
PSN ID: Queso_Godah
Xbox Live ID: Godah
Location: Pendulando entre Lleida y BCN

Re: Aprender Programación: ¿Cómo empezar?

Post by Godah » 26 Feb 2010, 23:20

Ah, es un modo de puente, algo intermedio. Veo que asemeja a las funciones del Excel, aunque claro, sólo en este caso me lo ha parecido.

A ver si he entendido lo que has puesto. ¿Si el número es inferior a 20, el resultado es 0+1, pero si el número es 20, el resultado es 20. Bueno, creo haberlo entendido. Madre mía, me está entrando el cangüelo xD

User avatar
Black Flare
Plumaje Fénix
Plumaje Fénix
Posts: 796
Joined: 18 Jan 2010, 13:35
Location: Pitágoras.

Re: Aprender Programación: ¿Cómo empezar?

Post by Black Flare » 26 Feb 2010, 23:23

Godah wrote:Ah, es un modo de puente, algo intermedio. Veo que asemeja a las funciones del Excel, aunque claro, sólo en este caso me lo ha parecido.

A ver si he entendido lo que has puesto. ¿Si el número es inferior a 20, el resultado es 0+1, pero si el número es 20, el resultado es 20. Bueno, creo haberlo entendido. Madre mía, me está entrando el cangüelo xD


En verdad no es del todo así xD, lo primero es un bucle que estará imprimiendote el número mientras sea menor a 20 (¿ves como casi se traduce lo que digo a pseudocodigo?), y cuando acabe si es igual a 20 te lo muestra.
Image

Saga
Algarrobo en Potencia
Algarrobo en Potencia
Posts: 128
Joined: 24 Dec 2009, 14:25
Location: Quintapuñetistán, Sevilla
Contact:

Re: Aprender Programación: ¿Cómo empezar?

Post by Saga » 27 Feb 2010, 20:36

C++ es una ampliación del lenguaje C, que es el que se utiliza en todas las escuelas, ciclos y facultades para comenzar a aprender programación, ya que es el más "básico" y de los primeros en aparecer verdaderamente potentes, y con los que se puede hacer muchas cosas.

La diferencia entre C y C++ es que el primero es "estructurado", esto es que escribes una serie de instrucciones que el programa ejecuta desde la primera hasta la última línea y punto pelota [al menos los programas más básicos en plan "hola mundo"], mientras que C++ permite usar algo llamado "orientación a objetos", cosa que no te recomiendo ver sin saber lenguajes estructurados. Pseudocódigo, opinión personal, no te lo recomiendo, ya que cada libro te enseñará un código distinto y sólo te servirá para liarte; si sabes inglés empieza con C, ya que todas las instrucciones son en inglés y lo que significan es lo que hacen.

P.D: duda a los informáticos más curtidos como Gandalf: hace tiempo me comentaron que aprender a programar estudiando C es una burrada, que lo mejor para aprender es Cobol. ¿Qué hay de verdad en eso?

User avatar
Black Flare
Plumaje Fénix
Plumaje Fénix
Posts: 796
Joined: 18 Jan 2010, 13:35
Location: Pitágoras.

Re: Aprender Programación: ¿Cómo empezar?

Post by Black Flare » 27 Feb 2010, 20:51

Saga wrote:C++ es una ampliación del lenguaje C, que es el que se utiliza en todas las escuelas, ciclos y facultades para comenzar a aprender programación, ya que es el más "básico" y de los primeros en aparecer verdaderamente potentes, y con los que se puede hacer muchas cosas.

La diferencia entre C y C++ es que el primero es "estructurado", esto es que escribes una serie de instrucciones que el programa ejecuta desde la primera hasta la última línea y punto pelota [al menos los programas más básicos en plan "hola mundo"], mientras que C++ permite usar algo llamado "orientación a objetos", cosa que no te recomiendo ver sin saber lenguajes estructurados. Pseudocódigo, opinión personal, no te lo recomiendo, ya que cada libro te enseñará un código distinto y sólo te servirá para liarte; si sabes inglés empieza con C, ya que todas las instrucciones son en inglés y lo que significan es lo que hacen.

P.D: duda a los informáticos más curtidos como Gandalf: hace tiempo me comentaron que aprender a programar estudiando C es una burrada, que lo mejor para aprender es Cobol. ¿Qué hay de verdad en eso?


Ehem, gracias Saga xDD.

Yo el primer lenguaje de programación que vi es Java y se aprende muy rápido, y ya te digo que yo comencé con pseudocódigo y no te lía para nada...
Image

User avatar
Inferno
Amigo De Ultros
Amigo De Ultros
Posts: 5420
Joined: 07 Sep 2009, 01:45
PSN ID: Blackvals
Location: Vic

Re: Aprender Programación: ¿Cómo empezar?

Post by Inferno » 28 Feb 2010, 14:08

Pues se ve que en Sistemas somos tan chulos que le damos al Java en vez de al C o el C++ el primer año, porque yo al igual que Black Flare programo en Java.

Si te interesa el Java, puedo pasarte todos los .pdf que nos cuelgan en la web de la UdG, eso sí, yo creo que paralelamente se necesita de alguien que pueda explicartelo un poco.

Nosotros usamos pseudocódigo para la teoría, y Java para las prácticas. Sin embargo (es probable que os parezca raro), hasta este cuadrimestre no hemos hecho orientación a objetos (bueno, no entiendo lo que era).
Es decir, que el primer cuadrimestre hemos estado haciendo condicionales, secuenciales, tablas y matrices (arrays) y secuencias (estos dos últimos ahora he descubierto que trabajábamos con objetos sin saber, porque usábamos constructores de una libreria que nos facilitaron al principio del curso).

Pues eso Godah, que si quieres puedo facilitarte material y aclararte cosillas básicas (para cosillas no-básicas ya tienes a todos estos xD).

Post Reply