No se olviden de dejar su comentario y compartir asi esta informacion llegas y ayuda a muchos.
Hola! Como estas? Yo la curse tres veces ya. La primera y la segunda pude hacer un mes nomas por cuestiones personales y laborales. La ultima, la curse en el segundo cuatri del 2022 y no aprobe aun.
De las primeras dos cursadas no te puedo contar mucho porque no vivi la materia por completo, de la ultima si.
De la ultima cursada, te puedo contar que curse con adri filgueiro y lucho los miercoles a la noche. Las clases las da lucho. Un pibe excelente como persona y como docente explica genial y te responde hasta la mas minima duda. Si cursas con ellos, por el tema de los parciales ni te preocupes porque las clases estan muy bien dadas y organizadas.
Vas a tener clases teoricas y practicas y vas a ir aprendiendo muy bien. Obviamente tenes que poner tu cuota de esfuerzo y ganas para entender y practicar los temas. Los ejercicios teoricos y practicos de parcial son del palo de lo que ves en clase. Asegurate de escuchar bien y entender bien los conceptos, y el parcial sale. Te toman ejercicios similares, a veces con alguna que otra vuelta de rosca para que los pienses, pero si aprendiste bien (que con ellos se aprende bien), llegas super preparado. Aca abajo te dejo un link con unos resumenes que podes descargar con todos los temas completos de la cursada.
Links resumenes:
Links resumenes
Link de post utnianos resumen:
Link de post utnianos
Con respecto al tp, mi humilde recomendacion es que consigas un buen grupo como ya te habran comentado y habras escuchado. Mas alla de la repeticion, esto es super importante porque es un tp largo y "complejo" en el sentido de que no vas a haber hecho nunca un tp de este estilo en la carrera hasta el momento. Con esfuerzo, ganas y pidiendo ayuda en los sabados de consulta, el tp sale. A mi me ocurrio que pude hacer y testear un 75% del tp, tenia 3 de los 4 modulos ya implementados y testeados, pero estuve solo porque de los 5 que eramos, yo era el unico que hice algo y por cuestiones laborales no pude llegar a terminar el tp. Recalco que es importante que busques un grupo en el que se ayuden y laburen todos equitativamente de esta manera, llegas tranquilo/a a las entregas).
Como comento un companero anteriormente, trata de hacer peer programming (programar con un companero) esto ayuda un monton. El que este mas canchero programando, implementa las cosas y el otro le hace apoyo en cuestiones teoricas, de consigna del tp, de busqueda en internet, etc.
Mi recomendacion, busca herramientas que te faciliten la vida a la hora de programar. Este ultimo ano, hubo un chico en la catedra que se llama agus ranieri. Es un genio, y organizo un monton todo el contenido necesario para aprobar el tp en los links de abajo. Ahi vas a tener un monton de contenido por si queres ir aprendiendo. Te recomiendo que hagas, en este tiempo que tengas, la mayoria si no todo lo que esta en estos links (te facilita la vida y te saca preocupacion por problemas innecesarios a la hora de desarrollar el tp) ya que te vas a poder enfocar al 100% en las cuestiones de implementacion y requerimientos del tp y no vas a perder tiempo con cuestiones tecnicas y de configuracion.
Links:
Temas para ver antes del tp:
UTN.SO Guides
Configuracion del IDE:
Guia SisOp templates para configurar el IDE
Otra recomendacion, programa en una virtual machine o una instalacion en tu disco (una particion con double boot o un disco externo) de ubuntu o lo que te sea mas comodo, que tengas configurado/a vos ya que no tenes que preocuparte por cuestiones de que se te crashee la maquina virtual de la catedra y ya tendrias todo tu entorno configurado como queres vos. Lo unico, testea las cosas en la VM que te proveen ellos (la server y la grafica) asi podes estar un poco mas seguro/a de que las cosa funcionan en los entornos donde vas a hacer la entrega. De todas formas, creo que actualizaron las VM's de la catedra, pero a mi no me parece comodo.
Con respecto al tp en si, trata de seguir las recomendaciones de los checkpoints del tp ubicadas abajo de todo en el tp. Si podes, estate un checkpoint adelantado/a al checkpoint que vas a entregar. Por ejemplo, si el dia 23/2 es el checkpoint 0 y el dia 23/3 es el checkpoint 1, trata de que para el primer checkpoint (el 0 en la fecha 23/2) tengas todo lo que te pide el checkpoint 0 y todo o un 75% de lo que pide el checkpoint 1. Esto te va a ayudar para que no llegues apurado/a a las entregas y tengas tiempo, ademas de para implementar (programar), de testear bastante antes de la entrega (importantisimo esto ya que testeando vas a encontrar cualquier falla, por mas minima que sea y vas a tener tiempo de corregirla para la entrega). Aca abajo te dejo el link para que veas el tp del segundo cuatri del 2022, abajo de todo vas a ver lo que te digo de los checkpoints.
Si podes, leete el tp, por mas que no entiendas nada para ver como es que te piden las cosas por lo menos.
Link tp 2c 2022:
Tp Geck 2c 2022
Podes hacer tests funcionales para funciones especificas (no es 100% necesario para este, pero ayuda por si haces cambio en alguna funcion core del sistema) pero los mas importantes para mi, son los tests de integracion de todos los modulos. Fijarte que la informacion de un modulo a otro se envia correctamente y que tus modulos trabajan correctamente entre si.
Cuando sea el momento de la entrega y te den tests del estilo que te voy a dejar abajo, trata de ir testeando unas semanas antes asi tenes tiempo de corregir cualquier inconveniente y no llegas a los tumbos a la entrega. Otra cosa, no te fies al 100% de los resultados de los tests que te dan ellos, todos somos humanos y nos podemos equivocar. Confia tambien en tu intuicion y tu conocimiento teorico y de la consigna cuando hagas el tp, porque puede ser que los resultados que te den ellos no sean correctos parcial o totalmente. No tengas miedo en comentarselo a los ayudantes (presencialmente o por el foro de consultas) ya que no se lo toman mal y asi lo pueden revisar, cambiar y de paso ayudas a muchos de tus companeros con tu misma duda. A mi me paso, por eso la recomendacion.
Ejemplo de tests tp:
Pruebas Tp 2c 2022
Repo github tests:
Repo con archivos de tests
Importantisimo con respecto a esto, que sigas la recomendacion de los logs del tp o pregunta que cosas loguear. Los logs son una forma de ver la trazabilidad (lo que esta ocurriendo) en los modulos de tu tp (como si estuvieses imprimiendo un resultado por pantalla pero con el agregado de que se te guarda en un archivo que podes ver despues de ejecutar el modulo ademas de poder imprimir por pantalla o consola, y con un mejor formato con tiempo, y varias cosas mas). Esto te va a dar una pauta para saber si tu tp esta funcionando de la manera que tiene que funcionar. Recomendacion, hace dos logs distintos o mas por modulo. Es decir, tene un log principal para mostrar la funcionalidad central o core y otros logs para debugging o cuestiones de funcionalidad no core (logs que no te pidan en el tp).
Otra cosa importante, aprende y entende bien como usar la biblioteca de la catedra (la commons library). Te va a proveer de un monton de funcionalidad y herramientas para programar muy utiles e indispensables para abstraer la logica de tu programa. Ya no vas a tener que preocuparte por como loguear, como leer de archivos de configuracion, como crear una lista, operar con strings, y un monton de funcionalidades mas. Recomendacion: pegate una pasada por el link que te voy a dejar abajo y entende como usar los modulos que te provee esta biblioteca. Te va a ahorrar un monton de tiempo y te va a ayudar a pensar un poco mas a alto nivel a la hora de implementar el tp.
Link biblioteca commons library:
Commons Library
Fijate en internet la implementacion de tps de cursadas anteriores. Si los buscas, los encontras por el nombre del tp en github o google. Siempre hay. De estos, fijate de entender bien comparando con su tp, como implementaron lo que te piden. Podes sacar muchas cosas tambien del tema de serializacion y sockets para no tener que implementarlo por tu cuenta cuando sabes que ya esta hecho y funciona.
Link implementacion tp 1er cuatri 2022:
Tp Github 1er Cuatri 2022
Link consigna:
Consigna Tp 1er Cuatri 2022
Tambien, anda a todos o el maximo que puedas de los sabados de consultas para sacarte todas las dudas que tengas. Trata de ir preguntando a distintos ayudantes para tener distintas perspectivas y sacate todas las dudas. No tengas miedo en preguntar hasta lo mas minimo y no te dejes intimidar por algunos ayudantes que no saben, no quieren o en ese momento no tienen la energia o las ganas de contestarte (en general no pasa, pero puede pasar, todos tenemos un mal dia), por eso insisto en que rotes de ayudante. Ninguna pregunta es boluda, olvidate de eso. Estas ahi para aprender, equivocarte, aprender, ...
Tambien postea todas tus dudas por el foro de consultas (te dejo el link abajo), ahi podes postear tus preguntas y vas a recibir respuestas bastante rapido (si no te las contestan, lo que es raro, avisa en los sabados de consulta y te la van a responder luego de eso) y de forma asincronica. Ahi vas a encontrar preguntas de otros companeros tambien que sirven un monton (mi recomendacion, leete todas o la mayoria de las peguntas del foro respecto del tp porque te van a ayudar a tener otra perspectiva que por ahi no habias tenido).
Link foro consultas:
Foro consultas del tp
Trabaja dia a dia. No dejes periodos largos sin hacer cosas porque te atrasas y perdes el hilo y el impulso que tenes. Con 2/3 hs por dia que le dediques, vas a llegar muy bien. Obviamente, si algun dia no podes, no pasa nada, pero trata de ser lo mas constante posible. Tambien descansa, porque sin dormir no llegas a ningun lado (para la entrega puede ser que duermas un poco menos
). Pedi a tus companeros el mismo compromiso que estas dispuesto a dar vos, asi estan todos en la misma pagina. Obviamente vas a tener roces como en cualquier grupo, pero solucionalo de la mejor manera que puedas, y segui.
Organizate bien con el tema de las branches de github, aprende bien eso asi podes implementar partecitas o features de tu tp de forma que no afecte lo que ya tenias implementado, testeado y funcionando. Tambien, si podes usa alguna aplicacion estilo Trello, donde puedas tener, por modulo, las cosas a implementar, las que estan en proceso, las hechas y las que necesitan revision o ser testeadas. Te despeja la cabeza ya que dejas todo escrito lo que hay que hacer.
Por ultimo, espero que esto te ayude (son cosas que me gustaria que me hayan dicho antes de empezar esta materia), no te desanimes y metele que se puede. Todo parece mas grande de lo que es cuando no se intenta. Si haces un poco cada dia, y dividis bien las responsabilidades y los problemas (del tp y con tus companeros), llegas tranquilo/a.
Te dejo mi correo por si queres hacerme alguna consulta o cursar operativos conmigo:
tangent-dyer.0t@icloud.com.
Cualquier duda, no tengas problema en consultarme por ese correo, por mensaje privado de aca o por este hilo cualquier consulta que tengas.
Dejo tambien para recursantes o personas comprometidas y con ganas, si quieren para que me manden para hacer el tp juntos.
Animos, y muchos exitos. No tengas miedo y dale para adelante que podes!