LINUX.ORG.RU

А может пора переходить на лисп?

 ,


1

2

Меня тут обвинил коллега в том, что я на любом языке пишу как на лиспе. Я посмотрел свой код в новом проекте и понял что обвинения были не на совсем пустом месте, практически все написано примерно вот в таком стиле

    public List<MethodDescription> available(MethodType type) {
        return ctx.getBeansWithAnnotation(MethodProvider.class).entrySet()
            .stream()
            .map(Map.Entry::getValue)
            .flatMap(e -> Arrays.asList(e.getClass().getMethods()).stream())
            .filter(m -> m.getAnnotation(Method.class) != null && m.getAnnotation(Method.class).type() == type)
            .map(fm -> fm.getAnnotation(Method.class))
            .map(a -> new MethodDescription(
                a.value(),
                src.getMessage("method." + a.value(), null, a.value(), dh.getLocale()),
                src.getMessage("method." + a.value() + ".description", null, a.description(), dh.getLocale())))
            .collect(toList());
    }

Может действительно пора переходить на тот же clojure?

Перемещено maxcom из talks

★★★★

Ответ на: комментарий от turtle_bazon

Ну, во первых общая пониженная читаемость - это все таки вопрос вкуса и првычек. А во вторых - не я придумывал явовский reflection api и названия спринговых методов.

Да и вообще - еще большой вопрос - что проще читается. Длинные строки с длинными именами методов, или короткие, но с кучей сокращений.

Вопрос на засыпку, что разбирать проще:

tk.getTktDicFMSPurposeRel()

или

ticket.getTicketDictionaryFMSPurposeRelation()

??

Nagwal ★★★★
() автор топика
Ответ на: комментарий от Nagwal

Ну я про оформление кода говорил. Где всё свалено в кучу. А ты мне про сокращения начал.

turtle_bazon ★★★★★
()
20 июля 2015 г.

Нормальный код, как по мне. По сравнению с процедурной поебенью, характерной для времен до Java 8 — вообще замечательно.

Может действительно пора переходить на тот же clojure?

Больше похоже на идиоматичные Rust и Ruby.

Anatolik ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.