Я недавно использовал джинн в мобильном проекте среднего размера.
Это действительно полезный инструмент, который помог нам ускорить и ускорить процесс разработки.
Неоднократно было бы полезно перегрузить метод.
В djinni это невозможно (я полагаю, это связано с ограничениями одной из целевых платформ), и в итоге мы получили два метода с немного разными именами.
Это предлагаемый подход, когда кто-то использует джинны?
Существуют ли более умные подходы для этого?
Я считаю, что наличие двух методов с разными именами немного подвержено ошибкам, но в документации не упоминается ни одна (позвольте мне сказать) вопрос и не предлагает обходного пути для этого.
Вы правы в том, что Джинни не поддерживает перегрузку, и это из-за ограниченной поддержки некоторых целевых языков. Ни Objective-C, ни Python не поддерживают перегрузку (хотя C ++ и Java поддерживают), и мы решили, что лучше, чтобы имена методов Джинни были одинаковыми во всех языках, а не пытались автоматически генерировать уникальные имена для перегруженных методов.
Я бы рекомендовал выбирать уникальные и запоминающиеся имена самостоятельно, например, do_something_int()
, или же do_something_with_int()
если вам нравится стиль Objective-C.
Но другая часть Djinni, которая не пытается сделать это автоматически, состоит в том, что мы считаем, что вы можете выбрать более подходящие имена для своего варианта использования, чем Djinni может автоматически.
Других решений пока нет …