Educational guide
IDENTIFYING DATA 2024_25
Subject COMPUTER PROGRAMMING I Code 00709009
Study programme
0709 - GRADO EN INGENIERÍA INFORMÁTICA
Descriptors Credit. Type Year Period
6 Basic Training First First
Language
Castellano
Prerequisites
Department ING.MECANICA,INFORMAT.AEROESP.
Coordinador
FERNÁNDEZ LLAMAS , CAMINO
E-mail cferll@unileon.es
fjrodl@unileon.es
igonf@unileon.es
mgons@unileon.es
agutf@unileon.es
Lecturers
FERNÁNDEZ LLAMAS , CAMINO
RODRÍGUEZ LERA , FRANCISCO JAVIER
GONZALEZ FERNANDEZ , IRENE
GONZALEZ SANTAMARTA , MIGUEL ANGEL
GUTIERREZ FERNANDEZ , ALEXIS
Web http://agora.unileon.es
General description The course is focused on three basic phases of software development as design, implementation and testing. Students will be able to design from an abstract level using different algorithms and patterns. They will also learn how to build test cases.
Tribunales de Revisión
Tribunal titular
Cargo Departamento Profesor
Presidente CONDE GONZALEZ , MIGUEL ANGEL
Secretario ING.MECANICA,INFORMAT.AEROESP. CASTEJON LIMAS , MANUEL
Vocal ING.MECANICA,INFORMAT.AEROESP. SANCHEZ GONZALEZ , LIDIA
Tribunal suplente
Cargo Departamento Profesor
Presidente ING.MECANICA,INFORMAT.AEROESP. MATELLAN OLIVERA , VICENTE
Secretario FERNANDEZ ROBLES , LAURA
Vocal GUERRERO HIGUERAS , ANGEL MANUEL

Competencias
Code  
A18121
B5618
B5623
B5627
C2 CMECES2 That students know how to apply their knowledge to their work or vocation in a professional manner and possess the skills that are usually demonstrated through the development and defense of arguments and the resolution of problems within their area of study.

Learning aims
Competences
Knows the basic principles of the object-oriented programming paradigm. A18121
B5618
C2
Applies programming knowledge using java language. A18121
B5618
B5623
B5627
C2
Performs code error detection and correction. A18121
B5618
B5623
B5627
C2
Calculates the code quality through test coverage. A18121
B5618
B5623
B5627
C2

Contents
Topic Sub-topic
Block I: INTRODUCTION Unit 1: INTRODUCTION TO PROGRAMMING.
Introduction to computer programming and the object-oriented paradigm.

Unit 2: BACKGROUND.
Brief history of programming and programming languages.

Unit 3: ANALYSIS AND DESIGN.
Basic programming processes prior to implementation: Analysis and Design.

Unit 4: COMPILATION.
Basic compilation cycle.

Unit 5: DEVELOPMENT ENVIRONMENT.
Editor, compiler, debugger.
Block II: JAVA PROGRAMMING LANGUAGE - BASICS Unit 1: IDENTIFIERS AND VARIABLES.
Types of identifiers and variables, types of operators, arithmetic and logical expressions.

Unit 2: CONTROL SENTENCES.
Conditional statements and repetitive statements.

Unit 3: CLASSES AND OBJECTS.
Design of classes. Difference between class and object. Methods and attributes of classes. Visibility and packages.

Unit 4: ARRAYS AND STRINGS.
Static data structures. Treatment of static and dynamic character strings.
Block III: JAVA PROGRAMMING LANGUAGE - ADVANCED Unit 1: REPRESENTATION IN MEMORY.
Deepening in creation, modification and deletion of objects in memory.

Topic 2: PACKAGES.
Creation of packages and relationship with the file system.

Topic 3: EXCEPTIONS.
Basic error handling mechanism.

Topic 4: TESTING AND DEBUGGING.
Test generation and test coverage.

Topic 5: EXTERNAL LIBRARIES.
Use of libraries for the generation of log files.

Planning
Methodologies  ::  Tests
  Class hours Hours outside the classroom Total hours
Laboratory practicals 28 42 70
 
Assignments 0 30 30
 
Lecture 28 14 42
 
Mixed tests 4 4 8
 
(*)The information in the planning table is for guidance only and does not take into account the heterogeneity of the students.

Methodologies
Methodologies   ::  
  Description
Laboratory practicals Practical exercises on computer based on the knowledge imparted in the lectures, with the active participation of the student and with the assistance, guidance and supervision of the student's work by the teacher.
Assignments Individual and group completion and active participation in programming tasks under the supervision of the teacher.
Lecture Presentation and explanation of the theoretical and methodological foundations with the active participation of the students.

Personalized attention
 
Lecture
Laboratory practicals
Description
In the web page of the course (agora.unileon.es) will be indicated the hours of individualized tutoring of the professors during the course.

Assessment
  Description Qualification
Assignments Software program development and its subsequent defense in an individual and face-to-face basis. 40-50%
Calificación mínima para superar la asignatura: 5/10
Mixed tests Objective tests on the theoretical and practical contents of the course. 40-50%
Calificación mínima para superar la asignatura: 5/10
Others The teacher may assign up to 10% of the final grade based on the student's participation in the different activities of the course: attendance, participation and respectful behavior in the classroom, participation in the online tools, motivation for the course, and others.
 
Other comments and second call

Sources of information
Access to Recommended Bibliography in the Catalog ULE

Basic Steve McConnell, Code Complete, Microsoft, Second Edition
Brian W. Kernighan, Robert Pike, The Practice of Programming, Addison-Wesley, 1st Edition
Bruce Eckel, Thinking in java, Prentice Hall, 4th edition

Complementary


Recommendations