Terminé la clase 12 y tomaré CSE en BTech. ¿Cómo debo comenzar a prepararme? ¿Cuáles son los mejores libros de programación para principiantes?

Lo primero que me gustaría decirte es que “CSE” no pretende ser solo una rama de programación. La programación es solo una pequeña parte ( sí, una pequeña ) de la informática.

Ahora, la pregunta viene cómo comenzar? ..

En el primer año de ingeniería, debe tener en sus manos la “madre” de todos los lenguajes de programación: “El lenguaje de programación C”. Lea cualquiera de estos 2-3 libros que he mencionado a continuación:

  1. El lenguaje de programación C de Brian Kernighan y Dennis Ritchie.
  2. Let Us C por Yashwant Kanetkar
  3. Programación en ANSI C por Balagurusamy

Instale un compilador, ya sea el tradicional Turbo C o Cygwin gcc o uno con la elegante GUI, CodeBlocks. Resuelve tantos ejercicios como puedas, de esa manera puedes aprender lo que has leído de estos libros. Comprenda cómo funciona un programa, cómo fluye el control, el significado de la sintaxis, etc.

Luego, cuando haya terminado con ese movimiento a su sucesor C ++. Allí conocerá de qué se trata una programación orientada a objetos. Juega con el código que has preparado con la C, la misma regla se aplica también. Practica, practica y practica.

Ahora, cuando haya terminado con los conceptos básicos de estos dos hermosos idiomas, aprenda algunos lenguajes de secuencias de comandos web como HTML / CSS, Javascript.

A partir del segundo año en adelante,

Comience con algoritmos, aprenda algunos algoritmos básicos de búsqueda y clasificación, practíquelos. En este momento, si realmente le apasiona la programación, tenga en sus manos la “Programación competitiva” .

Cree una cuenta en Spoj & Hacker Earth e intente resolver algunos problemas de nivel de entrada (los fáciles) en ambas plataformas. Si los resuelve cómodamente, comience a participar en concursos de programación en línea realizados por Hacker Earth todos los meses.

Ahora, no quiero entrar en muchos detalles con respecto a la programación competitiva, ya que no es mi taza de té.

Solo en el segundo año, aprenda sobre los sistemas operativos de cualquier fuente que obtenga en línea o mediante libros e instale el sistema operativo Linux “Ubuntu”. Hay un muy buen libro llamado “Unix, conceptos y aplicaciones de Sumitabha Das”. Léalo y aplique lo que ha aprendido sobre diferentes comandos, scripts de shell y todo.

Cuando ingresó al tercer año, ya ha adquirido algunos conocimientos sobre:

  • Lenguajes de programación C y C ++.
  • Un poco de algoritmos.
  • Algunos gustos de programación competitiva.
  • Comandos de Unix y script de shell.
  • diseño web

De ahora en adelante, decida qué es lo que más le atrae, ya sea un lenguaje de programación a través del cual pueda continuar con la programación competitiva. Aprenda un lenguaje de programación orientado a objetos más Java o Python.

Si está más inclinado hacia el diseño web, primero aprenda Php. Hay un muy buen sitio web para eso: w3schools.com. Le da más detalles al respecto.

Si está interesado en la informática teórica (que es lo que hago), deje muy en claro lo básico sobre las materias básicas de informática. Busca un título superior si quieres estudiar académicos.

Decídalo temprano para que pueda prepararse para su futuro con mucha anticipación.

Todo lo mejor para tu futuro :).

Como eres principiante, diría que debes elegir un lenguaje de programación y enfocarte en aprenderlo. Debes elegir C o Java. Compre un buen libro y comience a buscar. Si elige Java, puede elegir Java: The Complete Reference (8ª edición o nueva). Es una publicación de McGraw Hill. Para C puede usar “C en profundidad” (3ª edición). Si lo desea, puede comprar la publicación de Oxford.

La informática no se trata solo de leer sobre idiomas. Debería comenzar a codificar lo antes posible. Puede ir a spoj, hackerearth, hackerrank o cualquier otro sitio web y comenzar a seguir su progreso. Esto te ayudará en el futuro.

Todo esto sería bueno para ti como principiante. Pero, una vez que tenga un control firme sobre un lenguaje de programación, debería considerar elegir un campo para usted. Este podría ser cualquiera del campo de la informática, como inteligencia artificial, seguridad del sistema, análisis de datos, desarrollador web, desarrollador de aplicaciones (Windows, móviles, etc.).

Solo trata de mantener tu mente abierta y sigue aprendiendo. Hay un largo camino por recorrer. Trate de descubrirse y encontrar cuál es su interés. Y luego seguir adelante.

La informática no solo está relacionada con la programación, es una combinación de 80% de matemáticas y 20% de programación . Pero sí, en primer lugar, le sugiero que comience con el aprendizaje de ” Diseño y análisis de algoritmos ” junto con que puede comenzar a aprender ” Programación en C ” y comenzar a implementar algunos algoritmos simples y pequeños. Más adelante, cuando haya terminado con C, puede pasar a otros ” Lenguajes de programación orientados a objetos ” como C ++, Java. Pero, de nuevo, el lenguaje de programación es solo una pequeña porción. Necesitas ser muy bueno en Algoritmos. Así que comienza con esto desde el primer día. Hay muchos recursos disponibles en línea para el aprendizaje gratuito. También puede tomar algunos cursos en línea en Coursera – Cursos en línea gratuitos de las mejores universidades | Coursera y también en Khan Academy. Eso te ayudaría en mayor medida. También estoy enumerando algunos de los buenos libros a continuación que lo ayudarán a aprender.

  1. Introducción a los algoritmos: por Charles E. Leiserson, Clifford Stein, Ronald Rivest y Thomas H. Cormen.
  2. Algorithms 4th Edition – Por Robert Sedgewick
  3. Vamos a C – Por Yashwant Kanetkar
  4. El lenguaje de programación C – Por Brian Kernighan y Dennis Ritchie. ( PD : No tomes este como tu primer libro para aprender programación C. Es bastante difícil de entender. Te sugiero que vengas con Déjanos C primero y luego tú puede cavar en este. )

Entonces esto es suficiente para que comiences. En el futuro, ¡podrás explorar algunas opciones más de aprendizaje! ¡¡Todo lo mejor!!

Suponga que quiere comenzar con C:

Para comenzar con otro idioma, en su mayor parte puede consultar la serie Head First:

Head First – Serie – O’Reilly Media

Aprenda a buscar en Google el nombre del libro junto con el otro nombre para un PDF. Solo si no encuentra ese libro en ninguna parte y se siente obligado a poseerlo, tiene que comprarlo. No estoy alentando la piratería ni nada. Si tiene mucho dinero o se siente más cómodo con las copias impresas, continúe y cómprelas.

Ahora, la distinción entre los idiomas y lo que necesita para aprender de ellos.

C, C ++, Java tiene mucho en común. Especialmente lo básico para la sintaxis de bucle, la forma en que necesita declarar variables es esencialmente la misma. En C tienes que declarar todo inicialmente, mientras que en C ++ y Java puedes declarar justo antes cuando quieras usarlo.

El tema importante en C, que se describe perfectamente en Yashwant Kanetkar’s Let us C es: El concepto de punteros. El concepto de punteros, referencia de memoria es muy esencial para su comprensión de la programación. Y también, cómo las matrices multidimensionales se almacenan realmente como matrices unidimensionales alargadas.

Puede omitir cómodamente C ++. El concepto también que se implementa ligeramente de una manera diferente de Java es el concepto de funciones virtuales y sobrecarga del operador.

Al llegar a Java, podría elegir comenzar desde Java, dando por sentado que pasaría por el concepto de puntero más adelante. No es obligatorio, pero es bueno e importante.

Si comienza con Java, podría omitir cómodamente la parte de los applets, porque están desactualizados. Solo léalos cuando su curso los requiera. En cambio, adelante con el desarrollo de Android. ¡Es increíble y divertido!

O

También podrías comenzar con Python. Python tiene marcos de biblioteca ricos, casi para hacer cualquier cosa. Django es un marco interesante, que promueve el desarrollo rápido y limpio de sitios web.

Python es un buen primer idioma. ¡Créame!

¡Para python o Java, necesita un buen control de los conceptos de OOP!

A medida que completa esta parte, puede continuar con el desarrollo web. En este punto, debe tener una buena comprensión de la programación. Para el desarrollo web necesita saber varias cosas para hacer cualquier cosa con éxito. HTML-CSS-Javascript-PHP (lado del servidor) -MYSQL (base de datos).

Suscríbase a estos canales:

slidenerd (Android)

thenewboston (Android, Django, otros)

sentdex (buen chico 1)

Chris Hawkes (buen chico 2)

Eli the Computer Guy (chico genial para redes)

Felicidades por formar parte de la comunidad de ingenieros de CSE. El principal problema que enfrentan los estudiantes de primer año en la rama de CSE es comprender el concepto de programación si no hay un reconocimiento previo de la programación de computadoras. Entonces, si no tienes experiencia previa en programación (o incluso si la tienes), te sugiero que lo hagas para lenguaje C. C es la lengua materna del ingeniero informático, y es beneficioso para comprender el concepto de programación. Es fácil comenzar, pero sí, al comenzar tendrás muchos problemas. Así que busque a alguien que conozca que tenga conocimientos previos de programación y aprenda de ellos, será una ventaja mientras aprende C.

Aparte de eso, estos son algunos libros que puede estudiar por su cuenta: (se proporcionan enlaces para la versión en pdf)

Let Us C de Yashavant Kanetkar: un muy buen libro para empezar. Fácil de usar y está escrito teniendo en cuenta a los principiantes.

Head First C por Dawn Griffiths: los libros de Head First siempre son impresionantes. Este es uno de ellos. Head First C utiliza un formato visualmente rico diseñado para la forma en que funciona su cerebro, no un enfoque de texto pesado que lo haga dormir (como se menciona en el libro 😀).

Sugeriría elegir un libro de estos dos y comenzar a explorar C. Una cosa para mencionar: No solo lea, comprenda al aplicarlo. Practica todos y cada uno de los problemas y lo dominarás de manera descuidada.

Lea este libro de Dennnis M. Ritchie

http://www.ime.usp.br/~pf/Kernig

Realice este curso de edx para ingresar al mundo de programmin. Personalmente comencé mi CSE BTech. viaje con esto y me puse muy cómodo con la programación en pocas semanas.

Introducción a la informática

Instructor del curso: David J. Malan

Luego, después de que te sientas cómodo con la programación, comienza a practicar el código en

Concurso de programación, concurso de programación, programación informática en línea

Si todo va bien, definitivamente tomará un buen paquete en una buena compañía.

La informática tiene mucho más que hacer además de los libros. Si realmente está interesado en la programación, intente comprender y escribir algoritmos. Cualquiera que sea el lenguaje que utilice, el flujo de la lógica sigue siendo el mismo, solo la sintaxis difiere. Si quieres aprender programación, aprende de la manera difícil para que puedas hacerlo o romperlo con facilidad. Intente aprender algunos conceptos básicos de cualquier lenguaje de su elección, deje que sea C, Python, java, php, cualquier cosa que elija. Intenta escribir tus propios programas. Intente eliminar puntos y comas o escriba una sintaxis incorrecta y vea los errores. Busca en Google esos errores y sabrás qué sucede exactamente cuando se comete un error. De esa manera, aprenderá mucho y hará un trabajo mejor e inteligente cuando realmente se encuentre en el mundo real. Intenta minimizar las líneas de código cada vez. Aprenda algunos lenguajes orientados a objetos, lenguajes de secuencias de comandos, lenguajes para acceder a dbs. Eso te ayudaría mucho en el futuro. Recuerde, todo está nuevamente construido sobre la lógica.

En otro caso, si desea obtener buenas calificaciones en acads, vaya a Let C, introducción a C, libros relacionados con Unix, etc.

Espero que ayude 🙂

Todo lo mejor 🙂

Gracias por A2A.

Le sugiero que comience C / C ++.

Aprender C ++ tiene su propia ventaja. Da una mejor comprensión de los conceptos básicos y aprenderá todos los conceptos fácilmente en el futuro.

Puede ser un poco difícil de entender, pero créeme, vale la pena. Nunca tendrá que volver a visitar sus conceptos básicos para ningún otro idioma en el futuro.

Hay muchos buenos libros sugeridos en otras respuestas para C ++. También hay algunos excelentes tutoriales en la web. Úselos también.

Uno de estos tutoriales es el siguiente:

Tutorialspoint .com

Asegúrese de usar también la documentación de C ++. Es genial y te da una mejor comprensión de todos los conceptos en muy buen análisis.

PD: estaré editando esta respuesta tan pronto como llegue a casa. Agregaré algunos detalles más cuando llegue allí.

Gracias por preguntar, pero no soy competente para responder esto, ya que dejé la programación hace 20 años.

Sin embargo, puedo aportar información breve en función de lo que obtengo de mis hijos (ciencias de la computación de tercer año y grado 12).

Para los no iniciados, C y Java pueden ser un lenguaje complicado. Empecé con Pascal. Mis hijos sugieren Python para comenzar y luego pasar a C y Java. Razón por la que dicen que la creación en Python es fácil y les gustaron los resultados como principiantes. Posteriormente pasar a Java o C.

El libro sugerido es la programación Headfirst. Todo lo mejor.

No necesita comprar muchos libros si quiere ser bueno en la programación. Todo está en google e internet. Independientemente del idioma que desee dominar, comience a aprender sobre eso en google. Personalmente prefiero c ++ porque es bueno para sistemas embebidos, robótica y visión por computadora, procesamiento de imágenes, IA. Entonces, quieres aprender a programar, solo googlealo y haz preguntas en foros relacionados, etc.

Ve por sumita Arora para c ++.
Y descargue algunos tutoriales y eso sería suficiente.
Y una vez que haya terminado con esto, puede optar por cualquier otro lenguaje como python, java, c, etc.

En el primer semestre debe estudiar el lenguaje C. No pierda su tiempo en la web. Revise cualquier buen libro de C como
1. Vamos a C de Ashok Kamthane o 2.Ansi C de E. Balagurswami.
Y tome la ayuda de los maestros y la web.
Primero aprenda C y luego vaya a Java y otros lenguajes.

More Interesting

¿Todavía se usa el Método de Desarrollo de Viena, o ha sido reemplazado por métodos más modernos?

¿Cuáles son algunos ejemplos de computación generalizada?

¿Los avances en el aprendizaje automático disminuirán la importancia de aprender idiomas extranjeros?

¿Cuáles son los requisitos previos necesarios para comprender a fondo el TAOCP de Donald Knuth desde la perspectiva de un estudiante que no es CS?

¿Sería posible hacer que la informática sea más rápida mediante la dilatación del tiempo?

¿Qué es la escritura por computadora?

¿Cuál es la mejor técnica para crear un chatbot que utiliza el aprendizaje automático?

¿Se puede reducir el problema de la clasificación al problema de unicidad del elemento?

¿Cuál es la mejor manera para que un programador autodidacta complete el conocimiento de que un título en informática podría haberle ganado?

¿Es cierto que las personas ricas pueden aprender a programar más rápido porque pueden permitirse un costoso bootcamp de codificación y tener muchos más recursos para acceder?

¿Cómo optimiza Nvidia juegos específicos a través de actualizaciones de controladores?

¿Cuáles son algunos de los asombrosos usos de los gráficos en CS / Modelado?

¿Es técnicamente posible que me siente en un sofá fijo (sofá) durante tres días y tenga unas buenas vacaciones viajando a Francia y solo pague $ 99.99?

¿Cómo difiere la teoría algorítmica de juegos de la teoría clásica de juegos?

¿Qué es la ley de Fitts?