Titular Professors
Programming Methodology and Technology
Provide the student with a set of tools that allow them to develop software more quickly and efficiently.
Provide the student with tools and skills for teamwork.
1. Team-oriented project development tools
2. Software testing
3. Software debugging
The lectures of the Programming Projects I subject aim to introduce the student to the methodologies and tools required to successfully develop any programming project (as a team or individually). This subject initiates the student in the critical thinking needed to be able to plan, design, develop and validate programming projects. Additionally, the subject will introduce tools to support the proper development of such projects.
Its also a subject mainly based in projects, which are intertwined with master classes and complemented by exercises and workshops, where the concepts seen during the subjects chapters are applied.
This subjects final grade will be calculated as a weighted average of the three chapters forming its content (Development tools, Testing, Debugging)
𝑆𝑢𝑏𝑗𝑒𝑐𝑡 𝐺𝑟𝑎𝑑𝑒 = (C1 Grade + C2 Grade + C3 Grade) / 3
This average will only be applied if each chapter has been successfully completed (its grade must be greater than or equal to 5).
Each chapter will be evaluated separately depending on its set of exercises and projects. In order to take those grades into account, all exercises must be handed in.
The subject wont be evaluated with exams, which means there will be no midterm or final examinations. Thus, all activities done in class will be highly significative when it comes to the cheating regulation.
In the scenario of needing to resit this subject, there will be a resit exam during the designated period.
Class assistance and activity participation (in class or virtually) are fundamental elements in order to follow the subjects contents and achieve a good grade.
KLEMENS, BEN. (2014). 21st Century C. 2a edició. O'Reilly Media, 2014. ISBN 978-1-4919-0389-6.
SALVADOR, J. CANALETA, X. (2015) Programació en C per a sistemes UNIX, Publicacions La Salle, Setembre 2015.
VERNET, D. SALVADOR, J. (2011). Introducció al llenguatge de programació C, Publicacions La Salle, Juliol 2011.
AGANS D.J.(2002) Debugging. The 9 indispensable rules for finding even the most elusive software and hardware problems, Amacom, 2002, ISBN 0-8144-7457-8.
STALLMAN, RICHARD M. SUPPORT, CYGNUS. (1996). Debugging with GDB: The GNU source-level debugger. [Online]
Boston, MA : Free software foundation, 1996. ISBN 1-88211-409-4. Disponible a: https://sourceware.org/gdb/current/onlinedocs/gdb/
MORGADO, ALEKSANDER. (2010). Understanding Valgrind memory leak reports. [Online] 4 Febrer 2010. http://es.gnu.org/~aleksander/valgrind/valgrind-memcheck.pdf
Proyectos de Programación I Curs 2020-2021
VALGRIND DEVELOPERS. (2015). Valgrind User Manual. [Online] 22 de http://valgrind.org/docs/manual/manual.html.
ATLASSIAN. Git Tutorials and Training. [Online] https://www.atlassian.com/git/tutorials/ GIT. Git Documentation. [Online] https://git-scm.com/doc