реклама на сайте
подробности

 
 
27 страниц V  « < 22 23 24 25 26 > »   
Reply to this topicStart new topic
> Сложные программы
AHTOXA
сообщение Jan 16 2017, 10:24
Сообщение #346


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(Эдди @ Jan 16 2017, 12:06) *
Вот, говорите, "сложные программы". А я вчера на баг opencm3 в делении на STM32F0 наткнулся. Полдня пытался понять, почему виснет МК, пока не выловил, где именно он виснет.

Надеюсь, баг-репорт отправили? Ссылочку можно?
Цитата(Эдди @ Jan 16 2017, 12:06) *
Буду теперь свой "фреймворк" собирать, раз уж ничего нормального под STM'овские микроконтроллеры в природе не существует ☹

Да, конечно. Уж свой-то "фреймворк" точно будет без единого багаsm.gif


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
Эдди
сообщение Jan 16 2017, 10:53
Сообщение #347


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



Цитата(AHTOXA @ Jan 16 2017, 13:24) *
Надеюсь, баг-репорт отправили?

Нет, конечно. Какой смысл отправлять баг-репорт версии, которая 1.5-2 года назад устарела? По-моему, они там уже все баги с F0 позакрывали, т.к. видел там недавно довольно длинный список баг-репортов и пулл-риквестов, который почти полностью был закрыт.
Но тут уже выбор: либо использовать чужую библиотеку и матюкаться каждый раз, как авторы поломают API (а раз прецедент был, уже доверия нет), переписывая абсолютно все свои поделки под новое API, либо городить свое, где все будет надежно.
Я выбираю второй вариант.
Цитата
Да, конечно. Уж свой-то "фреймворк" точно будет без единого багаsm.gif

В своем проще: никому пулл-риквесты слать не надо. Просто закрыл баг, и сделал коммит.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jan 16 2017, 11:09
Сообщение #348


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(haker_fox @ Jan 15 2017, 12:18) *
Расскажите, пожалуйста, по-подробнее про фреймворки. Ваш код для гирлянды (geektimes) можно считать фреймворком? Потому, что я его на днях скачал, по-маленьку изучаю ваш подход. Ибо стало интересно rolleyes.gif

Да, это часть фреймворка.
Не самая большая.

Главное в нём RTOS с промежуточным софтом.
Главное в RTOS - это отладочные возможности и диагностика.
Главное в отладке - это разнообразие и быстрота отладочных каналов и инструментов анализа на PC.
Поэтому у меня в обязаловку всегда есть либо UART со скоростью не менее 1,5 Мбита в сек, либо USB FS/HS с не менее чем с 2-я виртуальными COM портами, либо Ethernet, либо канал RTT через SWD.
В директории VT100 у меня расположен монитор VT100 с псевдографическим меню.
Этот монитор работает через драйвера и он многозадачный.
Т.е. в одном терминале через com порт можно открыть один монитор , в другом окне терминала через другой com порт открыть другой монитор, и еще через интернет telnet открыть третиий и т.д.
Таким образом можно построить на PC многооконную отладку где сразу видеть в реальном времени листин лога, регистры периферии, выпонять настройки, работать с Shell RTOS и проч.
И это только один из путей или одна из технологий отладки имеющаяся в моем фреймворке.

В проекте гирлянды все это присутствует, но частично не задействовано.
В следующем проекте унивесального модуля управления мотором с гирляндой будет более расширенный вариант использования отладки и кстати с выводом в Matlab.

Багтреккеры, контроли версий и прочая бюрократия не имеют почти никакого отношения к качеству, скорости и сложности моих разработок.
Имея развитую отладку баги не накапливаются, соответственно не надо хранить о них никакой информации.
А контроль версий у меня играет роль исключительно бэкапа да и то не для всего, а только для проектов ПО.
Go to the top of the page
 
+Quote Post
Эдди
сообщение Jan 16 2017, 11:27
Сообщение #349


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



AlexandrY, почем матлаб брали? Академическая версия или полноценная?
Интересно просто, во сколько обойдется удовольствие сменить octave на матлаб (пока, правда, не возникало никаких задач, требующих именно матлаба, но есть кое-какие прелести в wavelet-тулбоксе, аналог которому я полгода писать буду, и симулинке). У нас лет 15 назад пара человек даже нарисовали в матлабе свой фреймворк для обработки спектров, да забили на это дело и перешли в более удобный IDL.
Сам матлаб я видел лет 7 назад последний раз, да и то версия какая-то урезанная была (хотя вроде бы линуксовая ничем от вендузячьей не должна отличаться).
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jan 16 2017, 13:01
Сообщение #350


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (Эдди @ Jan 16 2017, 15:06) *
раз уж ничего нормального под STM'овские микроконтроллеры в природе не существует ☹

Ну да. есть там ошибки. Я их правил тоже. Правда не то, чтобы ошибки. Скорее функционал наращивал. А затем оборачивал в классы на Си++) Это же бесплатно, чего требовать?

QUOTE (AlexandrY @ Jan 16 2017, 19:09) *
И это только один из путей или одна из технологий отладки имеющаяся в моем фреймворке.

Вас понял! Спасибо! Очень интересно!


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
mantech
сообщение Jan 16 2017, 20:13
Сообщение #351


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Grizzzly @ Jan 15 2017, 12:34) *
В этом-то как раз Эдди прав. Только поменьше бы экспрессии sm.gif

Цитата(Grizzzly @ Jan 15 2017, 12:34) *
Цитата(Укушенный воблой @ Jan 15 2017, 12:31)
Понятно.
"Мышка для лохов, а правильные пацаны юзают командную строку".
Вопросов больше не имею.
В этом-то как раз Эдди прав. Только поменьше бы экспрессии sm.gif

Ну, и какому клиенту вы продадите железку с "чиста-канкретной" командной строкой?? Лет надцать назад может кто-нибудь и купился бы, но сейчас... biggrin.gif
Цитата(Эдди @ Jan 15 2017, 14:31) *
l
Производительность труда в CLI намного выше, чем в GUI. Если кто-то думает иначе, он просто никогда не работал в командной строке.
Элементарный конвейер из sed, grep, awk и т.п. заменяет уйму GUIшных тормозных утилит.

Вам не кажется, что еслиб было так, то 90% техники сегодня было б не с гуем, а командной строкой?? Подумайте еще раз, создается впечатление, что вы живете в своем мире конца 80х на XT или AT286. laughing.gif
ЗЫ. Кстати, в так вам ненавистной винде командная строка тоже есть и сам иногда пользуюсь ей и bat-файлами...
Go to the top of the page
 
+Quote Post
Укушенный воблой
сообщение Jan 16 2017, 21:02
Сообщение #352


Частый гость
**

Группа: Участник
Сообщений: 197
Регистрация: 8-07-16
Пользователь №: 92 484



maniac.gif
Тема свелась в холивару ртос\не ртом гуй/не гуй.
А про, собственно, ГЛАВНУЮ причину сложности (так сказать, "источник сложности") все забыли

Сообщение отредактировал Укушенный воблой - Jan 16 2017, 21:03
Go to the top of the page
 
+Quote Post
BackEnd
сообщение Jan 16 2017, 21:12
Сообщение #353


Местный
***

Группа: Участник
Сообщений: 201
Регистрация: 28-07-16
Пользователь №: 92 747



Цитата(Эдди @ Jan 15 2017, 11:31) *
В том числе. Такими телефонами и пользуюсь, не понимаю, как народ вместо телефона планшет карманный таскает.

Перепробовал разные варианты. Скольки-то там ядерный смартфон лежит без дела, а компактный джавафон прижился.

Цитата(Эдди @ Jan 15 2017, 11:31) *
Производительность труда в CLI намного выше, чем в GUI. Если кто-то думает иначе, он просто никогда не работал в командной строке.
Элементарный конвейер из sed, grep, awk и т.п. заменяет уйму GUIшных тормозных утилит.

Соглашусь. Единожды попробовав и ощутив неограниченные возможности CLI, сложно заставить себя перестроиться на GUI.
У GUI низкий порог вхождения, но быстро утыкаешься в ограничения. CLI предполагает некоторые затраты на изучения идеологии, но зато потом сплошное удовольствие.

Цитата(mantech @ Jan 16 2017, 20:13) *
Ну, и какому клиенту вы продадите железку с "чиста-канкретной" командной строкой?? Лет надцать назад может кто-нибудь и купился бы, но сейчас... biggrin.gif

Ну я продавал. Человеку было нужно, через конфиг-файлы у меня все было готово, GUI front-end городить долго и дороже. Заказчика устроил мой вариант.

Цитата(mantech @ Jan 16 2017, 20:13) *
Вам не кажется, что еслиб было так, то 90% техники сегодня было б не с гуем, а командной строкой??

Думаю, 90% пользователей GUI в силу разных обстоятельств даже не пытались серьезно работать в командной строке и сравнивать производительности CLI и GUI.

Цитата(mantech @ Jan 16 2017, 20:13) *
ЗЫ. Кстати, в так вам ненавистной винде командная строка тоже есть и сам иногда пользуюсь ей и bat-файлами...

BAT-файлы, конечно, вещь, но с командной строкой NIX-систем это сравнить невозможно.



--------------------
"Классики марксизма говорили, что общественно-экономическая формация меняется с изменением средств производства, которые всегда принадлежали имущему классу.
И сейчас мы находимся в системе координат капитализма, когда самые передовые средства производства принадлежат уже не капиталистам.
Люди, у которых нет обуви, имеют гаджеты. Сейчас создана такая информационная паутина, что вместо коллективного бессознательного можно говорить о коллективном сознании.
Если иметь мозги и гаджеты, можно перевернуть весь мир. Коллективное сознание будет управлять миром! Это исторический путь, который нельзя миновать."
Вячеслав Мальцев
Go to the top of the page
 
+Quote Post
mantech
сообщение Jan 16 2017, 21:23
Сообщение #354


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Укушенный воблой @ Jan 17 2017, 00:02) *
maniac.gif
Тема свелась в холивару ртос\не ртом гуй/не гуй.
А про, собственно, ГЛАВНУЮ причину сложности (так сказать, "источник сложности") все забыли

Сложность создается тогда, когда программа плохо структурирована. Тут есть несколько вариантов - изначально закладывать в программу, протоколы, с которыми она работает некоторую универсальность, и унифицированность. Это приходит с опытом и каждая следующая программа получается лучше. Как вариант - унифицированные библиотеки сложного функционала, как например, сложные протоколы (усб, кан и пр.) сложные модули (гуй, сетевые стеки...) и собствено программа, которая вызывает этот функционал в своей задаче. Ну и 3й вариант, который тоже не лишен смысла - это модульные экосистемы, или микрофреймворки, как сейчас любят их называть, писать программу под ними легче, но есть и ограничения.
Сам мользуюсь всеми тремя способами, в зависимости от ситуации...
Цитата(BackEnd @ Jan 17 2017, 00:12) *
Думаю, 90% пользователей GUI в силу разных обстоятельств даже не пытались серьезно работать в командной строке

И самое главное - даже и не будут пытаться..
ЗЫ. какая командная строка, если сейчас тенденция программы "писать" путем тыканья в кнопки и "галочки", вот уж где я не согласен с гуем, так это в программировании, ибо создать граф. форму и растыкать виджеты мышкой - это удобно, но программу писать - это уж клавиатура и текстовый редактор, конечно, с подсветкой синтаксиса, разумеется.. cool.gif
Go to the top of the page
 
+Quote Post
Эдди
сообщение Jan 16 2017, 22:25
Сообщение #355


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



Цитата(Укушенный воблой @ Jan 17 2017, 00:02) *
А про, собственно, ГЛАВНУЮ причину сложности (так сказать, "источник сложности") все забыли

Главная причина сложности любой программы — сам программист, который пытается из нее невесть что универсальное сделать. Вторичной причиной являются пользователи, которых, как мы уже пришли к выводу, априори считают идиотами (и оно недалеко от этого), из-за чего приходится все четырежды перепроверять и делать мегазащиту от дурака. И все равно на каждую хитрую ж...

Вот поэтому если делать только для своего потребления, получается довольно просто: ни с GUI не надо заморачиваться, ни документацию бешеную писать. Да даже можно баги не исправлять, зная о них.

P.S. Насчет GUI я уже последние лет 5-6 использую веб-морды для всего и вся (в рамках разумного, конечно; если через веб-морду нельзя, делаю какой-нибудь элементарный просмотрщик картинок на openGL или устраиваю конвейер). Повсеместная поддержка браузерами вебсокетов добавила удобства: теперь запросы воистину стали асинхронными и нет нужды чрезмерно нагружать линию поллингами по 10-30 раз в секунду! Остается только проблема с трансляцией видео: НЯЗ, до сих пор ничего, кроме mjpeg'ов (а то и вообще обновления картинки по таймеру), не придумали. Я пробовал через вебсокеты работать — очень медленно получается, т.к. нужно в base64 изображение передавать и жабоскриптом декодировать.
Возможно, следующая реализация вебсокетов будет поддерживать передачу бинарных файлов, а браузеры позволят эти файлы непосредственно отображать. Ну или хотя бы браузеры перестанут течь при приеме mjpeg'ов. И будет счастье.
Go to the top of the page
 
+Quote Post
Guest_TSerg_*
сообщение Jan 16 2017, 22:55
Сообщение #356





Guests






>Главная причина сложности любой программы — сам программист, который пытается из нее невесть что >универсальное сделать.

Вы давно из песочницы вылезли? Полагаю, что и не вылезали.

Программа - это данные + алгоритмы, как сказал классик.
Данные - это физические параметры, систематизированные (структурированные) наилучшим способом для конкретной задачи.
Алгоритмы - это приближение к физической реальности нашего способа установления взаимосвязей.

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

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

Оч. простая реализация алгоритма X на java - из нумерологии.
Сообразите, что да как:

Arrays.fill(isP, true);
isP[1] = false;
for (int i=2; i*i < N; i++)
if (isP[i])
for (int j=i*i; j < N; j+=i)
isP[j] = false;
Go to the top of the page
 
+Quote Post
des333
сообщение Jan 16 2017, 23:01
Сообщение #357


Профессионал
*****

Группа: Свой
Сообщений: 1 129
Регистрация: 19-07-08
Из: Санкт-Петербург
Пользователь №: 39 079



Цитата(TSerg @ Jan 17 2017, 01:55) *
Алгоритмы - это приближение к физической реальности нашего способа установления взаимосвязей.

Вот это пять! lol.gif


--------------------
Go to the top of the page
 
+Quote Post
haker_fox
сообщение Jan 17 2017, 00:29
Сообщение #358


Познающий...
******

Группа: Свой
Сообщений: 2 963
Регистрация: 1-09-05
Из: г. Иркутск
Пользователь №: 8 125



QUOTE (BackEnd @ Jan 17 2017, 05:12) *
Ну я продавал. Человеку было нужно, через конфиг-файлы у меня все было готово, GUI front-end городить долго и дороже. Заказчика устроил мой вариант.

Ну это же зависит только от того, какую продукцию вы производите rolleyes.gif Сложно представить себе мультиметр, логический анализатор или осциллограф без GUI, а только лишь с командной строкой. С другой стороны конфигурировать линукс через граф интерфейс действительно не очень производительно.

QUOTE (mantech @ Jan 17 2017, 05:23) *
ибо создать граф. форму и растыкать виджеты мышкой - это удобно

Нет! rolleyes.gif Здесь как раз тоже удобно форму описать, используя API графической библиотеки. Это оперативнее по той же причине, которую вы назвали выше, говоря о командной строке.


--------------------
Выбор.
Go to the top of the page
 
+Quote Post
Эдди
сообщение Jan 17 2017, 05:15
Сообщение #359


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



Цитата(haker_fox @ Jan 17 2017, 03:29) *
Сложно представить себе мультиметр, логический анализатор или осциллограф без GUI

А пайпы на что? Зачем мучиться с gui, если можно через пайп в gnuplot данные передавать? И будет наглядное отображение. Аналогично с логанализатором: сохраняем данные в файл, потом требующийся кусок рисуем гнуплотом, а на выход выдаем анализ по соответствующему протоколу.

GUI на все случаи жизни — неправильный подход. Неюниксвейный. UNIX-way — это одна утилита под одну задачу. Объединяем толпу утилит в конвейер, и получаем счастье. Мелкомягкие же придумали плодить сущности. В итоге в каждой программе свой GUI, своя проверка правописания, своя подсветка синтаксиса, свои виджетобиблиотеки и т.д., и т.п.
Go to the top of the page
 
+Quote Post
syoma
сообщение Jan 17 2017, 05:55
Сообщение #360


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



Цитата(TSerg @ Jan 17 2017, 00:55) *
Алгоритмы - это приближение к физической реальности нашего способа установления взаимосвязей.
Все это, в совокупности, определяет сложность моделирования физического мира через призму нашего примерного описания/понимания его.
Физические параметры какой-либо сущности "живут" без участия какого-либо программиста, математика, физика.
Алгоритмы, как приближение описательного процесса физики явлений - суть нашего недопонимания физики/информатики.


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

Цитата
Оч. простая реализация алгоритма X на java - из нумерологии.
Сообразите, что да как:

Arrays.fill(isP, true);
isP[1] = false;
for (int i=2; i*i < N; i++)
if (isP[i])
for (int j=i*i; j < N; j+=i)
isP[j] = false;

Вот именно - кому сегодня нужен такой код? Возможно - эффективный, возможно красиво выглядит - для самого программиста. Но в свете возросшей вычислительной мощи компьютеров следовало бы описать его более наглядно с математической или графической точки зрения - или где он там используется.
Go to the top of the page
 
+Quote Post

27 страниц V  « < 22 23 24 25 26 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th June 2025 - 11:45
Рейтинг@Mail.ru


Страница сгенерированна за 0.0156 секунд с 7
ELECTRONIX ©2004-2016