Методичка для преподавателя информатики
12 класс, 2-я четверть (7-8 уроков)
Темы:
- Веб-разработка: разработка полноценных веб-приложений с использованием стеков технологий (например, MERN, LAMP), работа с серверной логикой, интеграция баз данных и API.
- Программирование: разработка мобильных приложений (например, с использованием Android SDK, Flutter), работа с платформенными специфическими библиотеками.
- Базы данных: работа с распределенными системами и базами данных (например, Cassandra, MongoDB), проектирование масштабируемых систем, работа с транзакциями и репликацией данных.
Урок 1: Основы разработки веб-приложений — Стек MERN (MongoDB, Express, React, Node.js)
Цель:
Познакомить учащихся с разработкой веб-приложений на основе стека MERN.
План урока:
- Введение в стек MERN (15 мин).
- Что такое стек технологий.
- Основные компоненты MERN: MongoDB, Express, React, Node.js.
- Пример веб-приложения на MERN.
- Обзор основных функций (20 мин).
- Взаимодействие между клиентом и сервером через API.
- Связь между React и Node.js.
- Практическая работа (20 мин).
- Создание простого веб-приложения на MERN: формирование базы данных, API, вывод данных на React.
Домашнее задание:
Завершить разработку веб-приложения, добавить функциональность для CRUD операций с базой данных.
Урок 2: Стек LAMP (Linux, Apache, MySQL, PHP) — Веб-приложение на основе серверной логики
Цель:
Изучить стек LAMP и построение серверной логики для веб-приложений.
План урока:
- Введение в LAMP (15 мин).
- Обзор стеков LAMP и его компонентов.
- Введение в серверную логику и базовые функции PHP.
- Интеграция серверной логики с базами данных (15 мин).
- Работа с MySQL для обработки запросов на сервере.
- Пример веб-приложения с динамической базой данных.
- Практическая работа (20 мин).
- Создание простого веб-приложения на PHP с подключением к MySQL.
Домашнее задание:
Разработать функционал регистрации и авторизации пользователей с использованием PHP и MySQL.
Урок 3: Веб-разработка — Интеграция API в веб-приложение
Цель:
Научить интегрировать сторонние API в веб-приложения для расширения их возможностей.
План урока:
- Что такое API (10 мин).
- Введение в концепцию API.
- Обзор популярных API (Google Maps, OpenWeather, Twitter).
- Интеграция API (15 мин).
- Примеры использования API на серверной стороне.
- Как работать с запросами API и обрабатывать полученные данные.
- Практическая работа (25 мин).
- Интеграция API (например, получение данных о погоде) в существующее веб-приложение.
Домашнее задание:
Добавить функциональность для работы с внешним API (например, получение данных с открытых API, таких как NASA или OpenWeather).
Урок 4: Разработка мобильных приложений на Android SDK
Цель:
Познакомить учащихся с разработкой мобильных приложений на базе Android SDK.
План урока:
- Введение в Android SDK (10 мин).
- Что такое Android SDK и его компоненты.
- Основы работы с Android Studio.
- Создание простого мобильного приложения (20 мин).
- Основные элементы интерфейса Android-приложений (Activity, Layout, View).
- Обработка пользовательских действий.
- Практическая работа (20 мин).
- Создание мобильного приложения с базовыми функциями (например, калькулятор или список задач).
Домашнее задание:
Доработать созданное приложение, добавить функциональность сохранения данных (например, использование SharedPreferences).
Урок 5: Разработка мобильных приложений с использованием Flutter
Цель:
Изучить основы разработки кросс-платформенных мобильных приложений с использованием Flutter.
План урока:
- Введение в Flutter (10 мин).
- Что такое Flutter и его особенности.
- Основные принципы кросс-платформенной разработки.
- Основы работы с Flutter (20 мин).
- Разработка интерфейса пользователя с использованием виджетов Flutter.
- Работа с навигацией между экранами.
- Практическая работа (20 мин).
- Создание простого приложения на Flutter с несколькими экранами.
Домашнее задание:
Продолжить работу над проектом, добавить обработку событий (например, ввод данных через форму).
Урок 6: Работа с распределенными базами данных (MongoDB, Cassandra)
Цель:
Изучить основы работы с распределенными базами данных на примере MongoDB и Cassandra.
План урока:
- Основы распределенных систем (10 мин).
- Преимущества и особенности работы с распределенными базами данных.
- Введение в MongoDB и Cassandra.
- Распределенные базы данных на практике (15 мин).
- Особенности работы с MongoDB (структура данных, документо-ориентированная модель).
- Основы работы с Cassandra (партиционирование данных, репликация).
- Практическая работа (20 мин).
- Создание и настройка базы данных MongoDB для веб-приложения.
- Примеры распределенной работы с Cassandra.
Домашнее задание:
Подготовить проект с использованием распределенной базы данных для хранения и обработки больших объемов данных.
Урок 7: Масштабируемость систем, транзакции и репликация данных
Цель:
Изучить проектирование масштабируемых систем, работу с транзакциями и репликацией данных.
План урока:
- Масштабируемость и отказоустойчивость (15 мин).
- Основы масштабирования систем (горизонтальное и вертикальное масштабирование).
- Принципы отказоустойчивости в распределенных системах.
- Транзакции и репликация данных (15 мин).
- ACID и BASE модели.
- Принципы репликации и согласованности данных.
- Практическая работа (20 мин).
- Реализация транзакций и репликации данных в базе данных MongoDB.
Домашнее задание:
Проектирование базы данных с учетом транзакций и репликации, проведение тестов отказоустойчивости.
Урок 8: Завершение проекта и защита работы
Цель:
Подвести итоги работы за четверть и провести защиту разработанных проектов.
План урока:
- Подготовка к защите проекта (10 мин).
- Финализация проектов (веб-приложение, мобильное приложение или база данных).
- Подготовка презентации проекта.
- Защита проектов (40 мин).
- Каждый ученик или группа защищает свой проект перед классом.
- Обсуждение, анализ и рекомендации по улучшению проектов.
Домашнее задание:
Подготовить отчет по проекту, включающий описание используемых технологий, функционала и выводы по работе.
Эта методичка ориентирована на развитие у учащихся навыков создания веб-приложений, мобильных приложений и работы с масштабируемыми базами данных, а также позволяет получить практический опыт в проектировании современных информационных систем.