Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2010.12.05;
Скачать: [xml.tar.bz2];

Вниз

Давать ли свободу скриптерам?   Найти похожие ветки 

 
@!!ex ©   (2010-08-30 18:20) [0]

Делаем довольно большой проект.
Он настолько большой, что логика разделена на две части:
1) ядро, написанное на дельфи(программисты)
2) внешняя логика написанная на Lua(скриптеры)

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

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

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

Вот собственно вопрос: как вы считаете, стоит выполнять их требования или посылать?
нам, кодерам ядра, это абсолютно пофиг. но ИМХО это приведет к проблемам в будущем, когда скриптеры могут уже сделать код, который выйдет за пределы массива и обрушит все... и при этом никакого сообщения об ошибке(мы же отключили) и х.з. сколько времени потраченного на отладку. в том числе и нашего времени, поскольку не ясно будет где ошибка в логике или ядре...


 
George ©   (2010-08-30 18:43) [1]

Мне кажется посылать надо. Вы же специалисты, а не эникейщики. Если считаете, что повлечет проблемы в будущем - не беритесь за это. Не нравится - пусть наймут эникейщиков.


 
Rouse_ ©   (2010-08-30 18:43) [2]

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

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


 
Kerk ©   (2010-08-30 19:43) [3]

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


 
TUser ©   (2010-08-30 20:42) [4]


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

Какая-то нелогичная логика, имхо. А поэтому - не давать.


 
cwl ©   (2010-08-30 22:53) [5]

> Например, сегодня захотели чтобы я убрал сообщение об обращении
> к неверному элементу массива при работе с одним из внутренних
> массивов. Дескать у них логика так построена, что в штатном
> поведении может возникать обращение к таким массивам.

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


 
Кто б сомневался ©   (2010-08-30 23:22) [6]


> @!!ex ©   (30.08.10 18:20)


Может лучше поговорить с теми кто пишут скрипт, а не с нами?


 
Sha ©   (2010-08-30 23:24) [7]

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


 
Дмитрий Тимохов   (2010-08-30 23:45) [8]

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

как программист ядра - я за то, чтобы скриптеры не баловали ))


 
Anatoly Podgoretsky ©   (2010-08-31 09:32) [9]

> @!!ex  (30.08.2010 18:20:00)  [0]

Одевай броне трусы и отбивайсяю


 
Anatoly Podgoretsky ©   (2010-08-31 09:33) [10]

> Kerk  (30.08.2010 19:43:03)  [3]

Отключат и некритическая ошибка стремится стать критичной.


 
@!!ex ©   (2010-08-31 14:07) [11]

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


 
Anatoly Podgoretsky ©   (2010-08-31 14:45) [12]

> @!!ex  (31.08.2010 14:07:11)  [11]

А ты еще хочешь предоставить свободу попугаям.


 
KSergey ©   (2010-08-31 14:59) [13]

А как можно реализовать такое желание? мне не понятно.
Вот хочу я узнать значение сотого элемента массива, а в массиве всего пять элементов. Что должно вернуть мне ядро при обращении к сотому элементу? Восемь?


 
KSergey ©   (2010-08-31 15:05) [14]

> Sha ©   (30.08.10 23:24) [7]
> Нормальная проблема. Часто бывает надо позиционироваться
> относительно текущего элемента массива,
> например, если адрес текущего элемента лежит в PIntegerArray,

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

И потом, "предыдущая ячейка относительно значения в PIntegerArray" - это именно предыдущая ячейка, а никак не "ячейка памяти по адресу минус один".


 
Palladin ©   (2010-08-31 15:07) [15]


> @!!ex ©   (31.08.10 14:07) [11]

привыкай...


 
Palladin ©   (2010-08-31 15:08) [16]

они еще и не то могут...


 
Palladin ©   (2010-08-31 15:11) [17]

Вот например как мои прикладники считали две суммы и их общую

var
 sum1, sum2: Integer;
 allSum: Integer;
 i: Integer;

...
for i := 0 to items.count - 1 do
begin
 sum1 := sum1 + items[i].value1;
 sum2 := sum2 + items[i].value2;
 allSum := allSum + sum1 + sum2;
endl
...


потом меня попросили разобратся почему "движок не правильно считает"


 
@!!ex ©   (2010-08-31 15:17) [18]

> [13] KSergey ©   (31.08.10 14:59)

nil



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2010.12.05;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.003 c
15-1282710435
konelev
2010-08-25 08:27
2010.12.05
Какая у вас такса за ремонт компов?


2-1284465557
azamatufa
2010-09-14 15:59
2010.12.05
Как в D7 сделать обновление структуры БД FireBird


2-1284382713
Eh
2010-09-13 16:58
2010.12.05
Параметры в TfrxFIBQuery


15-1283200179
Юрий
2010-08-31 00:29
2010.12.05
С днем рождения ! 31 августа 2010 вторник


8-1208085390
Sergey
2008-04-13 15:16
2010.12.05
Изменение скорости воспроизведения видео





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский