He sumergido los dedos de los pies en la programación de C ++ pero en realidad no he profundizado en ello. Quiero saber si realmente necesito aprenderlo o algún otro idioma antes de ir a la universidad para Ingeniería en Computación o si de todos modos lo voy a aprender en la escuela.
14
Respuestas:
Si, por varias razones.
fuente
Como graduado de CS (BS, MS, PhD), recomendaría que te mojes los pies lo antes posible. Tendrás suficientes otras cosas en tu primer año de universidad. En particular para la programación:
Visite el sitio web de su universidad de destino y mire el catálogo de clases de la división inferior o la página web del programa de estudios para las clases de programación introductoria. Busque el lenguaje de programación que se enseña y vea qué tipo de cosas se cubren en la primera clase. Intente leer sobre ese material antes de comenzar.
Nuevamente, mirando la página del programa de estudios de la clase, mire las tareas de programación anteriores y vea qué tipo de herramientas de programación de software y entorno se están utilizando. ¿Es vi y gcc (esto es lo que usan los hombres de verdad)? Microsoft Visual Studio? ¿Eclipse? Intente usar estas herramientas antes de comenzar.
La programación de software es solo una de las cosas que se enseñan en un plan de estudios de CS. Otros son algoritmos (por ejemplo, QuickSort), estructuras de datos (árboles, listas vinculadas, tablas hash) y teoría pura (completitud NP y lógica de conjuntos). Diría que estos son al menos tan importantes como cualquier lenguaje de programación que aprendas.
fuente
Depende de la universidad. Cuando estudié lo que llaman "Ciencias de la Computación" en la Universidad Estatal de California, ellos (con razón, en mi opinión) se concentraron en el aspecto científico de la misma, y esperaban que todos (incluso los estudiantes de primer año) ya supieran cómo usar los sistemas operativos y cómo escribir código en algún lenguaje popular. No aceptaron transferir algunos créditos que había obtenido mientras asistía a cursos de idiomas en una Universidad Estatal de Ohio. (Eso fue un fastidio para mí, pero de nuevo, lo entiendo). Esto también tuvo una ventaja: completé una tarea una vez, escribiendo mi código en C; el profesor no podía leer C, por lo que me pidió que lo volviera a escribir en Pascal. Le pregunté al jefe del departamento sobre la validez de esta solicitud, y él dijo que, dado que no enseñan idiomas, tampoco pueden esperar que nadie complete una tarea en un idioma específico. Entonces mi profesor tuvo que vivir con mi tarea escrita en C. Entonces, la conclusión es, consulte con la universidad a la que va a ir. Pero si quieres mi consejo, nunca está de más aprender de antemano tanto como sea posible.
fuente
Si tiene que preguntarse si debe aprender un lenguaje de programación en primer lugar, pregúntese si realmente es lo que quiere hacer. La mayoría de los primeros años de ciencias de la computación ya son bastante buenos en programación incluso antes de que comiencen, por lo que competirás contra esos tipos que naturalmente tienden hacia el geek. Salta a la cabeza primero o haz otra cosa que ames. No estés en la cerca. Amas lo que haces. No necesito ni quiero votar por este, solo quiero hablar directamente contigo.
fuente
No creo que necesites aprenderlo antes de asistir a la universidad. Sin embargo, creo que, como la mayoría de las cosas en la vida, si está preparado previamente antes de asistir a algún evento, etc., es más probable que pueda tomar decisiones informadas sobre qué información absorber y qué información descartar.
Más específicamente, al menos sumergiendo los dedos de los pies, es posible que pueda escuchar lo que dicen sus profesores en lugar de simplemente copiar lo que dicen literalmente, pero sin absorber los conceptos que intentan transmitir, lo que en mi opinión es lo más importante. parte de la universidad (no la parte de sintaxis de aprendizaje de un idioma, etc.).
En cuanto a qué lenguaje de programación aprender. Probablemente no importa, pero podría ser útil para comenzar a leer sobre los que probablemente cubrirá en su primer año.
Sin embargo, la otra cara del preaprendizaje es que cuando llegas a tus primeros meses puedes encontrar las clases aburridas y elementales. Esto podría llevarlo a no asistir a clases o descartar lo que los profesores están tratando de transmitir, por lo tanto, perder parte de información vital como darse cuenta de que realmente aprendió algo no es la forma correcta, es decir, aprendió un mal hábito antes de asistir a la universidad.
Al profundizar en este tipo de sitios, probablemente ya estés en el camino para estar un paso adelante y así ayudar a tu aprendizaje durante la universidad. De cualquier manera, lo que pre-aprende probablemente será solo la punta del iceberg. Tendrá que continuar con esta curva de aprendizaje dentro y fuera del material universitario si desea continuar con los beneficios que puede proporcionar.
fuente
Sí, pero no comience con el lenguaje más complicado, habrá mucho tiempo para eso más adelante.
Comience con algo simple para mojarse los pies. Es mucho más fácil comprender los conceptos de programación cuando el lenguaje en sí no lo agobia. Del mismo modo, algunos idiomas hacen las cosas mejor que otros.
Aprenda Python para la programación dinámica, técnicas de programación orientadas a objetos simples y sangría adecuada. Aprenda javascript + JQuery o Lua para obtener información sobre cierres. Aprenda Java o C # para aprender sobre la escritura estática. Aprenda expresiones regulares para el análisis de cadenas. Y aprenda un poco de SQL ya que cada programador tiene que tocar una base de datos en algún momento. Luego aprenda PHP para que pueda identificar el código de espagueti.
Esta lista puede variar, pero básicamente elige algunos idiomas divertidos y úsalos para aprender conceptos . Posteriormente, aprenderá a ser adaptativo, en lugar de quedarse estancado en un idioma por el resto de su vida y tratar de defenderlo en Internet todo el tiempo.
fuente
Voy a decir que no creo que importe demasiado el idioma que sepas cuando comienzas, pero probablemente te dará una ventaja en el sentido de que cuando recibas tu primera asignación de programación, no tienes para luchar con el problema de pensar en términos de código, ya tendrás algo de experiencia allí. Una curva de aprendizaje menos para superar es algo bueno. Bono si aprendes el idioma que enseñan en tu primer año, pero no es necesario.
fuente
No sabrá si Computer Engineering es realmente el programa de estudios adecuado para usted hasta que al menos descubra cuán difícil o fácil es encontrar la programación, así como lo bueno que es. La única forma de saber realmente es intentar aprender al menos un lenguaje de programación y codificar lo antes posible.
fuente
Algunas cosas que te pueden interesar aprender antes de ir a la universidad (elige entre ellas):
No recomendaré enfocarse de manera limitada en C ++; otros idiomas, libros, habilidades te traerán mucho más. No gastes todos tus esfuerzos en C ++.
Disfruta tu aprendizaje.
fuente
Honestamente, si tienes tiempo, hazlo. Tendrá más sentido mientras el maestro está enseñando. Sacarás más provecho que los estudiantes que nunca han programado.
fuente
¡Seguro! Si no ha programado antes, aprender C ++ o C o Java o C # lo ayudará a comenzar bien. Todos esos idiomas están basados en Algol (aproximadamente): una vez que hayas aprendido uno de ellos, aprende Lisp o Haskell. El excelente cambio de paradigma entre las dos familias lo ayudará sin importar lo que impliquen sus cursos.
fuente
Personalmente lo recomendaría. Esto no se aplicará a todas las escuelas, pero fui a lo que se considera una muy buena escuela de ingeniería y las clases introductorias de programación fueron horribles. Conocer los conceptos básicos lo ayudará a evitar muchas de las malas prácticas / conocimiento incorrecto que le pueden enseñar. Y como se menciona en otra respuesta, pasarás por esas clases fáciles de introducción a la programación mientras otras luchan. Y si eres como yo, eso te da más oportunidades para ayudar a tus amigos que están luchando con eso.
fuente
Creo que deberías. Además de las razones dadas por otros aquí, agregaría que muchos profesores universitarios no son muy buenos para enseñar y, por lo tanto, no puede confiar en ellos para enseñar lo que está aprendiendo muy bien. Comprenderá mucho mejor lo que dicen si ya conoce los conceptos básicos.
Además, la relación entre el material del curso y el tiempo de clase a menudo es demasiado alta en las universidades, por lo que incluso cuando el profesor es un maestro decente, no puede enseñarlo de manera efectiva en el tiempo de clase disponible. Por lo tanto, cualquier conocimiento que obtenga de antemano lo ayudará a mantenerse al día con el ritmo acelerado del aula.
IMO C ++ es uno de los peores lenguajes para principiantes. Siga adelante y estudie C ++ si no lo encuentra demasiado difícil, pero otros lenguajes como C #, VB, Ruby o Python son bastante más fáciles.
fuente
Sería muy inteligente saber algo de idioma antes de ingresar a la universidad. La instrucción universitaria en Ciencias de la Computación es a menudo de una calidad pésima, dada por TA que no están capacitados o que no hablan inglés. Los cursos introductorios no son una prioridad y la mala instrucción es la regla. Las universidades ganan dinero con los gastos generales de la subvención; obtener subvenciones es la prioridad de la mayoría de los profesores universitarios, no la enseñanza de estudiantes universitarios. Esta es una regla triste con pocas excepciones.
Sin embargo, la calidad de los programas en las escuelas secundarias también puede ser pobre. Muchas administraciones escolares piensan que la capacitación en el uso de Micosoft Word es informática. ¡Ah, el sinsentido que emana de las escuelas de educación!
Desearía poder ser más optimista. Si tienes un buen programa de compsci en tu escuela secundaria, únete a él. Vaya más allá de los límites y sea agresivo con el aprendizaje. Si eres bastante emprendedor, no es difícil aprender Python y adquirir algo de habilidad. Una vez que lo aprende, aprender otros idiomas no es tan difícil. La gramática simple de Python hace que aprender sea relativamente fácil.
fuente
Si.
Cuál debe aprender depende de lo que significa "Ingeniería informática". Es un término bastante no estándar. Donde estudié, fue una combinación de electrónica e informática.
Si espera trabajar principalmente con hardware de computadora, le sugiero que aprenda C y Forth. Si va a hacer principalmente lo que yo consideraría "informática", sugeriría aprender algo como Python o Smalltalk para probar el "trabajo real" y un lenguaje de programación funcional de su elección (sugeriría alguna variante de lisp o esquema, pero elige lo que sea más fácil y genial).
fuente
Compartiré mi propia experiencia.
Empecé a programar hace unos 10-11 meses. Mi primera exposición real fue con PHP, pero luego, aprendí C # en un curso introductorio (CS 140) en mi colegio comunitario local. Después de aprender lo básico, prácticamente volé con él y no he parado desde entonces. Después de C #, decidí comenzar a aprender la mecánica de nivel inferior de cómo funcionaban las computadoras. Estoy trabajando en una aplicación que se supone que es multiplataforma, y se supone que ayuda a los motores de videojuegos a interactuar entre sí (similar a SDL, pero posiblemente a un nivel más bajo que eso, con un enfoque estricto en GUI, matemáticas , y otras funciones auxiliares).
Básicamente, si no fuera por esa clase, no habría encontrado lo que amaba hasta mucho, mucho más tarde. Realmente no sabes que disfrutas la programación hasta que realmente entiendes los conceptos detrás de ella. Si desea averiguarlo, le recomiendo que lea una introducción al libro de programación y comience con C / C ++, ya que necesita comprender lo que está haciendo, en lugar de usar un lenguaje que lo sujetará de la mano como Java o C # o solo un poco de lenguaje de secuencias de comandos: tenga en cuenta que estos tienen su lugar y son buenas herramientas para usar, pero también es muy importante que entienda los conceptos de nivel inferior al principio. Este fue un error que cometí al principio.
Después de eso, sigue programando si lo disfrutas. Si no, aprende algo más. Independientemente de lo que decida hacer, debe pasar todo el tiempo que pueda antes de asistir a una universidad de 2 a 4 años para aprenderlo, ya que REALMENTE lo mantendrá por delante del juego. También mostrará motivación a cualquier empleador que potencialmente pueda contratarlo.
Puedo decirle que las disciplinas de ciencias de la computación / ingeniería eléctrica son, con mucho, las más rápidas en términos de sus tasas de evolución (que siguen aumentando año tras año), y tendrá que seguir aprendiendo nuevas tecnologías para mantenerse al día con lo que lo último y lo mejor (que debería encontrar al menos algo interesante, aunque realmente depende del área de especialización en la que se esté especializando. Por ejemplo, odio la programación web y no estoy interesado en absoluto en las tecnologías que existen por ello, pero algunas personas realmente lo disfrutan y ESTÁN interesadas en ello). A pesar de esto, C / C ++ son excelentes lenguajes para aprender ya que, si bien muchos otros lenguajes (por ejemplo, C #, Java) tienen sus propias API preconstruidas para "hacer la vida más fácil", no aprenderá nada sobre lo que realmente está sucediendo. debajo del capó hasta que "
Básicamente, he estado programando durante 10-11 meses y no he asistido a ninguna universidad. Tomé una clase de C # en un colegio comunitario (mi primera clase de programación, que me enseñó los fundamentos), y al menos el 95% del resto lo aprendí por mi cuenta. Esto se debe a que, después de tomar esa clase, supe que quería ser programador. Lo sabrás una vez que lo entiendas. Sea cual sea el camino que elija, debe estudiarlo de forma independiente si realmente desea tener éxito en él, ya que aumenta su aptitud para la motivación y el compromiso. Un programador tieneestar motivado para tener éxito. Tratan mucho, más que simplemente "escribir código". Una aplicación constantemente tiene que ser probada, depurada y entendida desde cero. Por lo general, ya sea pequeño o grande, casi aprenderá algo nuevo para cada proyecto que emprenda. Esto es bueno, porque necesitas mantener ese cerebro activo.
fuente