powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Клиент-серверная технология и 1С
25 сообщений из 66, страница 2 из 3
Клиент-серверная технология и 1С
    #38703173
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
оффтоп
HoBTIDВ каких технологиях, например?

www.google.com
нажимаешь кнопочки, а там выпадающий список обновляется. Устроит?
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703204
HoBTID
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsev,
Не устроит, уж очень специфическая предметная область.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703210
Фотография Диез
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Leonid Kudryavtsevоффтоп
HoBTIDВ каких технологиях, например?

www.google.com
нажимаешь кнопочки, а там выпадающий список обновляется. Устроит?


Вы, видимо, про AJAX говорили? Ну, так и в этом случае нажатие кнопок обрабатывает JavaScript на клиенте , который принимает решение: когда и как реагировать, что отсылать на сервер, как отрисовывать.

Вот если бы у вас при каждом нажатии клавиши на сервер отсылался http-запрос с полной перерисовкой страницы...
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703259
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот же русским по белому.
Код может быть выполнен как сервере, так и на клиенте. Так, как данные на сервере, то манипулировать ими мы можем только там, а на клиенте можем манипулировать только тем, что есть на клиенте.
Там есть еще и другие директивы, позволяющие снизить снизить нагрузку например на сеть.

P. S. В websharper например, тоже есть такое разделение, функции в зависимости от того, где будут исполняться помечаются атрибутами [<JavaScript>] или [<Rpc>]. В последнем случае код(например доступ к БД) будет выполнен на сервере, но этот вызов скрыт и программисту не придется возиться со всякими там AJAX, JOSN и прочими WebApi.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703362
Йося
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ЕвгенийВ Вот же русским по белому.
Код может быть выполнен как сервере, так и на клиенте. Так, как данные на сервере, то манипулировать ими мы можем только там, а на клиенте можем манипулировать только тем, что есть на клиенте.
Там есть еще и другие директивы, позволяющие снизить снизить нагрузку например на сеть.

P. S. В websharper например, тоже есть такое разделение, функции в зависимости от того, где будут исполняться помечаются атрибутами [<JavaScript>] или [<Rpc>]. В последнем случае код(например доступ к БД) будет выполнен на сервере, но этот вызов скрыт и программисту не придется возиться со всякими там AJAX, JOSN и прочими WebApi.

Еще раз для тех кто в танке. Речь не о том что не нужно разделение методов по месту выполнения, речь о том что непонятно зачем делить процедуры на клиентские и серверные. Делиться должны МЕТОДЫ - например ВыполнитьЗапрос() должен вызываться на сервере, но это еще не значит что его нужно вызов данного метода выносить в отдельную процедуру, система и так знает и понимает, что он должен выполняться на сервере.

Ну если такая великая и всем известная система как вебшарпер делит процедуры (спасибо что дали ссылку на что это такое), то тогда и все остальные системы должны делиться.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703373
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЙосяЕще раз для тех кто в танке. Речь не о том что не нужно разделение методов по месту выполнения, речь о том что непонятно зачем делить процедуры на клиентские и серверные. Делиться должны МЕТОДЫ - например ВыполнитьЗапрос() должен вызываться на сервере, но это еще не значит что его нужно вызов данного метода выносить в отдельную процедуру, система и так знает и понимает, что он должен выполняться на сервере.

Еще раз для тех, кто в бронепоезде.
Видимо 1С имеет одинаковые движки для клиента и сервера. Некоторые вычисления целесообразно/возможно выполнять в одном месте, другие в другом, как например и в ASP.NET. Но в последнем серверная часть на c#/vb.net, клиентская на JS. Из JS напрямую серверную часть не дернешь, приходится использовать различные дополнительные средства. Вам же одинэсникам дали механизм позволяющий делать это напрямую. Возрадуйтесь же!
ЙосяНу если такая великая и всем известная система как вебшарпер делит процедуры (спасибо что дали ссылку на что это такое), то тогда и все остальные системы должны делиться.
Вебшарпер - крутейшая система, но там F#, если на c# или 1с можно научить писать обезьяну, то в F# порог вхождения много выше.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703375
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Йося,
для тех кто на паровозе:
http://ru.wikipedia.org/wiki/Метод_(программирование)
авторМетод в объектно-ориентированном программировании — это функция или процедура, принадлежащая какому-то классу или объекту.

найдите отличия:
Код: sql
1.
2.
3.
4.
&НаКлиенте
Процедура ПолеРезультат()
ПолеРезультат = ПолеA + ПолеB
КонецПроцедуры


и
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
&НаКлиенте
Процедура ПолеРезультат()
Процедура СервернаяПолеРезультат{}
КонецПроцедуры

&НаСервере
Процедура ПолеРезультат()
ПолеC = ПолеA + ПолеB
КонецПроцедуры


т.е. как бы написали вы? (Программист?)
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703380
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВВебшарпер - крутейшая система, но там F#, если на c# или 1с можно научить писать обезьяну, то в F# порог вхождения много выше.
))
действительно, 1С и ЯП высокого уровня - разные по задачам. Там уже архитектура впрягается.
Простейший пример для программиста 1С - дать ему 2 ведра краски. Зелёная - аннотация процуры клиента.
Красная - серверной ( и не факт что СУБД).
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703422
Ra72
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123ЙосяТем более что программа сама определяет методы, выполняющиеся на сервере, программист не может этим управлять.
этот посыл неверный.
Отсюда и весь пост. Абсолютно правильный посыл! Почему, например в Delphi, по технологии DataSnap я имею компонент с запросом на клиенте, но исполняется он в серверной части. И мне абсолютно прозрачно, каким образом он на сервер попадает. Это делает технология DataSnap. В нормальных системах, JavaBeans насколько я слышал, тоже такая же.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703433
nscl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1С до нормальной системы ещё пилить и пилить.

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

Правильные подвижки есть в 8.3 - веб-интерфейсы, тонкие клиенты, более цивильный sql-транслятор - но старые конфигурации от 8.2 и ниже со всем этим великолепием решительно не совместимы, надо переписывать, и переписывать серьезно.

Ну а кто вмазался в самописные или сильно подпиленные конфигурации - страдать, терпеть, кушать кактусы.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703486
AHDP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IMHO,

Разделение на клиентскую и серверную часть надо было делать на уровне модулей, вызовом серверных процедур через "сервер.".

ЗЫ А вот как реализована передача данных между клиентом и сервером при вызовах функций - просто пипец. Сколько конф переписывалась повторно под управляемые формы из-за тормозов на этих вызовах...
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703620
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ra72,
"Delphi, по технологии DataSnap" нигде не применяется. Это не веб проект.
Найди другой пример.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703629
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ra72
мы же говорим шире, чем Command.RunSQL('запрос').
Мы говорим о БЛ, который пишет программист. Т.е. как пометить кусок кода с исполнением на сервере и с исполнением на клиенте.
- либо пометить краской, либо писать в разных окнах\файлах
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703696
HoBTID
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ra72... В нормальных системах, JavaBeans насколько я слышал, тоже такая же.
Вы слышали неправильно. JavaBeans работают только на сервере, найдите другой пример.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703715
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Ra72
мы же говорим шире, чем Command.RunSQL('запрос').
Мы говорим о БЛ, который пишет программист. Т.е. как пометить кусок кода с исполнением на сервере и с исполнением на клиенте.
- либо пометить краской, либо писать в разных окнах\файлах

Либо система знает, что персистентные сущности должны обрабатываться на сервере, все остальное можно на клиенте. ;-)
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703761
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,
банальные сущности - Пол, Имя, Рождение = CRUD - неинтересно.
Мы о БЛ говорим.
Ведь, ни один бухгалтер, не выдержит мата из слов "персистентные сущности" ))
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703772
Хитроглазый
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Йося...
реальный пример кода из конфигурации 1С, для одного действия создано две процедуры по одной строке кода каждая:

&НаКлиенте
Процедура КомандаЧО01Меню(Команда)
ОткрытьЗакрытьМенюПрочихОпераций();
КонецПроцедуры

&НаСервере
Процедура ОткрытьЗакрытьМенюПрочихОпераций()
Элементы.ГруппаПрочихОпераций.Видимость = НЕ Элементы.ГруппаПрочихОпераций.Видимость;
КонецПроцедуры

...

(0) вчера в БП 3.0 бух словила глюк в документе Поступление на расчётный счёт, и мне пришлось попрыгать по отладчику в обработке проведения... скажу честно: желание изучать УФ нет! я прошёл более 50 модулей и больше половины с одной строчкой. такое удручает


Давайте не будем смешивать УФ в целом и их использование в конкертных конфигурациях?
Проблема качества кода в типовых - отделаная тема.

ЙосяНасколько я понимаю в .Net такого нет.

.Net здесь каким боком? Где здесь 3-х звенка?
Сравните уже лучше с вебом: html+js на клиенте, php/perl/что угодно на сервере (приложений).

ЙосяЕще раз для тех кто в танке. Речь не о том что не нужно разделение методов по месту выполнения, речь о том что непонятно зачем делить процедуры на клиентские и серверные. Делиться должны МЕТОДЫ - например ВыполнитьЗапрос() должен вызываться на сервере, но это еще не значит что его нужно вызов данного метода выносить в отдельную процедуру, система и так знает и понимает, что он должен выполняться на сервере.

То есть, если у вас в одной процедуре 100500 вызовов серверных методов, то и сервер приложений должен дергаться 100500 раз?
И вы серьезно недовольны тем, что нельзя в обработчиках событий написать запрос к БД? Вы так пишете код в свох проектах?

И вот на закуску:
Код: vbnet
1.
2.
3.
4.
ADOConnection = Новый COMОбъект("ADODB.Connection");
ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + ИмяФайла;
ConnectionString = ConnectionString + "; Extended Properties = "+"""Excel 12.0 Xml"+";HDR=NO;IMEX=1"";";
ADOConnection.Open(ConnectionString);



Скажите, на клиенте или на сервере выполняться этот код?
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703781
prog123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если речь идет о программах типа "Управление предприятием", то "технология" нужна только одна, - терминальный доступ.
В режиме терминального доступа та же 1С хорошо работает и с планшета и с телефона.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703801
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123mad_nazgul,
банальные сущности - Пол, Имя, Рождение = CRUD - неинтересно.
Мы о БЛ говорим.
Ведь, ни один бухгалтер, не выдержит мата из слов "персистентные сущности" ))

Мы же не про бухгалтеров говорим, а про программистов.
Вот есть у нас БЛ.
БЛ - это набор действий.
Так вот БЛ прописана тем или иным образом в программе.
Если это толстый клиент, то в основном на стороне клиента, если тонкий клиент, то в основном на стороне сервера.
Так вот по большому счету прикладному программисту должно быть все равно где будет исполняться его код.
На сервере или на толстом клиенте.
Он должен, например.
1) Создать документ
2) Дать пользователю ввести данные
3) Сохранить документ
4) На основании документа сделать проводки

Например в том же ADempiere есть толстый и тонкий клиент.
Пункты 1) 2) 3) - могут выполняться как на стороне клиента (если он толстый), так и на стороне сервера (если он тонкий)
А вот пункт 4) только на стороне сервера.
Кстати пункт 3) для толстого клиента может выполняться и на сервере, зависит от типа документа.

Так вот в ADempiere большую часть того, где и как будет выполняться берет на себя платформа.
Программист только пишет БЛ, причем в понятных для бухгалтера терминах - документ, проводка, справочник и т.д.

Естественно, когда нужно "что-то странное", то нужно углубляться в дебри и явно указывать, что вот здесь нужно выполнять данный метод только на сервере, а здесь можно и на клиенте.

Но таких случаев не много.
На нашем проекте было 1 раз.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38703836
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulЕсли это толстый клиент, то в основном на стороне клиента, если тонкий клиент, то в основном на стороне сервера.
Так вот по большому счету прикладному программисту должно быть все равно где будет исполняться его код.
для этого условия (программисту пофигу) должно быть условие - программа умнее своего программиста.
Может ADempiere и такая, я в это не верю imho
2. Программист часто пишет ещё сожнее. У него КУСКИ кода в процедуре должны исполняться в разных местах.
(это не ASM вставки в код паскаля)
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38704072
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123mad_nazgulЕсли это толстый клиент, то в основном на стороне клиента, если тонкий клиент, то в основном на стороне сервера.
Так вот по большому счету прикладному программисту должно быть все равно где будет исполняться его код.
для этого условия (программисту пофигу) должно быть условие - программа умнее своего программиста.
Может ADempiere и такая, я в это не верю imho
2. Программист часто пишет ещё сожнее. У него КУСКИ кода в процедуре должны исполняться в разных местах.
(это не ASM вставки в код паскаля)

Еще раз.
Это платформа, у которой есть API.
Например, есть команда "сделай_проводку (дебет, кредит, сумма)"
Так вот программисту не дают лезть напрямую БД, он работает с "прослойкой" API, которая знает, что данная команда выполняется только на сервере.
Где программист вставил эту команду (сервер или клиент) для него должно быть все равно.
API понимая контекст либо выполнить напрямую, либо передаст команду на сервер.

Соответственно когда прикладной программист пишет обработчик для кнопки, он не думает, что вот здесь эта команда должны выполняться на сервере, поэтому мне нужно ЯВНО указать это. Он просто вставляет "сделай_проводку (дебет, кредит, сумма)".
Все остальное делает за него платформа.

Т.к. мы говорим об учетных системах, то команд, которые обязаны выполняться только на сервере не много.
Все остальное может выполняться на толстом клиенте.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38704128
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulAPI понимая контекст либо выполнить напрямую на клиенте, либо передаст команду на сервер.
расшифруй эту главную фразу. Т.к. выше ты сказал, "что данная команда выполняется только на сервере".

Т.е. есть список процедур\объектов выполняемых только на сервере. Всё остальное идёт на клиенте.
Так?
Или можно проще - как мой код выше написать?
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38704138
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulНапример, есть команда "сделай_проводку (дебет, кредит, сумма)"
разбери второй случай.
Программист САМ пишет подобную "команду"
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38704235
HoBTID
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgulЕще раз.
Это платформа, у которой есть API.
Например, есть команда "сделай_проводку (дебет, кредит, сумма)"
Так вот программисту не дают лезть напрямую БД, он работает с "прослойкой" API, которая знает, что данная команда выполняется только на сервере.
Где программист вставил эту команду (сервер или клиент) для него должно быть все равно.
API понимая контекст либо выполнить напрямую, либо передаст команду на сервер.
До чего тупые пошли программисты!

Если этот недоумок так напишет, то у него через строчку будут серверные вызовы.
А программист должен РАЗДЕЛИТЬ КОД на клиентский и серверный так,
чтобы было МИНИМАЛЬНОЕ КОЛИЧЕСТВО серверных вызовов.
...
Рейтинг: 0 / 0
Клиент-серверная технология и 1С
    #38704454
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123mad_nazgulAPI понимая контекст либо выполнить напрямую на клиенте, либо передаст команду на сервер.
расшифруй эту главную фразу. Т.к. выше ты сказал, "что данная команда выполняется только на сервере".

Т.е. есть список процедур\объектов выполняемых только на сервере. Всё остальное идёт на клиенте.
Так?

Да.
Точнее сказать методов.
Например.
Создаете объект "документ_чего-то_там" наследник от "документа".

В нем переопределяете метод "создать_проводку"

Так вот данный метод будет выполняться на сервере.
А на клиенте вызываете метод "провести", который вызывает на сервере ваш переопределенный метод "создать_проводку", с передачей данных с вашего объекта.

Опять же это платформа для создания учетных систем, где многие вещи "жестко заданы".

Для общих случаев скорее всего не подойдет.
...
Рейтинг: 0 / 0
25 сообщений из 66, страница 2 из 3
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Клиент-серверная технология и 1С
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]