Форум: "Прочее";
Текущий архив: 2011.03.20;
Скачать: [xml.tar.bz2];
Внизсохранение настроек Найти похожие ветки
← →
stenfit (2010-12-06 18:50) [0]актуально ли сейчас хранить настройки в ini-файлах?
← →
xayam © (2010-12-06 18:55) [1]если только ini удаленный :)
у себя уже никто не хранит :)
← →
Anatoly Podgoretsky © (2010-12-06 19:41) [2]> stenfit (06.12.2010 18:50:00) [0]
Если данные простые то можно.
← →
Ega23 © (2010-12-06 20:00) [3]Хранилище как хранилище, имеет свои плюсы и свои минусы.
← →
Dimka Maslov © (2010-12-06 20:05) [4]актуально их хранить в папке с данными пользователя. А формат - вторичен.
← →
Kerk © (2010-12-07 01:18) [5]В этом сезоне актуально хранить настройки в реестре.
← →
Германн © (2010-12-07 01:26) [6]На вкус и цвет...
← →
Германн © (2010-12-07 01:32) [7]
> Dimka Maslov © (06.12.10 20:05) [4]
>
> актуально их хранить в папке с данными пользователя.
Пожалуй это единственное неудобство в использовании ини-файлов сейчас.
← →
Eraser © (2010-12-07 01:49) [8]> [0] stenfit (06.12.10 18:50)
актуально хранить в XML, т.к. будет проще внедрять кроссплатформенность в будущем.
← →
Германн © (2010-12-07 02:20) [9]
> Eraser © (07.12.10 01:49) [8]
И та же проблема останется с тем, где этот XML хранить.
<offtop>
Кстати мне почему-то аббревиатура XML уже давно вызывает ассоциации с неким "просторечивым" нашим словом. Нужно только добавить две гласные. :)
</offtop>
P.S. Если я перешел границы допустимого оффтопа, модераторы удалят это сообщение.
P.P.S.
Данное слово найдено только в
"С.И. Ожегов, Н.Ю. Шведова
Толковый словарь русского языка"
Во всех прочих уважаемых словарях его нет.
← →
Eraser © (2010-12-07 03:07) [10]> [9] Германн © (07.12.10 02:20)
> И та же проблема останется с тем, где этот XML хранить.
никакой проблемы нет, хранить в специальном каталоге, предназначеном для файлов настроек.
← →
Германн © (2010-12-07 03:31) [11]
> Eraser © (07.12.10 03:07) [10]
>
> > [9] Германн © (07.12.10 02:20)
>
>
> > И та же проблема останется с тем, где этот XML хранить.
>
>
> никакой проблемы нет
Ты забыл про суть ini-файлов! Эти файлы в старых версиях Винды хранились там, (как правило), где их Винда легко находила. И таких мест было много, где винда искала, находила и позволяла изменять эти файлы.
Насколько я знаю, сейчас (Vista + 7) таких мест просто нет.
Т.е. всё что мы можем, мы и должны сами реализововать.
> хранить в специальном каталоге, предназначеном для файлов
> настроек.
А это какой каталог?
А ну да. Личный каталог пользователя или общий каталог всех пользователей.
Тогда я голосую за файл *.dat
← →
Eraser © (2010-12-07 04:06) [12]> А ну да. Личный каталог пользователя или общий каталог всех
> пользователей.
>
> Тогда я голосую за файл *.dat
не вижу логики. хотя какая разница, какое расширение.
> Ты забыл про суть ini-файлов!
суть у них одна - хранить настройки в текстовом файле. тогда модно было так. да и для пользователей просто, если подправить что-то вручную надо. а ini-просто один из стандартов тех времен.
а сейчас времена другие.
← →
Германн © (2010-12-07 04:20) [13]
> не вижу логики. хотя какая разница, какое расширение.
А тут логика простая. Для ini-файлов в Windows есть/был встроенный механизм работы с ними. Вспомни, что изначально, для ini-файлов достаточно было указать только имя файла (без пути к нему).
> суть у них одна - хранить настройки в текстовом файле
Это только одна из особенностей. Вспомни средства Дельфи для "особой" работы с такими файлами.
Дык, мне тогда проще формировать свой файл настроек, не оглядываясь на ОС.
← →
Eraser © (2010-12-07 04:29) [14]> [13] Германн © (07.12.10 04:20)
> Дык, мне тогда проще формировать свой файл настроек, не
> оглядываясь на ОС.
я про это же. только зачем изобретать велосипед, т.е. свой формат? есть xml, для работы с ним есть удобные библиотеки практически на всех ЯП.
вообще в связке Delphi + Windows вижу 2 способа, которые имеет смысл использовать для хранения настроек - XML и стандартный механизм сериализации компонентов. каждый из способов имеет свои явные плюсы и явные же минусы. другой вопрос - где хранить эти настройки. здесь практически без вариантов - либо реестр, либо файлы (с специальном, отведенном системой каталоге).
← →
Германн © (2010-12-07 04:30) [15]<offtop>
Ну и в добавок.
Преклоняясь пред мудростью авторов Windows, я всё же сомневаюсь, что они смогут реализовать свой реестр так, чтобы эта их псевдо-БД работала и через 10 лет.
</offtop>
← →
Германн © (2010-12-07 04:36) [16]
> Eraser © (07.12.10 04:29) [14]
>
> > [13] Германн © (07.12.10 04:20)
>
>
> > Дык, мне тогда проще формировать свой файл настроек, не
> > оглядываясь на ОС.
>
> я про это же. только зачем изобретать велосипед, т.е. свой
> формат? есть xml
Ну Леш, я ещё не достиг пока такого уровня, чтобы набор сырых записей и простых полей формировать в XML. Тем более, что у меня нет денег, чтобы нанять в качестве учителя Медвежонка. :)
← →
Eraser © (2010-12-07 04:40) [17]> [16] Германн © (07.12.10 04:36)
> ещё не достиг пока такого уровня, чтобы набор сырых записей
> и простых полей формировать в XML
набор сырых записей или полей думаю лучше хранить в SQL формате ;-)
← →
Германн © (2010-12-07 04:49) [18]
> Eraser © (07.12.10 04:40) [17]
>
> > [16] Германн © (07.12.10 04:36)
>
>
> > ещё не достиг пока такого уровня, чтобы набор сырых записей
> > и простых полей формировать в XML
>
> набор сырых записей или полей думаю лучше хранить в SQL
> формате ;-)
Ты почти угадал.
Набор хочу сохранять в "CSV"-файле.
Светлой памяти Vit, называл эту БД, как приемлемую.
Давно это было, но не настолько давно.
← →
Ega23 © (2010-12-07 07:20) [19]
> а сейчас времена другие.
Какие?
← →
han_malign (2010-12-07 13:26) [20]
> актуально хранить в XML, т.к. будет проще внедрять кроссплатформенность в будущем.
- то есть "[valume1]\r\nparam1=value1\r\n", с тупым линейным парсером - ни разу не кросс-платформенно?
Чтоб быть рядах кросс-носцев надо - на пару десятков слабо-связных параметров - обязательно добавить сотню дополнительных символов, затем ради экономии десятка байт и чистоты DOM структуры удалить все незначащие линейные пробелы и выяснить в каких случаях этот DOM-провайдер не падает???
А... - чуть не забыл, еще обязательно x-path прикрутить, иначе совсем за деревенщину неумытую сойдешь...
← →
Eraser © (2010-12-07 14:06) [21]> [19] Ega23 © (07.12.10 07:20)
сейчас MS не рекомендует хранить настройки в системных каталогах, а windows, в ряде случаев, это и не позволяет делать.
> [20] han_malign (07.12.10 13:26)
автор вопроса и не уточнаял, что там за настройки, сколько их и как они структурированы.
я никого не переубеждаю и не наставляю на путь истинный. нравится технология 30 летней давности - флаг в руки, только потом не надо удивлятся, когда злой дядя заставит все переделывать.
← →
sniknik © (2010-12-07 14:26) [22]> нравится технология 30 летней давности
нравится не нравится, какая разница? во многих случаях ini удобнее, так же как хранение его рядом с программой а не "в местах для этого отведенных".
и что с пользователем не делай, он все одно пытается в настройки блокнотом влезть (т.е. xml ему не будет так уж удобен).
ну например у нас практикуется установка программы на сервере, с запуском оттуда, т.е. если класть настройки в реестр/каталог пользователя/... то придется настраивать программу на каждой машине. что для админов напряжно.
а так, настройки программы в ini рядом, настройки интерфейса(/юзерские) в базе и не зависят от того на какой машине юзер прогу запускает. и все довольны.
> флаг в руки, только потом не надо удивлятся, когда злой дядя заставит все переделывать.
если сделать как тут рекомендуют некоторые, то толпа злых дядь заставит переделывать прямо сейчас... а "потом" может и не настанет.
← →
DiamondShark © (2010-12-07 14:47) [23]
> нравится технология 30 летней давности
А кодировке ASCII вообще пятьдесят лет. Фтопку её!
А паскалю сорок. Только старые маразматики пишут на паскале.
Ах, да. Объектно-ориентированному программированию тоже под сорок. FFFFFFFFUUUUUUUUUUUUUUU!!!!!!!!!!!!!!!!!!!!!!!
Как же маркетоиды людям моск загадили...
← →
DiamondShark © (2010-12-07 14:50) [24]
> ну например у нас практикуется установка программы на сервере,
> с запуском оттуда, т.е. если класть настройки в реестр/каталог
> пользователя/... то придется настраивать программу на каждой
> машине. что для админов напряжно.
Дикие у вас какие-то админы. Видимо, от слов active directory и roaming profile шарахаются, нервно крестясь и сплёвывая через плечо.
← →
Маркетоид (2010-12-07 14:55) [25]Работая с xml через dom получаешь неоспоримую выгоду, если конечно вкурил всю мощь и гибкость которая доступна тебе.
Считав из ини значение, ты получаешь всего лишь значение.
Найдя в xml узел, ты получаешь как само значение(я), так и структуру, которую можно использовать в качестве параметров процедур/функций.
Один раз считал, затем передал куда-то. Обработал, сохранил в нее же (структуру) передал дальше если надо.
В конце вызвал save и все.
А используя ини всякий раз моделируешь в паскале структуры/классы для поддержки структур данных, хранимых в ини. И бесконечные километры кода по перегонке данных из ини в структуры паскаля и обратно.
Романтика!
← →
Ega23 © (2010-12-07 14:55) [26]
> сейчас MS не рекомендует хранить настройки в системных каталогах,
> а windows, в ряде случаев, это и не позволяет делать.
А кто говорит про системный каталог?
← →
Jeer © (2010-12-07 16:07) [27]
> Романтика!
Бред.
← →
Маркетоид (2010-12-07 16:16) [28]Бред.
Давай так.
Допустим есть приложение работающее с БД.
Серверов несколько.
Требуется хранить настройки подключения ко всем серверам и ид последнего сервера (с которым работали последний раз)
Ты демонстрируешь свой вариант, я демонстрирую свой.
И предметно сравним у кого что вышло.
← →
han_malign (2010-12-07 16:31) [29]
> Допустим есть приложение работающее с БД.
> Серверов несколько.
> Требуется хранить настройки подключения ко всем серверам
> и ид последнего сервера (с которым работали последний раз)
> Работая с кластером получаешь неоспоримую выгоду, если
> конечно вкурил всю мощь и гибкость которая доступна тебе.
>
>
> Считав из xml значение, ты получаешь всего лишь значение.
← →
Маркетоид (2010-12-07 16:34) [30]и это все аргументы?
← →
tesseract © (2010-12-07 16:36) [31]
> А используя ини всякий раз моделируешь в паскале структуры/классы
> для поддержки структур данных, хранимых в ини. И бесконечные
> километры кода по перегонке данных из ини в структуры паскаля
> и обратно.
Ещё сильно теряешь в зависимостях. А значит и в размере исполнимого файла и занимаемой памяти! Это не по взрослому !
> DiamondShark © (07.12.10 14:50) [24]
Вот и я про то же.
← →
Маркетоид (2010-12-07 16:42) [32]Вот и я про то же.
Пока что (по факту) вы тупо зассали представить свой вариант кода.
Перескочив на какой-то "кластер".
А посему досвидос.
Дискутировать с вами в таком ключе совершенно неинтересно.
← →
Ega23 © (2010-12-07 16:47) [33]
> Работая с xml через dom
Какую задачу-то решаем?
А решаем мы задачу хранить некоторые параметры приложения в некотором внешнем файле. При этом не просто хранить, а иметь возможность их настроить вручную. Иначе обычный бинарный стрим отлично подходит.
Простому пользователю гораздо нагляднее редактировать ini, чем xml. Как минимум в том, что в ini ошибиться гораздо сложнее.
> А используя ини всякий раз моделируешь в паскале структуры/классы
> для поддержки структур данных, хранимых в ини. И бесконечные
> километры кода по перегонке данных из ини в структуры паскаля
> и обратно.
А какая, собственно, разница в том, как объект десериализуется?TMyObject.LoadFromStream(Stream: TStream);
TMyObject.LoadFromIni(ini: TIniFile; Section: string);
TMyObject.LoadfromXML(Node: IXMLNode);
Один хрен любой из этих трёх методов надо реализовывать (а то и все разом).
Вот если бы каждый объект, начиная с TObject, наследовал бы LoadfromXML(Node: IXMLNode), то наверное какая-то соль в этом была бы.
А так - фигня полная. Холивар a-la Windows vs. Linux
← →
Kerk © (2010-12-07 16:49) [34]Крылья, ноги... главное - хвост!
Задачи вообще разные бывают. И нередко XML применять неоправданно.
Так-то то, что XML дает больше возможностей, чем INI, очевидно.
Но продолжая логику можно заявить, что настройки нужно хранить в базе Oracle, потому что [... перечисление возможностей, которые не даст XML ...]
← →
tesseract © (2010-12-07 16:50) [35]
> А посему досвидос.
Аревуар. Спасибо, что так быстро слиняли.
← →
Маркетоид (2010-12-07 16:52) [36]Вот если бы каждый объект, начиная с TObject, наследовал бы LoadfromXML(Node: IXMLNode),
Нет, вы совершенно не поняли меня.
Мечта иметь методы загрузки/сохранения в хмл начиная с tobject - она вообще не характерна тем, кто умеет работать с хмл
Мне это тоже не нужно, просто потому что мне не нужен сам объект TMyObject.
Понимаете?
Не нужен объект и не нужны методы ненужного объекта.
В этом вся фишка.
← →
Ega23 © (2010-12-07 16:52) [37]Если работаешь с Ruby, то имеет смысл сериализовать объект в YAML
Если работаешь с JavaScript - в JSON
XML - типа универсальное описание (но перегруженное и нужен DOM).
Ini - просто, но не поддерживает древовидность (точнее, она достигается ректальным способом).
← →
Маркетоид (2010-12-07 16:56) [38]Внутри хмл есть некий узел, который является рутом некой сущности.
Так вот сам этот дом узел - и есть замена тому самому TMyObject"у у которого вы так мечтаете иметь методы LoadFromXML/SaveToXML
Я беру этот узел и читаю/пишу из него данные.
Я беру и передаю его параметром куда мне надо.
И все.
Никаких tmyobject и никакой кастомной сериализации.
Ложки нет!
← →
Jeer © (2010-12-07 16:56) [39]
>
> Ini - просто, но не поддерживает древовидность
Все достигается элементарным способом, если не приучать себя думать ректально.
← →
Маркетоид (2010-12-07 16:58) [40]Если работаешь с Ruby, то имеет смысл сериализовать объект в YAML
Если работаешь с JavaScript - в JSON
А я работаю с Delphi и ничего не сериализую если надо повзаимодействовать с внешним миром.
Не сериализую потому что у меня нечего сериализовать.
У меня все уже в xml
← →
Ega23 © (2010-12-07 17:00) [41]
> Так вот сам этот дом узел - и есть замена тому самому TMyObject"у
> у которого вы так мечтаете иметь методы LoadFromXML/SaveToXML
если кое-кто внимательно разует глаза, то увидит, что метод TMyObject.LoadFromXML имеет входным параметров Node: IXMLNode
И мне никто не мешает передавать нужным объектам, из которых состоит этот TMyObject передавать им нужный XMLNode, родителем которого является изначальный Node.
Ещё раз: от писанины это не избавляет.
← →
Ega23 © (2010-12-07 17:00) [42]
> Все достигается элементарным способом, если не приучать
> себя думать ректально.
Достигается, но не так изящно, как в XML. Впрочем, она нужна далеко не всегда.
← →
Jeer © (2010-12-07 17:02) [43]
> Впрочем, она нужна далеко не всегда.
Я за удобство работы в конкретном случае, а не изящество - оставим это танцорам.
← →
Маркетоид (2010-12-07 17:02) [44]то увидит, что метод TMyObject.LoadFromXML имеет входным параметров Node: IXMLNode
Да наздоровье. И не надо думать что я не увидел.
Но я еще раз повторяю:
У меня вообще нет TMyObject и у меня вообще нет потребности иметь этот самый TMyObject чем бы он ни был. Классом или рекордом.
Он мне просто не нужен.
Боже ж мой, неужели это так трудно понять.
← →
Ega23 © (2010-12-07 17:03) [45]
> Не сериализую потому что у меня нечего сериализовать.
> У меня все уже в xml
Как это нечего? Не, ну если у тебя нет загрузки, то тогда для каждого свойства тебе надо геттер и сеттер писать, которые будут к нужному ноду обращаться.
Ах да, и постоянно держать XML-документ открытым.
Ненаказуемо.
← →
Маркетоид (2010-12-07 17:06) [46]Не, ну если у тебя нет загрузки, то тогда для каждого свойства тебе надо геттер и сеттер писать,
Для каждого свойства кого/чего?
Для свойства какого объекта?
Напоминаю, что у меня нет вашего объекта. И свойств этого объекта тоже нет.
← →
Ega23 © (2010-12-07 17:08) [47]
> Напоминаю, что у меня нет вашего объекта. И свойств этого
> объекта тоже нет.
Ты пишешь в delphi на WinAPI?
← →
Kerk © (2010-12-07 17:08) [48]
> Маркетоид (07.12.10 17:06) [46]
>
> Напоминаю, что у меня нет вашего объекта. И свойств этого
> объекта тоже нет.
Т.е. ООП ты ни в каком виде не используешь?
← →
han_malign (2010-12-07 17:13) [49]
> Ты пишешь в delphi на WinAPI?
- ты не понял - ему не нужен delphi, у него уже есть xml...
← →
TUser © (2010-12-07 17:13) [50]Я предпочитаю XML, потому что дерево - оно универсальнее.
← →
Маркетоид (2010-12-07 17:15) [51]Я пишу на делфи и использую ООП.
Но едрена батона.....
У меня нету вашего TMyObject.
У меня нету, екарный бабай, того объекта и той структуры которую вы создаете чтобы хранить настройки в ПАМЯТИ приложения при считывании их с диска.
← →
Kerk © (2010-12-07 17:18) [52]
> Маркетоид (07.12.10 17:15) [51]
Ну с этого бы и начинал.
В памяти настройки, кроме любителей XML, просто так никто не хранит. Все они "растекаются" по свойствам различных объектов, реализующих бизнес-логику. В этом и смысл настроек.
← →
Ega23 © (2010-12-07 17:18) [53]
> того объекта и той структуры которую вы создаете чтобы
> хранить настройки в ПАМЯТИ приложения при считывании их
> с диска.
Врёшь. У тебя есть IXMLDocument, со всеми его прибабахами. Который ВСЕГДА сидит у тебя в памяти.
← →
Jeer © (2010-12-07 17:19) [54]"Собрались глухой, слепой, немой и беспомощный вотку пить" (С)
← →
Kerk © (2010-12-07 17:21) [55]
> Ega23 © (07.12.10 17:18) [53]
>
> Врёшь. У тебя есть IXMLDocument, со всеми его прибабахами.
> Который ВСЕГДА сидит у тебя в памяти.
Он просто радуется, что не сам его писал.
Ну так никто сам аналогов и не пишет.
← →
Маркетоид (2010-12-07 17:22) [56]Врёшь. У тебя есть IXMLDocument, со всеми его прибабахами. Который ВСЕГДА сидит у тебя в памяти.
Конечно есть.
Но я не тратил ни секунды своего времени на его реализацию.
А вы в каждом своем проекте сначала изобретаете свой TMyObject, затем пишете загрузку/выгрузку из него в файл.
← →
Kerk © (2010-12-07 17:25) [57]Ну теперь началась окончательная и бесповоротная клоунада.
Запасся попкорном :)
← →
b z (2010-12-07 17:26) [58]
> Конечно есть.
А зачем?
← →
Jeer © (2010-12-07 17:26) [59]
> Запасся попкорном :)
Я уже жую, поскольку ставлю оракл :)
← →
Kerk © (2010-12-07 17:27) [60]Еще мне кажется, что человек не знает, что такое сериализация, о которой ему с [33] начиная твердят. Надо ж было додуматься, что TMyObject там - это заменитель IXMLDocument"а :)
← →
Ega23 © (2010-12-07 17:28) [61]
> А вы в каждом своем проекте сначала изобретаете свой TMyObject,
> затем пишете загрузку/выгрузку из него в файл.
А, ну да, я забыл, у тебя вся программа из XML состоит. ОМГ.
← →
Ega23 © (2010-12-07 17:29) [62]
> Еще мне кажется, что человек не знает, что такое сериализация,
Он знает, что такое XML, этого достаточно.
← →
Маркетоид (2010-12-07 17:30) [63]А, ну да, я забыл, у тебя вся программа из XML состоит. ОМГ.
Понтоваться насчет кода надо было тогда, когда я предлагал это делать.
Честно и прямо.
Но уже не сейчас, понимаешь?
← →
sniknik © (2010-12-07 17:30) [64]почему как ни любитель XML так фанат отрекающий все остальное (или придурок ничего другого не признающий/не знающий), а вот фанатов ini почему то нет, используют там где удобно, где нет, могут и xml, и что угодно другое...
ненавижу XML... не за то что он есть/какой он есть, а за его разрекламированность, навязываемость, и фанатизм приверженцев...
← →
Kerk © (2010-12-07 17:31) [65]Я не верю, что это серьезно :)
Наверно кто-то из старожилов прикалывается.
← →
b z (2010-12-07 17:32) [66]
> А, ну да, я забыл, у тебя вся программа из XML состоит
Ну а что в этом плохого? sirvelight, wpf и т.п. так и есть и никто не кричит ОМГ...
← →
Маркетоид (2010-12-07 17:33) [67]а за его разрекламированность, навязываемость, и фанатизм приверженцев...
Продуктивная ненависть.
На возможности наплевать, но "разрекламированность навязываемость и фанатизм"
Кстати о фанатизме.
Мой пост №25 нефанатичные люди с незамутненным рассудком поняли в районе где то через страницу-полторы.
Что как бы намекает.
← →
allocator (2010-12-07 17:34) [68]sniknik © (07.12.10 17:30) [64]
Ну XML вкупе со схемами и трансформациями и икс-путями, это чудо инженерной мысли на самом деле, бывающее очень удобным в подходящих для него местах. А для серьезных настроек можно SQLite или BerkleyDB использовать.
← →
Kerk © (2010-12-07 17:37) [69]
> Маркетоид (07.12.10 17:33) [67]
>
> Мой пост №25 нефанатичные люди с незамутненным рассудком
> поняли в районе где то через страницу-полторы.
Так ты [33] до сих пор не понял :)))))
← →
Ega23 © (2010-12-07 17:38) [70]
> Понтоваться насчет кода надо было тогда, когда я предлагал
> это делать.
> Честно и прямо.
> Но уже не сейчас, понимаешь?
А тебе и было сразу же сказано, что с точки зрения какого-то настраиваемого объекта, без разницы, из чего десериализоваться и куда сериализоваться - в секцию ini, в IXMLNode или по смещению в бинарный стрим. ПОФИГУ. Эти методы писать придётся всё равно.
Либо постоянно обращаться к хранилищу, когда не дай бог один из параметров был изменён, либо программой либо пользователем.
Без разницы. Код всё равно писать.
З.Ы. Для настроек используем XML. Написаны удобные хелперы, в базовые классы добавлены методы. Но у конечных классов код всё равно приходится писать, никуда от этого не денешься.
← →
Kerk © (2010-12-07 17:42) [71]
> Ega23 © (07.12.10 17:38) [70]
>
> А тебе и было сразу же сказано, что с точки зрения какого-
> то настраиваемого объекта, без разницы, из чего десериализоваться
> и куда сериализоваться - в секцию ini, в IXMLNode или по
> смещению в бинарный стрим. ПОФИГУ. Эти методы писать придётся
> всё равно.
Ты все еще не понял. До этапа сериализации полет его мысли не доходит.
Речь о том, что _ДО_. Он считывает настройки из файла в IXMLDocument. ВСЕ!
Остальные для этого якобы какие-то TMyObject пишут.
В этом основное недопонимание, в том, что настройки - не самоцель.
← →
Маркетоид (2010-12-07 17:57) [72]В этом основное недопонимание, в том, что настройки - не самоцель.
Разумеется.
Мне при разработке есть чем намного более интересным им полезным заняться, нежели тупо в стотысячный раз писать код гоняющий данные с диска в память и обратно.
← →
Kerk © (2010-12-07 17:58) [73]Анекдот :)
← →
Маркетоид (2010-12-07 17:59) [74]Остальные для этого якобы какие-то TMyObject пишут.
Так "якобы" или пишут ?
← →
Kerk © (2010-12-07 18:01) [75]
> Маркетоид (07.12.10 17:59) [74]
>
> Остальные для этого якобы какие-то TMyObject пишут.
>
> Так "якобы" или пишут ?
С тобой-то я уже во все поверить готов :)
А так вообще сам ниразу не переписывал ни IXMLDocument, ни TIniFile, ни TRegistry :)
← →
Маркетоид (2010-12-07 18:04) [76]не переписывал ни IXMLDocument, ни TIniFile, ни TRegistry
А я это утверждал?
Я говорил, что разрабатываются классы или структуры, для того, чтобы хранить в них данные, считанные непереписанными TIniFile и TRegistry
← →
Kerk © (2010-12-07 18:05) [77]
> Маркетоид (07.12.10 18:04) [76]
>
> Я говорил, что разрабатываются классы или структуры, для
> того, чтобы хранить в них данные, считанные непереписанными
> TIniFile и TRegistry
Кем разрабатываются?
← →
Jeer © (2010-12-07 18:07) [78]
> Я говорил, что разрабатываются классы или структуры,
Еще один Закон Природы ?
← →
Eraser © (2010-12-07 18:16) [79]Нда.. как обычно все свелось к флуду )
Вроде автора спрашивал "актуально ли сейчас хранить настройки в ini-файлах?", ключевое слово - настройки, а не объекты.
Да, настройки можно хранить в объектах, а затем сереализовать сами объекты и хранить эти данные, но это уже частный случай. Здесь вполне уместно применять встроенный в Делфи механизм сериализации компонентов и не изобретать велосипед.
> DiamondShark ©
демагогия, не имеющая никакого отношеня к практике, и не более того, впрочем как обычно ;-)
кстати, если мне не изменяет память, стандартный механизм работы с настройками в C# использует именно XML )
> [22] sniknik © (07.12.10 14:26)
> во многих случаях ini удобнее, так же как хранение его рядом
> с программой а не "в местах для этого отведенных".
а потом с выходом очередной Висты начинаются вопли - "почему у меня пишет какую-то ошибку 5?", "почему не работает через терминальный клиент?" и т.д.
а все из-за того, что разработчику лень продумать работу с настройками. почему-то в современных продуктах изместных всему миру контор я не вижу ini файлов в каталоге с exe. а вот у иванов кулибиных - полно. не спорю, есть 1% случаев, когда это оправдано.
← →
DiamondShark © (2010-12-07 18:26) [80]
> Eraser © (07.12.10 18:16) [79]
Ты совершенно прав: ссылка на возраст технологии -- демагогия, не имеющая никакого отношеня к практике, и не более того, впрочем как обычно.
← →
Eraser © (2010-12-07 18:32) [81]> [80] DiamondShark © (07.12.10 18:26)
OK, по пунктам
> А кодировке ASCII вообще пятьдесят лет. Фтопку её!
Слишком общее понятие, да и вообще ASCII это не технология.
> А паскалю сорок. Только старые маразматики пишут на паскале.
Именно, много людей сейчас пишут коммерческие проекты на паскале 30 летней давности?
> Ах, да. Объектно-ориентированному программированию тоже
> под сорок.
это, опять же, не технология, а общее понятие. хотя реализации ОП 40 летней давности вряд ли подойдут для решения современных задач.
Ини-файлы - это именно технология, которая не совершенствовалась уже 20 лет. есть конечно TMemIniFile и т.п., но это не принципиальное развитие технологии.
← →
DiamondShark © (2010-12-07 18:54) [82]
> Eraser © (07.12.10 18:32) [81]
Вы, вообще, чего мне пытаетесь доказать? Тезис сформулируйте в явном виде, пожалуйста.
Я ещё понимаю ситуацию, когда тезис без аргументов. Но когда аргументы без тезиса...
← →
Kerk © (2010-12-07 19:05) [83]Ини-файлы - это не технология, это формат файла.
← →
Andy BitOff © (2010-12-07 19:17) [84]> Eraser © (07.12.10 18:16) [79]
> почему-то в современных продуктах изместных
> всему миру контор я не вижу ini файлов в каталоге с exe.
Алексей, я тебя уважаю, но не надо быть таким категоричным. Если ты не видишь микробов то, это не означает, что их нет.
d:\Games\Battlefield Bad Company 2\BFBC2Game.exe
d:\Games\Battlefield Bad Company 2\GL.ini - 23,8 КБ (24 388 байт)
и еще
Programm\Video\PotPlaye\PotPlayerMini.ini
Programm\Video\Ultra MKV Converter\Languages\Dutch.ini
Programm\Video\The KMPlayer\WizardLanguage\KMPWiz_Italian.ini
Programm\Video\PowerDVD10\PowerDVD10\CLBrowserEngineSchema.ini
Programm\Video\Camtasia Studio 7\FilterManager.ini
Programm\Video\Camtasia Studio 6\FilterManager.ini
Programm\eXtreme Movie Manager\config.ini
Programm\Video\PowerDVD10\PowerDVD10\PowerDVD Cinema\Customizations\Cyberlink\setting.ini
Programm\Google Earth Pro\ImporterUISettings.ini
Programm\VMware Workstation\vmPerfmon.ini
Programm\Video\PowerDVD10\PowerDVD10\CLDShowX.ini
Programm\Sound\AIMP2\Data\Andy BitOff\AIMP_U.INI
Programm\Sound\AIMP2 Tools\Encoders\encoders.ini
Programm\Avira\AntiVir Desktop\defaults.ini
Programm\Adobe\Adobe Flash Catalyst CS5\configuration\config.ini
Programm\Adobe\Adobe Flash Catalyst\Adobe Flash Catalyst\configuration\config.ini
Programm\Adobe\Adobe Bridge CS5\apd.ini
← →
b z (2010-12-07 19:33) [85]
> Andy BitOff © (07.12.10 19:17) [84]
Вы зачем такую фигню ставите? ;)
← →
Rouse_ © (2010-12-07 19:37) [86]А всего-то навсего достаточно прочитать спецификации выдаваемые МС чтобы понять что "актуально в данном сезоне" :)
← →
DiamondShark © (2010-12-07 19:38) [87]
> А всего-то навсего достаточно прочитать спецификации выдаваемые
> МС чтобы понять что "актуально в данном сезоне" :)
И сделать наоборот.
← →
Rouse_ © (2010-12-07 19:39) [88]
> DiamondShark © (07.12.10 19:38) [87]
> И сделать наоборот.
Под линукс пишешь?
← →
DiamondShark © (2010-12-07 19:46) [89]
> Rouse_ © (07.12.10 19:39) [88]
Чур меня! Чур!
Это был сарказмЪ.
Сам же знаешь, что дело Кулибина бессмертно.
← →
Маркетоид (2010-12-07 20:00) [90]Кем разрабатываются?
Еще один Закон Природы ?
Господа, я все понимаю, что и потроллить хочется и сливать обидно, но давайте без детсадовства.
Или вы мне сейчас будете доказывать, что ни структур ни классов у вас нет.
Есть только переменные.
Или даже переменных нет.
Потребовалось типа соединиться с сервером - открываем ини, делаем из него рид прямо в свойства компонента датабазы и все.
Потребовалось отредактировать настройки - снова открываем ини, читаем из него значения прямо в эдиты.
Вы мне это пытались сказать в первых двух строках?
← →
DiamondShark © (2010-12-07 20:04) [91]
> Потребовалось типа соединиться с сервером - открываем ини,
> делаем из него рид прямо в свойства компонента датабазы
> и все.Потребовалось отредактировать настройки - снова открываем
> ини, читаем из него значения прямо в эдиты.
Ви таки будете мне смеяться, но достаточно часто так и пишут.
Причём, по неизвестным науке причинам, на Дельфи так пишут чаще, чем на других средствах разработки.
← →
Маркетоид (2010-12-07 20:07) [92]Ви таки будете мне смеяться, но достаточно часто так и пишут.
Тогда у меня больше нет вопросов.
Нет самого предмета спора "Что эффективнее и удобнее".
Точнее я не вижу никакого смысла обсуждать этот вопрос с такими разработчиками, которые "часто так и пишут"
← →
Rouse_ © (2010-12-07 20:20) [93]Тебе ж сказали - почитай спецификацию - не поверишь, но вопрос моментально исчерпает сам себя и причем без всякого обсуждения на форуме. Любите документашку - ее ж специально пишут, чтоб не задавать глупых вопросов.
← →
Andy BitOff © (2010-12-07 20:23) [94]> b z (07.12.10 19:33) [85]
> Вы зачем такую фигню ставите? ;)
Это маленький кусочек. У меня такой фигни полон диск ;)
← →
Маркетоид (2010-12-07 20:28) [95]Тебе ж сказали - почитай спецификацию - не поверишь, но вопрос моментально исчерпает сам себя и причем без всякого обсуждения на форуме. Любите документашку - ее ж специально пишут, чтоб не задавать глупых вопросов.
Надо же какое совпадение.
Ровно это же самое хочу сказать и я.
Читайте спецификации и все ваши глупые вопросы и страхи перед xml исчезнут.
← →
Kerk © (2010-12-07 20:30) [96]
> Маркетоид (07.12.10 20:00) [90]
> Потребовалось отредактировать настройки - снова открываем
> ини, читаем из него значения прямо в эдиты.
Настройки - это не самоцель, ты пойми. Все эти будущие значения эдитов - свойства различных объектов, которые и требуется настраивать.
← →
Маркетоид (2010-12-07 20:35) [97]Настройки - это не самоцель, ты пойми.
А может вернемся к вопросу "структуры и классы"?
А то мне слегка надоедает это бла-бла-бла.
Итак:
Есть они у вас или нет?
Или вы пишете как сказано в [91]?
Если первое "да", то я ответил на ваш вопрос "кто создает" и "кто пишет"
Если второе "да", то см. [92]
← →
Kerk © (2010-12-07 20:37) [98]
> Маркетоид (07.12.10 20:35) [97]
>
> А то мне слегка надоедает это бла-бла-бла.
Ну так и прекращал бы свое бла-бла-бла.
> А может вернемся к вопросу "структуры и классы"?
Дело в том, что этот вопрос ты сам придумал. Самое смешное, что ты до сих пор не понял поста [33].
← →
Маркетоид (2010-12-07 21:30) [99]Мне скучно беседовать с трусливыми скользкими типами.
Прощай.
← →
sniknik © (2010-12-07 21:59) [100]> начинаются вопли - "почему у меня пишет какую-то ошибку 5?", "почему не работает через терминальный клиент?" и т.д.
работают вплоть до win 7, никаких воплей. может таки потому, что продумано? независимо от того, что ви там себе навидумивали...
> почему-то в современных продуктах изместных всему миру контор я не вижу ini файлов в каталоге с exe.
решил проверить, посмотреть, а что у меня там с ini рядом с exe -
http://img94.imageshack.us/img94/9029/inia.png
выводы неутешительны... у меня НЕТ программ от известных всему миру контор, т.к. практически у всех есть ini.
> Вы зачем такую фигню ставите? ;)
другой попросту нет. практически.
> страхи перед xml исчезнут.
??? бояться формат файла? вы у психиатра давно были?
формат не важен, вам же это чуть ли не с начала ветки твердят.
← →
sniknik © (2010-12-07 22:00) [101]> Мне скучно беседовать с трусливыми скользкими типами.
> Прощай.
ты подпись забыл -> "трусливый скользкий тип".
← →
Медвежонок Пятачок © (2010-12-07 22:02) [102]формат не важен, вам же это чуть ли не с начала ветки твердят.
если он не важен, то зачем же мне твердят, что xml хуже?
или что предпочтительнее не использовать xml?
логику дома забыли?
← →
Медвежонок Пятачок © (2010-12-07 22:02) [103]ты подпись забыл -> "трусливый скользкий тип".
Полегчало?
← →
Медвежонок Пятачок © (2010-12-07 22:11) [104]ты подпись забыл -> "трусливый скользкий тип".
Не мог бы ты указать мне номер моего поста и номер строки в котором бы я вел себя как сколзький и трусливый тип?
Только конкретно.
← →
Медвежонок Пятачок © (2010-12-07 22:18) [105]сникник, если не укажешь номер моего поста (подробности в [104]) - ты трепло.
удачи в поисках!
:)
← →
sniknik © (2010-12-07 22:22) [106]> если он не важен, то зачем же мне твердят, что xml хуже?
так и не дошол пост [33]? перечитай еще раз. также [4], [6] и т.д. практически всю ветку, кроме своих постов, вот там безапеляционные отверждения.
> в котором бы я вел себя как сколзький и трусливый тип?
на выбор любой под именем Маркетоид...
или думаешь не догадались? второго такого фанате еще поискать.
или считаешь прятаться за анонимом верх смелости?
← →
Ega23 © (2010-12-07 22:24) [107]
> Или вы мне сейчас будете доказывать, что ни структур ни
> классов у вас нет.
> Есть только переменные.
> Или даже переменных нет.
>
> Потребовалось типа соединиться с сервером - открываем ини,
> делаем из него рид прямо в свойства компонента датабазы
> и все.
> Потребовалось отредактировать настройки - снова открываем
> ини, читаем из него значения прямо в эдиты.
>
см. [33]
Либо тролль, либо дебил детектед. Скорее первое :)
← →
Медвежонок Пятачок © (2010-12-07 22:26) [108]на выбор любой под именем Маркетоид...
Я просил конкретно номер
Ты не указал.
потому что легко сказать, что медвежонок трусливый "вообще".
а вот сказать что он трусит и виляет в посте номер такой-то - уже не скажешь.
сникник, ты - трепло.
← →
Медвежонок Пятачок © (2010-12-07 22:29) [109]Либо тролль, либо дебил детектед. Скорее первое :)
а [25] до тебя уже дошло?
Похоже что до сих пор нет.
Потому что [33] возникло от того, что ты не понял [25]
← →
sniknik © (2010-12-07 22:33) [110]Я просил конкретно номер
вот тебе список, типа трусливо пишущего под чужим ником
Маркетоид (07.12.10 14:55) [25]
Маркетоид (07.12.10 16:16) [28]
Маркетоид (07.12.10 16:34) [30]
Маркетоид (07.12.10 16:42) [32]
Маркетоид (07.12.10 16:52) [36]
Маркетоид (07.12.10 16:56) [38]
Маркетоид (07.12.10 16:58) [40]
Маркетоид (07.12.10 17:02) [44]
Маркетоид (07.12.10 17:06) [46]
← →
Ega23 © (2010-12-07 22:34) [111]
> Потому что [33] возникло от того, что ты не понял [25]
Если ты не понял, что в секции "узла" я могу считать Count и наименования секций дочерних узлов, а для считывания каждого из них я не могу передать в соответствующий объект ссылку на открытый ini и наименование дочерней секции - ну тады ой. Если Свинья Винни-Пух сказал, что не могу, значит - не могу.
Наверное я - дебил и [33] писал тоже для дебилов.
← →
Медвежонок Пятачок © (2010-12-07 22:35) [112]А кто тебе сказал, что это "чужое имя" ?
← →
Медвежонок Пятачок © (2010-12-07 22:37) [113]Ега, мне печально тебе это сообщать, но не только я, но и твой союзник по спору керк, пытался тебе объяснить, что ты нихрена не понял сути моего поста № 25.
← →
Медвежонок Пятачок © (2010-12-07 22:42) [114]сникник, ты ответишь на вопрос про чужой ник, или ты это снова просто потрепался?
← →
Ega23 © (2010-12-07 22:44) [115]
> Ега, мне печально тебе это сообщать, но не только я, но
> и твой союзник по спору керк, пытался тебе объяснить, что
> ты нихрена не понял сути моего поста № 25.
Мне тоже печально тебе сообщать, но всё различие между сериализацией/десериализацией из/в XML/ini состоит в различиях формата. В одном случае у тебя уникальность имён узлов соблюдается в рамках родительского узла, в другом случае - в рамках всего документа.
ВСЁ. Вся разница.
← →
Медвежонок Пятачок © (2010-12-07 22:49) [116]да ладно ега, забей.
ты и так сильно постарался ища как вывернуться.
"указатель на тини + строка имени секции"
молодец. может кто-то даже реально так и пишет.
печально вот что.
первый мой пост в ветке был вступительный. наехали.
следующий (№ 28) в ответ на наезд (причем ничем неаргументированный)
никто не принимает вызова, а в конце еще трусливым обозвали.
пипец.
← →
sniknik © (2010-12-07 22:52) [117]а что тебе отвечать про чужой ник? анонимки всегда были определенным признаком...
но у тебя похоже сугубо личное, свое мнение буквально на все, на хмл, анонимки. мерятся и определять что к чему относится/признаки ты согласен исключительно по своим критериям... тут спорить бесполезно. диагноз только поставить, но похоже поздно.
← →
Ega23 © (2010-12-07 22:52) [118]
> молодец. может кто-то даже реально так и пишет.
Я так не пишу. Я использую XML. Но я не вижу никаких причин написать именно так, как в [33].
З.Ы. (Node: IXMLNode) в параметрах тебя тоже напрягает, не?
← →
Медвежонок Пятачок © (2010-12-07 22:56) [119]анонимки всегда были определенным признаком...
Хочешь сказать, что "медвежонок пятачок" - он весь такой неанонимный, а "маркетоид" - пипец весь анонимный по самое нехочу?
/* о майн гот, с кем я взялся спорить */
← →
Ega23 © (2010-12-07 23:01) [120]
> "медвежонок пятачок" - он весь такой неанонимный
Деанон - оно тебе таки надо?
← →
Petr V. Abramov © (2010-12-07 23:03) [121]
> Ega23 © (07.12.10 16:52) [37]
> Ini - просто, но не поддерживает древовидность (точнее,
> она достигается ректальным способом).
дальнейшую дискуссию почитаю, но только ради смеху.
т.к. СУТЬ тут.
← →
sniknik © (2010-12-07 23:05) [122]> "медвежонок пятачок" - он весь такой неанонимный, а "маркетоид"
"медвежонок пятачок" зарегистрированный, известный фанат xml, все про него знают, и во избежание могли бы не пытаться ему что-то объяснить, но прикрывшись другим именем ты таки разжег холивар (хотя я тут что-то не вижу никакого фаната отстаивающего ini, как ты xml... т.е. холивар это только для "ублажения" тебя).
← →
sniknik © (2010-12-07 23:10) [123]> т.к. СУТЬ тут.
не, не суть. посмотри как у Google Earth инишники сделаны... часть. с узлами на json, не назвал бы это ректальным, а был бы как у них яваскрипт в язык встроен (там где объект json = объекту в программе) то сказал бы что даже очень удобно, лучше чем xml.
← →
Ega23 © (2010-12-07 23:20) [124]
> там где объект json = объекту в программе
Ну дык.. В eval() и есть вся "вкустность" JSON.
Отпарвил HttpRequest, получил response, сделал eval - и объект у тебя готовый.
Вот будь такое в XML (о чём я выше писал, но кто-то не просёк) - было бы шыколадно.
Но фиг, приходится напильником допиливать.
Страницы: 1 2 3 4 вся ветка
Форум: "Прочее";
Текущий архив: 2011.03.20;
Скачать: [xml.tar.bz2];
Память: 0.81 MB
Время: 0.009 c