Контакты
Местоположение
Россия, Удмуртия, Воткинск

Достижения

Все достижения (5)

Наибольший вклад в теги

Все теги (17)

Лучшие ответы пользователя

Все ответы (19)
  • Как отслеживать новые объявления на Avito?

    beevasya
    @beevasya
    программист C++/C#
    Можно попробовать вот это http://beesoftware.ru/podelki/21-avitochecker-ska...
    Писал под себя, но думаю сгодится и для других
    Ответ написан
    2 комментария
  • Высвободится ли память,если использовать метод clear() у vector,который был заполнен структурами?

    beevasya
    @beevasya
    программист C++/C#
    name не освободится, будет утечка памяти.
    Если нужно освобождать память, то лучше Student делать как класс и соответственно в конструкторе создавать name и в деструкторе освобождать
    Ответ написан
    1 комментарий
  • Как реогранизовать процесс разработки в IT-продукте?

    beevasya
    @beevasya
    программист C++/C#
    Этап 1. Ну в первую очередь вам необходимо всю вашу систему поставить на рельсы CI/CD, т.е. естественно система контроля версий, автотесты, автоматизировать процесс публикации/развертывания, всё это нужно чтобы внесение каких-либо изменений/доработок не втягивало вас в рутину, а выполнялось нажатием двух кнопок. Отдельно хочу обратить внимание на автотесты!!! Возьмите себе за правило, что каждая доработка или новая функциональность внедряется только вместе с тестами, а выпуск нового релиза только после успешной прогонки всех тестов. Да поначалу это будет создавать много сложностей, но в последствии вы получите повышенный контроль качества при внесении каких-либо изменений.
    Этап 2. Посидеть и подумать над новой архитектурой, возможно посмотреть в сторону микросервисов. Цель - сегментировать вашу систему. Сегментация вам нужна для того чтобы вы постепенно смогли заменять отдельные элементы вашей системы. Другой вариант - использовать соответствующие паттерны: декораторы, прокси, адаптеры, медиаторы и пр., т.е. вы заново переписываете элемент системы, но таким образом чтобы сохранялся интерфейс взаимодействия со старыми элементами. Например (естественно надуманный), был у вас класс Data для доступа к БД, в нем вы просто реализовывали методы для получения данных на основе SQL-запросов, но сейчас решили перейти на ORM. В этом случае, создаете нужные модели, настраиваете связи, т.е. все как будто вы делаете с нуля. После того как ваша ORM заработала правильно, вы при новых доработках начинаете использовать ORM и параллельно превращаете ваш класс Data в некоторый прокси, который будет делать обращения к данным через новый ORM. Далее постепенно начинаете менять все обращения к Data на прямую через ORM. И со временем наступит момент, когда не будет ни одного обращения к Data, тогда вы смело сможете его убрать.
    Этап 3. Формирование плана перехода на новую архитектуру. После того как вы создали новую архитектуру и предусмотрели в ней переходные механизмы, необходимо выработать порядок действий, определить более приоритетные работы, возможно что-то отдать на оутсорс, что-то заменить готовыми сторонними решениями и т.д. В конечном итоге должен появиться некоторый план-график, на основе которого вы увидите примерный путь вашей миграции. Нужно это для того чтобы видеть границы вашего переезда и не превратить его в вечный процесс. Условно говоря, вы определяете что через два года у нас будет новая система и всё.
    Этап 4. Естественно это реализация вашего плана :) Тут уже руководите процессом (точнее даже проектом): распределяйте ресурсы, набирайте нужных людей под конкретные этапы плана, создавайте вехи плана (проекта). Тут вам в помощь различные системы управления проектами, коих полным полно.
    И самое главное, теперь вы должны измениться сами! Вместо программиста вы должны стать руководителем, ваша задача не кодить, а налаживать рабочие процессы. Вы должны перейти от проектной работы к процессной. Познайте разницу между проектом и процессом и у вас наступит счастье :)
    Ответ написан
    Комментировать
  • Как автоматизировать работу небольшого кафе?

    beevasya
    @beevasya
    программист C++/C#
    Заведите любой ServiceDesk
    Если важна функциональность, а не интерфейс, то можно адаптировать почти все что угодно (GLPI, osTicket и т.д.)
    Да и вообще любая система контроля исполнения задач
    В вашем случае все просто
    Официант - это клиент
    Повар - это сервисная служба
    Если хотите с планшета, то вот вам в помощь
    https://play.google.com/store/search?q=service%20d...

    PS
    Если разобраться, то можно даже стоимость заказа рассчитывать :)
    Ответ написан
    1 комментарий

Лучшие вопросы пользователя

Все вопросы (10)