- •Вопросы к экзамену по пм02
- •Что такое технология разработки программного обеспечения? На чем базируется и какая цель?
- •Перечислите этапы и элементы процесса разработки.
- •Инструментарий технологии программирования. Группы программных продуктов.
- •Средства для создания приложений. Классификация языков программирования.
- •Жизненный цикл по. Процесс реализации программных средств.
- •Жизненный цикл по. Процесс проектирования архитектуры программных средств.
- •Жизненный цикл по. Процесс конструирования программных средств.
- •Жизненный цикл проекта методологии rup. Процессные области (9 областей).
- •Типы требований к по. Функциональные и нефункциональные требования.
- •Роль тестирования и типы тестов, применяемых для проверки качества программного продукта.
- •Определение объектно-ориентированного программирования. Классы, интерфейсы, наследование, объекты.
- •Перечислите известные Вам среды разработки, их компоненты и поддерживаемые языки.
- •Описание данных. Типы данных и переменные.
- •Обработка данных. Операции и выражения.
- •Регулярные выражения. Метасимволы регулярных выражений.
- •Символы, строки, текст. Средства представления и обработки.
- •Роль указателей и ссылок в языках программирования и в информационных технологиях. Варианты доступа к информационным ресурсам.
- •Чем отличаются статические и динамические переменные. Понятие массива.
- •Применение алгоритмов. Цикл, итерация, рекурсия.
- •Программирование методов и принципы модульности.
- •Иерархия объектов и понятие наследования. Иерархия объектов
- •Полиморфизм и виртуальные функции.
- •Язык uml и его назначение.
- •Разновидности спецификаций язык uml. (ответ не точный)
- •Виды диаграмм uml.
Определение объектно-ориентированного программирования. Классы, интерфейсы, наследование, объекты.
Объектно-ориентированное программирование (ООП) — это подход, при котором программа рассматривается как набор объектов, взаимодействующих друг с другом. У каждого есть свойства и поведение. ООП ускоряет написание кода и делает его более читаемым.
Класс — это «шаблон» для объекта, который описывает его свойства. Несколько похожих между собой объектов, например профили разных пользователей, будут иметь одинаковую структуру, а значит, принадлежать к одному классу. Каждый объект — это экземпляр какого-нибудь класса.
Объект — это набор переменных и функций, как в традиционном функциональном программировании. Переменные и функции и есть его свойства.
Атрибуты — это переменные, конкретные характеристики объекта, такие как цвет поля или имя пользователя.
Методы — это функции, которые описаны внутри объекта или класса. Они относятся к определенному объекту и позволяют взаимодействовать с ними или другими частями кода.
Перечислите известные Вам среды разработки, их компоненты и поддерживаемые языки.
PhpStorm
Поддерживаемые языки: PHP, JavaScript, HTML, CSS, SASS, LESS и т.д.
Преимущества
Автодополнение кода и качественная отладка.
Удобная навигация.
Безопасный рефакторинг – применить изменения во всем проекте можно за пару кликов.
Функция Live Edit позволяет мгновенно посмотреть все изменения в браузере.
Интерфейс будет понятен даже новичкам.
Недостатки
Нет бесплатной версии. Но можно скачать триал.
Microsoft Visual Studio
Поддерживаемые языки: Ajax, ASP.NET, DHTML, ASP.NET, JavaScript, Visual Basic, Visual C#, Visual C++, Visual F#, XAML и другие.
Стоимость: от 45$ в месяц.Есть бесплатная версия (Community) для частного использования, студентов и создателей опенсорсовых проектов.
Особенности:
Огромная коллекция всевозможных расширений, которая постоянно пополняется.
Технология автодополнения IntelliSense.
Возможность кастомизировать рабочую панель.
Поддержка разделенного экрана (split screen).
Из недостатков можно выделить тяжеловесность этой IDE.
IntelliJ IDEA
Поддерживаемые языки: Java, AngularJS, Scala, Groovy, AspectJ, CoffeeScript, HTML, Kotlin, JavaScript, LESS, Node JS, PHP, Python, Ruby, Sass,TypeScript, SQL и другие.
Стоимость: от 499$ в год. Бесплатная версия работает только с Java и Android.
Преимущества
Инструменты для анализа качества кода, удобная навигация, расширенные рефакторинги и форматирование для Java, Groovy, Scala, HTML, CSS, JavaScript, CoffeeScript, ActionScript, LESS, XML и многих других языков.
Интеграция с серверами приложений, включая Tomcat, TomEE, GlassFish, JBoss, WebLogic, WebSphere, Geronimo, Resin, Jetty и Virgo.
Инструменты для работы с базами данных и SQL файлами.
Интеграция с коммерческими системами управления версиями Perforce, Team Foundation Server, ClearCase, Visual SourceSafe.
Инструменты для запуска тестов и анализа покрытия кода, включая поддержку всех популярных фреймворков для тестирования.
Недостатки
Придется потратить время для того, чтобы разобраться в этой IDE, поэтому начинающим программистам она может показаться сложноватой.