|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Блок А.Н., они же многомерные и сортированные, как быть с "drilldown" и направлением обхода? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 11:31 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
doublefint, идти по одному уровню в прямом направлении. Иногда нужно просто обойти все, и текущая конструкция для этого слишком громоздкая. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 12:42 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Блок А.Н.Иногда... В этом случае больше нравится подход со скрытием внутренностей итераций, что-то вроде .keys().next() .map() или .filter() и т.д. Функции как first class member? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 12:53 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
doublefint, Функции как аргумент - неплохо, но я пока не вижу их без слома текущего синтаксиса. Так то бы это в некотором смысле могло перевернуть разработку на Каше (наверное). Ну нужно думать и много чего просчитывать, в том числе логические конфликты с текущими умолчаниями. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.01.2018, 14:20 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Как же, блин, иногда не хватает банального переименования классов. Пофиг на поиск мест, где используется и попытки исправить. Пусть даже схема хранения остается старой, это руками можно поправить, если нужно (просто, это не всегда нужно) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2018, 00:10 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
Блок А.Н.Как же, блин, иногда не хватает банального переименования классов. Пофиг на поиск мест, где используется и попытки исправить. Пусть даже схема хранения остается старой, это руками можно поправить, если нужно (просто, это не всегда нужно) Вообще вроде бы эта возможность давно уже есть в студии курсор поставить на имени класса и в меню выбрать Class -> Refactor -> Rename там может предложить и сбросить хранилище если класс хранимый. что именно переименовать понимает по курсору, так что диалог и процесс будет отличататься но все равно следующим этапом покажет предлагаемые изменения в классах, но нужно понимать что работает в контексте либо проекта либо текущего класса. Так что если проектами не пользуешся и нужно поменять везде, нужно будет сделать проект. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.05.2018, 21:54 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
DAiMor, Спасибо :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.05.2018, 19:51 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
По моему личному мнению, главная ошибка Intersystems совершилась, когда была разработана технология CSP и CacheObjectScript. Для привлечения потенциальных разработчиков необходимо было использовать готовые решения на базе уже существующих наиболее распространенных языков программирования , например Python, PHP и т.д. В Cache необходимо было реализовать только хранилище данных, а не реализовывать все эти классы типа SMTP, pop3 и прочее, которые реализованы гораздо лучше и шире в приведенных языках. Тот же Python отлично умеет работать с JSON и его структурами, которые можно было положить на Cache глобали. Пытаясь внедрить тот же Apache в ядро Cache получили в результате неполноценный обрезок WEB сервера, хотя можно было сделать все по другому. В результате имеем непонятную "классическим" M программистам технологию, которые и дальше пишут на "голом" М c прикручиванием своих сокетов и разработкой собственных протоколов взаимодействия с базой. Это мое личное мнение :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 13:18 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
kalin, а я не понимаю этих стенаний по поводу того, как COS сложен для нового программиста. Любой, кто знает больше одного языка программирования, освоит COS за несколько дней. В вебе за пару лет меняется больше, чем в Каше за 10 и никто не плачет "ах как же мы во всем этом новом разберемся". Разбираются. Не в этом причина слабой распространенности Каше. Язык не подразумевает реализации, и библиотеки не являются частью языка. Если бы вместо COS был бы Питон, то пришлось бы либо использовать библиотеки Питона, либо писать их заново. Основная фишка Каше - возможность построить быструю систему за счет близости физического и логического представления данных. Т.е. на самом деле, пришлось бы писать компилятор заново, так как в язык пришлось бы внедрять работу с глобалами (между JSON и глобалами нет однозначного соответствия), и в результате получился бы какой-нибудь Python+. В конце концов, никто не мешает работать на Питоне, а в качестве хранилища использовать Каше. Но кто будет в здравом уме при такой цене Каше так делать? Ведь даже и с бесплатным MUMPS не особо слышно про такие гибриды. С чего вы взяли, что Апач внедрен в ядро Каше? Используется специальная сборка, по каким-то причинам облегченная. Но это не ядро, у нее свой запускаемый файл и своя служба. Никто не мешает поставить свой экземпляр апача и использовать его. >>В результате имеем непонятную "классическим" M программистам технологию, которые и дальше пишут на "голом" М Вы меня извините, если классические М программисты не могут понять КОС, то возникают вопросы к их обучаемости. Как они тогда понимают Питон? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 17:21 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
kalin, что-то вы сами себе противоречите. В соседних темах агитируете заниматься высокоуровневым программированием, а здесь говорите, что COS ошибка. Так он же как раз и позволяет оторваться от непрерывного размножения кода вида "из глобали X узла Y возьмем/положим элемент Z по разделителю P". Записать "ЭкземплярСущностиN.cохранись()", имхо, гораздо удобнее и высокоуровневее. Привязка к "наиболее распространенных языков программирования" звучит как ловушка. А так все свое :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.07.2018, 17:48 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
doublefintБлок А.Н.Иногда... В этом случае больше нравится подход со скрытием внутренностей итераций, что-то вроде .keys().next() .map() или .filter() и т.д. Функции как first class member? А вот тут "истину глаголете" :) "filtered() Возвращает НЗ, содержащий только записи, удовлетворяющие предоставленной предикатной функции. sorted() Возвращает НЗ, отсортированный по предоставленной ключевой функции. Если ключ не указан, используется порядок сортировки установленный для модели данных по умолчанию mapped() Применяет предоставленную функцию к каждой записи в НЗ, возвращает НЗ, если результаты являются НЗ search() Принимает параметры поиска в виде домена, и возвращает НЗ который удовлетворяют условиям поиска. Может возвращать часть НЗ совпадающих записей (параметры offset и limit) и может быть отсортирован (параметр order)" ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2018, 13:26 |
|
Улучшения, новые фичи в технологиях InterSystems
|
|||
---|---|---|---|
#18+
doublefintТак он же как раз и позволяет оторваться от непрерывного размножения кода вида "из глобали X узла Y возьмем/положим элемент Z по разделителю P". Записать "ЭкземплярСущностиN.cохранись()", имхо, гораздо удобнее и высокоуровневее. ) Ну да, так и писали еще в 1985 году в системе "Диамс" :) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.09.2018, 13:35 |
|
|
start [/forum/topic.php?fid=39&startmsg=39588164&tid=1556241]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 282ms |
total: | 419ms |
0 / 0 |