What are you looking for?
Some materials will be provided in English.
E6. Develop video games in high-level programming languages in graphics engines based on specifications.
G3. Gather and interpret relevant data (usually within their area of study) to make judgments that include reflection on relevant social, scientific, or ethical issues.
G5. Develop the learning skills needed to undertake further studies with a high degree of autonomy.
T1. Communicate in a third language, preferably English, with an appropriate level of oral and written communication and in accordance with the needs of graduates.
The subject Programming I supposes the first approach to the design of algorithms using the bases of the programming oriented to objects in the frame of the matter of Development. Problems of a certain complexity are worked on, both to design new algorithms and to properly test and debug implemented algorithms. The subject consists of theoretical sessions and practice sessions. In order to achieve the knowledge of the subject, three practices are evaluated on the one hand and the theoretical knowledge individually on the other.
Topic 1: Functional decomposition and top-down design
1.1. Decomposition of problems into subproblems
1.2. Flowcharts
1.3. Route vs search
1.4. Passing parameters: input, output, reference and value
Topic 2: Introduction and general concepts of object-oriented programming (OOP)
2.1. What is OOP?
2.2. Structured programming vs. OOP
2.3. Why use OOP and its benefits
2.4. Characteristics of the OOP
2.5. Definition of object and class
2.6. Elements of a class
Topic 3: Basic concepts of object-oriented programming
3.1. Object attributes, class attributes, and constants
3.2. Builders and instantiate objects
3.3. Class one methods and overload
3.4. Unified Modeling Language (UML) diagrams
3.5. Keyword "this"
3.6. Classes vs static classes
3.7. Exception handling and debugging within a class
3.8. Operators
Topic 4: Inheritance, interfaces and polymorphism (class hierarchy)
4.1. Introduction, definition of inheritance and examples
4.2. Creation of base and derivative classes
4.3. "Sealed" and "abstract" classes
4.4. Interfaces
4.5. Polymorphism
Topic 5: Data structures
5.1. Two-dimensional and multidimensional arrays
5.2. Dictionaries
The grade of each student will be calculated following the following percentages:
A1. Laboratory practices 1: Work with matrices and top-down analysis 12%
A2. Laboratory practice 2: Implement classes and work with objects 12%
A3. Laboratory practices 3: Concepts of inheritance 12%
A4. Exercises in class: Theoretical questionnaires 5%
A5. Exercises at home: Short practical exercises 9%
A6. Final practical exam 50%
Final grade = A1 0,12 + A2 0,12 + A3 0,12 + A4 0,05 + A5 0,09 + A6 0.50
Considerations:
Recovery:
Clark Dan (2011) Beginning C# Object-Oriented Programming. hurry up
Fagerberg Jonas (2015) C# for Beginners: The Tactical Guidebook: Learn Csharp by Coding. CreateSpace Independent Publishing Platform.
Chaudhary Harry (2014). C# Programming: Step By Step Beginner's To Experts Edition. Createspace LLC USA.
Meyer Bertrand (1997) Object-Oriented Software Construction. Prentice Hall.