
Баранов Константин
Junior C++ разработчик
Привет! Я Junior разработчик из г. Санкт-Петербург, Россия. В данный момент активно изучаю язык программирования C++.
Предлагаю вам узнать обо мне побольше и ознакомиться с моими проектами 😁.
Привет! Я Junior разработчик из г. Санкт-Петербург, Россия. В данный момент активно изучаю язык программирования C++.
Предлагаю вам узнать обо мне побольше и ознакомиться с моими проектами 😁.
Как уже было сказано, меня зовут Константин, мне 21 год и я начинающий разработчик.
На данный момент активно изучаю язык программирования C++.
Хорошо понимаю принципы ООП, базисы разработки приложений, библиотек. Владею, применяю и продолжаю изучать: git, conan, gtest, Google Benchmark, CMake, STL, UML, SQL, gcovr, semver. Всегда пишу документацию (а в идеале - самодокументируемый код), юнит-тесты.
Имею красные дипломы по квалификациям "программист-техник" и "оператор ЭВМ", полученные в СПб ГБПОУ ПКГХ.
В данный момент получаю высшее образование на очно-заочном (вечерняя удалёнка) отделении СПбПУ (ИКНТ, ВШПИ) по специальности "Программная инженерия". P.S.: очно-заочная форма обучения позволяет беспрепятственно совмещать полный рабочий график с учёбой.
Окончил курсы Новосибирской академии (HTML, CSS, C#, Unity), курсы ИТМО (C и C++).
Полюбил писать максимально читаемый и красивый код после прочтения книги "Программирование без дураков" Катрина Пассига и Йоханесса Яндера.
В данный момент рассматриваю вакансии для работы/подработки/стажировки разработчиком C++.
Простой, легковесный, быстрый и удобный обозреватель 3D моделей. Написан на C++, код шейдеров на GLSL, для сборки используется CMake.
Репозиторий на GitHub содержит подробно оформленный readme файл с полной информацией о проекте, его зависимостях, использовании конечным пользователем, области применения, структуре проекта и т.п.Данный проект является моей дипломной работой, успешно защищённой в колледже.
Библиотека (а также conan-пакет) вспомогательных математических классов (структур/контейнеров данных).
Состоит из двух основных компонентов (классов) - setm::Complex и setm::Polynomial.
Репозиторий на GitHub содержит подробно оформленный readme файл с полной информацией о библиотеке, шагах по её конфигурированию, сборке, тестированию и использованию с помощью cmake и conan.
Библиотека собиралась из двух репозиториев, описанных ниже на этой странице.
Данный проект представляет собой класс комплексных чисел на C++.
Поддерживаются все необходимые операции для работы с такими числами.
Проект также является статической библиотекой и conan-пакетом.
Весь его функционал протестирован gtest.
Моя реализация класса многочленов на C++.
Так же, как и в случае с классом комплексных чисел, поддерживаются все базовые операции.
В том числе, было проведено модульное тестирование функционала данного класса с помощью gtest.
Данный проект был выполнен как курсовая работа в моём колледже. Представляет собой автоматизированную систему управления складским помещением.
Приложение призвано упростить ведение отчётности о поставках и отгрузках товара в/со склада, а также обладает функционалом по созданию накладных и сохранению их в файл.
В приложении реализована регистрация и авторизация посредством логинов и паролей. Для хранения данных пользователей (пароли хешируются по Sha256), а также всей информации о поставщиках, товарах, отправленных и принятых товарах используется база данных на SQLite3.
В процессе изучения побитовых операций, мною была реализована функция побитового сложения двух целочисленных.
Для реализации применялись операторы "исключающего ИЛИ", "И" и побитового сдвига.
Изучая CSS, я открыл для себя невероятные гибкие блоки Flexbox и не мог не попытаться сделать адаптивный сайт с их применением.
Это мой первый опыт создания макета одностраничного сайта.
Среди нововведений 17-го стандарта C++ мне приглянулась библиотека std::filesystem.
В итоге, я написал простую функцию для получения списка файлов в заданной директории. Параметрами функции является директория, в которой необходимо осуществлять поиск, а также вектор строк (расширений) файлов, которые мы хотим найти.
Изучая паттерны, я реализовал классы для шифрования текстовых файлов различными стратегиями.
Преподаватель по дисциплине "Информационная безопасность" дал мне задание - реализовать простую версию RSA-шифрования неких сообщений, коими в данном случае являются числа.
В итоге я написал код, позволяющий это сделать, а также записывающий открытый и закрытый ключи RSA в текстовые файлы.
В этот раз уже другой преподаватель (по дисциплине "Программирование") дал мне задачу. Необходимо было реализовать структуру данных, а точнее - двусвязный кольцевой список.
В результате мною была описана вся основная логика с мелкими деталями. Тогда я хорошо натренировал свои навыки работы с указателями.
Хоть проект и старый, но он вызывает у меня ностальгические чувства, потому я и включил его в этот список.
Ну и продолжая тему ностальгии...
Данный проект представляет собой простое приложение на Qt, которое призвано помочь определить, является ли число простым или совершенным (в зависимости от выбранного пользователем действия).
В программе также можно найти данные числа в заданном диапазоне (от 2 до n). Алгоритм нахождения чисел пошагово визуализируется в табличной форме.
Также приложение обладает краткой справкой о том, что вообще из себя представляют простые и совершенные числа.
В те времена я просто тестировал возможности Qt и закреплял свои навыки работы с ним. Проект стар и дряхл, но всё же заслуживает вашего внимания.
Остались вопросы? Напиши мне: