Найдено результатов: 24

Проверка данных в Getter/Setter или где-то еще?

Мне интересно, насколько это хорошая идея - делать проверки в геттерах и сеттерах или где-то еще в коде.

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

optimization   setter   getter   verification    

508   8   16:03, 1st July, 2020


Проверка содержимого строки? длина строки Против пустой строки

Что более эффективно для компилятора и как лучше всего проверить, является ли строка пустой?

  1. Проверка, соответствует ли длина строки = = 0
  2. Проверка пустоты строки (strVar == "")

Кроме того, зависит ли ответ от языка?

string   optimization   language-agnostic   compiler-construction    

530   13   21:06, 1st October, 2020


Ускорение работы веб-сайта или приложения ASP.Net

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

Что я хотел бы сделать, так это сделать мою заявку как можно более компактной и быстрой, когда я ее доставлю. Одна из идей заключается в том, чтобы установить даты истечения срока действия для всех статических ресурсов сайта, чтобы они не вызывались при загрузке страницы. Под ресурсами я подразумеваю изображения, связанные таблицы стилей и исходные файлы JavaScript. Есть ли простой способ сделать это?

Какие еще существуют способы оптимизации веб-сайта .Net?

UPDATE: Я запустил YSlow на сайте, и области, где я получаю удар сильнее всего, находятся в количестве загружаемых JavaScript и таблиц стилей (23 JS файла и 5 таблиц стилей). Все, кроме одного (основная таблица стилей), были вставлены Ajax.net и Asp. Почему их так много?

asp.net   ajax   optimization   performance    

499   12   07:35, 4th August, 2020


Как перегрузить std::swap()

std::swap() используется многими контейнерами std (такими как std::list и std::vector ) во время сортировки и даже назначения.

Но реализация std swap() является очень обобщенной и довольно неэффективной для пользовательских типов.

Таким образом, эффективность может быть получена путем перегрузки std::swap() с помощью специальной реализации пользовательского типа. Но как вы можете реализовать его так, чтобы он был использован контейнерами std?

c++   performance   optimization   stl   c++-faq    

522   4   21:43, 23rd August, 2020


Разница в скорости использования встроенных строк против конкатенации в php5?

(предположим, php5) рассмотрим

<?php

    $foo = 'some words';

    //case 1
    print "these are $foo";

    //case 2
    print "these are {$foo}";

    //case 3
    print 'these are ' . $foo;
?>

Есть ли большая разница между 1 и 2?

Если нет, то как насчет между 1/2 и 3?

php   optimization   performance    

379   0   11:32, 9th August, 2020


Настройка производительности 64bit .NET

Я знаю, что .NET -это JIT , скомпилированный в архитектуру, на которой вы работаете непосредственно перед запуском приложения, но оптимизирует ли компилятор JIT для 64-битной архитектуры вообще?

Есть ли что-то, что нужно сделать или рассмотреть при программировании приложения, которое будет работать на 64bit system ? (т. е. улучшит ли использование Int64 производительность и сможет ли компилятор JIT автоматически заставить Int64 работать на 32-битных системах?)

.net   performance   optimization   64-bit   jit    

529   5   09:34, 9th August, 2020


Оптимизация алгоритма поиска в C

Может ли производительность этого последовательного алгоритма поиска (взято из Практика программирования) может быть улучшена с помощью любой из собственных утилит C, например, если я установил переменную i в качестве переменной регистра ?

int lookup(char *word, char*array[])
{
    int i

    for (i = 0; array[i] != NULL; i++)
        if (strcmp(word, array[i]) == 0)
            return i;

    return -1;
}

c   performance   algorithm   optimization    

480   10   06:55, 15th August, 2020


Каков наиболее эффективный способ для плавающего и двойного сравнения?

Каков был бы наиболее эффективный способ сравнить два значения double или два значения float ?

Просто делать это неправильно:

bool CompareDoubles1 (double A, double B)
{
   return A == B;
}

Но что-то вроде:

bool CompareDoubles2 (double A, double B) 
{
   diff = A - B;
   return (diff < EPSILON) && (-diff < EPSILON);
}

Похоже на переработку отходов.

Кто-нибудь знает более умный поплавковый компаратор?

c++   algorithm   optimization   floating-point    

719   25   20:10, 29th August, 2020


Элегантный способ удаления элементов из последовательности в Python?

Когда я пишу код в Python, мне часто нужно удалить элементы из списка или другого типа последовательности на основе некоторых критериев. Я не нашел решения, которое было бы элегантным и эффективным, так как удаление элементов из списка, который вы сейчас просматриваете, плохо. Например, вы не можете этого сделать:

for name in names:
    if name[-5:] == 'Smith':
        names.remove(name)

Я обычно заканчиваю тем, что делаю что-то вроде этого:

toremove = []
for name in names:
    if name[-5:] == 'Smith':
        toremove.append(name)
for name in toremove:
    names.remove(name)
del toremove

Это неэффективно, довольно уродливо и, возможно, глючно (как он обрабатывает несколько записей 'John Smith'?). Есть ли у кого-нибудь более элегантное решение или, по крайней мере, более эффективное?

Как насчет того, что работает со словарями?

python   optimization   set   series    

530   14   07:59, 2nd August, 2020


Утечек памяти .NET

Назовите все возможные способы, с помощью которых мы можем получить утечку памяти .NET?

Я знаю о двух из них:

  1. Неправильно не регистрируются обработчики/делегаты событий .
  2. Отказ от использования динамических дочерних элементов управления в формах Windows:

Пример:

// Causes Leaks  
Label label = new Label();  
this.Controls.Add(label);  
this.Controls.Remove(label);  

// Correct Code  
Label label = new Label();  
this.Controls.Add(label);  
this.Controls.Remove(label);  
label.Dispose();

Обновление: идея состоит в том, чтобы перечислить общие подводные камни, которые не слишком очевидны (например, выше). Обычно считается, что утечки памяти не являются большой проблемой из-за сборщика мусора. Не так, как это было раньше в C++.


Отличная дискуссия, ребята, но позвольте мне уточнить... по определению, если в .NET не осталось ссылки на объект, он будет в какой-то момент собран как мусор. Так что это не способ вызвать утечку памяти.

В управляемой среде я бы счел это утечкой памяти, если бы у вас была непреднамеренная ссылка на какой-либо объект, о котором вы не знаете (отсюда два примера в моем вопросе).

Итак, каковы различные возможные способы, которыми может произойти такая утечка памяти?

.net   optimization   memory-leaks    

472   14   09:49, 17th August, 2020


Самый эффективный способ объединения строк?

Каков наиболее эффективный способ объединения строк?

c#   .net   string   optimization    

450   17   21:55, 26th August, 2020


Лучше ли структурировать таблицу SQL, чтобы иметь совпадение, или не возвращать результат

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

Я использую простой параметр Разрешить или запретить для каждого 'Resource' или экрана.

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

У меня есть два подхода к этому в виду, и мне было любопытно, что было бы лучше для сервера SQL с точки зрения производительности.

Опция A наличие записи в таблице доступа означает, что доступ разрешен. Для этого не потребуется столбец в базе данных для хранения информации. Если результаты не возвращаются, то доступ запрещен.

Я думаю, что это будет означать меньшую таблицу, но будут ли запросы искать всю таблицу, чтобы определить, что нет соответствия?

Опция B битовый столбец включен в базу данных, которая управляет Allow/Deny. это будет означать, что всегда есть результат, который нужно найти, и делает для большей таблицы.

Мысли?

sql   sql-server   optimization    

448   4   21:05, 27th August, 2020


Есть ли разница в производительности между i++ и ++i в C?

Есть ли разница в производительности между i++ и ++i , если результирующее значение не используется?

c   performance   optimization   post-increment   pre-increment    

494   13   22:11, 4th August, 2020


Что является оптимальным? UNION ВС, где в (str1 выглядит следующим образом, стр2, стр3)

Я пишу программу, которая отправляет email в определенное локальное время клиента. У меня есть.NET метод, который принимает timezone & времени и назначения timezone и возвращает время в этом timezone. Поэтому мой метод состоит в том, чтобы выбрать каждый отдельный timezone в базе данных, проверить, правильно ли это время с помощью метода, а затем выбрать каждого клиента из базы данных с этим timezone(s).

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

SELECT email FROM tClient WHERE timezoneID in (1, 4, 9)

или

SELECT email FROM tClient WHERE timezoneID = 1
    UNION ALL SELECT email FROM tClient WHERE timezoneID = 4
    UNION ALL SELECT email FROM tCLIENT WHERE timezoneID = 9

Изменить: timezoneID-это внешний ключ к tTimezone, таблица с первичным ключом timezoneID и полем varchar (20) timezoneName.

sql   optimization    

447   7   01:57, 4th August, 2020


Получение всех типов, реализующих интерфейс

Используя отражение, как я могу получить все типы, которые реализуют интерфейс с C# 3.0/.NET 3.5 с наименьшим количеством кода и минимизацией итераций?

Вот что я хочу переписать:

foreach (Type t in this.GetType().Assembly.GetTypes())
    if (t is IMyInterface)
        ; //do stuff

c#   optimization   reflection   lambda   c#-3.0    

458   13   14:02, 11th August, 2020


Оптимизация для низкой пропускной способности

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

Теперь мне разрешено использовать Flash и / или Silverlight, если это поможет с ограниченным временем разработки и пользовательским опытом.

Тяжелая часть географических данных разделена на плитки и загружена, как плитки карты в Google Maps, но это означает, что мне нужно много запросов HTTP.

Должен ли я пойти только с javascript + HTML? Я бы в конечном итоге с более быстрым приложением относительно Flash/Silverlight?, так как я могу сделать какой-то сложный алгоритм на этих 2 технологиях (например, DeepZoom). Развертывание настольного приложения, хотя, не может быть и речи, так как у нас нет столько средств на техническое обслуживание.

Это просто должно быть быстро... действительно быстрый..

p. s. быстрее в смысле "download faster"

optimization   networking   web-applications    

446   5   16:36, 29th August, 2020


Ограничить скорость на выполнение определенных внешних запросов?

Здравствуйте!

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


UPD:

Интересует с помощью каких серверных технологий такое можно реализовать — возможно через nginx или apache или юниксовые утилиты как-то можно ограничить определенные запросы? Или нужно пропускать подобные запросы через самописную утилитку и там, на уровне системы обрезать скорость? Как это лучше сделать? Дописать что-то не проблема, хотелось бы понять теорию. Задача, думаю, ясна.


Сейчас продумывается архитектура веб-приложения, поэтому на каком интерпретируемом языке будет написан движок, думаю, роли не играет. Допустим пока на PHP.


За ссылки по теме тоже буду очень благодарен.


Спасибо.

Client   side   optimization    

299   1   13:11, 5th August, 2020


Снизить обороты HDD (уменьшить шум)?

Есть ли утилиты для снижение шумности хдд?

Сегейт, самсунг.

Жёсткие   диски   Client   side   optimization    

522   7   23:41, 19th August, 2020


Клиент постоянно требует консультаций(бесплатных), как быть?

Сначала на этапе разработки сайта клиент постоянно мучал вопросами о сайте, о движке, о хостинге. Причём явно было видно что ему эти ответы нужны просто так, для интереса. Человек совершенно в этом всём не разбирается. Теперь когда настало время поисковой оптимизации клиент вообще залез на шею с вопросами «а почему так, а почему не так, объясните мне что вы делаете, зачем вы это делаете, как вы это делаете...». При попытке отказать в ответе получаешь кучу криков вида «Я ваш клиент, я деньги плачу! Я хочу знать что происходит с моим сайтом!». Сейчас на все эти разговоры тратится около 2х — 3х часов в день. Естественно, за это время никто и не думает ничего платить. Вот мне интересно, уважаемое хабрасообщество, как вы реагируете на такие случаи?

Организация   работы   Client   side   optimization    

339   10   00:45, 7th August, 2020


Оптимизация формы выдачи новостей, повредит или поможет сайту?

Сейчас на сайте около 300 новостных статей, собранных за несколько лет работы сайта.

Новости выводятся как www.mysite.com/news.php?id=299

Хочу сделать по-уму: www.mysite.com/news/my-mega-novost.htm

Технически я знаю как это сделать, вопрос не в том.


Хотелось бы узнать вот что:

1) Не повредит ли сайту такая рокировка с точки зрения поисковиков? Насколько я понимаю, сейчас все мои 300 статей проиндексированы как ?id=xxx.

2) У меня будут работать оба метода вызова статьи. Получается дублирование контента, что по идее тоже плохо…

Как в данной ситуации поступить грамотно? Читал про какую-то ошибку 303, но ничего не понял.



Разработка проекта на разных компьютерах

Есть проект — сайт, хостится на виртуальном хостинге.
Его разработка ведется одним человеком (мной =) на макбуке и большом домашнем desktop'е. Иногда надо что-то сделать в дороге, делаю на макбуке и потом фтп заливаю на фтп хостинга. Дома на десктопе приходится сливать с хостинга себе обратно и работать дальше.

Какое средство можете посоветовать, чтобы оптимизировать эту схему с меньшими затратами (работать в дороге, грузить с/на фтп и т.д)?

З.Ы. Важно удобство и на Mac, и на Windows. И попроще желательно…



Выжать все соки из VPN на Linksys WRT54GL?

Всем привет.

Недавно поймал себя на мысли, что после подключения к интернету через вышеупомянутый роутер по L2TP, скорость закачки не выше 10Мбит/сек из 25Мбит/сек возможных.

Если подключать компьютер без роутера — все хорошо, и скорость доступна вся (25Мбит/сек).


Роутер Linksys WRT54GL с родной прошивкой, актуальная версия.


Пробовал ставить Tomato — не заметил особых изменений скорости, но роутер периодически стал подвисать. С DD-WRT что-то подобное наблюдалось.


Есть ли возможность выжать больше скорости из роутера?

VPN   Linksys   Прошивка   Client   side   optimization    

328   2   01:41, 1st August, 2020


Разделять ли содержимое объекта и данные по его расположению в иерархии?

Звучит наверное не совсем понятно, поэтому поясню:

Пусть у нас есть дерево комментариев (Nested Sets или еще что-то, в принципе не важно). Стоит ли выносить поля, не относящиеся напрямую к комментариям (lft, rgt, parent_id и т.д.) в отдельную таблицу БД? С одной стороны, мы избавляемся от привязки к конкретной структуре комментариев (всегда можно поменять NS на MP или еще что-то), а с другой — появляются сложности с объединением этих таблиц.



Можно ли отправить магнит по почте?

Провожу конкурс и разыгрываю магниты на холодильник. Можно ли отправить по почте, например, 100 писем с магнитами. В каждом конверте по 1 магниту. Не противоречит ли это каким-нибудь правилам или законам?
И как лучше это сделать, чтобы письма не слиплись при отправке?

Client   side   optimization    

778   8   21:06, 1st October, 2020