Новый интерфейс, старая реализация
Представим, что нам нужно вызвать процедуру, но из-за программного интерфейса это оказывается слишком сложно, неочевидно или просто утомительно. Чтобы это исправить, реализуем новый, более удобный интерфейс и будем работать через него. При этом пока оставим внутри простой вызов старого интерфейса, а новую реализацию можно будет добавить позже
Создание удобного программного интерфейса очень важная часть программного дизайна. Изменения в системе должны вноситься просто и удобно. Если текущий интерфейс этого не позволяет, значит, его нужно менять
Подходы:
1. «Начать с конца» - начните с последней строки процедуры. У вас уже есть все промежуточные данные, и вы можете подготовить их так, как удобно.
Например, процедура возвращает документ, а нам нужны дополнительные реквизиты. Дополняем результат, оборачиваем его в структуру и возвращаем
2. «Сначала тесты» - перед изменениями добавьте тесты, которые должны проходить, а затем вносите изменения
3. Проектирование хелперов - представьте, что уже существует метод, который делает все необходимое. Тогда остальная логика становится простой. Начните с создания такого метода
Короче, необязательно все переделывать сразу, можно начать с создания удобной обертки для старой реализации
Представим, что нам нужно вызвать процедуру, но из-за программного интерфейса это оказывается слишком сложно, неочевидно или просто утомительно. Чтобы это исправить, реализуем новый, более удобный интерфейс и будем работать через него. При этом пока оставим внутри простой вызов старого интерфейса, а новую реализацию можно будет добавить позже
Создание удобного программного интерфейса очень важная часть программного дизайна. Изменения в системе должны вноситься просто и удобно. Если текущий интерфейс этого не позволяет, значит, его нужно менять
Подходы:
1. «Начать с конца» - начните с последней строки процедуры. У вас уже есть все промежуточные данные, и вы можете подготовить их так, как удобно.
Например, процедура возвращает документ, а нам нужны дополнительные реквизиты. Дополняем результат, оборачиваем его в структуру и возвращаем
2. «Сначала тесты» - перед изменениями добавьте тесты, которые должны проходить, а затем вносите изменения
3. Проектирование хелперов - представьте, что уже существует метод, который делает все необходимое. Тогда остальная логика становится простой. Начните с создания такого метода
Короче, необязательно все переделывать сразу, можно начать с создания удобной обертки для старой реализации
👍18❤5🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
Братан, я намного эффективнее с ИИ
Ну и текстовая версия, того что на экране происходит:
Сцена 1: Программист говорит, что он намного эффективнее при работе с ИИ
Сцена 2: Он выделяет весь код в редакторе, затем скармливает его нейросети и пишет «ЭТО НЕ РАБОТАЕТ ПОЖАЛУЙСТА ПОЧИНИ. НЕ ДЕЛАЙ ОШИБОК»
Сцена 3: Программист берет телефон и начинает смотреть рилсики
Ну и текстовая версия, того что на экране происходит:
Сцена 2: Он выделяет весь код в редакторе, затем скармливает его нейросети и пишет «ЭТО НЕ РАБОТАЕТ ПОЖАЛУЙСТА ПОЧИНИ. НЕ ДЕЛАЙ ОШИБОК»
1🤣22💯5❤1🥱1
Проклятье знания
Недавно столкнулся с понятием «проклятье знания» и понял, почему некоторые выступления на конференциях бывают такими разными.
Проклятье знания - это когда ты что-то знаешь и начинаешь считать, что все вокруг тебя знают это так же хорошо. Ведь это уже кажется простым и очевидным, а значит, как будто не заслуживает внимания.
Ну подумаешь, умею настраивать MCP-серверы для 1С - об этом вон сколько статей, каждый сможет. И в итоге решаешь, что тема неинтересная и не выступаешь с ней.
Бывает и обратная ситуация: ты разбираешься в теме слишком глубоко и начинаешь увязать в деталях и тонкостях. Уходишь в нюансы устройства векторного поиска в базах данных. Сразу вспоминается универ, когда на секунду отвлекся, а на доске уже огромная формула с непонятными символами. Такие выступления тоже тяжело воспринимать.
Как же быть? Как рассказать, чтобы с одной стороны было понятно, а с другой не обидно слушателю, что ему рассказывают банальные вещи?
Это очень тонкая грань. И лучше всего здесь работают истории. Не просто рассказ о технологии, которая решила ваши проблемы. А путь, как вы к ней пришли, с какими сложностями столкнулись и как решали.
Истории хороши еще тем, что полностью идентичных условий не бывает. Даже у тех, кто этот инструмент использует, могут появиться новые идеи, а тема будет раскрыта с новой стороны.
Ну и, честно говоря, слушать как другие мучились и справлялись всегда интересно. Если подумать, то любое приключение - это неприятности, которые случились не с нами.
Поэтому не бойтесь заявляться на конференции со своими темами. Крутые истории всегда интересно слушать. Главное, не попасть в проклятье знания и выдержать четкий баланс.
P.S.: С постами в телеграм это тоже работает, кстати
Недавно столкнулся с понятием «проклятье знания» и понял, почему некоторые выступления на конференциях бывают такими разными.
Проклятье знания - это когда ты что-то знаешь и начинаешь считать, что все вокруг тебя знают это так же хорошо. Ведь это уже кажется простым и очевидным, а значит, как будто не заслуживает внимания.
Ну подумаешь, умею настраивать MCP-серверы для 1С - об этом вон сколько статей, каждый сможет. И в итоге решаешь, что тема неинтересная и не выступаешь с ней.
Бывает и обратная ситуация: ты разбираешься в теме слишком глубоко и начинаешь увязать в деталях и тонкостях. Уходишь в нюансы устройства векторного поиска в базах данных. Сразу вспоминается универ, когда на секунду отвлекся, а на доске уже огромная формула с непонятными символами. Такие выступления тоже тяжело воспринимать.
Как же быть? Как рассказать, чтобы с одной стороны было понятно, а с другой не обидно слушателю, что ему рассказывают банальные вещи?
Это очень тонкая грань. И лучше всего здесь работают истории. Не просто рассказ о технологии, которая решила ваши проблемы. А путь, как вы к ней пришли, с какими сложностями столкнулись и как решали.
Истории хороши еще тем, что полностью идентичных условий не бывает. Даже у тех, кто этот инструмент использует, могут появиться новые идеи, а тема будет раскрыта с новой стороны.
Ну и, честно говоря, слушать как другие мучились и справлялись всегда интересно. Если подумать, то любое приключение - это неприятности, которые случились не с нами.
Поэтому не бойтесь заявляться на конференции со своими темами. Крутые истории всегда интересно слушать. Главное, не попасть в проклятье знания и выдержать четкий баланс.
P.S.: С постами в телеграм это тоже работает, кстати
👍29❤10🔥8👎1
Три точки в интерфейсе
Если при нажатии на команду или гиперссылку требуется еще действие от пользователя, то в тексте в конце пишут … Например, Сохранить… или Создать новый файл….
Еще примеры в карусели
Таким образом, сообщают пользователю что это не просто команда, а операция с продолжением
Если команда сразу выполняет действие и от пользователя ничего больше не требуется, то три точки не ставят
Используйте этот подход и в своих решениях
// Сейчас охваты падают, поддержите пост лайками
Если при нажатии на команду или гиперссылку требуется еще действие от пользователя, то в тексте в конце пишут … Например, Сохранить… или Создать новый файл….
Еще примеры в карусели
Таким образом, сообщают пользователю что это не просто команда, а операция с продолжением
Если команда сразу выполняет действие и от пользователя ничего больше не требуется, то три точки не ставят
Используйте этот подход и в своих решениях
// Сейчас охваты падают, поддержите пост лайками
👍87🔥30❤14✍6
Победители конкурса
Спасибо всем, кто прислал фотографии.
Победители:
1. Сергей Бестужев
Приз: коврик
Тут использован запрещенный прием в виде моего доклада. Ну и в целом на экране бейджи, уютный рабочий угол на балконе, Сплит-клавиатура и отдельный плюс за собачку в кресле
2. Boris Sinitsyn
Приз: коврик
Очень необычный сетап: два ноутбука, большой монитор, материалы Infostart и 1С на экране. Выглядит симметрично, насыщенно и по-айтишному. Ну и мультивселенная 1С :)
3. Лейсан Сафина
Приз: коврик
Самое узнаваемое рабочее место 1Сника: книга рядом, листы с заметками, обычный стол у окна и ощущение настоящего рабочего процесса без лишнего пафоса.
В этом есть свое обаяние.
4. Taras K
Приз: брелок
Это уже не просто стол, а персональный кокпит. Вертикальный монитор, отдельный ноутбук, темная атмосфера и, самое главное, чудо-кресло, о котором я тоже периодически задумываюсь.
5. Kir Plastelinin
Приз: брелок
Полка с книгами по 1С, код на экране, аккуратное рабочее место и кот, который явно контролирует качество разработки. Очень теплый и живой кадр.
Поздравляю победителей!
Свяжитесь со мной, чтобы сказать адрес отправки
Спасибо всем, кто прислал фотографии.
Победители:
1. Сергей Бестужев
Приз: коврик
Тут использован запрещенный прием в виде моего доклада. Ну и в целом на экране бейджи, уютный рабочий угол на балконе, Сплит-клавиатура и отдельный плюс за собачку в кресле
2. Boris Sinitsyn
Приз: коврик
Очень необычный сетап: два ноутбука, большой монитор, материалы Infostart и 1С на экране. Выглядит симметрично, насыщенно и по-айтишному. Ну и мультивселенная 1С :)
3. Лейсан Сафина
Приз: коврик
Самое узнаваемое рабочее место 1Сника: книга рядом, листы с заметками, обычный стол у окна и ощущение настоящего рабочего процесса без лишнего пафоса.
В этом есть свое обаяние.
4. Taras K
Приз: брелок
Это уже не просто стол, а персональный кокпит. Вертикальный монитор, отдельный ноутбук, темная атмосфера и, самое главное, чудо-кресло, о котором я тоже периодически задумываюсь.
5. Kir Plastelinin
Приз: брелок
Полка с книгами по 1С, код на экране, аккуратное рабочее место и кот, который явно контролирует качество разработки. Очень теплый и живой кадр.
Поздравляю победителей!
Свяжитесь со мной, чтобы сказать адрес отправки
🎉18🔥6🤩3👍1🤣1
Еще приз и победитель
Иосиф Правец решил дополнительный разыграть коврик и выбрал своего победителя!
Max Avramenko
Приз: коврик
«Тут точно нужен коврик 🙂»
А еще обязательно подпишитесь на канал Иосифа. Я его читаю давно и искренне считаю, что он пишет умно, живо и по делу.
Такие каналы очень приятно находить не случайно, а по хорошей рекомендации
Иосиф Правец решил дополнительный разыграть коврик и выбрал своего победителя!
Max Avramenko
Приз: коврик
«Тут точно нужен коврик 🙂»
А еще обязательно подпишитесь на канал Иосифа. Я его читаю давно и искренне считаю, что он пишет умно, живо и по делу.
Такие каналы очень приятно находить не случайно, а по хорошей рекомендации
🎉12❤4👏3🤩1
Никита Арипов | 1С, DevExp
Шопперы, бутылка, блокноты - просто нажать кнопку Этот пост для тех, кто не хочет ничего выдумывать, фотографировать или доказывать. Только везение. Что в розыгрыше: • 3 шоппера • 1 бутылка для воды • 2 блокнота с ручками Итого: 6 призов, 6 случайных победителей.…
1. Dispi (@Despaunt)
2. Konstantin (@mkconst)
3. Mikhail (@cptnpnd)
4. Viktor (@vktrklmnv)
5. Сергей (@bestuzheff)
6. Артем (@mineev_art)
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉10🔥4🤩3🤝1
Когда проводить рефакторинг?
Никогда, если:
- Код не будет меняться. Например, в одноразовых обработках или устаревшем механизме
- Изменение ничего нового не дадут. Рефакторинг ради рефакторинга бесполезен. Важно, чтобы появлялось новое качество. Например, масштабирование станет проще или снизится сложность будущего изменения
Позже, если:
- Предстоит много работы без мгновенного эффекта. Например, если даже все поменять сложность останется высокой
- Рефакторинг окупится не сразу. Например, изменения в этом месте происходят редко и стоимость понимания кода не высока
- Его можно делать постепенно и небольшими частями
Сразу после, если:
- Ожидание следующего удобного случая обойдется дороже. Например, одно и то же изменение нужно внести в несколько мест. Откладывание увеличит риск ошибок и стоимость следующих правок
- Без этого вы не чувствуете, что работа завершена
До, если:
- Рефакторинг даст быстрый результат. Например, код станет понятнее или его будет проще менять
- Вы точно понимаете, что и как нужно сделать.
Никогда, если:
- Код не будет меняться. Например, в одноразовых обработках или устаревшем механизме
- Изменение ничего нового не дадут. Рефакторинг ради рефакторинга бесполезен. Важно, чтобы появлялось новое качество. Например, масштабирование станет проще или снизится сложность будущего изменения
Позже, если:
- Предстоит много работы без мгновенного эффекта. Например, если даже все поменять сложность останется высокой
- Рефакторинг окупится не сразу. Например, изменения в этом месте происходят редко и стоимость понимания кода не высока
- Его можно делать постепенно и небольшими частями
Сразу после, если:
- Ожидание следующего удобного случая обойдется дороже. Например, одно и то же изменение нужно внести в несколько мест. Откладывание увеличит риск ошибок и стоимость следующих правок
- Без этого вы не чувствуете, что работа завершена
До, если:
- Рефакторинг даст быстрый результат. Например, код станет понятнее или его будет проще менять
- Вы точно понимаете, что и как нужно сделать.
👍23❤3🔥2
А у вас в команде проводятся встречи 1 на 1?
Как оцениваете эту практику?
Полезно? Вредно? Нужно? Не нужно?
Как оцениваете эту практику?
Полезно? Вредно? Нужно? Не нужно?
👍16
Видео: Один день из жизни разработчика 1С:Бухгалтерии
Ссылка на VK Video
Ссылка на YouTube
Все видео с 1C:DevCon.6 доступны на developer.1c.ru
Ссылка на VK Video
Ссылка на YouTube
Все видео с 1C:DevCon.6 доступны на developer.1c.ru
2🔥28👍10❤7