Не знаю ни одной нормальной либы, которая бы тащила за собой стринги. И String не только по пече... progspace бъет, он еще мозги выносит знатно на отладке и эксллуатации.
пока я вижу проблему только с доп размером. рзбираться с отладкой дело привычное , тут хоть в Serial можно инфу вывести, я в своё время с кристаллом 1806 помучился и 51 однокристалкой - дак там только осциллограф как индикатор работы и то не цифровой .
добавление String (в той или иной форме) добавляет 1 кб к коду, т.е. саму либу по работе со строками.
Это точно! А во время выполнения она динамически хапает RAM, которого всего 2 кило, до тех пор, пока стэк её данные не пропорет. А когда пропоет, Вы придёте сюда и будете требовать ответв на простоя вопрос: "какой дурак этот стринг туда засунул"
JonHappy1 пишет:
очень мало вероятно, что String ни одна другая либа не использует
Я не знаю, кто такая либа, но если Вы имеете в виду библиотеку, то системные (поставляемые с системой) - ни одна не использует (разве что в перегруженных параметрах, так их можно (и нужно) не пользовать). А какие-то другие (third party), тут да - нам неоткуда знать какие субстанции и с каких помоек Вы собираетесь в свой код пихать.
JonHappy1 пишет:
мой вариант короче по коду и намного наглядее. и следовательно имеет право на существование.
Право на существование имеет даже отрицание самого феномена существования, а Ваш код тем более. А как Ваш код будет работать - дело Ваше, дерзайте.
2Logik
вариант правильный с тчки зрения исполняемого кода, но с точки зрения написания кода....
надо учесть , что пишется система и в ней много разных аспектов
что ечть сейчас и как работает
есть портал написан на java, работает и под окнами и под линуксами,
там N страниц, на каждой странице до 30 вызовов ws на сервер для обработки данных ,
вотправляем сообщение xxx44|data - на сервере (для каждой страницы есть файл jsp, который обрабатывает команды с этой страницы, но точка входа для всех сообщений с клиентов одна, она и вызывает нужную команду(метод) с передачей данных) метод с именм xxx44 обрабатывает данные и (если надо) отправляет результат такого же формата xxx44|newdata
браузер "рефлексией" javascript выполняет функцию xxx44 с данными newdata. все наглядно . прозрачно.
также я хочу и тут, да это будет несколко затратно, но зато я знаю что вызов на сервере приведёт к выполнению нужной мне функции. да я могу по номеру , отправленному с сервера, вызвать функцию. но для этого мне надо на сервере ещё и таблицу соответствия хранить, а если что-то удалилось/добавилось надо ещё и эту таблицу менять (это можно автоматизироватьЮ конечно) но это гемор, если я счас отпправляю простое текстовое сообщение, то тут нужно будет обращаться к таблице...
Конкретно о недостатках того варианта. 1. String - уже писали, свежый вариант без стринга видел. 2. numeral[4] и String st в коде никак не связаны, а по логике между ними есть связь, причем очень жесткая, отношение один - один. Его легко нарушить и это будет очень непросто обнаружить даже при десятке функций, а при сотне вобще мрак. Варианты от форумчан со структурой лишены такого. 3. Таблица с именами функций, от которой стараетесь избавится на сервере - она всеравно есть по факту в String st, причем существует в таком количестве экземпляров сколько клиентов ардуин в системе. Очевидно это сильно более чем 1 экземпляр на сервере и обеспечение синхронных изменений таблиц на всех клиентах - очень геморная задача. 4. Отсутствие контроля имен на сервере дает принципиальную возможность поступления на ардуину неизвестной функции. Показаный код при этом рухнет (st.indexOf(cc) не наншло имени и...). При этом сервер даже не узнает что случилось. Это поправимо в принципе. 5. Ограничение на формат названия функций. Вместо осмысленных названий произвольной длинны во всей системе приходится довольствоватся только "xxx44". Удобства в этом нет.
ПС. Приймите как данность - преобразование имени в ID избежать не выйдет принципиально, у вас в коде это st.indexOf(cc)/5.Из всех вариантов преобразования самый адекватный через таблицы с именами функций и вопрос только один. ГДЕ? На сервере у которого много памяти, производительности и одна таблица на всю систему или на ардуинах у которых ресурса кот наплакал и куча таблиц разной степени старости.
3. Таблица с именами функций, от которой стараетесь избавится на сервере - она всеравно есть по факту в String st, причем существует в таком количестве экземпляров сколько клиентов ардуин в системе.
таких таблиц нет, это нет, хотя бы потому , что такого термина в java нет. есть
public static HashMap<String, Object> ListCommand;
он заполняется при запуске серверного приложения. он служит для того чтоб в одном месте хранить "пути" к методам , которые находятся в разных файлах.
4. Отсутствие контроля имен на сервере дает принципиальную возможность поступления на ардуину неизвестной функции
ничего подобного. как правили на сервере метод имеет , то же что и функция на клиенте, соответствено если метод отправляет в ардуину , то и обработчик ардуинки должен иметь такое же имя (есть исключения, но они не сказываюся ни на чем)
Показаный код при этом рухнет (st.indexOf(cc) не наншло имени и...). При этом сервер даже не узнает что случилось
таких проблем за много проектов ни разу не было
Ограничение на формат названия функций. Вместо осмысленных названий произвольной длинны во всей системе приходится довольствоватся только "xxx44". Удобства в этом нет.
вот с этим буду спорить, когда у тебя появляется куча методов по обработки порядка нескольких сотен, фантазия по названиям иссекает. длина названия растёт. да собственно и названиями как носителями инфы - они становятся бесполезны. намного проще произвести поиск по короткому имени что в фалк jsp, что в файлк java. что делает метод гараздо проще и развернуто описать в комментарии.
ГДЕ? На сервере у которого много памяти, производительности и одна таблица на всю систему или на ардуинах у которых ресурса кот наплакал и куча таблиц разной степени старости.
я бы согласился, но эту таблицу придется заполнять ручками, а это ещё тот гемор, забыл изменить/убрать/добавить и поди ищи где что.
тут и то два обекта надо заполнять, но только в одном месте, рядом. и я не уверен, что в ардуинку влезет очень много таких функций. придётся напрягать внимание, чего и хотелось избежать, как в java и javascript
таких таблиц нет, это нет, хотя бы потому , что такого термина в java нет.
Этот термин люди в школе учат. Например на математике так и говорят. И от того куда Вы её засуните: в лист, массив, список, БД или стринг, как в примере, суть не меняется. Если она уже есть - на сервере, так и пользуйтесь ею и не плодите сущности.
JonHappy1 пишет:
..как правили ... и обработчик ардуинки должен иметь такое же имя
Должен - не обязан, а правила имеют исключение. Ввведение новой функции потребует доработки и перепрошивки всех клиентов, иначе прийдет на них это неизвестное
JonHappy1 пишет:
Показаный код при этом рухнет (st.indexOf(cc) не наншло имени и...). При этом сервер даже не узнает что случилось
таких проблем за много проектов ни разу не было
Я ж четко написал "сервер даже не узнает что случилось"
JonHappy1 пишет:
Ограничение на формат названия функций. Вместо осмысленных названий произвольной длинны во всей системе приходится довольствоватся только "xxx44". Удобства в этом нет.
вот с этим буду спорить...
Тут у Вас полный бред. Коментировать не буду, любому очевидно о чем "SendWebSocketMsg" и никто не поймет ххх43.
JonHappy1 пишет:
эту таблицу придется заполнять ручками
А код вобще ими пишут. И очевидно проще таблицу менять в одной точке на сервере, ручками, чем перепрошить сетку ардуин. Причем не удаленно, а добравшись до каждой, ручками, где бы она не засунута, открутив ручками и подключив тоже ручками.
ПС. Забудте вы о джавах. Для МК свои подходы и опыт джавы только мешает.
Если она уже есть - на сервере, так и пользуйтесь ею и не плодите сущности.
ну не надо не зная всего, советовать , что использовать, в этоn HashMap никаким местом не встанет указатель на ардуинки
Цитата:
Должен - не обязан, а правила имеют исключение. Ввведение новой функции потребует доработки и перепрошивки всех клиентов, иначе прийдет на них это неизвестное
конечно не обязян, но только надо сделать так , что глядя на текст а ардуинке понять что искать в серверной части сразу, а не лесть сначала в какую-то таблицу и только потом искать в коде.
Цитата:
Я ж четко написал "сервер даже не узнает что случилось"
для этого существует обратная связь по ws которая сообщит серверу.
Цитата:
Тут у Вас полный бред. Коментировать не буду, любому очевидно о чем "SendWebSocketMsg" и никто не поймет ххх43.
ты привел одно название а тперь придумай их 3-4 сотни. и получается что навание будет охиренной длины. этот путь уже пройден. необходимости в длинных названиях нет.
Цитата:
А код вобще ими пишут. И очевидно проще таблицу менять в одной точке на сервере, ручками, чем перепрошить сетку ардуин. Причем не удаленно, а добравшись до каждой, ручками, где бы она не засунута, открутив ручками и подключив тоже ручками.
мой список методов HashMap ручками ни кто не заполняет, я добавил/удалил/изменил метод в java и мне этого достаточно, приложение само найдет где располоены методы и запонит этот HashMap. если клиент вызовет не существующий метод - будет исключение - в логах все пропишется. если сервер отправит клиенту вызов не существующей функции - так же увижу исключение. не кто не мешет и в ардуинке сделать такое - отправить сообщение серверу если тут
for (int j = 0; j < i; j++) {
if (! strcmp(str[j].x1 , cc)) {
numeral[j]();
break;
};
не найдётся нужного имени. но это мало вероятный случай. добавляютя изменяютя единичные функции, отследить их наличие можно легко.
я с подобными железяками работал начиная с 580 и биосы/загрузчики писал. так что имея средства , что есть сейчас - работа просто наслаждение.
но для этого мне надо на сервере ещё и таблицу соответствия хранить,
Ну да, конечно гораздо лучше эту таблицу хранить на Ардуине, у которой в несколько миллионов раз меньше памяти, чем на сервере.
Цитата:
а если что-то удалилось/добавилось надо ещё и эту таблицу менять
Зачем менять?
От того, что Вы что-то удалите/добавите на сервере, количество и состав функций, поддерживаемых Ардуиной, не изменится. Следовательно, менять ничего не нужно.
Надобность в изменении может наступить только тогда, когда Вы зальете в Ардуину новую прошивку - с другим набором функций.
В общем, Вам нужно понять (или хотя бы запомнить) одну простую мысль: если между Ардуиной и сервером следует как-то разделить работу, то ее следует разделять, исходя из единственного принципа: все, что может делать сервер, должен делать сервер, а Ардуина - только то, что сервер сделатьв принципе не в состоянии (например, прочитать показания с аналогового датчика или состояние аппаратной кнопки).
В Вашем конкретном случае трансляция текстовых имен в коды должна присходить на стороне сервера.
В ардуинах строковые функции еще принято в PROGMEM совать, а это отдельная песня. Кстати, если я правильно понимаю, то любой вновьведенный на сервере ID вызова требует модификации клиентской части, разве нет? Ведь то, что предполагается вызывать по имени, необходимо прежде всунуть в МК. Но лично я за короткие пакеты, если они не обязаны быть человекопонятными (не вводятся руками, как в шелле, к примеру) - и ресурса меньше тратится и парсинг проще.
От того, что Вы что-то удалите/добавите на сервере, количество и состав функций, поддерживаемых Ардуиной, не изменится. Следовательно, менять ничего не нужно.
но в процессе разработки там накопится такое количество, что трудно понять что нужно, а что нет.
Цитата:
В общем, Вам нужно понять (или хотя бы запомнить) одну простую мысль: если между Ардуиной и сервером следует как-то разделить работу, то ее следует разделять, исходя из единственного принципа: все, что может делать сервер, должен делать сервер, а Ардуина - только то, что сервер сделатьв принципе не в состоянии (например, прочитать показания с аналогового датчика или состояние аппаратной кнопки).
это пока одна ардуинка, а если их больше десятка? то что к чему относится ? зашел в код ардуинки и что искать в коде сервера? я моём варианте я могу на каждую ардуинку назначить свой префикс aaaa dddd
и к тому мой последний варант отличается от предложенного с номерами сотней байт.
Показаный код при этом рухнет (st.indexOf(cc) не наншло имени и...). При этом сервер даже не узнает что случилось
таких проблем за много проектов ни разу не было
Ну, то есть Вы об этих проблемах так и не узнали.
это как продельфинов ,что они умные и людей потерпевших бедствие доставляют к берегу, правда только в том , что никто не знает сколько они направили дальше от берега.
но тут иной подход еслиб были проблемы - система бы не работала
В ардуинах строковые функции еще принято в PROGMEM совать, а это отдельная песня.да это планируется , вот только несколько напуган малым резервом этой памяти на циклы записи, поэтому оставляю это на потом.
Цитата:
Ведь то, что предполагается вызывать по имени, необходимо прежде всунуть в МК. Но лично я за короткие пакеты, если они не обязаны быть человекопонятными (не вводятся руками, как в шелле, к примеру) - и ресурса меньше тратится и парсинг проще.
и это тоже к коротким именам фунций. можно вообще называт x02 (к примеру) но такое имя трудно найти в тексе xxx02 быстрее найдётся взглядом. да такое удобство в ардуинке стоит дороже. но смысловое длинное название я вно слишком дорого.
что надо сказать конкретно, Вам уже сказали в самом начале топика. Там практически "добавить" нечего. ДедСемен - прав, и в общем-то у меня попкорн тоже уже закончился читать ваши опусы "джависта". Раньше как-то ещё смотрел .. эх, здря в свое время принципиально отказался изучать жабу .. а теперь, почитав Вас, хорошо представляю что "ах какой был мудрый в юнности"!
Не переживайте. "Человек - подобен колбасе, чем его начинят - то он и носит в себе" (с) Козьма Прутков. Точно также как Вы сейчас, лет надцать назад осваивал реляционную Алгебру и скуль .. мозги выворачивает наоборот, просто "наотмашь". :)
в принципе, действительно, продолжать особо смысла нет.
В чем прав Логик - вы делаете ужасный костыль. В чем правы вы - вам сейчас так удобнее. Вероятнее всего, через пару недель, месяцев... вы поймете, что придумали хрень и все-таки перепишете эту часть нормально. А может, все будет работать и вы ничего не перепишете...
У каждого на то свои причины. Хочет человек пофлудить, и флудит. Вам, может быть и незачем, а другому, наверное, есть зачем, если деалет это.
но его флуд начался с киданием какашек ....
Цитата:
В чем прав Логик - вы делаете ужасный костыль.
в чем костыль? в том что наглядно можно вызвать функцию по имени? я показал код в котором элементано послеживается похождение инфы. то что считаешь только счас удобно - так это проверено уже во множестве поектов, поэтому и применяю к ардуине.
а флуд он разный бывает, есть и по делу , а есть в оскорбление...
]И что? Ну, хочет человек покидаться какашками. Может он для этого сюда пришёл, типа настроение такое. В чём проблема-то? Это Спарта Интернет, если чо.
т.е. кидаться можно, а указать на то , что это плохо - нельзя?
Хорошо быть кошкою, Хорошо — собакою: Где хочу – пописаю, Где хочу – покакаю. Ямку лапой вырою, Положу какашку я, — И не надо попу мне Вытирать бумажкою.
Не знаю ни одной нормальной либы, которая бы тащила за собой стринги. И String не только по пече... progspace бъет, он еще мозги выносит знатно на отладке и эксллуатации.
Я же про нормальные писал...
пока я вижу проблему только с доп размером. рзбираться с отладкой дело привычное , тут хоть в Serial можно инфу вывести, я в своё время с кристаллом 1806 помучился и 51 однокристалкой - дак там только осциллограф как индикатор работы и то не цифровой .
Это точно! А во время выполнения она динамически хапает RAM, которого всего 2 кило, до тех пор, пока стэк её данные не пропорет. А когда пропоет, Вы придёте сюда и будете требовать ответв на простоя вопрос: "какой дурак этот стринг туда засунул"
Я не знаю, кто такая либа, но если Вы имеете в виду библиотеку, то системные (поставляемые с системой) - ни одна не использует (разве что в перегруженных параметрах, так их можно (и нужно) не пользовать). А какие-то другие (third party), тут да - нам неоткуда знать какие субстанции и с каких помоек Вы собираетесь в свой код пихать.
Право на существование имеет даже отрицание самого феномена существования, а Ваш код тем более. А как Ваш код будет работать - дело Ваше, дерзайте.
вот без String, но по имени
А это вообще законно: char cc[2] = "xxx33" ?
А это вообще законно: char cc[2] = "xxx33" ?
Ну, а почему нет? Работать будет. Другой вопрос, что будет делать? Боюсь, не то, чего автор ожидал :)))
А это вообще законно: char cc[2] = "xxx33" ?
Интересно, как именно исправил :)
и тут
ну, если так, то моя ремарка отсаётся в силе:
как решит компилятор - либо обрежит , либо изменит размер
но не работало...
2Logik
вариант правильный с тчки зрения исполняемого кода, но с точки зрения написания кода....
надо учесть , что пишется система и в ней много разных аспектов
что ечть сейчас и как работает
есть портал написан на java, работает и под окнами и под линуксами,
там N страниц, на каждой странице до 30 вызовов ws на сервер для обработки данных ,
вотправляем сообщение xxx44|data - на сервере (для каждой страницы есть файл jsp, который обрабатывает команды с этой страницы, но точка входа для всех сообщений с клиентов одна, она и вызывает нужную команду(метод) с передачей данных) метод с именм xxx44 обрабатывает данные и (если надо) отправляет результат такого же формата xxx44|newdata
браузер "рефлексией" javascript выполняет функцию xxx44 с данными newdata. все наглядно . прозрачно.
также я хочу и тут, да это будет несколко затратно, но зато я знаю что вызов на сервере приведёт к выполнению нужной мне функции. да я могу по номеру , отправленному с сервера, вызвать функцию. но для этого мне надо на сервере ещё и таблицу соответствия хранить, а если что-то удалилось/добавилось надо ещё и эту таблицу менять (это можно автоматизироватьЮ конечно) но это гемор, если я счас отпправляю простое текстовое сообщение, то тут нужно будет обращаться к таблице...
чем не устраивает мой вариант? http://arduino.ru/forum/programmirovanie/refleksiya-v-si-ili-vyzov-funkt...
Конкретно о недостатках того варианта. 1. String - уже писали, свежый вариант без стринга видел. 2.
numeral[4]
иString st
в коде никак не связаны, а по логике между ними есть связь, причем очень жесткая, отношение один - один. Его легко нарушить и это будет очень непросто обнаружить даже при десятке функций, а при сотне вобще мрак. Варианты от форумчан со структурой лишены такого. 3. Таблица с именами функций, от которой стараетесь избавится на сервере - она всеравно есть по факту вString st
, причем существует в таком количестве экземпляров сколько клиентов ардуин в системе. Очевидно это сильно более чем 1 экземпляр на сервере и обеспечение синхронных изменений таблиц на всех клиентах - очень геморная задача. 4. Отсутствие контроля имен на сервере дает принципиальную возможность поступления на ардуину неизвестной функции. Показаный код при этом рухнет (st.indexOf(cc)
не наншло имени и...). При этом сервер даже не узнает что случилось. Это поправимо в принципе. 5. Ограничение на формат названия функций. Вместо осмысленных названий произвольной длинны во всей системе приходится довольствоватся только "xxx44". Удобства в этом нет.ПС. Приймите как данность - преобразование имени в ID избежать не выйдет принципиально, у вас в коде это
st.indexOf(cc)/5.
Из всех вариантов преобразования самый адекватный через таблицы с именами функций и вопрос только один. ГДЕ? На сервере у которого много памяти, производительности и одна таблица на всю систему или на ардуинах у которых ресурса кот наплакал и куча таблиц разной степени старости.как решит компилятор - либо обрежит , либо изменит размер
Не то и не другое. Расположит поверх других данных. Опишите что-нибудь после этого, узнаете много интересного.
3. Таблица с именами функций, от которой стараетесь избавится на сервере - она всеравно есть по факту в
String st
, причем существует в таком количестве экземпляров сколько клиентов ардуин в системе.таких таблиц нет, это нет, хотя бы потому , что такого термина в java нет. есть
public static HashMap<String, Object> ListCommand;
он заполняется при запуске серверного приложения. он служит для того чтоб в одном месте хранить "пути" к методам , которые находятся в разных файлах.
4. Отсутствие контроля имен на сервере дает принципиальную возможность поступления на ардуину неизвестной функции
ничего подобного. как правили на сервере метод имеет , то же что и функция на клиенте, соответствено если метод отправляет в ардуину , то и обработчик ардуинки должен иметь такое же имя (есть исключения, но они не сказываюся ни на чем)
Показаный код при этом рухнет (
st.indexOf(cc)
не наншло имени и...). При этом сервер даже не узнает что случилосьтаких проблем за много проектов ни разу не было
Ограничение на формат названия функций. Вместо осмысленных названий произвольной длинны во всей системе приходится довольствоватся только "xxx44". Удобства в этом нет.
вот с этим буду спорить, когда у тебя появляется куча методов по обработки порядка нескольких сотен, фантазия по названиям иссекает. длина названия растёт. да собственно и названиями как носителями инфы - они становятся бесполезны. намного проще произвести поиск по короткому имени что в фалк jsp, что в файлк java. что делает метод гараздо проще и развернуто описать в комментарии.
ГДЕ? На сервере у которого много памяти, производительности и одна таблица на всю систему или на ардуинах у которых ресурса кот наплакал и куча таблиц разной степени старости.
я бы согласился, но эту таблицу придется заполнять ручками, а это ещё тот гемор, забыл изменить/убрать/добавить и поди ищи где что.
тут и то два обекта надо заполнять, но только в одном месте, рядом. и я не уверен, что в ардуинку влезет очень много таких функций. придётся напрягать внимание, чего и хотелось избежать, как в java и javascript
как решит компилятор - либо обрежит , либо изменит размер
Не то и не другое. Расположит поверх других данных. Опишите что-нибудь после этого, узнаете много интересного.
таких таблиц нет, это нет, хотя бы потому , что такого термина в java нет.
Этот термин люди в школе учат. Например на математике так и говорят. И от того куда Вы её засуните: в лист, массив, список, БД или стринг, как в примере, суть не меняется. Если она уже есть - на сервере, так и пользуйтесь ею и не плодите сущности.
..как правили ... и обработчик ардуинки должен иметь такое же имя
Должен - не обязан, а правила имеют исключение. Ввведение новой функции потребует доработки и перепрошивки всех клиентов, иначе прийдет на них это неизвестное
Показаный код при этом рухнет (
st.indexOf(cc)
не наншло имени и...). При этом сервер даже не узнает что случилосьтаких проблем за много проектов ни разу не было
Я ж четко написал "сервер даже не узнает что случилось"
Ограничение на формат названия функций. Вместо осмысленных названий произвольной длинны во всей системе приходится довольствоватся только "xxx44". Удобства в этом нет.
вот с этим буду спорить...
эту таблицу придется заполнять ручками
А код вобще ими пишут. И очевидно проще таблицу менять в одной точке на сервере, ручками, чем перепрошить сетку ардуин. Причем не удаленно, а добравшись до каждой, ручками, где бы она не засунута, открутив ручками и подключив тоже ручками.
ПС. Забудте вы о джавах. Для МК свои подходы и опыт джавы только мешает.
не найдётся нужного имени. но это мало вероятный случай. добавляютя изменяютя единичные функции, отследить их наличие можно легко.
я с подобными железяками работал начиная с 580 и биосы/загрузчики писал. так что имея средства , что есть сейчас - работа просто наслаждение.
но для этого мне надо на сервере ещё и таблицу соответствия хранить,
Ну да, конечно гораздо лучше эту таблицу хранить на Ардуине, у которой в несколько миллионов раз меньше памяти, чем на сервере.
а если что-то удалилось/добавилось надо ещё и эту таблицу менять
Зачем менять?
От того, что Вы что-то удалите/добавите на сервере, количество и состав функций, поддерживаемых Ардуиной, не изменится. Следовательно, менять ничего не нужно.
Надобность в изменении может наступить только тогда, когда Вы зальете в Ардуину новую прошивку - с другим набором функций.
В общем, Вам нужно понять (или хотя бы запомнить) одну простую мысль: если между Ардуиной и сервером следует как-то разделить работу, то ее следует разделять, исходя из единственного принципа: все, что может делать сервер, должен делать сервер, а Ардуина - только то, что сервер сделатьв принципе не в состоянии (например, прочитать показания с аналогового датчика или состояние аппаратной кнопки).
В Вашем конкретном случае трансляция текстовых имен в коды должна присходить на стороне сервера.
В ардуинах строковые функции еще принято в PROGMEM совать, а это отдельная песня. Кстати, если я правильно понимаю, то любой вновьведенный на сервере ID вызова требует модификации клиентской части, разве нет? Ведь то, что предполагается вызывать по имени, необходимо прежде всунуть в МК. Но лично я за короткие пакеты, если они не обязаны быть человекопонятными (не вводятся руками, как в шелле, к примеру) - и ресурса меньше тратится и парсинг проще.
Показаный код при этом рухнет (
st.indexOf(cc)
не наншло имени и...). При этом сервер даже не узнает что случилосьтаких проблем за много проектов ни разу не было
Ну, то есть Вы об этих проблемах так и не узнали.
и к тому мой последний варант отличается от предложенного с номерами сотней байт.
Показаный код при этом рухнет (
st.indexOf(cc)
не наншло имени и...). При этом сервер даже не узнает что случилосьтаких проблем за много проектов ни разу не было
Ну, то есть Вы об этих проблемах так и не узнали.
но тут иной подход еслиб были проблемы - система бы не работала
В ардуинах строковые функции еще принято в PROGMEM совать, а это отдельная песня.да это планируется , вот только несколько напуган малым резервом этой памяти на циклы записи, поэтому оставляю это на потом.
вот ардуино отправляет
вот метод java обрабатывающий ответ от ардуино
вот код рисующий график (при добавлении новой тчки происходит сдвиг в лево)
Ох, как Ява простым пацанам мозги то засирает, айяйяй. Не зря они по 200тыщ зарплаты получают, получали бы меньше - лечица бы ненашто было. Бидняшки.
Ох, как Ява простым пацанам мозги то засирает, айяйяй. Не зря они по 200тыщ зарплаты получают, получали бы меньше - лечица бы ненашто было. Бидняшки.
Ах, Большая Белая Госпожа, прости бедного раба своего. Я так большенебуду.
Ах, Большая Белая Госпожа, прости бедного раба своего. Я так большенебуду.
если хочется флудить - тут не место
Ты уверен, что вправе указывать уважаемым на форуме людям их место? Может тебе самому указать?
что надо сказать конкретно, Вам уже сказали в самом начале топика. Там практически "добавить" нечего. ДедСемен - прав, и в общем-то у меня попкорн тоже уже закончился читать ваши опусы "джависта". Раньше как-то ещё смотрел .. эх, здря в свое время принципиально отказался изучать жабу .. а теперь, почитав Вас, хорошо представляю что "ах какой был мудрый в юнности"!
Не переживайте. "Человек - подобен колбасе, чем его начинят - то он и носит в себе" (с) Козьма Прутков. Точно также как Вы сейчас, лет надцать назад осваивал реляционную Алгебру и скуль .. мозги выворачивает наоборот, просто "наотмашь". :)
дак если добавить нечего - зачем флудить?
дак если добавить нечего - зачем флудить?
У каждого на то свои причины. Хочет человек пофлудить, и флудит. Вам, может быть и незачем, а другому, наверное, есть зачем, если деалет это.
дак если добавить нечего - зачем флудить?
в принципе, действительно, продолжать особо смысла нет.
В чем прав Логик - вы делаете ужасный костыль. В чем правы вы - вам сейчас так удобнее. Вероятнее всего, через пару недель, месяцев... вы поймете, что придумали хрень и все-таки перепишете эту часть нормально. А может, все будет работать и вы ничего не перепишете...
а флуд он разный бывает, есть и по делу , а есть в оскорбление...
СпартаИнтернет, если чо.СпартаИнтернет, если чо.Што есь какашки с твоей точки зрения? Нельзя про явапроггеров говорить плахова?
Што есь какашки
Их много разновидностей. Вот небольшая классификация за 33 категорий.
Хорошо быть кошкою,
Хорошо — собакою:
Где хочу – пописаю,
Где хочу – покакаю.
Ямку лапой вырою,
Положу какашку я, —
И не надо попу мне
Вытирать бумажкою.
Што есь какашки с твоей точки зрения? Нельзя про явапроггеров говорить плахова?
Мда.
Мда.
надеюсь, это относилось к посту #91? Кстати, вторую часть я никогда не слышал. Думал, что первая - это и всё :)