El mejor lenguaje para iniciar en la programacion

Imagen de Deathstar
0 puntos

Hola,quisiera saber cual es el mejor lenguaje para iniciarmeenla programacion,en algun lugar leei que el mejor para iniciar era Python pero luego me he encontrado con que Basic y luego que C/C++,por favor ayudenme ya que me interesa mucho esto de la programacion

Imagen de patagonian18
+1
0
-1

En mi humilde opinión, el mejor lenguaje para aprender a programar es C, a secas. Es el más general  y el que más te permite aprender. C++ es el mismo C con algunas añadiduras para programación enfocada a objetos, que lo que hace es darte ventajas a la hora de organizar y depurar el código, además de algunas otras ventajas, pero no es la panacea para todo ni mucho menos. Un código programado en C++ no necesariamente va a redundar en un executable más eficiente que uno programado en C.

Python, hasta donde entiendo es un lenguaje de scripting, lo que significa que no necesita crear un ejecutable para funcionar, pero por contra, necesita de una aplicación madre para correr. Lo favorable, es más rápido y menos engorroso probar si un código funciona, pero a la hora de correr el programa, siempre va a ser más lento que uno programado en C/C++.

+1
0
-1

 

mi blog: www.patagonianuser.blogspot.com

Ad augusta per angusta

Imagen de Goyo
+1
0
-1

No hay respuestas absolutas a esto. El punto fuerte de python como herramienta para iniciarse en la programación es que es sencillo de usar. Te puedes poner a escribir y ejecutar código directamente incluso en el intérprete y concentrarte en el hecho de aprender a programar, sin preocuparte de zarandajas como compilar, enlazar, etc. ni de los detalles particulares de la máquina o el sistema operativo. El código es muy compacto y legible.

Esto no impide que python sea un lenguaje muy potente y adecuado para una gran variedad de propósitos. 

+1
0
-1
Imagen de jorgerider
+1
0
-1

Si quieres aprender de verdad, Phython y Basic son lenguajes de nivel más alto(esto es que se parecen muchísimo al lenguaje humano),al igual que C,C++ y JAVA. Entre todos estos,te recomiendo C y después C++ y JAVA, para mi gusto C es la base principal de cualquier programador,y después C++ y JAVA son dos leguajes basados en C y que tienen muchisimo uso actualmente.

Para mí C es el mejor para iniciarse. De hecho,creo(lo sé porque en mi universidad es así,al igual que unas cuantas que conozco) que en todas las universidades de informática en el primer año se da C para iniciarse en la programación. 

+1
0
-1
Imagen de patagonian18
+1
0
-1

Compilar y enlazar también son parte de programar. Y en algún momento si te vas a tener que preocupar de la máquina y el sistema operativo. De hecho, en algunas ocasiones la mejor opción es el assembly por muy espartano que sea, sobre todo cuando se trata de sistemas donde el uso de la memoria es crítico y se quiere maximizar la eficiencia del programa a más no poder.

Sobre python prefiero no opinar, porque no lo conozco mayormente. Sin embargo, creo que es más pedagogico aprender C y una vez que lo domine buscar otras alternativas. Si luego resulta que python le simplifica  la vida, pues adelante...

+1
0
-1

 

mi blog: www.patagonianuser.blogspot.com

Ad augusta per angusta

Imagen de Goyo
+1
0
-1

Compilar, enlazar o utilizar un API para acceso a una base de datos o a una biblioteca de gráficos son parte de programar o no, depende del programa que se esté escribiendo. Desde luego muchos de los programas forman parte de la interfaz gráfica de Ubuntu, por ejemplo, no es necesario compilarlos ni enlazarlos. Desde luego si queremos maximizar la eficiencia lo mejor es ensamblador y en segundo lugar C, pero maximizar la eficiencia de un programa no suele ser un objetivo prioritario del que se inicia en la programación ni es tampoco la principal prioridad en cualquier programa (de ser así todos los programas se harían en C).

Iniciarse en la programación puede significar muchas cosas. Una aproximación bastante extendida es comenzar por conceptos básicos como algoritmos y tipos abstractos de datos y aprender a usarlos para resolver problemas. Incluso en los cursos basados en C lo normal es introducir estos conceptos mediante seudocódigo o notación funcional y sólo después implementarlos en el lenguaje que se esté utilizando. El uso de lenguajes como python o scheme hace este paso más inmediato.

Desde luego C tiene características muy apreciables, pero se me escapa cuáles son las que lo hacen más pedagógico que otros lenguajes.

Un buen texto para aprender a programar con python: 

http://tinyurl.com/yr529z

El mismo autor tiene textos semejantes para Java y C++, aunque no conozco versión en español:

http://www.greenteapress.com/ 

+1
0
-1
Imagen de patagonian18
+1
0
-1

Jajaja creo que no es necesario empezar una guerra santa de python versus C. Partidarios de ambos bandos hay suficientes para que dure hasta el final de los dias.

Lo de assembly... es deformación profesional. Estoy por terminar ingeniería electrónica y me las he tenido que ver más de una vez con esos lenguajes. Además, dejé claro que era para casos contados donde se debe maximizar el uso de la memoria, por ejemplo.

Lo de la pedagogía, bueno en la universidad donde yo estudio se dice que aprender C es la base para aprender a programar como Dios manda... aunque bien puede ser otro mito urbano más. Había por ahí un artículo excelente sobre aprender a programr en C, pero no he podido dar con él.

+1
0
-1

 

mi blog: www.patagonianuser.blogspot.com

Ad augusta per angusta

Imagen de Goyo
+1
0
-1

No es necesario ni conveniente, como dije no hay una respuesta definitiva.

De todos modos mi punto de vista es muy diferente del que predomina en tu facultad, los conceptos importantes de programación no dependen del lenguaje que se use y aprender a programar no es aprender a picar código en un lenguaje determinado sino conocer las herramientas conceptuales y adquirir los hábitos de pensamiento que permitan diseñar la solución adecuada a un problema. Naturalmente es muy poco pedagógico que la solución se quede simplemente en una hoja de papel en forma de pseudocódigo, por eso hace falta también un lenguaje de programación.

Para mí saber programar como dios manda es, por ejemplo, ser capaz de hacer un buen diseño orientado a objetos y de codificarlo en un basic de los de antes (sí, se puede hacer, al igual que se hace en C). El resto no es aprender a programar, es leer manuales.

+1
0
-1
Imagen de patagonian18
+1
0
-1

Muy de acuerdo, en lo que se refiere a la importancia de los conceptos por sobre el uso de un lenguaje específico. Sí, a mí también me pasaron los dichosos diagramitas esos, el pseudocódigo y demás. Lo que yo decía, es que C era una buena opción para implementar todos esos conceptos. De la programación orientada a objeto ya podrá ocuparse después, que no es el único paradigma de programación y no es la mejor solución en todo los casos.

Por último, tienes razón sobre que no hay repuesta definitiva. Tal vez quiera aprender a programar algo sencillo para internet y le convenga más a prender Java, por ejemplo.

+1
0
-1

 

mi blog: www.patagonianuser.blogspot.com

Ad augusta per angusta

Imagen de Deathstar
+1
0
-1

Bueno,pues agradesco todos sus post y mi intencion no era comenzar una guerra Python vs C pero por lo que he visto la mayoria esta deacuerdo con que lo mejor para iniciar es C,claro que seguire esperando mas opiniones pero por el momento yo creo empezar a ver C,y gracias por su ayuda,de nuevo el foro de Ubuntu me saca de apuro,pero que mas se podia esperar de una de las mejores distros de linux.

+1
0
-1
Imagen de dilaang
+1
0
-1

En mi opinion y basandome en mi experiencia el mejor lenguaje para empezar es c++, auqnue tuve la oportunidad de trabajar algo en Smalltalk y lo considero idoneo para empezar pues muy grafico, y muy facil de aprender puedes trabajar en Smalltalk desde Squeak, el cual se encuentra disponible en los repositorios de Ubuntu.

+1
0
-1
Imagen de gYo
+1
0
-1

Hoy, como estoy muy contento y he logrado conectarme por wifi, ahora va lo sigiente , y aprovechando este hilo, os pregunto...

 

Podeis recomendar algun manual, algun pinito hice, pero muy basico en programacion...

Gracias a todos. 

+1
0
-1
Imagen de wamphyr
+1
0
-1

Tanto Python como C/C++ son buenos para aprender, yo en el instituto aprendí con Python y en la universidad 're'aprendí con C++ (usando el paradigma imperativo, aunque el código era de C++).

Pero mi consejo es que al principio te olvides un poco de los lenguajes concretos, busca algún curso, libro, web o lo que sea que inicie el aprendizaje con un pseudocodigo para aprender a programar y luego te enseñe un código para ponerlo en práctica.

Por si no sabes lo que es un pseudocodigo: es un lenguaje ficticio, que no tiene aplicación práctica pero que es muy fácil de entender. Esto es ideal para aprender a programar, ya que un programa no es más que una secuencia de instrucciones que se realizan paso a paso. Lo importante al principio no son las instrucciones en sí, si no aprender a pensar la manera de descomponer una tarea por pasos para poder automatizarla y después trasladar tus ideas a un código.

Así que si lo que quieres iniciarte en la programación busca cursos o libros que te enseñen a programar, no un lenguaje de programación. Si buscas eso, lo más probable es que el propio curso después de enseñarte a programar te enseñe un lenguaje de programación concreto para poner en práctica lo aprendido.

Ya se que lo que pedias era un lenguaje concreto, pero no puedo decirte ninguno, ya que yo no aprendi a programar de verdad hasta que no me enseñaron antes a "pensar como programar". En cualquier caso, espero que esta respuesta te sirva. 

+1
0
-1
Imagen de Deathstar
+1
0
-1

Gracias por todos sus posts pero sobre todo al del amigo wamphyr ya que es ciertolo que dice primero debo de aprender a programar yluego programar con un lenguaje,esto me sirbe de mucho pues yo me estoy iniciando en la programacion y no se nada de nada sobre programar,gracias a todos y ojala esta comunidad valla igual que hasta ahora y continue creciendo.

+1
0
-1
Imagen de Goyo
+1
0
-1

Lo que ocurre es que es algo frustrante escribir código (o pseudocódigo) que no puedes ver en acción. Por eso me parece conveniente usar algún lenguaje ejecutable desde el principio. Aquí es donde las opciones se multiplican, claro.

Por ejemplo, se puede elegir C. Esto hará algo más difícil y laboriosa la tarea de escribir el código y ejecutarlo, pero al cabo de algunos años de entrenamiento puede servirnos para escribir el sistema operativo libre que supere a GNU, Linux y BSD. Además hay buenos textos de iniciación.

O se puede elegir python, con el que podemos empezar a escribir y ejecutar código fácil e inmediatamente y tal vez al cabo de unos meses esa utilidad de escritorio por la que todo el mundo suspira. Y si después nos vemos con ganas de escribir un sistema operativo siempre podemos aprender C. También hay buenos textos de iniciación.

Los lenguajes funcionales y, si se quiere hacer una aproximación orientada a objetos, smalltalk también me parecen buenas opciones. Aunque probablemente sería más difícil encontrar un buen texto para un novato autodidacta.

+1
0
-1