Object-Oriented Programming

Major: Electrical Energetics, Electrical Engineering and Electromechanics
Code of subject: 7.141.11.E.023
Credits: 4.00
Department: Electric Power Engineering and Control Systems
Lecturer: Associate Professor, Candidate of Technical Sciences Taras Hrechyn
Semester: 2 семестр
Mode of study: денна
Learning outcomes: 1. Knowledge of object-oriented software development, process of software development (OOP) 2. Ability to describe object model of applications for power distribution systems, ability to develop software using these models 3. Ability to describe data models and create relational database for information needs of SCADA systems. 4. Ability to create information portals (WEB Servers) and multitier application solutions with specifics of power distribution systems
Required prior and related subjects: - Information technologies in power distribution systems - Power grids optimization theory - Power distribution systems design
Summary of the subject: Procedural and object-oriented programming using C#/.Net. Understanding classes, inheritance, encapsulation and polymorphism. Objects creating and lifetime in modern OOP systems. Virtual methods. Object protections. Object Lists. Objects querying (LINQ). Objects storage and serialization. Multi-threaded applications and synchronization. Database access technologies, entity framework. Organizing WEB portal and creating server side applications. REST API Implementation. Using ADO.NET for creating multi-tier applications for needs of power distribution systems.
Assessment methods and criteria: - written reports on laboratory works, oral questioning (30%) - final control (control measure - exam): written and oral form (70%)
Порядок та критерії виставляння балів та оцінок: 100-88 points - certified with an “excellent” grade - High level: the student demonstrates an in-depth mastery of the conceptual and categorical apparatus of the discipline, systematic knowledge, skills and abilities of their practical application. The mastered knowledge, skills and abilities provide the ability to independently formulate goals and organize learning activities, search and find solutions in non-standard, atypical educational and professional situations. The applicant demonstrates the ability to make generalizations based on critical analysis of factual material, ideas, theories and concepts, to formulate conclusions based on them. His/her activity is based on interest and motivation for self-development, continuous professional development, independent research activities, implemented with the support and guidance of the teacher. 87-71 points - certified with a grade of “good” - Sufficient level: involves mastery of the conceptual and categorical apparatus of the discipline at an advanced level, conscious use of knowledge, skills and abilities to reveal the essence of the issue. Possession of a partially structured set of knowledge provides the ability to apply it in familiar educational and professional situations. Aware of the specifics of tasks and learning situations, the student demonstrates the ability to search for and choose their solution according to the given sample, to argue for the use of a particular method of solving the problem. Their activities are based on interest and motivation for self-development and continuous professional development. 70-50 points - certified with a grade of “satisfactory” - Satisfactory level: outlines the mastery of the conceptual and categorical apparatus of the discipline at the average level, partial awareness of educational and professional tasks, problems and situations, knowledge of ways to solve typical problems and tasks. The applicant demonstrates an average level of skills and abilities to apply knowledge in practice, and solving problems requires assistance, support from a model. The basis of learning activities is situational and heuristic, dominated by motives of duty, unconscious use of opportunities for self-development. 49-00 points - certified with a grade of “unsatisfactory” - Unsatisfactory level: indicates an elementary mastery of the conceptual and categorical apparatus of the discipline, a general understanding of the content of the educational material, partial use of knowledge, skills and abilities. The basis of learning activities is situational and pragmatic interest.
Recommended books: 1. Gradi B., Robert A., Michael U. Engl, D. Konalend. Object oriented analysis and design with application examples. M.: "Williams", 2008.– 720pp. 2. Straustup Byarne, Software engineering: concept and examples using С++ . M.: "Williams", 2016.–1328 pp. 3. Troelsen Andry. Programming language С#2010 and .NET 4.0 framework. М.: "Williams", 2016.–1328 pp.