Тема: CheckForUpdate
Показать сообщение отдельно
  #9  
Старый 19.02.2016, 22:45
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Цитата:
Сообщение от lmikle
смысл спрашивать был в следующем:
1. Может протормозил и пропустил какой-нить косяк
2. Оценить полезность не только для меня
3. Получить оценку фич/идей для развития
Посмотрел.
Честно говоря, слишком перемудрено и в куче функционала всего понемногу, что лишь ограничивает область функциональности объекта.
Всякие самодельные парсеры и всякую прикладную хрень желательно передавать внутрь класса/функции, так же поступить и с сетевыми компонентами.
Я вот захочу заюзать какой-то свой кастомный сетевой протокол (или какой-нибудь свой формат файла, например pdf), мне придется твой объект допиливать, чего не хотелось бы.
Если коротко, то какая цель этого компонента? Только сверить цифры версии? И как быть, если у меня версия не в виде «1.2.3.4» а что-нибудь типа «1.001.dev.alpha-1.3»?

З.Ы. Жесть
Код:
function TCheckForUpdate.IsSameVersions: Boolean;
begin
  If (Not FHasCurrentVersion) Or (Not FHasRemoteVersion)
    Then Result := False
    Else
      Begin
        Result := True;
        If vcMajor In FVersionChecks Then Result := Result And (FCurrentMajor = FRemoteMajor);
        If vcMinor In FVersionChecks Then Result := Result And (FCurrentMinor = FRemoteMinor);
        If vcRelease In FVersionChecks Then Result := Result And (FCurrentRelease = FRemoteRelease);
        If vcBuild In FVersionChecks Then Result := Result And (FCurrentBuild = FRemoteBuild);
      End;
end;

Извиняюсь за жесткую критику.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием