• Поможете разобраться с Flask?

    @bromzh
    Drugs-driven development
    app.debug = True
    app.run()
    # ИЛИ
    app.run(debug=True)

    И будет тебе подробный отчёт.
    Ответ написан
    1 комментарий
  • Настройка uwsgi под ubuntu?

    @bromzh
    Drugs-driven development
    Либо используй emperor-mode в uwsgi, либо используй supervisor. В офдоках uwsgi всё есть.
    Ответ написан
  • Angular $resource как отправить свой header?

    @bromzh
    Drugs-driven development
    404 же, проверь адрес. И проверь, присылает ли сервер заголовоки
    Access-Control-Allow-Origin: http://foo.example
    Access-Control-Allow-Methods: POST, GET, OPTIONS
    Access-Control-Allow-Headers: X-PINGOTHER
    Access-Control-Max-Age: 1728000
    Ответ написан
    Комментировать
  • Как передать значение с JQuery в AngularJS?

    @bromzh
    Drugs-driven development
    Если используешь ангуляр, то забудь про jquery. Напиши на ангуляре сервис, через $http отправляй/получай данные. Либо откажись от ангуляра и используй только jquery с чем-то другим. Текущий вариант - ненужные костыли.
    Ответ написан
    Комментировать
  • Пожайлуста дайте советы по улучшению программного кода?

    @bromzh
    Drugs-driven development
    Фигнёй ты страдаешь. Сперва изучи работу со строками и числами, списки, кортежи, множества, словари, итераторы и генераторы. Потом функции поизучай, как они в питоне определяются и вызываются, как передавать аргументы, зачем нужны одинарные и двойные звёздочки в параметрах функции. Потом изучай ООП, какое оно в питоне, чем отличается от других реализаций. Зачем и когда вообще нужны классы, а когда нет. Потом всякие фишки питоновские касательно классов, что такое классовая переменная, метод класса, статический метод, property. Потом можно изучить декораторы и другие функциональные штуки питона. Заодно поймёшь, что это за лямбды у тебя в коде, что такое замыкание и контексты видимости переменных. Потом изучай стандартную библиотеку: работу с датами, с json, с сетью, файлами и сокетами, асинхронный ввод-вывод (надеюсь ты 3-ю ветку изучаешь).
    Попутно вызубри pep8. Ну и всё это естественно на практических примерах. Примеры есть на всяких codeacademy и других подобных сайтах.
    Потом можешь выбирать направление и изучать библиотеки и фреймворки, которые люди часто используют. Если это, например, веб - то это django, tornado и пр.

    А бездумное копирование кода с видео. который ты сам не понимаешь и простыни довольно однотипного кода tkinter не помогут тебе в изучении этого прекрасного языка.
    Ответ написан
    1 комментарий
  • Сервисы визуализации взвешенных графов?

    @bromzh
    Drugs-driven development
    d3js.org
    Пример: mbostock.github.io/d3/talk/20111116/force-collapsi...
    Немного не то, но можно подстроить
    Вообще, примеров там куча
    Ответ написан
    Комментировать
  • Выбор языка для web разработки(real time). Какой вы посоветуете?

    @bromzh
    Drugs-driven development
    Real-time - это, наверное, long-polling, когда сервер и клиент подолгу держат соединение открытым, в противовес обычному вебу, где 1 запрос открывает соединение, ждёт ответа и сразу закрывает его. Для этого обычно используют многопоточные и/или асинхронные штуки.
    Со стороны клиента это реализуется через WebSocket (современный вариант), либо другими хитрыми методами. Протокол websocket поддерживают многие браузеры, однако есть SockJS, который в случае чего прозрачно меняет протокол на другой доступный. Там же есть ссылки на реализацию этого протокола для других языков.
    Со стороны сервера:
    Для питона - это tornado и asyncio (только для 3-й ветке, включён в стандарт). Можно писать в коллбечном стиле, можно в обычном с использованием корутин (сопрограмм). Tornado умеет sockjs, вебсокет есть для обеих вариантов.
    Java сама по-себе многопоточна, поддержка websocket включена в стандарт JavaEE. Помимо этого есть решения для спринга. Это удобно, потому что нужен всего 1 фреймворк и для обычной части сайта (если такая есть), и для его асинхронной части. Есть очень производительный сервер netty с неблокирующим вводом-выводом и апи к нему.
    И т.д.
    В принципе, почти для каждого языка есть свой неблокирующий сервер и фреймворк к нему. Просто смотри на тот язык, который удобнее и для которого есть большая инфраструктура.
    Ответ написан
    Комментировать
  • Java. Абстракции, интерфейсы, наследования. Как реализовать?

    @bromzh
    Drugs-driven development
    Определять какой класс использовать надо извне. Для этого есть всякие Factory-паттерны. А проверку внутри абстрактного класса надо убрать.
    А статические методы желательно избегать, хотя в простых factory их можно использовать.

    Список надо параметризировать типом Human, а класс параметризировать как . Или просто использовать везде тип Human, как бы полиформизм для того и придуман.

    UPD
    public interface Human {
        public void jump();
        public void say(String text);
    }
    
    
    public abstract class AbstractHuman implements Human {
        protected String name;
    
        public AbstractHuman(String name) {
            this.name = name;
        }
    
        @Override
        public void say(String text) {
            System.out.println(name + ": " + text);
        }
    }
    
    
    public class Man extends AbstractHuman {
        public Man(String name) {
            super(name);
        }
    
        @Override
        public void jump() {
            System.out.println("Man jump");
        }
    }
    
    
    public class Woman extends AbstractHuman {
        public Woman(String name) {
            super(name);
        }
    
        @Override
        public void jump() {
            System.out.println("Woman jump");
        }
    }
    
    
    public interface HumanFactory {
        public static Human createHuman(String name, boolean kadyk) {
            if (kadyk) {
                return new Man(name);
            }
            return new Woman(name);
        }
    }
    
    import java.util.LinkedList;
    import java.util.List;
    
    public class Main  {
        static class DBData {
            String name;
            boolean kadyk;
            public DBData(String name, boolean kadyk) {
                this.name = name;
                this.kadyk = kadyk;
            }
        }
    
        public static void main(String[] args) {
            List<DBData> source = new LinkedList<>();
            source.add(new DBData("Ваня", true));
            source.add(new DBData("Маша", false));
            source.add(new DBData("Катя", true));
            source.add(new DBData("Сергей", true));
            
            List<Human> humanList = new LinkedList<>();
            
            for(DBData data : source) {
                humanList.add(HumanFactory.createHuman(data.name, data.kadyk));
            }
            
            for(Human human : humanList) {
                human.say("Hello");
                human.jump();
            }
        }
    }
    Ответ написан
    Комментировать
  • Как не ждать окончания вызова функции в Python?

    @bromzh
    Drugs-driven development
    https://docs.python.org/3/library/threading.html
    Только учти, что у питона есть глобальная блокировка, и такое распараллеливание будет весьма условным.
    А вообще, всё зависит от задачи. Если ты пишешь что-то сетевое, то лучше взять tornado/asyncio или celery
    Ответ написан
    Комментировать
  • Есть способ открыть JPEG через Python 3 без сторонних модулей?

    @bromzh
    Drugs-driven development
    Конечно есть. На вики ищи описание формата jpeg, открывай файл в бинарном режиме, считывай побайтово, сохраняй данные о точках в списках. Короче, делай всю ту работу, что уже сделали до тебя создатели PIL/Pillow и libjpeg. Кстати, jpeg не такой простой формат, как например bmp или tiff, тут возни побольше будет.
    Ответ написан
    Комментировать
  • Как логировать в БД запрос/ответ вебсервиса (в частности jax-ws на tomcat/glassfish)?

    @bromzh
    Drugs-driven development
    Томкат не поддерживает всё из JavaEE, это лишь контейнер сервлетов, а не полноценный ApplicationServer. Так что либо используй TomcatEE, либо другие сервера (я рекомендую WildFly).

    Про запись лога в БД можно почитать тут.
    Ещё можно использовать interceptors (перехватчики). Это часть JavaEE, перехватывать можно методы бинов. Подробнее тут и в гугле.

    В томкате нет БД, там вообще всё по минимуму. Чтобы подключить БД надо самому добавлять jar-файлы с реализацией JPA, самому настраивать базу в приложении. При этом, JTA и другие штуки будет сложно подключить и настроить, потому что томкат не ApplictionServer. Лучше взять WildFly. Там уже есть один DataSource по-умолчанию (БД в оперативной памяти, очищается после перезапуска сервака), и легко подключить новый источник к самому веб-серверу.
    Ответ написан
    1 комментарий
  • Можно ли прицепить протокол шифрования Павла Дурова в Telegram к Web сайту?

    @bromzh
    Drugs-driven development
    SSL, WSS (для вебсокетов)
    Этого хватит для 95% случаев.
    Ответ написан
    Комментировать
  • Нужно ли знать html/css/js для работы в django?

    @bromzh
    Drugs-driven development
    Для изучения джанго это знать не нужно. Для финального результата нужно (если ты конечно планируешь работать в этой сфере).
    Ответ написан
    Комментировать
  • Как подключать API?

    @bromzh
    Drugs-driven development
    1) общие принципы: habrahabr.ru/post/144011
    2) узнать на чём сайт и гуглить уже более конкретно
    Ответ написан
    Комментировать
  • Выбор средств для разработки высоконагруженного веб приложения?

    @bromzh
    Drugs-driven development
    Groovy тормоз, судьба Grails неизвестна. Тут уж тогда лучше Scala + какой-то фреймворк. Java и её серверы быстрые, но всякие ORM, EJB и друшие штуки эту скорость поглощают.
    Просто научиться разрабатывать веб на яве достаточно непросто.
    Ответ написан
    Комментировать
  • Как связать Netty c MongoDb?

    @bromzh
    Drugs-driven development
    В третьей версии драйвера для явы появилась асинхронность.
    Ответ написан
    Комментировать
  • Как устроены списки в Java?

    @bromzh
    Drugs-driven development
    В яве несколько списков. Есть интерфейс List, есть несколько его реализаций. Самые популярные - это ArrayList (по-сути - динамический массив), есть LinkedList - связный список. Если ты немножко погуглишь, то найдёшь их исходники, они всё скажут сами за себя.
    В будущем, чтобы реализовать свой список, лучше реализовывай стандартный интерфейс.
    Ответ написан
    Комментировать
  • Какие существуют специализации на python'е?

    @bromzh
    Drugs-driven development
    Питон часто используют для математических вычислений: www.scipy.org
    Это обёртки для фортрановских библиотек + всякие удобные плюшки для построения графиков, символьных вычислений и т.д. Но сам понимаешь. вакансий таких крайне мало, т.к. очень узкая специфика.
    Ещё используют как скриптовой язык во всяких движках. Но тут надо смотреть вакансии именно по движкам.
    Ещё для обработки всяких данных можно использовать. У яндекса есть вакансии связанные с этим, там используется питон. Но опять же, узкая специфика, конкретных вакансий мало.
    Администрирование/написание скриптов - тоже специфичная вещь и искать надо вакансии сисадмина.

    Всё-таки веб, в виде джанго или других серверов, в т.ч. асинхронных (tornado/asyncio) - более распространённая сфера, для которой можно найти вакансии. Для других же они достаточно редки.
    Но это совсем не значит, что на питоне мало пишут.
    Ответ написан
    2 комментария
  • Python и web-разработка, с чего начать?

    @bromzh
    Drugs-driven development
    Читай документацию по джанге, тем более она есть и на русском. Примеры сайтов там тоже есть.
    Флакс проще как фреймворк, но на нём сложнее писать: надо самому организовывать структуру проекта, выбирать как хранить данные (SQL/NoSQL БД, файлы, ещё что-то), самому организовывать аутентификацию и т.д. Фласк гибче, но большие приложения на нём требуют бОльших знаний.
    А для джанги есть куча готовых решений, начинать лучше с неё
    Ответ написан
    Комментировать