Вызов одного метода или нескольких для нескольких действий? Python
Имеется задача: создать метод(ы) для парсинга поста в двух (пока) соц. сетях.
Вопрос: скажите, пожалуйста, лучше создать одну функцию, которой будет передаваться атрибут с названием соц. сети и она уже будет с помощью условий решать, какой алгоритм далее будет запущен (пример parse_post(social_network) ИЛИ создать две функции для парсинга из каждой соц. сети (пример parse_VK_post и parse_TG_post)?
Ответы (2 шт):
На мой взгляд несколько небольших функций лучше одной большой. В идеале код функции должен помещаться на экран без скролинга. Еще один плюс такого подхода в том, что в будущем, если вы захотите провести рефакторинг ваших функций - упаковать их в отдельные классы (VkParser и TgParser) с общим интерфейсом (Parser), то вам будет проще т.к. код уже находится в разных функциях
Лучше создать одну функцию, которая будет решать, какой алгоритм будет далее запущен. Но этот алгоритм также поместить в отдельную функцию.
def parse_sc(sc):
if sc == "vk":
parse_vk()
if sc == "fb":
parse_fb()
else:
unknown_sc()