Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.10.2014, 15:15   #11
Alexandr17
Форумчанин
 
Регистрация: 10.12.2013
Сообщений: 227
По умолчанию

А как тогда. Все равно место для хранения данных должно быть. Ведь вопросы открываться будут поэтапно
Alexandr17 вне форума Ответить с цитированием
Старый 04.10.2014, 15:18   #12
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
я попробую массивный рекорд
Открой для себя XML. И забудь про те рекорды, о которых ты говорил.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.10.2014, 15:19   #13
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
А как тогда.
Это ж ООП! Юзай стандартные классы, это сильно упростит задачу и сократит код на порядок.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...

Последний раз редактировалось min@y™; 04.10.2014 в 15:26.
min@y™ вне форума Ответить с цитированием
Старый 04.10.2014, 15:21   #14
Alexandr17
Форумчанин
 
Регистрация: 10.12.2013
Сообщений: 227
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Открой для себя XML. И забудь про те рекорды, о которых ты говорил.
И что. Мне каждый раз вопрос грузить из xml. Посчитай сколько ресурсов будет браться
Либо создания типа загрузки и уничтожения для каждого вопроса (а если их там 100 и для каждого по 10 вариантов ответа или больше)
Либо все грузится 1 раз и хранится в программе. (тоесть в оперативки)
По мне так лучше 2 дабы сыкономить ресурсы.
Темболее xml сложноват. я предпочитаю ini файл.

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Это ж ООП! Юзай стандартные классы, это сильно упростит задачу и сократит код на орядок.
Я никогда не видил чтобы class был динамическим но дело в том что там процедур и функций не будет. смысла в класах нет если там только одни переменные.

Последний раз редактировалось Stilet; 04.10.2014 в 15:28.
Alexandr17 вне форума Ответить с цитированием
Старый 04.10.2014, 15:32   #15
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Мне каждый раз вопрос грузить из xml.
Почему каждый раз? Один раз загрузи и работай.
Цитата:
Посчитай сколько ресурсов будет браться
Сколько?
Цитата:
а если их там 100 и для каждого по 10 вариантов ответа или больше
И что? У меня база в XML более 100МБ. И никаких проблем работы с ней нет.
Цитата:
По мне так лучше 2 дабы сыкономить ресурсы.
Много не сэкономишь. Имей это ввиду.
Цитата:
Темболее xml сложноват.
http://www.programmersforum.ru/showthread.php?p=929158
Не вижу сложностей. Такой же проход по узлам как и в БД как и в ИНИ.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.10.2014, 15:33   #16
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Либо все грузится 1 раз и хранится в программе. (тоесть в оперативки)
По мне так лучше 2 дабы сыкономить ресурсы.
Темболее xml сложноват. я предпочитаю ini файл.
Xml, ini - это только способы хранения инфы на носителе. Главное - работа с данными в памяти.
Цитата:
Я никогда не видил чтобы class был динамическим но дело в том что там процедур и функций не будет. смысла в класах нет если там только одни переменные.
Рукалицо...
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 06.10.2014, 08:49   #17
IliaIT
Форумчанин
 
Аватар для IliaIT
 
Регистрация: 17.03.2009
Сообщений: 977
По умолчанию

вот теперь пора прочитать хотя бы главу в книжке по дельфи про базы данных. во первых вы получите преимущество по количеству вопросов, во вторых можите легко отбирать только нужные вопросы, в третьих ответы можно хранить зашифрованными по умолчанию стандартными средствами. а дальше адо и его продолжение выборка и сортировка. грузить можно хоть всё сразу хоть по частям.
Интуитивно понятный интерфейс - это такой интерфейс, для работы с которым нужна недюжинная интуиция.
IliaIT вне форума Ответить с цитированием
Старый 06.10.2014, 13:00   #18
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Лучше всего будет определить все типы(а их всего два: Простые и Дробные числа) в один: Массив байтов. Так как всё в Windows исходит из байтов.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.
саша40 вне форума Ответить с цитированием
Старый 06.10.2014, 14:19   #19
JUDAS
фонатик DELPHI
Форумчанин
 
Аватар для JUDAS
 
Регистрация: 14.01.2008
Сообщений: 714
Радость

Цитата:
Сообщение от Stilet Посмотреть сообщение
Открой для себя XML. И забудь про те рекорды, о которых ты говорил.
Однажды попробовал. Загрузил 50 МБ файл и ПК умер, после того технологию XML использую только в исклбчительных случаях.
-------------------
Товарищу автору темы. С динамическими массивами (любой степени вложенности) я работаю уже 11 лет.
Вот тебе примеры

Код:
TVertex3d = packed record
  case byte of
   0: (x,y,z :double);
   1: (B,L,H :double);
   2: (dmp : array[0..2] of double;
end;

TMetric = packed record
  Closed : boolean;
  Vertex : array of TVertex3d;
end;
TArrayMetric = array of TMetric;

TAttribute = paced record
  attrType : byte;
  attrName : array[0..31] of char;
  Value      : array[0..127] of char;
end;
TAttributeList = array of TAttribute;

TMapObject = packed record   // объект карты
  name : array[0..31] char; 
  code : array[0..15] char;
  Metric : TArrayMetric;
  Attributes : TAttributeList;
end;
TMapObjectList = array of TMapObject;


Использование

procedure SetVertex(x,y,z : double) : TVertex3d;
begin
  result.x := X;
  result.y := Y;
  result.z := Z;
end;

1. Создание нового объекта
function AddObject(var ObjList : TMapObjectList) : integer;

begin
   SetLength(ObjList, Length(ObjList)+1);
   result := High(ObjList);

  // ObjList[result] наш текущий объект в массиве объектов

   FillChar(ObjList[result] , SizeOf(TMapObject),0);
   SetLength(ObjList[result] .Metric, 2); 

   SetLength(ObjList[result] .Metric[0].Vertex, 4); // контур объекта
   ObjList[result].Metric[0].Vertex[0] := SetVertex(10,2,0);
   ObjList[result].Metric[0].Vertex[1] := SetVertex(6,5,0); 
   ObjList[result].Metric[0].Vertex[2] := SetVertex(12,-4,0);
   ObjList[result].Metric[0].Vertex[3] := SetVertex(9,8,0); 
   Obj.Metric[0].Closed := true;

   SetLength(ObjList[result] .Metric[1].Vertex, 1); // точка вставки подписи объекта
   ObjList[result] .Metric[1].Vertex[0] := SetVertex(20,20,0); 

 
   SetLength(ObjList[result] .Attributes, 2);
   ObjList[result] .Attributes[0].attrType := 12;
   StrPLCopy(ObjList[result] .Attributes[0].attrName, 'название', 31);
   StrPLCopy(ObjList[result] .Attributes[0].Value, 'Здание горсовета', 127);

   ObjList[result] .Attributes[1].attrType := 12;
   StrPLCopy(ObjList[result] .Attributes[1].attrName, 'адрес', 31);
   StrPLCopy(ObjList[result] .Attributes[1].Value, 'ул.Ленина д.2', 127);

end;

2. Очистка  объекта
procedure ClearObject(var Obj : TMapObject);
var i : integer;
begin
  Finalize(Obj.Attributes);
  for i:=0 to length(Obj.Metric)-1 do
    Finalize(Obj.Metric[i].Vertex);
  Finalize(Obj.Metric)l
  FillChar(ObjList[result] , SizeOf(TMapObject),0);
end;
ДЕРЗАЙТЕ !
95% сбоев и ошибок приложений, находится в полу метрах от монитора
JUDAS вне форума Ответить с цитированием
Старый 06.10.2014, 22:03   #20
JUDAS
фонатик DELPHI
Форумчанин
 
Аватар для JUDAS
 
Регистрация: 14.01.2008
Сообщений: 714
По умолчанию

Цитата:
Сообщение от Alexandr17 Посмотреть сообщение
И что. Мне каждый раз вопрос грузить из xml.
Я никогда не видил чтобы class был динамическим но дело в том что там процедур и функций не будет. смысла в класах нет если там только одни переменные.
я не буду комментировать так как это сделал мой предшественник выше, а задам пару логических вопросов в ответе которых ты заметишь "динамический массив" с классами
1. как устроен чат ?
2. как устроен многонитевой (многопоточный - так понятней начинающим) обработчик файла, например, DownloadMaster ?
3. как устроен вычислитель в сложной системе, который базируется на нескольких ПК ?
4. как устроена СУБД, к которой подключаются дестяки (сотни) сессий?
5. как устроены сервера ?
и.т.п
Вот подумай, как связан управляющее ядро с каждым внешним элементом.
95% сбоев и ошибок приложений, находится в полу метрах от монитора
JUDAS вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические классовые типы Sane444ka Помощь студентам 0 12.01.2011 12:41
Динамические типы данных(список) Legky Помощь студентам 4 03.01.2011 19:21
Можно ли делать в Excel отчет в типе как Delphi или Foxpro? Aqil_f Microsoft Office Excel 2 09.12.2010 07:54
Динамические классовые типы Serzhi1 Общие вопросы C/C++ 2 08.01.2009 02:12