Є величезна кількість підручників по програмування на СіПіПі ;), але використати їх як основу для вивчення основ програмування досить проблематично. Тому узагальнивши, маю намір розробити власний посібник С++.
Викладаю план :) Хто в темі, із задоволенням дослухаюся до Ваших пропозицій... отож, не соромтеся!
Типи даних C++
- структура програми;
- коментарі;
- змінні і типи даних;
- константи;
- перечислення;
- перетворення типів.
Вирази та оператори
- арифметичні операції, оператор присвоєння;
- інкремент та декремент;
- побітові логічні операції;
- оператори порівняння;
- пріоритет виконання операцій.
Умовні оператори
- оператор if;
- оператори if-else;
- умовний оператор ? :
- оператор switch.
Оператори циклу
- цикли for;
- цикли while;
- цикли do-while;
- оператори braek і continue;
- оператор goto і мітки.
Функції
параметри і аргументи функцій;
- області видимості, локальні і глобальні змінні;
- операція :: ;
- рекурсія;
- математичні функції.
Вказівники і посилання
- поняття вказівника;
- операція розіменування;
- арифметика вказівників;
- посилання.
Масиви
- поняття масиву;
- ініціалізація масивів;
- багатовимірні масиви;
- динамічні масиви.
Обробка даних масивів
- пошук в масиві;
- впорядкування масивів.
Робота з графікою (1)
- ініціалізація;
- графічний інструментарій.
Робота з графікою (2)
- графічний інструментарій.
Рядки символів і операції з ними (1)
- масиви символів в C++;
- визначення довжини рядків;
- копіюванні і конкатенація рядків;
- порівняння рядків;
- перетворення рядків.
Рядки символів і орерації з ними (2)
- пошук символів;
- пошук підрядків;
- функції перетворення типу.
Структури
- поняття структури;
- операції зі структурами;
- структури як аргументи функцій;
- масиви структур;
- вказівники на структури.
Об’єднання
- поняття об’єднання;
- операції з об’єднаннями;
- користувацькі типи даних.
- Директиви препроцесора
- директиви;
- основні принципи використання файлів-заголовків;
- макроси.
Функції вводу-виводу
- потоковий ввід-вивід, стандартні потоки;
- функції введення-виведення символів і рядків;
- функції файлового вводу-виводу.
Об’єктно-орієнтоване програмування
- принципи ООП;
- класи;
- конструктори і деструктори;
- конструктор по замовчуванню і конструктори копіювання.
ООП (2)
- статичні члени класу;
- константні об’єкти і константні функції-члени класу;
- вказівники на функції-члени класу;
- масиви об’єктів класу;
- дружні функції і друзі класу.
Наслідування
- просте наслідування;
- множинне наслідування;
- віртуальні базові класи.
Перезавантаження функцій і операторів
- поняття і призначення;
- перезавантаження конструкторів;
- створення і використання конструкторів копіювання;
- перезавантаження і неоднозначність;
- перезавантаження операторів.
Поліморфізм і віртуальні функції
раннє і пізнє зв’язування;
- віртуальні функції;
- застосування динамічного поліморфізму;
- віртуальні деструктори;
- абстрактні класи і чисто віртуальні функції.
Виключення і інформація про тип часу виконання
- опрацювання виключень;
- генерація виключень;
- перехват виключень;
- використання вкладених блоків try/catch;
- інформація про тип часу виконання.
Потоковий ввід-вивід
- визначені потоки;
- операції розміщенні і вилучення з потоку;
- форматування потоку;
- файловий ввід-вивід з використанням потоків;
- неформатований ввід-вивід.
Мої висновки: Ви вивчаєте мову С задля мови С. Але зазубривши слова та речення мови,не факт що учні почнуть розмовляти на ній. Хоча в інституті кібернетики, коли я була на практиці, нам викладач казав, що мову С жінки не опановують,я вам скажу по робочо-селянському. У нас на курсах, ми за основу взяли ту програму, за якою читають в МГУ. Будуємо алгоритм розв'язування задач до ПК Опрацьовуємо структуру мови програмування, як засіб розв'язку задач, обираємо будь-яке середовище програмування і реалізовуємо задачу на будь-якій мові.Починаємо зі складних структур і закінчуємо олімпіадними завданнями. Ось так у нас на курсах і так ми вчимо учнів в школі олімпійського резерву. А теорію можна знайти в Неті.Ок. Демкова Л.
ВідповістиВидалити