Goal abandoned
The author does not write in the goal 4 years 11 months 20 days
Освоить программирование C++ на уровне Junior Developer
С восьми лет начал заниматься программированием. Первый (и единственный) язык, с которым познакомился и более-менее освоил был G-BASIC. Создавал на нем простые мультипликации и написал собственный синтезатор.
Спустя некоторое время, я оставил это занятие, увлекшись музыкой, однако я осознаю, что имею способности к написанию программ, рабочих программ. Поэтому решил развивать свои навыки программиста.
Друг посоветовал начать с C++, который, как я узнал, является весьма серьезным и подходящим, к тому же востребованным.
В идеале, хочу устроиться на работу, но прежде, конечно, нужно получить знания и опыт. Как-то так. :-)
На данный момент я имею начальные представления о типах переменных, присваивании им значений, простых функциях, директивах, заголовочных файлах, о массивах, структурах, объединениях, строках, циклах, указателях. Решил несколько простых задач, таких, как написать некоторые конверторы единиц.
Goal Accomplishment Criteria
Написать простую игру (приложение)
Personal resources
Время после работы (час-два, возможно больше), Интернет, море содержащейся информации, учебники (для начала Стивена Прата, некоторые начальные навыки программирования и построения алгоритмов.
Goal ecological compatibility
Мне необходимо освоить программирование, причем именно на C++ для того, чтобы устроиться на работу программистом, приносить пользу и получать удовольствие от работы.
-
Усвоить содержимое главы №4 "Составные типы" в учебнике С. Прата "Язык программирования C. Лекции и упражнения".
Неполный список того, что осталось усвоить в этой главе (включая решение упражнений)
• Создание и использование перечислений• Создание и использование указателей• Управление динамической памятью с помощью new и delete• Создание динамических массивов• Создание динамических структур• Автоматическое, статическоеи динамическое хранилище• Классы vector и array (введение) -
Усвоить содержимое главы №5 "Циклы и выражения отношений" в учебнике С. Прата "Язык программирования C. Лекции и упражнения&a
• Цикл for• Выражения и операторы• Операции инкремента и декремента: ++ и —• Комбинированные операции присваивания• Составные операторы (блоки)• Операция запятой• Операции сравнения: >,>=,==,<=,< и ! =• Цикл while• Средство typedef• Цикл do while
• Метод ввода символов get ()• Условие конца файла• Вложенные циклы и двумерные массивы• Вопросы и упражнения -
Глава №6 "Операторы ветвления и логические операции" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения.&
• Оператор if• Оператор if else• Логические операции: &&, | | и !• Библиотека символьных функций cctype• Условная операция ? :• Оператор switch• Операторы continue и break• Циклы чтения чисел• Базовый файловый ввод-выводВопросы и упражнения
-
Глава №7 "Функции как программные модули C++" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
Основы функций
• Прототипы функций
• Передача аргументов функциям по значению
• Проектирование функций для обработки массивов
• Использование параметров типа указателей const
• Проектирование функций для обработки текстовых строк
• Проектирование функций для обработки структур
• Проектирование функций для обработки объектов класса string
• Функции, вызывающие сами себя (рекурсия)• Указатели на функцииВопросы для самоконтроляУпражнения к главе 7 -
Глава №8 "Дополнительные сведения о функциях" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
Встроенные функции
• Ссылочные переменные
• Передача функции аргументов по ссылке
• Аргументы по умолчанию
• Перегрузка функций
• Шаблоны функций• Спецификации шаблонов функцийВопросы и задания
-
Глава №9 "Модели памяти и пространства имен" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
Раздельная компиляция программПродолжительность хранения, область видимости и компоновкаОперация new с размещениемПространства именВопросы и задания
-
Глава №10 "Объекты и классы" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
Процедурное и объектно-ориентированноепрограммирование
Концепция классов Определение и реализация класса Открытый и закрытый доступ к классу Данные-члены класса Методы класса (также называемыефункциями-членами класса)
Создание и использование объектов класса Конструкторы и деструкторы класса Функции-члены const Указатель this Создание массивов объектов Область видимости juiacca Абстрактные типы данных -
Глава №12 "Классы и динамическое выделение памяти" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
- Динамическое выделение памяти для членов класса
- Явные и неявные конструкторы копирования
- Явные и неявные перегруженные операции присваивания
- Что необходимо делать при использовании операции new в конструкторе
- Использование статических членов класса
- Создание объектов операцией new с размещением
- Использование указателей на объекты
- Реализация абстрактного типа данных очереди
-
Глава №11 "Работа с классами" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
Перегрузка операций Дружественные функции Перегрузка операции << для вывода Члены состояния Использование rand () для генерациислучайных чисел Автоматические преобразования и приведениятипов для классов Функции преобразования классов -
Глава №13 "Наследование классов" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
- Наследование как отношение является
- Открытое порождение одного класса от другого
- Защищенный доступ
- Списки инициализаторов членов в конструкторах
- Повышающее и понижающее приведение типа
- Виртуальные функции-члены
- Раннее (статическое) связывание и позднее
- (динамическое) связывание
- Абстрактные базовые классы
- Чистые виртуальные функции
- Когда и как использовать открытое наследование
-
Глава №14 "Повторное использование кода в C++" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
- Отношения содержит
- Классы с объектами-членами (включение)
- Класс шаблона v a la r r a y
- Закрытое и защищенное наследование
- Множественное наследование
- Виртуальные базовые классы
- Создание шаблонов классов
- Использование шаблонов классов
- Специализации шаблонов
-
Глава №15 "Друзья, исключения и многое другое" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
- • Дружественные классы
- • Дружественные методы классов
- • Вложенные классы
- • Генерация исключений и блоки t r y и catch
- • Классы исключений
- • Динамическая идентификация типов (RTTI)
- • Операции dynamic_cast и type id
- • Операции static_cast, const_cast и reinterpret_cast
-
Глава №16 "Класс string и стандартная библиотека шаблонов" в учебнике С. Прата "Язык программирования C++. Лекции и упражнени
- Стандартный класс string в C++
- Шаблоны auto_ptr, unique_ptr и shared_ptr
- Стандартная библиотека шаблонов (STL)
- Классы контейнеров
- Итераторы
- Объекты функций (функторы)
- Алгоритмы STL
- Шаблон initializerlist
-
Глава №17 "Ввод, вывод и файлы"в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
- Взгляд C++ на ввод и вывод
- Семейство классов iostream
- Перенаправление
- Методы класса ostream
- Форматирование вывода
- Методы класса istream
- Состояния потока
- Файловый ввод-вывод
- Использование класса ifstream для ввода из файлов
- Использование класса ofstream для вывода в файлы
- Использование класса fstream для файлового ввода и вывода
- Обработка командной строки
- Бинарные файлы
- Произвольный доступ к файлам
- Внутреннее форматирование
-
Глава №18 "Новый стандарт C++" в учебнике С. Прата "Язык программирования C++. Лекции и упражнения."
- Семантика переноса и ссылки rvalue
- Лямбда-выражения
- Шаблон оболочки function
- Шаблоны с переменным числом аргументов
- 5514
- 15 September 2015, 19:31
Don't miss new posts!
Subscribe for the Goal and follow through to its completion