General information
- Subject code
- İFS-2222yn-RU
- Credits
- 6
- Student workload
- 2
- Semester
- Autumn semester
- Academic year
- 3
- Subject type
- Elective
- Form of education
- Full-time
- Language of instruction
- Russian
- In-class hours
- a) 30 часов — лекция b) – c) 30 часов —лаборатор. занятия
- Out-of-class hours
- a) 1 час – самостоятельная работа b) 1 час – консультационный час
About the subject
Дисциплина «язык программирования java» изучает основные принципы объектно-ориентированного программирования и разработки программных приложений на языке java. в рамках курса рассматриваются синтаксис и основные конструкции языка, типы данных, переменные, операторы, условные конструкции, циклы, массивы, методы, классы и объекты, наследование, полиморфизм, инкапсуляция и абстракция. также изучаются обработка исключений, коллекции, обобщения, работа с файлами, многопоточность и основные возможности стандартной библиотеки java. особое внимание уделяется разработке структурированного, надёжного и безопасного программного кода, а также практическому применению java для создания современных программных приложений.
Teaching methods
- seminar
- lecture
- laboratory work
Course learning outcomes (CLO)
CLO 1: Объясняет и применяет основные понятия, синтаксис, типы данных и структуру программы языка программирования java.
CLO 2: Разрабатывает программы для решения поставленных задач с использованием переменных, операторов, условных конструкций и циклов в языке java.
CLO 3: Разрабатывает и анализирует программный код с использованием массивов, строк, методов и других основных структур данных java.
CLO 4: Применяет в программах на java основные принципы объектно-ориентированного программирования — классы, объекты, наследование, полиморфизм и абстракцию.
CLO 5: Выявляет, анализирует и устраняет ошибки и исключения, возникающие в программах на java.
CLO 6: Проектирует, реализует и оценивает результат java-программы в соответствии с требованиями поставленной задачи.
Topic plan
- 1.Введение в язык программирования java.Lecture
В рамках данной темы изучаются история создания, назначение и основные особенности языка программирования java. рассматриваются понятия java platform, jdk, JRE и jvm, принцип «write once, run anywhere», структура java-программы и основные этапы её компиляции и выполнения. также рассматриваются базовый синтаксис языка и структура исходного кода java-приложений.
- 2.Типы данных, переменные, константы и операторы в языке java.Lecture
В рамках данной темы изучаются примитивные и ссылочные типы данных в java, переменные и константы, правила их объявления и инициализации. рассматриваются арифметические, логические, сравнительные и другие операторы языка. также изучаются преобразование типов данных и особенности их использования при разработке java-приложений.
- 3.Операции ввода и вывода.Lecture
В рамках данной темы изучаются основные средства организации ввода и вывода данных в java. рассматривается использование класса scanner для получения данных от пользователя, а также стандартных потоков system.in, system.out и system.err. изучаются методы форматированного вывода и обработка пользовательского ввода в консольных приложениях.
- 4.Условные конструкции: if, else, switch.Lecture
В рамках данной темы изучаются условные конструкции языка java и их применение для реализации логики принятия решений в программах. рассматриваются операторы if, if-else, else-if и switch, а также вложенные условные конструкции. изучается применение логических и сравнительных операторов при формировании условий выполнения программного кода.
- 5.Циклические конструкции: for, while, do-while. управление циклами.Lecture
В рамках данной темы изучаются основные циклические конструкции java: for, while и do-while. рассматриваются особенности их применения для многократного выполнения программного кода. изучаются операторы break и continue, вложенные циклы и методы управления выполнением циклических конструкций.
- 6.Массивы и многомерные массивы.Lecture
В рамках данной темы изучаются массивы как структуры данных для хранения набора элементов одного типа. рассматриваются способы объявления, создания и инициализации одномерных и многомерных массивов. изучаются операции обращения к элементам массива, их обработки и перебора с использованием циклических конструкций.
- 7.Методы. параметры, возвращаемые значения и перегрузка методов.Lecture
В рамках данной темы изучается понятие методов и их роль в структурировании программного кода. рассматриваются объявление и вызов методов, передача параметров, возвращаемые значения и область видимости переменных. также изучается механизм перегрузки методов и его применение для создания гибкого и повторно используемого программного кода.
- 8.Промежуточное оценивание / практическое задание. обобщение пройденных тем.Lecture
В рамках данной темы проводится обобщение и систематизация изученного материала. рассматриваются основные понятия и конструкции языка java, изученные в предыдущих темах, и проверяется их практическое применение. выполняются практические задания, направленные на оценку навыков написания, анализа и отладки программного кода.
- 9.Введение в объектно-ориентированное программирование. классы и объекты.Lecture
В рамках данной темы изучаются основные принципы объектно-ориентированного программирования (ооп) и их реализация в языке java. рассматриваются понятия класса, объекта, атрибутов и методов. изучаются создание классов и объектов, доступ к их членам и применение объектно-ориентированного подхода при разработке программ.
- 10.Конструкторы, модификаторы доступа и инкапсуляция.Lecture
В рамках данной темы изучаются конструкторы и их роль в создании и инициализации объектов java. рассматриваются модификаторы доступа public, private, protected и их применение для управления доступом к членам класса. также изучается принцип инкапсуляции и использование методов доступа для защиты и контролируемого взаимодействия с данными объекта.
- 11.Наследование и полиморфизм.Lecture
В рамках данной темы изучаются механизмы наследования и полиморфизма в объектно-ориентированном программировании. рассматривается создание производных классов на основе существующих классов, использование ключевого слова extends и переопределение методов. также изучаются принципы полиморфизма и их применение для повышения гибкости и повторного использования программного кода.
- 12.Абстрактные классы и интерфейсы.Lecture
В рамках данной темы изучаются абстрактные классы и интерфейсы языка java как средства проектирования гибкой архитектуры программ. рассматриваются абстрактные методы, реализация интерфейсов и особенности наследования. изучается применение абстракции для определения общих характеристик и поведения объектов без привязки к конкретной реализации.
- 13.Строки и основные библиотеки java. string, stringbuilder.Lecture
В рамках данной темы изучаются способы работы со строковыми данными в java. рассматриваются классы string и stringbuilder, основные методы обработки строк, операции объединения, поиска, сравнения и изменения строковых значений. также изучаются основные стандартные библиотеки java и их применение при решении типовых задач программирования.
- 14.Обработка исключений (exception handling). выявление и обработка ошибок.Lecture
В рамках данной темы изучаются механизмы обработки исключений в языке java и их роль в обеспечении надёжности программ. рассматриваются конструкции try, catch, finally, а также операторы throw и throws. изучаются основные типы исключений, методы выявления и обработки ошибок, а также принципы построения устойчивого к ошибкам программного кода.
- 15.Работа с файлами. подготовка и презентация итогового практического проекта.Lecture
В рамках данной темы изучаются основные методы работы с файлами и файловой системой в java. рассматриваются чтение, запись и обработка данных в текстовых и других типах файлов с использованием стандартных средств java. на практическом этапе выполняется подготовка итогового проекта, объединяющего изученные программные конструкции и принципы объектно-ориентированного программирования, после чего проводится его презентация и обсуждение результатов.
Reading list
- Horstmann, c. s. (2022). core java, volume i: fundamentals (12th ed.). addison-wesley professional.
- Schildt, h. (2022). java: a beginner's guide (9th ed.). mcgraw hill.
- Dev.java. (n.d.). learn java. oracle. https://dev.java/learn/
- Exercism. (n.d.). java on exercism(opens in a new tab)
Assessment
| Form | Description | Score | Related CLO |
|---|---|---|---|
| Cari qiymətləndirmə | Cari qiymətləndirmə - fənn üzrə tələbənin semestr müddətində fəaliyyətinin qiymətləndirilməsi olmaqla, mühazirə və məşğələ (laboratoriya) dərs materiallarının mənimsənilmə səviyyəsini qiymətləndirilir. | 30 bal | FTN 1-6 |
| Davamiyyət | Tələbə fənn üzrə dərslərin 25%-dən çoxunda iştirak etmədiyi halda imtahana buraxılmır. | 10 bal | - |
| Tələbənin sərbəst işi | Tələbəyə fənn üzrə semestr ərzində 1 sərbəst işin (zəruri hallarda sərbəst işlərin sayı artırıla bilər) yerinə yetirilməsi tapşırığı verilir. | 10 bal | FTN-- |
| İmtahan | İmtahan şifahi, yazılı, yazılı-elektron, test üsulu ilə keçirilir | 50 bal | FTN 1-6 |