Показать сообщение отдельно
Старый 05.11.2019, 00:06   #127
Gromov
Уволен из Сегнетикс
 
Регистрация: Nov 2015
Адрес: CПб/ВЛГ
Сообщения: 0
Благодарил(а): 0 раз(а)
Поблагодарили: 1 раз в 1 сообщении
По умолчанию Ответ: Религиозные споры про то и про сё

ОМГ Вот это жирную тему я пропустил! =)
Вообще, не буду, конечно, тыкать пальцами, и кого-то в чём-то обвинять. В моих словах каждый найдёт что-нибудь про себя. За исключением людей, кого я назову по именам.

Не понимаю предъяв в сторону Арсения и идеологии/вектора развития лоджика или ещё чего-то. Я с ним работал достаточно, чтобы понимать, когда он спрашивает вас "зачем вам это нужно" - это не подразумевает "вам это не нужно". Я уверен, за этими вопросам где-нибудь ещё теплится надежда, что может быть хотя бы в этот раз будет действительно веская причина. Но в миллионный раз оказывается, что это не так уж и нужно.
Более того, я видел несколько случаев, за время работы в техподдержке, когда клиент объяснял, зачем ему это нужно, и это делали. Либо внедряли в функционал, либо делали специально для него что-то. Это редкие случаи, потому что большинству людей нечего ответить на вопрос "зачем?".

Читал про лабвью, и думал "наверное, солидный софт, много хорошего.". Потом увидел видео, пошел - посмотрел ещё, и теперь думаю "ну и дер....". Как будто школьники делали. И за это ещё деньги просят. Поразительно. В сфере промышленной автоматизации не хватает новых технологий. Лабвью застрял в 98ом году. Моё мнение, конечно.

Что касается протягивания связей. Ну а как вы хотите построить большую систему? Вы рассуждаете тут про считывание сигналов с миллиона квадриллионов датчиков и какое-то там логгирование. А кто все эти датчики подключать будет? А кто их купит? А кто дуодециллион проводов обожмёт? Так неужели вам сложно тыщу раз ткнуть мышкой?
А, я забыл "время программиста дороже времени <кого угодно>". Время разработки и так далее. Да-да. Не надо переоценивать свою важность. Программировать может каждый. А провода подключать нет.

Вот недавно я собеседовал одного человечка. Он программист и хотел стать программистом контроллеров, в надежде перейти в новую сферу. Он был расстроен, что ему, вообще-то, придётся изучать метрологию, гидравлику, термодинамику, электрику, теорию управления и разбираться в куче профильного оборудования. Я ему так и сказал, что в данной сфере любой инженер станет программистом контроллеров в кратчайшие сроки, но даже самый квалифицированный программист по биг дата или пусть нейронным сетям, не сможет вот так же втянуться в автоматизацию. Человек даже обиделся, как мне показалось, что я считаю программистский навык таким доступным. Он ведь этому учился....

Протянуть тысячу связей - не проблема. Наливается чай, включается музыка, 20 минут медитации и готово. За это время можно как следует подумать, всё ли у вас хорошо в архитектуре, если приходится протягивать такое количество связей. Потому что если не хорошо - придётся удалить и протянуть другую тысячу.

Циклы, массивы, строки... Циклы, де факто, есть. Де юре, конечно, нету, но посмотрите в макросы конструктора хвак и увидите их. Это запрещённые технологии. Кому они нужны - тот знает как их достать. Если человек знает, как их достать, я считаю, он достоин их использовать. Т.е. он не "пьёт из лужи" и ногу себе не отстрелит этими циклами. Может быть. Если нет понимания, как их заполучить - то и применять их рано. Простой фильтр, но работает. За время работы в техподдержке я видел огромную кучу "инженеров-программистов", которым лучше бы вообще держаться по дальше от компьютеров. Но они, к сожалению, вынуждены программировать контроллеры. Если в их руках окажутся циклы, то живые позавидуют мёртвым.
Массивы - сложнее. В том виде, в котором о них говорится (множество связей в одну) они точно не нужны. В некотором ничё так виде - они есть в smhistory ну или просто в array.
Со строками - соглашусь. С развитием экранов и сенсорного ввода, лично мне, уже довольно часто приходится делать программы с видимым ограничением, выраженном в отсутствии динамических строк. В рамках местечковой автоматизации (автоматизация конкретной установки) - можно и без этого обойтись, можно просто заготовить сотню-другую строк на любой вкус и вкидывать нужную. Но в рамках адаптивных проектов, где желательно поменять название того или иного элемента, потому что объект может быть один или другой, или где надо вводить имя пользователя, или вести учёт пользователей с именами собственными - приходится уходить от лоджика или от сегнетикса. А жаль, ведь трим, так-то, может и с этим справиться.

Ну и особенно меня повеселили фразы типа "тогда покажите, как в лоджике/матриксе сделать вот так и вот так!". Во-первых, многое из этого реально можно сделать на матриксе, вопрос всё тот же - зачем? Во-вторых, тут уже говорили об этом, для всего есть свои инструменты. У матрикса свои задачи и он с объявленными цифрами справится (скорее всего).

А подход "я собрал из блоков, пока работает" - очень опасный. Ракета Ариан 5 взорвалась при взлёте из-за того, что программисты собрали программу из готовых блоков, где "чему тут ломаться?". Блоки от ракеты ариан 4. Но в какой-то момент использовали преобразование double в int, а этот int переполнился и горизонтальная скорость ракеты стала отрицательной. Блок инерциальной системы ориентирования решил срочно маневрировать и на 37ой секунде полёта вывел ракету на запредельную траекторию. Корпус попал под воздействие чрезвычайных аэродинамических нагрузок и стал разрушаться. На 40 секунде произошло самоуничтожение ракеты. Это был первый запуск Ариан-5. Это событие названо одной из крупнейших компьютерных ошибок в истории. Только материальные потери составили около $500 млн. И это в 1996ом году. На современные деньги будет ещё печальнее.


__________________
В сегнетиксе не работаю с самого начала 2019 года.

Последний раз редактировалось Arsie, 03.12.2020 в 12:59
Gromov вне форума   Ответить с цитированием