|
Пафосное опредление програмирования в 1С с точки зрения математики. | ☑ | ||
---|---|---|---|---|
0
Консультант Баранов
31.08.19
✎
17:27
|
Сам я не технарь, математике не обучен, помогите кто чем может.
Посмотрел я картинку возле группы "Измерения" регистра накопления, и постиг, что на ней изображены декартовы координаты. И чего-то это меня пробило. Т.е. если есть какой-нибудь регистр "Партии товаров на складах". С измерениями организация, номенклатура, склад, партия то по сути мы имеем четырехмерное пространство. И обычное дело получить товары на складах, т.е. свернуть четырех мерное пространство до двумерного. Когда получаем остатки товаров на складах, это по сути что-то вроде функции f(Товар, Склад) = ... А если у нас еще есть резервы товаров на складах, то это совсем другое пространство и что бы получить свободный остаток для продажи мы делаем что-то типа fостатки(Товар, Склад) - fрезервы(Товар, Склад). А если мы в запросе указываем параметры, например для простейшего условия "номенклатрура из папки "колбаса" на РОЗНИЧНЫХ складах", то мы по сути описываем подпространство пространства остатков. Но это ладно. У нас же есть регистры сведений, и результат может быть не числовой, а в виде Ссылки. Но каждая ссылка это не просто ссылка, напрмер у контрагента могут быть списки адресов, договоров Р/С, у номенклатуры спецификация, технологические операции, и не одни а на разные периоды. Т.е. получается пространство состоит из совершенно других пространств. В программировании 1С вполне обычно использование ТаблицЗначений, т.е. как уже сказал выше некое многомерное подпространство, но у ТЗ в ячейке может хранится другая ТаблицаЗначений, Структура, Список значений. И это вполне обычная операция. Пускай не рядовая, но уж структура в которой несколько ТЗ - обычное дело. Или простой запрос из нескольких временных таблиц, вложенных запросов. Программирование в это прежде всего оперирование, вот такими структурами. Так вот вопрос: как описать с точки зрения математики чем занимаются программисты 1С, когда в ячейку ТЗ пихают другую ТЗ? |
|||
1
Asmody
31.08.19
✎
17:30
|
Существуют рекурсивные фрактальные структуры. Так то топология и теория категорий тебе в помощь. Только травой позабористей запасись.
|
|||
2
shuhard
31.08.19
✎
17:31
|
(0) кто функциональный заказчик описания ?
|
|||
3
gSha
31.08.19
✎
17:42
|
суббота не задалась ?
|
|||
4
Лефмихалыч
31.08.19
✎
18:06
|
(0) ты вот сейчас попросту дрочишь, только - мозгами.
не делай этого публично - в русской культуре это не принято |
|||
5
ДенисЧ
31.08.19
✎
18:43
|
Бараны тебя не поймут.
|
|||
6
Dmitry1c
31.08.19
✎
19:33
|
(1) хороший пример
только рекурсивные-то зачем? просто фракталы |
|||
7
Фрэнки
31.08.19
✎
19:54
|
(2) да это продолжение ранее такой же ветки - он учебный курс для студентов мукомольного техникума сочиняет :-)
Эту ветку надо тоже в юмор отправить. |
|||
8
Консультант Баранов
31.08.19
✎
20:01
|
(7) Не то чтобы сочиняю. Просто думаю как разъяснить. А сегодня картошку копал, и чего-то увлекся мозговым онанизмом.
|
|||
9
Фрэнки
31.08.19
✎
20:05
|
(8) А не рано у вас там картоху копают? Вроде широта достаточно высокая... или просто пока земля сухая, все выкапывать лучше сейчас?
|
|||
10
Консультант Баранов
31.08.19
✎
20:08
|
(9) ХЗ я этим особо не увлекаюсь, скорее наоборот, огород ненавижу. Отец огородник, говорит копать - копаю, не говорит копать - не копаю.
|
|||
11
Фрэнки
31.08.19
✎
20:12
|
(10) мотоплуг тогда купи. Для дачных участков. Будешь не только копать, но и пахать. Отца порадуешь и самому интересней будет, чем просто на лопате висеть.
|
|||
12
Garykom
гуру
31.08.19
✎
20:36
|
(0) >чем занимаются программисты 1С, когда в ячейку ТЗ пихают другую ТЗ?
Увеличивают размерность до 4, причем извращенно. ТЗ это двухмерный массив (плоскость), хочешь больше надо или брать много плоских ТЗ (для третьего измерения) или в каждую ячейку засовывать одномерную-линейную, двухмерную или более мерную структуру. С точки зрения платформы 1С было бы логично сделать не просто многомерные массивы, а N мерные ТЗ. Которые по сути аналогичны регистрам только в оперативке вместо на диске/базе. |
|||
13
Emery
31.08.19
✎
20:37
|
> Сам я не технарь, математике не обучен, помогите кто чем может.
Лично я и технарь (горный инженер) и математик (мехмат МГУ), только вряд ли обрадую вас своими сужениями. > Пафосное опредление програмирования в 1С с точки зрения математики. Пафосного нет. Есть меркантильное. Программирование в 1С это востребованное техническое программирование. Соответственно, на нем можно зарабатывать. Только и всего. > Программирование в это прежде всего оперирование, вот такими структурами. Программирование это оперирование моделями и алгоритмами. Соответственно среда программирования должна обеспечивать подходящие инструменты. Среда программирования 1С такие инструменты дает, но ограниченные бизнес моделями в понимании фирмы 1С. В чем-то эти модели и инструменты по их обработке значительно продвинутые, в чем-то откровенно слабые. Но в любом случае: а) они не единственно возможные и б) относительно ограниченные. Расширять возможности 1С можно по-разному, но это уже другая тема. P.S. Смысл математики в программировании один. Она дает абстрактное мышление, которое позволяет оперировать на концептуальном уровне с моделями и алгоритмами. Но техническим программистам это не сильно надо. |
|||
14
sikuda
31.08.19
✎
20:57
|
(0) Так я не понял "2"+"2"- 1 уже спрашивали?
|
|||
15
Провинциальный 1сник
31.08.19
✎
21:02
|
(12) Кстати да.. Таблица значений - это "недорегистр". Может в девятой версии и "временные" регистры появятся, которые бы хранились в памяти и прозрачно свопились в каталог временных файлов.
|
|||
16
Консультант Баранов
31.08.19
✎
21:18
|
(11)> ТЗ это двухмерный массив (плоскость),
Очевидно, что - нет. ТЗ это массив записей, а не двумерная матрица. А количество измерений в записи зависит от данных которые в ней содержится. И в одной ТЗ может быть сколько угодно измерений. Но обычно координаты в пространстве определяют некую точку. А ТЗ в ТЗ, это получается координаты в пространстве определяют другое пространство. |
|||
17
Консультант Баранов
31.08.19
✎
21:19
|
(13) > Программирование в 1С это востребованное техническое программирование. Соответственно, на нем можно зарабатывать.
Т.е. регистр накопления с точки зрения математики не является пространством? |
|||
18
Консультант Баранов
31.08.19
✎
21:23
|
(11) > мотоплуг тогда купи. Для дачных участков. Будешь не только копать, но и пахать. Отца порадуешь и самому интересней будет, чем просто на лопате висеть.
На лопате висеть - меня особо не напрягает, пару раз в год - закопал картошку, выкопал. А вот перебирать, таскать эти ящики с помидорами огурцами, пропалывать - вся это возня вызывает ненависть, и хорошо, что в детстве осталась. Попытки купить мотоплуг пресекаются: "да я еще годик другой и брошу"(года 4-5 назад), это его хранить надо, это ж сколько на бензин и т.п. Смысла связываться нет. |
|||
19
Garykom
гуру
31.08.19
✎
21:44
|
(16) Таблица обычно двухмерная - т.е. может быть представлена простейше в виде двухмерного массива из колонок и строк.
Массив записей может быть одномерным (СЗ), двузмерным (ТЗ) или многомерным (РС это многомерный массив) |
|||
20
Garykom
гуру
31.08.19
✎
21:46
|
(16) Пространство это когда координаты не целые а действительные.
Массив как и ТЗ не является пространством в общепринятом смысле. Это множества. |
|||
21
Emery
31.08.19
✎
21:54
|
(17) > Т.е. регистр накопления с точки зрения математики не является пространством?
К чему этот вопрос? Является, не является, что для вас измениться? Вообще-то пространство в математике это а) множество элементов (конечное, счетное либо континуальное) и б) система определенных аксиом, которые конкретизируют вид пространства. А каким аксиомам удовлетворяет регистр накопления? |
|||
22
Garykom
гуру
31.08.19
✎
21:54
|
||||
23
Консультант Баранов
31.08.19
✎
21:55
|
(19) > Таблица обычно двухмерная - т.е. может быть представлена простейше в виде двухмерного массива из колонок и строк.
Ты не прав. Двумерный массив это крестики-нолики, морсокй бой, шахматы - когда каждая ячейка равноправна, и может содержать любое значение, какое может быть в другой клетке. А если у тебя ЗАПИСЬ, то ты не можешь в графу с фамилией писать сумму. Это никакой не массив (если мы говорим об отдельной записи). ЗАПИСЬ это как раз координаты. Вот есть множество организаций, есть множество ответственных должностей. Конкретная организация это позиция во множестве организаций, конкретная ответственная должность это позиция в множестве должностей. Запись | ООО "Ромашка" | Кассир | - это координаты в пространстве "Организации-Отв.Должности" |
|||
24
Консультант Баранов
31.08.19
✎
21:57
|
(20) > Пространство это когда координаты не целые а действительные.
Почему? "Прострáнством называется математическое множество," https://ru.wikipedia.org/wiki/Пространство_(математика) |
|||
25
Garykom
гуру
31.08.19
✎
21:58
|
(23) Не путай типизацию ячеек/значений.
Любой многомерный массив или ТЗ (с типизацией колонок) можно сохранить в одномерную линейную структуру (банальный СЗ или линейный массив). А затем восстановить назад. 1|2 3|4 = 1|2|3|4 |
|||
26
Консультант Баранов
31.08.19
✎
22:00
|
(21) > б) система определенных аксиом, которые конкретизируют вид пространства. А каким аксиомам удовлетворяет регистр накопления?
Не знаю. Ибо не математик. А Декартова система это пространство? Какие у нее аксиомы? |
|||
27
Garykom
гуру
31.08.19
✎
22:01
|
(24) Обычно пространством называют множества с бесконечным числом элементов/значений а не конечным как массивы или СЗ или ТЗ.
Речь о том что мы говорим о кортежах (информатика) и да они могут быть представлены в виде множеств (математика) или пространств. Обратное неверно! Не любое множество или пространство можно представить в виде кортежей. |
|||
28
Консультант Баранов
31.08.19
✎
22:03
|
(25)> Любой многомерный массив или ТЗ (с типизацией колонок) можно сохранить в одномерную линейную структуру
А я могу куб на бумажке нарисовать. И даже гиперкуб. И что? Причем мой куб будет просто проекцией, а твое разложение будет полноценно описывать многомерную структуру. |
|||
29
Garykom
гуру
31.08.19
✎
22:06
|
(28) Блин. Почитай про машину Тьюринга.
Суть в том что любые многомерные банально и легко приводятся к одномерным достаточной длины. И достаточно для операций с одномерными. Оперативка компа или место на hdd/ssd линейно. |
|||
30
Garykom
гуру
31.08.19
✎
22:07
|
С точки зрения математики то что ты спрашиваешь это операции над кортежами/множествами.
Изменение их размерности и перестановка/изменение элементов/значений. |
|||
31
Emery
31.08.19
✎
22:08
|
(26) > А Декартова система это пространство? Какие у нее аксиомы?
Декартова система координат это не пространство, а способ исчисления его элементов. Например, в метрическом пространстве либо в эвклидовом пространстве и т.д. и т.п. Аксиомы этих пространств легко найти в википедии. |
|||
32
Консультант Баранов
31.08.19
✎
22:11
|
(27) > Не любое множество или пространство можно представить в виде кортежей.
Тут, наверное, соглашусь. (29) > Суть в том что любые многомерные банально и легко приводятся к одномерным достаточной длины. Т.е. регистр накопления это все же многомерный, просто разложенный на отдельные записи > И достаточно для операций с одномерными. Что значит "одномерными", когда ты в качестве параметра передаешь ТЗ, ты разве работаешь с одномерным объектом? Когда перебираешь записи и что-то там делаешь - да. Но уже заполнитьзначениясвойств, свернуть - это уже не одномерные операции. |
|||
33
Консультант Баранов
31.08.19
✎
22:12
|
(31) Допустим: "Нельзя писать сумму в графу с фамилией" - чем не аксиома?
|
|||
34
Emery
31.08.19
✎
22:15
|
(27) > Обычно пространством называют множества с бесконечным числом элементов/значений а не конечным
Обычно, но не всегда. Главное не мощность множества (конечная, счетная либо континуальная), а соответствие определенным аксиомам. См. https://ru.wikipedia.org/wiki/Конечное_топологическое_пространство . |
|||
35
Консультант Баранов
31.08.19
✎
22:19
|
(30) Вполне может быть. Как уже говорил не математик и не силен в терминологии.
1. Так как описать работу программиста 1С в терминах математики? 2. Допустим это Кортежи. У нас есть множества "Номенклатура"/"Характеристики" "Периоды" по этим координатам мы можем получить "Спецификацию" но сама спецификация содержит в т.ч. с Комплетующими и Техкартами(а еще точнее Техкарт-Период) т.ч. которых это новые "Кортежи", а из них мы можем добраться до ЦеныНоменклатуры-Период, Расценки техопераций. Как называется такое, когда Кортежи в Кортежах в Кортежах? |
|||
36
Emery
31.08.19
✎
22:36
|
(33) > Допустим: "Нельзя писать сумму в графу с фамилией" - чем не аксиома?
В теории баз данных есть аксиома атомарности. Атомарность (информации) понятие условное. Смысл ее в том, что не целесообразно делать запросы к подэлементам. Дешевле разбить (структурировать) данные на неделимые (относительно будущих выборок в запросах), чем, скажем, искать подстроки в строках либо других элементах данных (например, дайте мне все номера телефонов с тремя подряд идущими пятерками). Так делать можно, и так иногда делается, если необходимо. В общем случае, базы данных желательно делать нормализуемыми, т.е., подчиненные принципам (аксиомам) нормализации (см. https://support.microsoft.com/ru-ru/help/283878/description-of-the-database-normalization-basics ). Но в частных случаях идут на сознательное нарушение нормализации баз данных (полностью, либо частично). Главное понимать, что вы выигрываете при этом и что теряете. Так и с объединением информации в одном элементе данных. Можно дать наименование с фамилией, именем, отчеством и днем рождения, если вам не надо делать выборку по частичной информации, но если наверняка в этом не уверены, то лучше данные разбить на максимальное количество подэлементов, вплоть, до дней, месяцев и лет порознь, в случае необходимости частых выборок по этим значениям (при этом целая дата рождения тоже должна быть). |
|||
37
Emery
31.08.19
✎
22:53
|
(35) > 1. Так как описать работу программиста 1С в терминах математики?
Если вас интересует виды моделей и алгоритмов, с которыми имеет дело 1С программист, то эта тема достаточно обширная и интересная. Например, какой тип модели используется в бухгалтерском учете, не знают даже главные бухгалтера, всю жизнь проработавшие с ней. То же самое с моделями производственного учета, учета рабочего времени и расчета заработной платы. Даже торговый учет использует свои модели, которые внятно вам вряд ли кто изложит. Следующий уровень это структура баз данных, с помощью которых описывают содержание этих моделей. Сама база данных это тоже математическая модель, реализованная в различных системах и платформах. Для ее описания используется реляционная алгебра (примитивное описание которой можно почитать на https://habr.com/ru/post/145381/ ). Так что в этом слабость технического программиста, он не знает фундаментальных основ своих занятий. |
|||
38
Сияющий в темноте
31.08.19
✎
22:53
|
Регистр с измерениями-это модель многомерного массива,но в программировании многомерных массивов нет,так как память линейна.
если каждое измерение фиксировано,то есть мы заранее знаем количество элементов,то многомерный массив переводится в одномерный через умножение,когда каждое последующее измерение умножают на максимальное значение предыдущих. в регистре же,кодичество элементов в каждом измерении заранее неизвестно,тогда такой массив переводится в одномерный с помощью строкового сложения измерений,которые потом просто пишутся перед значением,и по ним делается индексация,чтобы быстро находить элементы. так как,обычно,используется кластерный индекс,то элементы в одномерном массиве упорядочены по нему,то есть по общей "строке" из всех измерений. когда мы в таблицу значений пихаем другую таблицу,мы сочетаем оба подхода,то есть массив по одному измерению содержит в элементах массивы по другому,такой подход не оптимален с точки зрения использования памяти,так как при увеличении массива требуется перевыделение памяти,но эти операции намного более быстрые,чем работа с диском. другое дело,что одномерный массив со значениями измерений перед.элементом допускает отборы по дочерним измерениям,минуя головные,а для вложенных таблиц(массивов)это достигается только полным перебором. |
|||
39
Мимохожий Однако
31.08.19
✎
22:55
|
(8) ОФФ. Вспомнилось из литературного:"Женится тебе надо, барин".
|
|||
40
Консультант Баранов
31.08.19
✎
23:02
|
(39) Это вроде и кинематографа.
|
|||
41
Мимохожий Однако
31.08.19
✎
23:06
|
(40) Да. Если не читать первоисточник.
|
|||
42
JeHer
31.08.19
✎
23:12
|
Я, конечно, бухаю. Может, прямо сейчас. Но до такого состояния еще ни разу.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |