• Какой лучший способ для создания мобильной версии сайта?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Два пути: простой и правильный.
    Простой: один код для всего
    1. Создать адаптивную вёрстку
    2. Создать динамически загружаемые JS-модули в зависимости от их востребованности на конкретной странице.
    3. Настроить кэш на сервере для JS-модулей.

    Правильный: API и Single Page Application
    RESTfull API + SPA

    Если сделать оба - то это будет ИДЕАЛЬНЫМ вариантом.
    Video: knockout.js SPA: https://www.youtube.com/watch?v=vhT9Id8Jfb8
    Ответ написан
    5 комментариев
  • Зачем protocol в Swift?

    @andrew8712
    Методы UIView конечно же можно вызывать из контроллера, для этого делегирование и не нужно.
    Делегирование нужно наоборот, сообщить контроллеру, что произошло какое-то событие у UIView (например, пользователь тапнул по строке UITableView) или запросить у контроллера какие-нибудь данные или значения (например, значение title для строки UIPickerView). При этом, держать reference на контроллер в UIView нельзя, т.к. возникнет retain cycle между UIView и UIViewController: каждый из них будет держать ссылку друг на друга, и они так никогда и не освободят память (тут можно почитать об этом подробнее: https://developer.apple.com/library/prerelease/ios...
    Конечно, UIView может держать weak reference на контроллер, но в таком случае эта вьюха будет жестко привязана к данному контроллеру и будет работать только с ним. А протоколы для того и придуманы, что можно свой контроллер реализовать так, чтобы он удовлетворял протоколу, а вьюха уже работала бы с этим протоколом. В дальнейшем, если нужно будет работать с этой вьюхой из другого контроллера, достаточно просто реализовать в нем этот же протокол.
    Ответ написан
    1 комментарий