Programming Techniques, part 2

Major: Cybersecurity
Code of subject: 6.125.00.O.016
Credits: 7.00
Department: Information Security
Lecturer: Ph.D., Associate Professor Otenko Viktor Ivanovych
Semester: 2 семестр
Mode of study: денна
Learning outcomes: The study of the discipline involves the formation of competencies from education: general competences: GC 1. The ability to apply knowledge in practical situations; GC 2. Knowledge and understanding of the subject area and understanding of the profession; GC 4. Ability to identify, put and solve problems by professional direction; GC 5. Ability to search, process and analyze information. professional competences: PC 2. The ability to use information and communication technologies, modern methods and models of information security and/or cybersecurity; PC 3. The ability to use software and software complexes of information security tools in information and telecommunication (automated) systems. Learning results: KN 13. Knowledge of modern achievements of innovative technologies in the field of information technologies, cybersecurity and management; KN 14. Knowledge and understanding of scientific principles underlying cybersecurity and information technologies; KN 15. Possession of methods of general scientific analysis in the field of information technologies and information security; KN 18. Ability to demonstrate knowledge of the current state of affairs and the latest technologies in the field of information technologies and information security.
Required prior and related subjects: • Mathematics - under high school program. • Informatics - under high school program. • Programming technologies, part 1.
Summary of the subject: The history of the C#. Microsoft .NET Framework. Paradigm of object-oriented programming. Types and literals of C# language. Operators. Incapsulation, classes, object instances, аccess modifiers, constructors and destructors. Inheritance. Polymorphism. Type Casting. Properties. Arrays and indexers. Interfaces. Exceptions. Delegates and events. Files and streams.
Assessment methods and criteria: Evaluation methods. 1) Current control: • preliminary identification of students' knowledge before starting classes; • current verification in the process of assimilating each topic studied; • assessment of the student's activity in the process of lecture classes; • assessment of the student's activity in the process of practical classes; • verification of laboratory work; • verification of practical work; • an oral questioning of the assimilation of knowledge gained in the process of laboratory work. 2) The final (examination) control is carried out according to the results of test control and oral survey. Evaluation criteria: • Current control - 30%; • Examination control - 70% (written component - 60%, oral component - 10%).
Recommended books: 1. Шилдт Г. C# 4.0: полное руководство. / Пер. с англ. - М. : ООО "И.Д. Вильяме", 2011. 2. Троелсен, Эндрю. Язык программирования C# 5.0 и платформа .NET 4.5, 6-е изд. - Пер. с англ. - М. : ООО “И.Д. Вильямс”, 2013. 3. Албахари Д, Аблахари Б. С# 6.0. Справочник. Полное описание языка, 6-е изд. - Пер. с англ. - М. : ООО "И.Д. Вильяме", 2016. 11. 4. Хейлсберг А., Торгерсен М., Вилтамут С., Голд П. Язык программирования C#. Классика Computers Science. 4-е изд. - СПб.: Питер, 2012.

Programming Techniques, part 2

Major: Cybersecurity
Code of subject: 6.125.00.O.015
Credits: 7.00
Department: Information Technology Security
Lecturer: Professor Leonid Vasylyovych Moroz, Professor Lesya Zynoviyivna Mychuda
Semester: 2 семестр
Mode of study: денна
Learning outcomes: The aim of the course is to provide students with thorough theoretical knowledge and practical skills and skills of software development using structural and object-oriented programming technologies, students mastering algorithmic Python programming language and relevant toolkits as a basis for creating software in the field of information technologies. As a result of studying the discipline, the student must be able to demonstrate the following results: 1. Ability to demonstrate knowledge and understanding of the basic principles of developing algorithms for solving problems; 2. Apply knowledge and understanding to build algorithms for solving problems; 3. Ability to demonstrate knowledge and understanding of the paradigms of structural programming and algorithmic language Python; 4. Ability to demonstrate knowledge and understanding of object-oriented programming paradigms and Python algorithmic language; 5. Apply knowledge and understanding to develop and debug software implemented in the Python algorithmic language; 6. Apply knowledge and understanding to work with software development software packages in Python algorithmic languages. The study of the discipline involves the formation and development of students' competencies: LC 1. Ability to apply knowledge in practical situations. LC 2. Knowledge and understanding of the subject area and understanding of the profession. LC 4. Ability to identify, pose and solve problems in a professional direction. LC 5. Ability to search, process and analyze information. FC 2. Ability to use information and communication technologies, modern methods and models of information security and / or cybersecurity. FC 3. Ability to use software and software-hardware complexes of information protection in information and telecommunication (automated) systems. The learning outcomes of this discipline detail the following program learning outcomes: ZN 13. Knowledge of modern achievements of innovative technologies in the field of information technologies, cybersecurity and management. ZN 14. Knowledge and understanding of scientific principles underlying cybersecurity and information technology. ZN 15. Possession of methods of general scientific analysis in the field of information technology and information security. ZN 18. Ability to demonstrate knowledge of the current state of affairs and the latest technologies in the field of information technology and information security.
Required prior and related subjects: Mathematics - according to the high school program Informatics - according to the high school program
Summary of the subject: Introduction. History of creation. Using the Python language. Download, install and get started with Python. Object-oriented programming paradigms: encapsulation, polymorphism, inheritance. Simple data types. Objects and variables. Numbers. Rows. Enter data from the keyboard. Lists and tuples. Dictionaries and plurals. Compound data structures. Code structure. Condition check. Branching indication. Indication of repetition. Inclusion (syntax reduction) Generators. Functions. Error handling. Modules and packages. Namespace. Import modules. Standard library. Packages. Virtual environments. Files. Open a text file. Write data to text files. Read data from text files. Structured text files. Database files. System. Files and directories. Date and time. Locale module Objects. Classes. Creating classes. Create a class instance. Access to attributes. Work with classes and instances. Imitation. Redefining the method. Instances as attributes. Working with data. Text data. Regular expressions. Binary data. Shells are important for data processing and analysis. Python for the Internet. Creating a web client. Request query module and its methods. BeautySoup Library and Scraping. Parsing. Using the API. Web applications on the server side. Python graphics capabilities Tkinter library for Python3. Purposes, opportunities, examples of use. Creating a user interface. Creating animations.
Assessment methods and criteria: current control 30% = survey in practical classes - 5% and evaluation of reports on laboratory work - 25% final control 70% = exam = written component 60% and oral component 10%
Recommended books: Kostyuchenko AO Basics of Python programming: a tutorial. Ch .: FOP Balikina SM, 2020. 180 p. Basics of programming. Python. Part 1 [Electronic resource]: a textbook for students. specialty 122 "Computer Science", specialization "Information Technology in Biology and Medicine" / AV Yakovenko; KPI them. Igor Sikorsky. - Electronic text data (1 file: 1.59 MB). - Kyiv: KPI named after Igor Sikorsky, 2018. - 195 p. Lutz M. Learning Python, 4th Edition. - Per. with English - SPb .: Simvol-Plyus, 2011. - 1280 p., Ill. ISBN 978-5-93286-159-2 Prokhorenok, NA P84 Python 3. The most necessary / NA Prokhorenok, VA Dronov. - 2nd ed., Reworked. and ext. - СПб .: БХВ-Петербург, 2019. - 608 с .: ил. - (Essentials) ISBN 978-5-9775-3994-4 Nunez-Iglesias H., Walt van der Sh., Dashnow H. H87 Elegant SciPy / trans. with English AV Logunov. - M .: DMK Press, 2018. - 266 p .: ill. ISBN 978-5-97060-600-1 Electronic educational and methodical complex of the discipline https://vns.lpnu.ua/course/view.php?id=9032