Политика конфиденциальностиКонтактыО сайтеОтзывыGitHubDonate
© EVILEG 2015-2018
Рекомендует хостинг
TIMEWEB
6 января 2019 г. 12:03

Flutter

Android, Flutter, Hello World

Flutter - это свежий фреймворк от компании Google для разработки приложений для Android и iOS. Используемый язык программирования - Dart (также разрабатывается компанией Google).

Разберёмся с запуском нашего первого приложения на Flutter.

5 января 2019 г. 14:49

Django

templatetags, template, Django

В Django - Урок 035. Различные шаблоны для рендеринга разных типов контента в поисковой выдаче было показано, как сделать рендеринг различных шаблонов в зависимости от того, какой тип контента отрисовывается в поисковой выдаче на сайте. При этом ключевым моментом являлось то, что не приходилось делать проверочные условия для выбор шаблона. Информация о шбалоне хранилась в переменной TEMPLATE_PREVIEW, через которую шаблон подставлялся в include тег в шаблоне Django.

{% include object.TEMPLATE_PREVIEW %}

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

Решить данную проблему удалось с помощью кэширования шаблона на уровне класса в качестве классовой переменной.

4 января 2019 г. 7:55

Linux

snap

Всех приветствую на продолжении темы работы со snap пакетами. Очень часто бывает так, что разработчику требуется узнать все зависимости приложения. И это не просто узнать, имеет ли одна библиотека в зависимости другую.

28 декабря 2018 г. 14:09

Boost

Boost, threads, chrono

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

Например, программа запускается и делает 10 отсчётов в течение 10 секунд, при этом программа будет выводить информацию о номере отсчёта в консоль.

Работа программы будет выглядеть следующим образом.

Выполнение периодический задачи в консольном приложении

27 декабря 2018 г. 6:53

Android

Memory leaks, garbage collection, Java

Что такое Утечки памяти (Memory leaks) в Андроид разработке ?

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

Почему так происходит ?

Java имеет собственные средства очистки памяти от неиспользуемых элементов. Это garbage collection .

Сборщик мусора помечает все объекты, которые можно удалить, если на них нет ссылок. Memory leak - это как раз потерявшаяся ссылка, которая показывает, что объект удалить нельзя.

Сложность этого бага заключается в том, что до определенного времени его не видно и он может не мешать.
Есть хорошая цитата Бенджамина Франклина “Маленькая течь топит большой корабль." Утечки памяти съедают оперативную память приложения. Количество неочищенной памяти будет расти и однажды может привести к тому, что ваше приложение начнет тормозить и крашиться . Что приведет к недовольству пользователей и, скорее всего, приложение будет удалено...

26 декабря 2018 г. 4:35

Django

кэши, django, теги, шаблоны

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

17 декабря 2018 г. 17:51

Django

Image, Django, avatar

Для улучшения возможности отображения информации о пользователях в административной панели сайта, реализовал возможность отображения аватаров пользователей, как в специальной модели UserProfile, которая имеет One-To-One отношение к модели User, так и в самой модели User добавил отображение аватарки через inline форму.

Выглядит это следующим образом:

Список пользовательских профилей

Список пользовательских профилей

17 декабря 2018 г. 6:33

Linux

snap

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

14 декабря 2018 г. 12:48

MySQL

procedure, mysql

Доброго времени суток.

Создаю приложение График дежурств для нашей горячей линии техподдержки, использую Qt + MySQL. На каждый месяц необходимо помесячно заполнять таблицу calendar содержащую дату и признак выходного или рабочего дня.

13 декабря 2018 г. 21:13

Qt

QTextEdit, Qt

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

Для реализации подобного функционала потребуется использовать QSyntaxHighighter , как если бы писали подсветку синтаксиса кода. Вот здесь кстати пример подсветки синтаксиса кода для HTML .

А вот так будет выглядеть пример.

Search text highlight

МБ
21 апреля 2019 г. 9:40
Моисей Бушуев

Qt - Тест 001. Сигналы и слоты

  • Результат:0баллов,
  • Очки рейтинга-10
AA
17 апреля 2019 г. 19:40
Anton Ablin

Qt - Тест 001. Сигналы и слоты

  • Результат:73баллов,
  • Очки рейтинга1
E
17 апреля 2019 г. 18:16
Evgeny

Qt - Тест 001. Сигналы и слоты

  • Результат:100баллов,
  • Очки рейтинга10
Последние комментарии
21 апреля 2019 г. 16:22
Евгений Легоцкой

Через метод setIcon table.horizontalHeaderItem(0).setIcon("qrc://path/to/icon.png")
21 апреля 2019 г. 15:48
Евгений Легоцкой

Добрый день! Спасибо за комментарий. Там действительно лучше будет сделать с инициализацией по умолчанию.
U
18 апреля 2019 г. 15:37
Unreal_man

А как иконку в хедер задать?
u
18 апреля 2019 г. 2:15
uaa

доброго времени,большое спасибо за пример для начинающего)при адаптации к своему проекту столкнулся с таким ньансом:в vepolyline.h в 47 строке нужна инициализация по умолчанию: int m_pointF...
E
11 апреля 2019 г. 12:49
Evgeny

Спасибо за ответ) У меня компоновщик на нее ругался просто. Оказалось, просто забыл Q_OBJECT в начале класса указать.
Сейчас обсуждают на форуме
23 апреля 2019 г. 18:39
BlinCT

Вопрос закрыт) проблема найдена
21 апреля 2019 г. 16:16
Евгений Легоцкой

Приветствую Нужно сохранять где-то выбранное значение, а потом восстанавливать его. Или использовать QSettings или добавить метод open(), в который передавать начальные значения для того...
R
19 апреля 2019 г. 9:55
RED_Spider

мені важко це зараз навіть перевірити, тому що знайшов коміт, це ще було в 2016 році, і цей код не буде працювати коректно зараз, єдине скажу що це були QThread
i
17 апреля 2019 г. 15:03
ilya.guzikov

BlinCT, на стороне ++ это делать необходимо так как в qml при использовании функции append происходит перерисовка всех точек лини(как я понимаю) и из-за этого при использовании больших массиво...
Присоединяйтесь к нам в социальных сетях

Для зарегистрированных пользователей на сайте присутствует минимальное количество рекламы