Pull to refresh
2
0
Конан сын юриста @conan007

User

Send message

Практический вопрос про вашу супербазу. Без открытия служебных секретов можете сказать много ли одновременно работающих пользователей, какие клиенты используются по преимуществу (web или тонкий), практикуете ли оптимизацию трафика через прослойку серверов среднего звена и как делаете архивирование данных, сколько оно времени занимает?

Конфигуратор дает возможность очень быстро (на порядок) управлять объектами учета в БД сравнительно со скриптовыми средствами. Кнопочно и флажочно. В БД 1С объекты учета не просто таблицы. Это наборы таблиц и представлений плюс экранные и печатные формы. И все это делает конфигуратор. Практически все объекты хозучета, придуманные человечеством за пять веков, реализованы в Odin Ass. На 90%. Если что-то необходимо нетипичное сделать несложно добавить через внешнее подключение. И всем этим управляет как раз конфигуратор. Замена конфигуратора, как вы упомянули, продвинутым редактором означает все равно, что в БД должна быть реализация этих объектов учета со всем прочим сопровождением ( то есть платформа) и редактор будет вызывать эти возможности через программный код. Сдается мне, что проще некоторые вещи делать кнопочно и через специализированные средства конфигуратора вроде мастеров форм и отчетов чем описывать соединение объектов текстуально. Картинка информативнее простыни кода. Она объемнее

Вижу вы во всю использовали возможности Odin ass как интегратора. Это понимается не только лишь каждым. Решпект без иронии. Глянул на вашу статью. У вас ведь в основном для внешних связей используются внешние компоненты на С++ и COM-технологии? А web-сервисы не пробовали? Я увлекся этим на восьмерке после того как охладел к внешним компонентам. Писал их на Delphi для семерки и восьмерки с адаптацией структур данных к С++, есть такие приемчики. Но от версии к версии эти компоненты теряли совесть, то есть совместимость. Однажды увидел намек на использование http-подключения и спустя некоторое время выбора технологии с легкостью написал web-сервис на джаве. Можно и питоне, но джава милей, она ведь кроссплатформенная и такая миленькая. В ней собственный серверочек пишется быстро. Я таким путем спариваю Odin ass ку с Ораклом. Мне-то нужны отчеты из данных в нём, а учебная одинэсина именно как интегратор и дизайнер отчетности

Поц скриптум. С++ все-таки не для каждого, а вот джава приятнее и доступнее и вполне развернётся на линухе

Хе! Там не просто 700+. Там 10 томов и все шедевральны. Достойная последовательница Р.Хайнлайна и М.Митчел

Вы правы в конечном абзаце - это всего лишь рефлексия, причем, невысокого уровня, школярского. Вижу, что вы либо не понимаете, что есть такое 1С, либо демонстрируете это.
В первую очередь 1С - это реляционная база данных нового поколения. Ни больше и ни меньше. Хотя она сейчас в стагнации и где-то даже в прострации, но этих ее качеств не отнять. Есть аналоги, но не превосходящие. Разве что нахрапом. На Западе и на Востоке.


Вы написали как вывод "Никто не ставил цель создать гибкую, масштабируемую и удобную платформу ". Ошибочка. Не знаю, что там за цель ставили кроме желания нажиться, но создали как раз гибкую и масштабируемую систему. Есть в ней и свой GIT. Своеобразный, мозолистый и свой, хотя можно использовать и традиционный, пусть и извращенно. Но извращений никто не отменял, они порой движут прогресс человечества.
Odinass-ина сейчас в стагнации и в тупике вот уже как лет пятнадцать. Ну ладно, пусть десять, потому что примерно такой срок назад начали что-то соображать и выпустили Кхултху под именем EDT. Недавно в очередной раз пощупал это убожество и с огорчением за́пил.

Главное в Odin Ass конфигуратор.

Второе достоинство - в ее функционал можно подключать внешние инструменты разными способами. Лично я предпочитаю web-сервисы, то есть базовый межпроцессорный механизм обмена через сокеты. Это и есть масштабируемость, в которую входит также свободное развертывание на сети серверов благодаря трехзвенной архитектуре. Не скупись только на сервера среднего слоя и разруливай сложный трафик. Про полный набор клиентских частей я уж не говорю, только напоминаю.

Третье достоинство - скорость проектирования благодаря конфигуратору и встроенному языку. Она может на порядок превышать типичную для sql-щины. Потому что там не просто табличные объекты, а более сложные объекты хозучета, состоящие из набора таблиц, экранных и печатных форм и поддержки платформы. Все это избавляет от цыганщины, то есть индийского кода.

А вот недостатком, который тормозит, как раз является язык. Как говорится, язык мой - враг мой. Его архаичность. Тут вы и комментирующие правы. Надо "просто" заменить его на java. Будет конфигуратор, будет поддержка учетных и коммуникационных технологий, но вместо этого убогого бэйсика честная, изящная, стройная джава. А также среду разработки (IDE) подогнать к современным стандартам в стиле IDEA или NetBeans (в силу убогости личного опыта других примеров не подберу).

Примерно так

Не соглашусь с вами, что бухгалтерия утратила свою актуальность с появлением компьютеров. Что вы поимели ввиду под бухгалтерией? Проводки туда-сюда? Это так называемый принцип двойной записи: откуда ушло и куда пришло. Изобретен пять веков назад в эпоху Возрождения. Опубликован Лукой Пачиоли. Иллюстрировать помогал сам Леонардо (по памяти привожу, может Леонардо и ни причем: проверьте в Вике). Без двойной записи получится как энергия ниоткуда. А это уже, батенька, закон сохранения энергии, следуемый из однородности и изотропности пространства (см. Теоретическая механика, том перший). На самом деле бухгалтерский учет это иное название хозяйственного учета, а от последнего в индустриальную эпоху никуда. Это на хуторе можно обходиться личным умом.
Бухгалтерия есть ведение учет а по книгам (book keeping по аглицки). Сейчас вместо книг компы, но принципы те же

Как раз с точки зрения разработки автор и не оценивает, потому что не видит или сознательно замалчивает главное - скорость разработки проекта произвольного хозяйственного учета. Она в разы больше типичного sql-ного. Кто не работал в обоих этих мирах, ни сможет оценить новаторства 1С, которое еще наличествует, несмотря на вот уже как 15-летнюю стагнацию в тупике. Подробнее я изложу на уровне статьи в мере, заслуженной автором

То, что вы тут изложили как открытие, придумала Лоис Буджолд в "Ученике воина", когда два молодых и задорных мичмана обвели супердорогую и защищенную систему Барраярской безопасности именно таким образом - терминал к терминалу и никаких проводов или подключений к сети, чисто визуально и мануально. Написано еще в 90-х.

А я организовал бузинес с ЗОЖ иначе. Сначала полгода покупал на рынке хорошие курагу и арахис, а потом волею случая узнал, что эти же продукты можно просто заказать на Озоне. Выходит от 5 до 25 процентов дешевле и не надо на рынок ходить - пункт Озона в соседнем доме и для заказа мобила или комп под рукой. Слава Линии Доставки (@АБС)!!! Она спасет мир.
Печалька моему продавцу на рынке, но я больше не буду платить за его добавленную стоимость в виде расфасовки по мешочкам и коробочкам. Приветливый узбек. Сам и косточки выщелушиваю и добавляю в еду как мне хочется. И не один батончик в рот кладу, а несколько разных блюд с удовольствием потребляю.

У Огненной Лисы мне не нравится отладчик. В Хроме гораздо приятнее и по цветам, и по размерам текстов. Сразу без настроек запускается в гораздо удобном виде. Аналогично и у Яндекс-браузера. Поэтому Лису использую исключительно по необходимости, когда надо одновременно несколько разных браузеров запускать

Полагаю еще никто толком не исследовал влияние на массовое сознание различия звучания и написания в языке. Имею ввиду фонетические письмена. На мой взгляд это нарушает целостность мышления у народа. Не отсутствие цельного мировоззрения, а терпимость к размыванию смыслов. Так сказать семиотическое размытие, если вести речь под влиянием прочитанного. Говоришь одно, а в книгах и газетах нечто галиматичное

Вы серьезно подходите к теме и не ответить также развернуто невозможно. Вы пробудил демона моего воображения.

Начну с простого, которое отражает как в зеркале общее явление. С порочности объектного подхода и в прикладном программировании в том числе. Начать стоит с понимания предмета. Объектный подход это распределение свойств и методов по категориям или группам, или контейнерам, или пространствам имен - на выбор. Последний термин ближе к области рассмотрения. Если методика порочная, наверное альтернативная выгоднее. Что является альтернативой? Тут не надо быть программистом (айтишником), достаточно нормальной логики - альтернативой является бессистемность, мешанина, хаос и порядок виден только индивиду-создателю. Проблема делано путанная и рассчитана на поверхностное восприятие реальности. Что любопытно, совсем недавно подобная дискуссия возникла с коллегами, которые что-то там прочли о предпочтении "функционального программирования" объектному подходу. На вопрос, что есть функциональное программирование ответить четко не сумели, но описали как использование только функций, а данные либо разрозненны, либо упорядочены в наборы. В джаве этому соотвествуют записи и перечисления, в Паскале тоже, кажется, записи, в OdinAss'ke вроде тоже есть подобное. Ну еще разные коллекции или массивы. Объяснить, что этот подход является частным случаем объектного не удалось. Хитренько (по-ленински) улыбались и покачивали головками. В мире, кстати, для "функционального программирования" тоже нет устоявшегося определения. Объектный подход реализует эту методику как частность. На джаве создаем в классе статические методы и работаем со статическими полями или переменными. Более того, глубинная реализация нестатического метода класса содержит скрытый параметр со ссылкой на экземпляр. Это хорошо видно в технологиях отражений джавы (invoke, TMethod). То есть имеем характерный пример путаницы частного и общего, что встречается повсеместно не только в быту, но и на всех уровнях до самых значимых, например, противоречия между трудом и капиталом в современном мире или решение основного вопроса философии и сейчас и век назад. Вспомните историю написания "Материализма и эмпириокритицизма". То же самое - спутывание частного и общего, лично-чувственного и объективно-материального.

Теперь об объектности в 1С. Она объектна. Хотя язык не типизирован, но все переменные в нем могут быть как простыми данными, так и сложными объектами. Это объекты конфигурации, описание метаданных, прикладные объекты вроде коллекций или обработчиков внешних данных вроде гипертекстов, просто текстов или бинарных файлов. Для каждого типа созданы в сущности неплохие решения как и в других языках высокого уровня, но с каждым годом (который в IT лучше считать десятилетием обычной жизни) эти решения все более и более архаичны и программирование на встроенном языке 1С становится сектантством, хотя и весьма многочисленным. Оно никогда не выползет за пределы своего желтенького домика. А вот использование другого языка с широким спектром применения открывает двери в большой мир. Пусть это будет не джава, а питон или пресловутый Rust, о котором в последние недели начали трепаться. Если в них достаточно универсальных наработок - ради бога. Однако, сдается мне, что джава универсальнее. Она отлично реализует серверные приложения всяческих родов, десктопные, консольные и в ней нет ничего необычного, чего нет во встроенном языке Odin Ass. Те же переменные, массивы и циклы. Джава проверена четвертью века. Её и шарп не догоняет. Для всяких пресмыкающихся питонов и блескучих перлов есть свои ограниченные ниши (или загоны).

Удобство реализации объектов в джаве и javascript'e сильно раскрепощает в случае нетривиальных вычислений, избавляет от нудных повторений кода (индийский код). Но чтобы это себе хорошо представить необходим опыт программирования в обоих мирах. Простое утверждение не доходчиво. В 1с тоже можно на лету создать объект, но это будет вариант экземпляра финального класса из ограниченного набора классов, представленных в языке. То есть как раз та самая парадигма "функционального программирования". Вдобавок функция может быть отделена от данных весьма приличным структурным интервалом, что не может не сказаться на общей производительности труда разработчика. Понятно, что мусорить и плодить дублирующийся код можно и в самых идеальных условиях, но не будем впадать в досадные крайности.

Теперь о способе подключения сторонних наработок. В 1с-ке есть несколько вариантов интеграции, она является великолепным объединителем технологий. COM-объекты Windows напрямую, внешние компоненты по технологии OLE-automation или Native API, вызов программ непосредственно и использование web-сервисов. Все эти способы лично я юзал с начала нулевых. Внешние компоненты делал на Паскале, потому что родной Си стал уже слишком громоздок по сравнению с началом 90-х, когда на нем было работать легко и приятно, особенно объектном (С++). Все это не что иное как внешние DLL-ки. Для каждой надо затевать отдельный проект в другой среде программирования, а потом еще и подключать с различными ухищрениями. А теперь представим, как бы это подключение к чему-нибудь вне (пусть это будет какая-нить СУБД) было бы на встроенной джаве. Создаем одной командой соединение, другой - запрос, причем в многострочном литерале, третьей выполняем и потом организуем извлечение данных. Всё, ales. Как это выглядит собственными средствами 1С? В ней имеется внешнее подключение к сторонней СУБД. При этом надо создать в конфигуратора описание таблицы или представления с детализацией по полям. Произвольный запрос или командный блок не предусмотрен. Если создавать на лету (не помню, есть ли такое), то надо все это повторить программно. Весьма неуклюже. Как происходит с внешними компонентами или web-сервисами? Для начала надо напрограммировать в отдельном проекте либо общую технологию работы с произвольными запросами к внешней СУБД, либо решение просто частных расчетных задач. Потом подключить, что не совсем тривиально и зависит от клиент-серверной конфигурации. И наконец использовать в соответствии с придуманной параметризацией и дай боже, чтобы она оказалась не очень громоздкой. Наиболее выгодной технологией интеграции в настоящее время я считаю web-сервисы. Может, как-нибудь напишу статейку об этом в разрезе реализации на джаве. Но и для них мне пришлось создавать специальную обработку в качестве интерфейса, чтобы переложить обмен данными в формате json'a на привычную параметризацию процедур и функций и потом эту обработку переносить между конфигурациями, а чтобы это сработало должен быть запущен соответствующий прикладной web-сервер.

Как видите производительность очень сильно различны в этих подходах. А производительность это деньги. Поэтому мы плавно переходим к прикладникам и бизнесменам.

Разумеется, никто не хочет расставаться с привычной рутиной, хотя она становится все тягостнее и менее доходной. Программисты, которые природно поумней, бегут из ÓdinAss'ki в джаву или ВЕБ. Но таких не большинство. А система тем временем коснеет, дряхлеет и хуже реагирует на требования и наработки текущего момента. Как в фильме Феллини "И корабль плывет" - плывет, тихонько разлагаясь, к уже недалекому финалу. Сидят в уголках старички, обсуждая "интродьюсио", орёт какой-то басист, в трюме тихо тоскует в своих помоях несчастный бегемотик, там же кидает уголёк черная команда и толпы бездельников слоняются по всем палубам.

Разумеется, перевод на джаву потребует серьезного передела внутри платформы. Я это и не скрывал в заметке. Тут нужен государственный подход, пусть даже если это будет частный стартап. Надо мыслить в миллионах и парсеках, а это дано не только лишь каждому. Кто не мыслит масштабно, не имеет будущего, он скучен и его гроб зевая ждет. Правильным было бы данный проект запустить без шума как НИиОКР с хорошим финансированием, чтобы работали в нем идейные, мотивированные и энергичные и по выходу на добротный пилотный вариант обеспечивать совместимость с предшественниками.

Я уверен, что когда затевалась версия 1с-7 были такие же споры, потому что 6-ка отличалась кардинально, а 7-ка была как тот яростный взлет в 61-м. Потом она плавно эволюционировала до тупика и затем опять взлет с версией 8, в которой были качественные изменения, отвечающие эпохе WEB. Полной совместимости 7 и 8 нет, есть лишь конвертация и это нормально. Так и с проектом новой платформы должно быть. А вот язык можно и сохранить и даже реализовать одинэсную джаву, чтобы не прыгать с национального языка на английский. Всего-то делов что препроцессорная обработка с заменой слов. Кому на чем нравится, на том пусть и пишет: на архаике, чистой java, или адаптированной о́дин-джаве.

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

Хотел еще порассуждать о способах реализации разных внутренних механизмов платформы вроде разных служебных модулей, пакетов, различением серверных и клиентских модулей, но это уже будет грехом суесловия. Все это вполне на джаве реализуемо. Думаю, можно использовать механизм аннотаций как раз для разделения кода сервера и клиента, а также просто флажки и неназначенные ссылки.

Примерно так

Кратко в заметке всё указано. Попробую детализировать.

Джава дает:

  • больше возможностей для объектного программирования (сказано в тексте);

  • позволяет использовать наработанное человечеством вместо выморочно-доморощенного; последнее было обосновано и хорошо работало пока java была в нулевых тяжеловесна и в поисках пути; помню я тогдашние приложения - едва ворочались; теперь она по скорости и средствам в передовиках;

  • легче будет подключать сторонние наработки, например, внешние базы данных; делать прямо из модулей без внешних компонент или web-сервисов (то, кстати, в заметке указано, но кратко); нынешнее подключение мрачное убожество, проще сделать свой web-сервис (что сделано у меня);

  • как частность - удобная работа с многострочными текстами запросов взамен имеющейся архаики; кстати, джава сама от подобного избавилась лишь в последние годы;

  • меньше будет дублирующего, индийского кода; легче будет обмениваться кодами между различными проектами (без тупого дублирования).

По факту я описываю современное IDE с джавой, у которого кроме редактора есть конфигуратор в виде закладки с одинэсными мастерами форм, отчетов и своих запросов и которое кроме подключения сторонних пакетов подключено к специализированным пакетам своей среды - к метаданным. Эдакий вариант NetBeans или Интележи Айдиа. Обе среды позволяют в современных компах навешивать чертову уйму плагинов и работают шустро. Стерпят и плагин конфигуратора.

Не потребуются костыльные средства обработки строк (тоже сказано в заметке), тяжеловесные парсеры и конструкторы xml и html и то же самое для бинарных данных и всякое такое.

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

То есть вбрасываю идею. Судя по основной массе реплик подобное большинству в голову не приходило. Вот пусть теперь идея носится в воздухе пока не найдёт свою группку чертовски талантливых сорвиголов, которые завращают Землю как надо.

Примерно так. Компране ву, мон ами?

И точно! Всего лишь 25 лет потребовалось! Ну, шустряки. Эдак они к середине века и на джаву перескочат... правда, к этому времени либо человечество вымрет, либо будет другая лингва франка

А вот это дельный ответ, в отличие от большинства. Респект. Не слышал, ставлю в план, испробую как будет время.

Information

Rating
5,667-th
Location
Калининград (Кенигсберг), Калининградская обл., Россия
Date of birth
Registered
Activity

Specialization

Software Developer, Application Developer
Senior
SQL
Database
Java
XML
JDBC
Oracle
C#
Software development