Для YUI или нет для YUI? [закрыто]

У Raystorm был хороший ответ. Я тоже не большой поклонник Правил. Я делаю что-то подобное, за исключением того, что я создаю следующий класс утилиты, чтобы облегчить читаемость и удобство использования, что является одним из больших плюсов аннотаций в первую очередь.

Добавьте этот класс утилиты:

import org.junit.Assert;

public abstract class ExpectedRuntimeExceptionAsserter {

    private String expectedExceptionMessage;

    public ExpectedRuntimeExceptionAsserter(String expectedExceptionMessage) {
        this.expectedExceptionMessage = expectedExceptionMessage;
    }

    public final void run(){
        try{
            expectException();
            Assert.fail(String.format("Expected a RuntimeException '%s'", expectedExceptionMessage));
        } catch (RuntimeException e){
            Assert.assertEquals("RuntimeException caught, but unexpected message", expectedExceptionMessage, e.getMessage());
        }
    }

    protected abstract void expectException();

}

Тогда для моего модульного теста мне нужен только этот код:

@Test
public void verifyAnonymousUserCantAccessPrivilegedResourceTest(){
    new ExpectedRuntimeExceptionAsserter("anonymous user can't access privileged resource"){
        @Override
        protected void expectException() {
            throw new RuntimeException("anonymous user can't access privileged resource");
        }
    }.run(); //passes test; expected exception is caught, and this @Test returns normally as "Passed"
}
20
задан NotMe 14 November 2008 в 21:41
поделиться

15 ответов

Yahoo является крупнейшей компанией, которая не закончится через следующий несколько лет.

Библиотека Yahoo! является открытым исходным кодом, таким образом, у Вас будут другие люди, чтобы продолжить улучшать его, ЕСЛИ Yahoo обанкротился бы.

Никакая технология не является 100%-м сейфом для перспективы 10 лет, я думаю, что Вы не в опасности с ним.

Через 10 лет JavaScript будет полностью различием, и большая часть платформы не будет тем же так, я думаю, что Вы выбираете, необходимо будет изменить много вещи за 10 лет ;) Просто обязательно сохраните версию кода в Вас репозиторием, чтобы всегда иметь последнюю версию, которые работают на Вашу систему, и Вы будете в порядке.

49
ответ дан 17 October 2019 в 02:38
поделиться

Все остальные здесь уже упомянули, что YUI открытый исходный код (и таким образом, может быть расширен, разветвлен, и т.д.)

, Но важная вещь отметить состоит в том, что Yahoo ИСПОЛЬЗУЕТ YUI на их собственных веб-ресурсах. Это - ценный проект им, не так же, как внутренняя библиотека компонентов, но как стандартизованный способ для записи кода JavaScript. Как только Вы обертываете голову, вокруг которой, Вы поймете, что, если Yahoo находится все еще в Интернете, он будет, вероятно все еще помещать ресурсы в YUI.

кроме того, хотя огромный вентилятор jQuery, уравновешенный разработчик не может серьезно рекомендовать конкретную платформу по другому , не имея контекста проекта и конструктивных соображений.

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

15
ответ дан zachleat 14 November 2008 в 21:41
поделиться

Во-первых, Это - открытый исходный код, таким образом, можно продолжить использовать его независимо от того, что происходит с Yahoo. Кроме того, никто не думает, что они идут куда угодно в ближайшее время.

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

Независимо от также, можно все еще использовать его после того, как любого из которого происходит. И только в затем делают Вас, действительно должен переключиться? Кроме того, способ, которым изменялась сеть, Вы не можете хотеть использовать YUI через несколько месяцев так или иначе, кто знает?

1
ответ дан 17 October 2019 в 02:38
поделиться

Если библиотека делает то, что Вам нужна она, чтобы сделать сегодня, я не вижу оснований для не использования ее. 8-10 лет являются долгим временем для веб-приложения, но я хотел бы думать, что JavaScript все еще будет вокруг.

При использовании его с ожиданием, что это будет иметь большие продвижения в будущем затем озабоченность является обоснованной, но я думаю, что то же может быть сказано почти для любой технологии/языка/библиотеки. И так как это - открытый исходный код, Вы или другие могли продолжить разработку.

1
ответ дан 17 October 2019 в 02:38
поделиться

Вот Ваши опции:
1. Создайте свою собственную библиотеку Javascript
2. Пользуйтесь существующей библиотекой YUI
3. Пользуйтесь некоторой другой сторонней библиотекой Javascript

Можно загрузить всю библиотеку YUI и выполнить ее от собственного веб-сервера, таким образом, Вы не должны зависеть от серверов Yahoo. Код является открытым исходным кодом, таким образом, Вы свободны сделать улучшения сами, если Yahoo прекращает создавать его. Учитывая, что, я лично думаю с помощью YUI, намного лучше, чем попытка к библиотеке Javascript самокрутки. Я вижу тонну преимуществ с фактически никакими рисками.

Вопрос, который остается, состоит в том, необходимо ли использовать YUI или некоторую другую стороннюю библиотеку. Примерно все другие библиотеки с открытым исходным кодом совместно используют тот же будущий риск как YUI. Я лично посмотрел бы на функции каждая библиотека поддержки и выбрал бы ту, которая в настоящее время поддерживает все, что Вы хотите (или большая часть того, что Вы хотите).

1
ответ дан 17 October 2019 в 02:38
поделиться

Ну, Yahoo является все еще прибыльной компанией с более чем $3 миллиардами в банке. Я не ожидаю, что это обанкротится в ближайшее время, если они не сделают что-то действительно ужасное.

Однако Yahoo все еще должен сократить издержки, и они могли просто прекратить разрабатывать YUI для перемещения разработчиков в другие места. Просто что-то для учета на том, принимаете ли Вы решение продолжить w/YUI. В он - текущее состояние, я не вижу, что YUI генератором дохода, который является тем, в чем Yahoo нуждается прямо сейчас.

2
ответ дан 17 October 2019 в 02:38
поделиться

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

Его всегда лучшая практика для анализа каждого проекта, который Вы делаете и затем решать который библиотека использовать. Ли это быть jQuery, YUI, mootools, и т.д.

Для ответа на вопрос немного более прямо - не волнуются. Сеть является одним из наиболее быстро растущих и развивающихся секторов там. Я был бы удивлен, не становятся ли Ваши проекты перестроенными (Вами или кем-то еще) за следующие 3 - 4 года.

3
ответ дан 17 October 2019 в 02:38
поделиться

Если Ваше веб-приложение существует больше 4 лет в, он - текущая форма, то это удивительно. Это будет означать, что имело дело с новыми технологиями браузера и возможно потерей существующих. Это также означает, что сайту не будут нужны основные модификации в то время.

Большинство веб-приложений я продолжил работать, было почти полностью переписано после 3 лет. Обычно это вызвано тем, что требования изменяются; обычно существует столько дополнений в то время, когда это - совершенно другая часть программного обеспечения.

Кроме того, за 8 лет я уверен, что YUI изменится так, что это даже не будет то же. 8 лет назад это не существовало; 8 лет с этого времени это, возможно, что-то совершенно другое. Это не означает, что Вы не можете продолжить пользоваться существующими библиотеками точно как они.

Единственная вещь Вы могли бы думать о выполнении, сохраняет версии сами. Я не означаю загружать их из Вашего собственного сервера, но просто сохранять их где-нибудь. Даже просто упакуйте YUI, изменяет что-то и заканчивает тем, что повредил что-то, что Вы использовали - вряд ли.

Я думаю, что любая библиотека подвергается этим тем же проблемам: YUI или jQuery, и т.д.

2
ответ дан 17 October 2019 в 02:38
поделиться

Даже если Yahoo! гибнет, их библиотека является открытым исходным кодом. Сообщество, скорее всего, возьмет его и продолжит его разработку.

4
ответ дан 17 October 2019 в 02:38
поделиться

Я переключился на jQuery некоторое время назад и был намного более счастливым начиная с выполнения так. Необходимо рассмотреть то, что YUI является открытым исходным кодом, таким образом, Вы могли всегда делать любые необходимые обновления, Вам нужно в будущем.

7
ответ дан 17 October 2019 в 02:38
поделиться

Переключиться на jQuery?

6
ответ дан 17 October 2019 в 02:38
поделиться

Как член команды YUI, я добавил бы следующее к этому разговору: Почти все, кто когда-либо работал над командой, все еще с Yahoo и все еще работающий над YUI - замечательная непротиворечивость для проекта, которому теперь почти четыре года. Никто не может предсказать будущее Yahoo в этой точке (или никакой другой компании), но можно положиться на код, который Вы используете сегодня. Это свободно, открыто под BSD, и никто не может препятствовать тому, чтобы Вы использовали его независимо от того, что может произойти в будущем.

Мы продолжаем волноваться YUI, и мы думаем, что его следующие четыре года будут лучше, чем последние четыре.

С уважением, Eric

64
ответ дан 17 October 2019 в 02:38
поделиться

Я недавно переключил JQuery, и повышение производительности noticiable.

YUI действительно имеет лучшие документы, но он повредит совместимость на 3,0.

Оставьте свой унаследованный код на yui и переключитесь на jQuery для нового devs.

4
ответ дан 17 October 2019 в 02:38
поделиться

Я изучал YUI до JQuery, и проблема с YUI в том, что (по моему мнению) он слишком сложный, то есть более сложный. JQUery - это забавный код, и в то же время с его помощью можно делать все.

Мой совет - используйте JQuery, а если вам нужен какой-то компонент YUI, то используйте оба. Однако я не вижу никаких особых преимуществ YUI перед JQuery.

5
ответ дан 17 October 2019 в 02:38
поделиться

Wild угадайте здесь, но некоторые приложения используют имя приложения, чтобы определить, что оно должно делать - это старый фокус UNIX; например, /bin/false и /bin/true являются идентичными двоичными файлами, но имя определяет возвращаемый результат.

Вы делаете это, когда пишете 2 + программы, которые идентичны на 99,9%, и не хотите поддерживать отдельные кодовые базы для каждой из них.

-121--3747384-

Как правило, когда что-то подобное возникает, вы используете исправление обезьян (также называемое Duck Punching) для достижения желаемых результатов. Ознакомьтесь с по этой ссылке , чтобы узнать больше о исправлении обезьян.

В этом случае, например, следует перезаписать solr, чтобы просто распечатать искомые выходные данные.

-121--3147155-

Я использовал ЮИ в проекте 1 год назад.
Я был очень доволен библиотекой, даже если мне было трудно понять, путь она работал. После того, как я обнаружил jQuery и попробовал его на другом проекте. Чувак, это был другой мир.
В эти дни я делаю некоторые изменения в старом проекте YUI. Я хотел все портировать в 2.8 (с 2.4.2).
Я ожидал, что будет легче, но это не так. Потратив несколько месяцев на jQuery, я должен признать, что YUI слишком сложен.
Вы можете сделать почти все и настроить каждый аспект вашего приложения, но, ну, это занимает много лет, чтобы понять вещи, или в аренду для меня.
jQuery намного лучше и быстрее. Система плагинов удивительна. Я не пробовал YUI 3, потому что решил, что jQuery достаточно хорош для меня.

2
ответ дан 17 October 2019 в 02:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: