Введение в разработку программных продуктов
Сегодня все хотят стать программистами, но практически никто не задумывается о логическом построении программного обеспечения (ПО). Все сразу хотят писать код, что с одной стороны, практично, но с другой — возникает пробел в основах, из-за чего большие задачи человек не до конца может понимать как решить. Поэтому ниже мы разберем пошаговые действия на примере разработки С++ программ.
Схема разработки ПО Вы можете наблюдать ниже:
Шаг №1: Определить задачу
Здесь нужно ответить на важный вопрос «Что Вы будете решать?». Что Ваша программа должна делать в конечном варианте. Этот шаг может быть как самым простым, так и самым сложным. Всё, что вам нужно — чётко сформулировать идею. Только после этого вы сможете приступать к следующему шагу.
Рассмотрим пару примеров:
- «Мне нужна программа, которая вычисляла бы квадратное уравнение с заданными параметрами».
- «Я хочу написать программу, в которой будет подсчет количества символов в принимаемом на вход текстовом файле».
Шаг №2: Определить инструмент решения
На данном этапе нужно ответить на вопрос «Как мы собираемся решить нашу задачу?». Способов решения задачи может быть много, только часть из них — хорошие решения, а часть — плохие. Конечно, все сразу хотят приступить к написанию программы, но этого не стоит делать, если проект намного больше, чем просто отсортировать однотипные данные из файла.
Ниже приведены характеристики хороших решений:
- простота;
- хорошая документация;
- модульный принцип;
- надёжность.
Если придерживаться данных характеристик, то при реализации проекта, можно не столкнуться с трудностями в изменении или модифицировании приложения. Иначе, при попытке улучшить программу могут возникнуть непредвиденные баги.
Довольно известный факт, что программист тратит примерно 20% своего времени на написание программы, а 80% на то, чтобы придумать решение (сюда же можно отнести — исправление ошибок или добавлению функционала).
Шаг №3: Написать программу
Для того, чтобы написать программу, необходимы две вещи:
- знание определенного языка программирования – этому мы можем научить в нашем онлайн центре BrainHouse;
- редактор кода.
Написать программу можно в любом текстовом редакторе. Так как любой код — это в первую очередь текст, и только потом — набор определенных команд предназначенных для выполнения тех или иных задач.
Для удобства программирования, обычно используют редакторы, которые включают в себя следующие функции:
- Нумерация строк. Каждый программист в первую очередь — человек, а людям свойственно ошибаться. В таких случаях, компиляторы нам подсказывают в каких строках кода у нас возникла ошибка.
- Подсветка синтаксиса. Каждый язык программирования имеет перечень зарезервированных слов и структур. При написании кода очень удобно, когда такие слова или структуры подсвечиваются. Это ускоряет написание и отладку кода в разы.
- Специальный шрифт. Мы знаем, что программирование это в первую очередь преобразование нулей и единиц. Но также эти цифры часто используются в коде. При разных шрифтах можно спутать эти цифры с определенными буквами, что приведет к ошибкам в нашей программе.
Есть несколько расширений, которые используются при разработке программ на языке С++, но в основном используют следующее: ????.???, где ???? заменяется именем нашей программы, а расширение .??? сообщает компилятору, что это исходный файл кода, который содержит инструкции на языке программирования ?++.
Шаг №4: Компиляция
Для того, чтобы запустить программу на языке С++ нам нужен компилятор, работа которого состоит из двух частей:
- Проверка синтаксиса и соответствие правилам языка ? + +
- Конвертация исходного файла с кодом в объектный файл на машинном языке.
Объектные файлы обозначают ????.? или ????.???, где name — имя вашего исходного файла .???. Если ваша программа состоит из 3-х файлов .???, то компилятор сгенерирует 3 объектных файла.
Шаг №5: Объединяем все файлы
Компоновщик (или линкер) — это программа, которая связывает все объектные файлы в единую программу, которую мы затем сможем запустить. Это по факту и есть наше приложение.
Линкер, помимо объектных файлов, подключает файлы библиотек, используемых в нашей программе. После всего этого, если не будет ошибок, мы получим исполняемый файл.
Шаг №6: Тестирование и отладка
Хоть этот шаг и стоит последним в списке, но на нем все не заканчивается обычно, так как веселье только начинается. Когда готов исполняемый файл, мы можем запустить приложение, и только после взаимодействия с ним будет понятно, правильно ли работает весь прописанный функционал. Если есть ошибки или неточности, то нам нужно возвращаться к шагу 3 до тех пор, пока все не будет работать правильно. Зачастую, в компаниях этим занимаются тестировщики, используя определенную методологию тестированию, но здесь — мы все в одном. Пункты 3-6, которые очень часто могут повторяться, удобно выполнять с необходимыми инструментами практически в автоматизированном процессе. Данная автоматизация намного облегчает процесс написания программ, и это доступно каждому, используя «IDE» — «Integrated Development Environment».
Надеемся Вам был полезен данный материал, и если хотите углубить Ваши знания или даже начать с нуля изучать программирование, ждем Вас на занятиях с репетиторами онлайн центра BrainHouse.
01 мая, 2020 в 1:00 пп
Как показывает практика отладка — один из самых ключевых этапов. Это на этом уровне ошибки, то все на смарку.
10 июня, 2020 в 6:56 пп
Все-таки плюсы не самый лучший выбор для начинающего программиста, наверное, лучше выбрать питон, например.
17 июля, 2020 в 7:01 пп
По такой подробной схеме мне легче понимать, чем просто перечитывать статью в интернете.