Pull to refresh
-8
0
Александр @irbis_al

Пользователь

Send message
Вы знаете...Node популярна(я это и в той ветке написал)… Что её коэффициент Эффективность/Простота=Очень высок...java тоже эффективна, но не простая.(с Другими языками не знаком).
Есть вещи которые бы не рискнул разрабатывать на node(Это связанно с ООП и с глубоким наследованием)…
Я не знаю… насчёт интуитивно-понятности Вашего кода на ноде без всякого мавена
var socket = new WebSocket("ws://localhost:8097/ws");
ocket.onopen = function() {
  alert("Соединение установлено.");
};

socket.onclose = function(event) {
  if (event.wasClean) {
    alert('Соединение закрыто чисто');
  } else {
    alert('Обрыв соединения'); // например, "убит" процесс сервера
  }
  alert('Код: ' + event.code + ' причина: ' + event.reason);
};

socket.onmessage = function(event) {
  alert("Получены данные " + event.data);
};

socket.onerror = function(error) {
  alert("Ошибка " + error.message);
};

Если Вам эта длиннотень нравится
WebSocketContainer container = ContainerProvider.getWebSocketContainer();
container.connectToServer(CustomClientEndpoint.class, new URI("ws://localhost:8080/path"));

непонятная… не буду Вас переубеждать…
А ещё Вам сказу… помните песню Бутусова,
-«Тут составы смяли чтобы сделать колонны»…
Так вот это об этом Вашем решении… Вставить в зависимость такого монстра как spring
org.springframework.boot
И ради этого маленького решения потянуть зависимости org.springframework.boot
.я понимаю Вы хотели показать краткость… и она из-за спринговых аннтотаций.(Но всё равно неизящно, интутивно непонятно).
Я сколько пищу на яве… и надо мне передать по сокету.(скопировать файл)… я ищу свои прежние решения, чтобы скопипастить подобную хрень.
ByteBuffer byteBuffer = ByteBuffer.allocate(1000);
try (FileInputStream file = new FileInputStream("/path/to/file")) {
byteBuffer.put(IOUtils.toByteArray(file));

А в ноде не ищу… мысль сама ложится.
Мысль: Так надо забрать из сокета(не ws)
socket.on('data',(data)=>{Работаю с данными...причём не Важно бинарные,или текстовые })

Мысль на русском эквивалентна количеству кода.
А Автору топика скажу(И больше уже не буду спорить..), что Node и завоевал
популярность ибо его коэффициент Эффективность/Простота =Очень Высок.
java тоже эффективна… но не проста.(И есть моменты, которые бы я делал только на java)
Да??? Прям так… Пробую скомпилить и запустить… ах блин… мне же надо либо мавен либо gradle файл сделать… так… почитаем как его делать… Ой что-то я с синтаксисом мавена не разобрался/накосячмл… сейчас погуглю.
А в node(для линукса)
yum install node(Вот даже ноду установлю для Вас)
mkdir myhttp
npm install express
 node mydir/bin/www

Можете сами попробовать
Я теперь soap клиент сделайте...websocket сделайте… файл по сокету передайте…
И сделайте это там и там… как я в соё время сделал… и офигеете как всё просто…
А древние говорили…
Упрощать сложно… а вот усложнять легко.
Я писал выше, что пишу глубоко на ноде и ява… и есть с чем сравнить… а Вы видимо только на яве.Ноде лаконичнее… легче читается… не задумываешься об всяческих лексемах.
Ой да ладно положите… Вам 40 минут на java код только писать надо будет.
А вот Вы знаете не согласен… что программирование это работа, а не исскуство…
Есть выражение, работай так, как будто тебе не нужны деньги.
И Кто в моей конторе(я сам предприниматель) так работает… у того качественней код(и кстати те и больше всех получают и теми кадрами я поистине дорожу)… а те кто за бабули… типа выполнил ТЗ и там трава не расти… и сразу давай мне оплату… я ж тут не зря (-|-) рвал… у тех и код приходится переделывать и всегда им подсознательно подыскиваю замену.
Вы сказали
>>Справедливости ради нужно сказать что мой главный промышленный язык это Erlang, с 2013 года Elixir.
Вот я не знаю… что тут добавить… чего тогда анализируете java против node… Вот я пишу глубоко на том и на том… и могу позволить себе небольшой анализ.(Там вверху я написал где node рвёт java как тузик грелку… но у меня есть и случаи где java пользовать предпочтительнее… просто недостатки языка это продолжение достоинст)
А Автор Топика например делал soap клиент на java?(Про сервер-soap я вообще молчу)
Пусть попробует… а в node
var soap = require('soap');
  var url = 'http://localhost/wsdl?wsdl';
  var args = {name: 'Имя'};
  soap.createClient(url, function(err, client) {
      client.SayHello(args, function(err, result) {
          console.log(result);
      });
  });

Причём пусть изменит метод сервера… и потом помучается с java… а тут просто client.SayHellonew надо поменять.
А сокеты… передать файл по сокету… попробуйте кодом на java и на node…
В ява…
пока есть данные читаем поток сокета пишем в выходной поток.
в ноде
socket.on('data',(data)=>{console.log(data)});


А http client? а http сервер… Я Вам за 18 секунд подниму http сервер на node.
На node код в 40 раз короче…
И при этом(в моём опыте даже быстрее) не медленее.(Как они этого добиваются в одном потоке вообще непонятная магия)
Я сам пишу на java и на node… и есть с чем сравнивать ,-ноде это простота кода и ёмкость… сосредотачиваюсь просто на решении., а не на обрастании синтаксических лексем.
Мне тоже иногда (особенно когда офисная… Там МФУ шка или сканер документов не становится) хочется Centos на что-то другое… Но есть зависимость… СУБД Oracle на нём(Centos) «ходит» лучше всего… поэтому пока с ним… И в целом обычные компы без проблем… вот только ноуты капризничают.
Тоже хочу сменить ноут(Сейчас SLES 11 но HP) установлен.Но на Centos 7.
И часто на ноутах проблема с drivers.в Centos (Клиентам ставил 6) Если бы знать, что у Вас на Centos 7 завёлся… пошёл бы покупать :-)
Мне кажется это просто того, что Управленческий учёт управляет бухгалтерским.(и управленческий доминирует над бухгалтерским)… Никто дотошно дни и не считает раз Вы работу выполняете.Просто управлению так удобно… уменьшается административный ресурс(Типа следить за Вами(и др.сотрудниками)… вести табель учёта рабочего времени)…
Хочу прокомментировать «Зарплаты считаются в Exel»…
-Вы знаете,- это потому, что налоговая система очень простая… стабильная… и неизменная.В этой же России… мечтали бы только об этом.(А про заполнение электронных деклараций… и тут хватает косяков)
В принципе, Вы удовлетворили моё техническое любопытство. :-)
Раз у Вас есть востребованность на практике… наверное оно и вправду надо.
Наверное мы находимся в разных измерениях в автоматизации учёта.(которые не пересекаются)
У меня(http://cis-pos.com/) фирмы мелкий и средний бизнес,- автоматизирую «хорька» HoReCa(Hotel Restoran,Cafe,Shop).
У меня тоже конструктор-компоновщик.(но база данных хардкодная
Типа у всех есть documenttitles и documentscontents,firms и т.д… отраслевой атрибутикой отличаются)… а вот логика представления CRUID это легко конфигурируемое.(Но порог вхождения выше)(Ну и свой генератор отчётов естественно, но для специалиста)
И вот востребованность конструктора отчёта в моей сфере попадает в формат
для:
«Благородного Атоса, это слишком много, а для графа ДеЛяФер слишком мало»…
Т.е простые отчёты покрываются существующим репозиторием отчётов… а сложные «вынос мозга»(у меня есть все те перечисленные случаи и плюс интерактивность)… надо делать специалисту.
Ну я например и вправду не осознавал, что всё так наворочено(и был ли смысл идти по пути одинэф… хотя это уже оффтоп)… и тогда и вправду Вы не имеете общего репозитория отчётов… или же их переброска затруднительна… тогда и вправду отпадают отчёты с поворотами, rollup и т.д… Тогда и вправду надо получить просто «сырые» данные и их уже загружать в другой отчётный инструментарий(Вот сомнительно для громкого имени ERP… такой «костылёчек»..)…
Благодарю интересная статья…
И оченб интересный опыт.
Тем более моя ИС(http://cis-pos.com) тоже opensource(Правда оформлена ввиде VM образа, очень много зависимостей).
Про ЕГАИС это конечно отдельный головняк.
Я до версии 2.03 cпокойно запускал на Centos 6.5 x64…
Но потом криворукие прекратили поддержку x64… и на Ubunte x64 как-то можно доставить 32 библиотеки, чтоб завелось.
НО на Centose я не поднял… поставили win-виртуалку пробросил jacartу пронатил порты.
Вообще АД для программистов обязательно должен содержать поддержку ЕГАИС. :-)
Например они обязали перейти на вторую версию их документа… при этом изменения было в трёх названиях тэгов.
Технически не было смысла никакого.Но всех нагнули.
Обязательно посмотрю драйвера для ФР… я после закона онлайн касс отказался от штриха и атола ибо они протокол поменяли.
Я читал статью и помню про встраивание pl/sql, просто как только это произошло Ваш конструктор потерял формат «генератор отчётов для неИТшника».
Ну и вдогонку… не знаю какие у Вас отчёты просили менеджеры -аналитики… У меня… и со знаниеми sql просто «вынос мозга»… это и lag,lead это rollup,cube order dense rank… И конечно же «поворот» pivot(Причём надо ещё решить pivot делать на уровне СУБД(в частности oracle) позволяет или в генераторе отчётов… а ещё (есть поддержка js) сделать его интерактивным… по нажатию… что там раскрывалось…
К чему это всё я… просто отчёты, а особенно аналитические должны делать специально обученные люди.А «генератор отчётов для неИТшника»… это просто маркетинговый концепт.
Вот я не знаю, работа вроде проведена большая… но исключительно по-моему мнению
ошиблись вектором.
Постоянно бродит по ИТ сообществу «призрак конструктора отчёта для неИТшника».
-А может не будем давать возможность водителю делать автомобиль, пусть просто рулит.
-Или пилоту конструировать самолёт.(Помимо знаний аэродинамики и механики, много ещё чего надо)
Так же как и нам… индексы план разбора… оптимизация sql.
Закончится тем, что Вы будите постоянно усложнять Ваш конструктор отчётов… увеличивая сложность вхождения в него.
Запаритесь консультировать «криворуких менеджеров».Сетуя на то, что быстрее сами бы сделали)
Потом добавите в свой конструктор sql(Ибо иначе не справится со всеми требованиями)… И будет это уже Ваш внутренний инструмент.
Тем более, что в каждой отрасти так или иначе существует отчётное насыщение.Вы просто будите подключать по требованию нужный отчёт из вашего отчётного репозитория кода.
Почти не поменялся не считается… аппарат должен сразу заработать(Атол и Штрих не заработал)… По сути для нас разработчиков поменялось только одно… перед закрытием чека если есть требование,- послать атрибут офд(email/phone) и всё.
И если бы только наступление с этого фронта… а есть ещё ЕГАИС… ФМС для отелей… просто отбиваться не успеваю… когда не меняется спецификация это очень важно.(во всяком случае для мелкого ИТ бизнеса)
А насчёт протокола… у Piritа очень простой(СПС-402 простой)… А если Вы видели Украинскую Мария МТМ… там вообще сказка...(Он например сам определяет скорость передачи rs-232)… и дальше тоже очень дружественно.
Ещё добавлю…
Про финансово этическую сторону я уже говорил… что надо менять-покупать ФН(тут говорили, что его можно на 36 месяцев купить,-я ни у кого не видел такой) и вообще зачем его менять… все чеки находятся в датацентре ОФД… с технической точки зрения нет никакого смысла его менять.(это ведь ещё и административный ресурс,---останавливать кассу надо)
Поговорим о технической…
Мы разрабатываем собственные кроссплатформенные драйвера по низкоуровневому протоколу производителя.
Так вот некоторые(Атол, Штрих) себе позволили этот протокол поменять(не дополнить функционалом, а именно поменять)… мне надо типа открыть смену в фискальном накопители, закрыть… следить за его статусом…
Я от них отказался в пользу тех кто не поменял… и для меня их аппарат выглядел после прошивки так же.
и сразу печатал чек...«Пусть хоть небольшая денюжка, но более инновационным капнет»
Вы не представляете насколько у Атола недружественный низкоуровневый интерфейс обмена…
и не представляеете, как сложно под него сделать драйвер… но даже это не проблема… надо смотреть их толмуты документации и исследовать, но даже и это не самое страшное, а то, что в неактивном накопители аппарат не работает… я его так не могу исследовать… надо брать какой-то эмулятор ФН(покупать за свой счёт)
Неужели так сложно внутри своей коробочки атолу или штриху сделать алгоритмическое ветвление(как сделал например Pirit) если смена в ФН не открыта,- то открыть)… нет не барское видимо это дело…
Переписали свой заводской драйвер… сказали всем заменить… компенсировали недостатки микропроцессорного программирования своим драйвером… Видимо они и представить не могли, что кто-то по их протоколу пишет и не под винду.
А автор статьи хоть немного предприниматель?(Хотя бы на 0.1%)?
Растолкую… в аппарата используется Фискальный накопитель, который надо менять раз в год и не потому,
что он заполнился, а потому, что «так надо»… даже если Вы пробили за год всего один чек.(А ФН не очень дешёвый)
Вы платите ещё одной пиявке к бизнесу ОФД...(У налоговой видимо корона упадёт если она напрямки получит электронный чек от бизнеса)
Таким образом скрытых налогов около 1000руб на кассовое место.
В этом случае будет во всех вкладках отклик.

Information

Rating
Does not participate
Location
Украина
Date of birth
Registered
Activity