metaclass: (Default)
[personal profile] metaclass
После недельного писания на F# появилась идея, отчего использование дельфи так часто вырывает мозг программистам.

Суть в том, что дельфи это законченный продукт с замкнутым комьюнити. Собственно говоря, для работы на нем ничего кроме самого дельфи и нескольких сторонних компонентов (которые никуда больше и не пригодны) не нужно. Соответственно, у программистов тупо не было стимула выглядывать за пределы своей песочницы. В дельфи было все, необходимое и достаточное, чтобы писать всякого рода опердень в то время. Причем в силу простоты - это еще и стимулировало индивидуальное вкалывание, нахрен нужна какая-то командная разработка, какие-то процессы и прочие атрибуты, если один человек мог спокойно сделать достаточно немалую софтину.
Сишные и С++ либы, опять же, не подключались без извращений типа "завернуть в dll с plain C интерфейсом".

Сколько я не смотрю на другие средства разработки - там обязательно есть какая-то шиза на тему того, что невозможно пользоваться, не вкурив штук пять смежных областей. Тот же дотнет - это просто страшная сборная солянка из XML, веба, рефлекшена с кодогенерацией, хитрожопого ООП, причем некоторые вещами оттуда до сих пор проще переписать чем использовать готовые.
Послушаешь [livejournal.com profile] zabivator и прочих про ocaml - это просто гамон, какие-то сишные компиляторы, какие-то либы, портирование между виндами и линуксами и прочий мрак.
Жаба энтепрайзная тоже страх какой-то, судя по количеству фреймворков, методик взаимодействия с внешним миром и прочего.

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

Date: 2010-03-10 02:26 pm (UTC)
From: [identity profile] kirill a. korinskiy (from livejournal.com)
А вот за это, извините меня, вас надо бить. Кандилябром.

1) windows многопользовательская система;
2) для установки стоит использовать тот пакетный менеджер (msi) что есть.

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

А может ваша программа пытается ещё писать дальше, чем есть у пользователя права?

Date: 2010-03-10 02:33 pm (UTC)
From: [identity profile] vp.livejournal.com
А может ваша программа пытается ещё писать дальше, чем есть у пользователя права?

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

Date: 2010-03-10 02:36 pm (UTC)
From: [identity profile] aamonster.livejournal.com
Давно ли винда стала многопользовательской?
"Многопользовательскость" в ней была не отродясь, а пришита поверх того, что есть. Кое-как. Так что в гробу я видал на ней все многопользовательские заморочки.

Адекватное поведение виндозной программы для меня - жить в своем каталоге и не соваться наружу. Portable-версии - наше всё.

Date: 2010-03-10 02:43 pm (UTC)
From: [identity profile] vp.livejournal.com
Многопользовательскость винды в текущем варианте - начиная с NT4.
даже в 98й винде была многопользовательскость, свои папки и т.п. Но иначе, тупиковая ветвь.
Так что лет 15 уже как.

Date: 2010-03-10 03:05 pm (UTC)
From: [identity profile] aamonster.livejournal.com
Практика - критерий истины. А на практике в винде нормальная схема использования - один аккаунт с админскими правами. Ну, плюс еще несколько системных - но это уже детали внутренней реализации.

И отклонения от этой схемы больно бьют. Появляется второй аккаунт - пользователь грузится и недоумевает: "а где мои программы?". Или даже если программы есть - у них сбиваются настройки. Желающие могут дрочить реестр и переносить данные из одной ветки в другую, копировать домашние каталоги и т.п., рискуя привести систему в неработоспособное состояние. Или настраивать всё по два раза.

Т.е. со стороны системы поддержка многопользовательского режима есть, а со стороны жизни - уже нету. Поздно сделали.

Date: 2010-03-10 03:08 pm (UTC)
From: [identity profile] w00dy.livejournal.com
Со стороны жизни всё тоже есть. Поддержка многопользовательского окружения один из критериев на получение designed for windows или как там то лого называется.

Date: 2010-03-10 03:13 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Не, в корпоративной винде такого уже давно нет.
Проги, права управляются через доменные политики, вменяемые проги ставятся, спрашивая "кому ставить - всем или мне", работают совместно культурно, итд.

А, еще ж есть терминальные сервера, там вообще ад и ханука в этом плане.

Date: 2010-03-10 03:45 pm (UTC)
From: [identity profile] volodymir-k.livejournal.com
Спасибо, Вы еще раз подтвердили, что бывают некачественные программы. Уведомляю, что такие бывают и под другими ОС.

> Или даже если программы есть - у них сбиваются настройки.

Интересно, а как настройки одного пользователя появляются у другого в линуксе -- видимо, телепатически переносятся.

Date: 2010-03-10 11:04 pm (UTC)
From: [identity profile] zamotivator.livejournal.com
cp -R /home/first/.programName ~/.programName

Date: 2010-03-11 12:20 pm (UTC)
From: [identity profile] volodymir-k.livejournal.com
Научитесь читать: мой собеседник стонет, что некошерными являются действия "Желающие могут дрочить реестр и переносить данные из одной ветки в другую, копировать домашние каталоги и т.п., рискуя.."

Понимаете, копировать -- РИСКУЯ!!! РИСКУЯ!!!

Date: 2010-03-11 07:37 am (UTC)
From: [identity profile] aamonster.livejournal.com
В линуксе как-то проще с юзерами - видимо, из-за отсутствия реестра и тенденции хранить всё, что касается пользователя, в одном месте.

Date: 2010-03-11 12:26 pm (UTC)
From: [identity profile] volodymir-k.livejournal.com
Я конечно не доктор и не в курсе последних советов по конфигурации иксов. Но в 2002 году помнится был жутчайший зоопарк, что настройки софта хранились:
* в хоме
* в самой программе
* в оконном менеджере
* в иск сервере
и наследовались, позваоляя использованием шаблонов для имен классов.

Насчёт реестра Ваши беспредметные философские рассуждения любопытны, но не убедительны. Конкретно где трудность? Что, использовать реестр для настроек винда как-то прям вынуждает, файлы запрещает?

Если нет, то в чём разница между экспортом куска реестра с настройками и копированием файла настроек?

Date: 2010-03-11 12:45 pm (UTC)
From: [identity profile] aamonster.livejournal.com
Винда - не особо вынуждает, а вот guidelines по написанию под нее указывают (или, во всяком случае, указывали раньше) использовать реестр. И до фига прог, соответственно, этим страдает.

При этом, если вы не в курсе, у реестра есть три основных ветки. И как минимум настройки проги есть в HKLM и/или HKCU - тогда достаточно их найти. А как максимум - в HKCR, и вот тогда начинается зоопарк со взбесившимися червями, ибо guid'ы одной проги, естественно, никто группировать не будет.

Насчёт линукса я могу заблуждаться в силу недостаточного знакомства. Но насчёт винды - по граблям набегался. Наиболее адекватны Portable-версии.

Date: 2010-04-25 10:50 pm (UTC)
From: [identity profile] volodymir-k.livejournal.com
> При этом, если вы не в курсе, у реестра есть три основных ветки.

4. HKEY_CURRENT_CONFIG

> А как максимум - в HKCR

HKCR это подветка HKLM
HKEY_LOCAL_MACHINE\SOFTWARE\Classes

> Но насчёт винды - по граблям набегался.

А у меня наоборот, никаких проблем с переносом настроек не было.


Подход реестра и кучи конфиг файлов технически абсолютно идентичны. Есть и юникс проги, которые хранят настройки... см выше -- в 5 местах; в реестре максимум в 2. Если программа хранит настройки глобально -- значит она так написана, и проблема с переносом настроек решается 1:1 как с файлами.

Date: 2010-03-10 02:40 pm (UTC)
From: [identity profile] w00dy.livejournal.com
Когда дело касается сервера, то об этой многопользовательности можно благополучно забыть. Мы свой серверный софт либо внедряли сами, либо этим занимался специально обученный человек со стороны клиента (распаковал, запустил bat-файл, убедился что в логи что-то начало сыпаться и это не ошибки ;)

Date: 2010-03-10 02:47 pm (UTC)
From: [identity profile] metaclass.livejournal.com
У меня строго обратные сведения.

На запуск msi прав не хватает регулярно. На запись в Program Files - тоже.
А вот на то, чтобы распаковать zip в своей рабочей папке и запустить его - в большинстве случаев права есть. Поэтому клиентам дается и то и другое.

При этом прога работает с Application data текущего пользователя и вообще от системы зависит по минимуму. Хотя админы-идиоты и это умудряются сломать - система выдает C:\WINDOWS\TEMP\ в качестве временной папки, а права записи туда нет.
Если же речь идет о средствах разработки, то очевидно проще распаковать архив и запустить программу, чем ставить msi. У меня вообще весь такой софт ставится исключительно копированием, что сокращает время переселения на новые компы и винды очень сильно.

Date: 2010-03-10 03:11 pm (UTC)
From: [identity profile] aamonster.livejournal.com
Ребе, а как вы умудряетесь ставить средства разработки копированием, если они хранят свои настройки в реестре? Или у вас подборка не хранящих?

Date: 2010-03-10 03:16 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Подборка не хранящих. Компиляторы дельфи, билдера и VisualC какого-то из ранних, всякие питоны, руби, svn, меркуриалы, gnuwin32 и прочего мрака
Для некоторых особо рьяных средств есть эталонные ключи реестра.

Date: 2010-03-10 03:15 pm (UTC)
From: [identity profile] aamonster.livejournal.com
Да, и для говнософта, которому нужен реестр и куча папочек по всему диску (какой [censored] решил, что документы удобно хранить в "C:\Users\user\Мои документы"? Удавил бы...) - естественно, лучше msi, чем ручками править реестр.

А нормальный софт у меня живет в \WinApp\Имя_проги, при переезде с машины на машину - просто копируется (со всеми настройками, при переустановке системы продолжает спокойно работать. Зачем для такого msi?

Date: 2010-03-10 03:20 pm (UTC)
From: [identity profile] w00dy.livejournal.com
> какой [censored] решил, что документы удобно хранить в "C:\Users\user\Мои документы"?

Я положил ~\Documents в svn, и там стало удобно их хранить. Правда по всему говну, которое туда бросают разные приложения, пришлось пройти и поставить атрибут hidden, чтобы глазя не мусолило.

Date: 2010-03-10 03:26 pm (UTC)
From: [identity profile] aamonster.livejournal.com
У меня старая привычка - включать показ hidden и system файлов, мне от неё тяжко было бы отказаться =).

А ~ в винде, увы, не предусмотрено. Так что в том же Far мне приходится идти вдаль по каталогам, чтобы докопаться до своих файлов (почему я просто не сделяю батник - непонятно, да ;-)). И наоборот: чтобы сохранить файл из какой-то проги или открыть файл - зачастую приходится долго выбираться из этих самых My Documents (до хрена прог, которые не запоминают, где я в последний раз сохранял файл, и тупо лезут в домашнюю папку).

Date: 2010-03-10 03:31 pm (UTC)
From: [identity profile] w00dy.livejournal.com
> У меня старая привычка - включать показ hidden и system файлов, мне от неё тяжко было бы отказаться =).

А я от этой привычки отказался. Если уж понадобилось лезть в такие дебри, то запускаю фар. А так пользую windows explorer, частоиспользуемые пути занёс в favorites.

> Так что в том же Far мне приходится идти вдаль по каталогам, чтобы докопаться до своих файлов (почему я просто не сделяю батник - непонятно, да ;-)).

В фаре ж есть букмарки на каталоги.

Create a folder shortcut Ctrl-Shift-0 to Ctrl-Shift-9
Jump to a folder shortcut RightCtrl-0 to RightCtrl-9

Date: 2010-03-11 08:49 pm (UTC)
From: [identity profile] http://users.livejournal.com/_aive_/
Тогда использовать сразу ClickOnce

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 21st, 2025 01:59 am
Powered by Dreamwidth Studios