Вверх ↑
Этот топик читают: Гость
Гость
Ответов: 17029
Рейтинг: 0
#1: 2007-07-15 17:19:39 правка | ЛС | профиль | цитата


Редактировалось 18 раз(а), последний 2024-10-03 17:08:15
карма: 0

0
Ответов: 1891
Рейтинг: 110
#2: 2007-07-15 17:40:40 ЛС | профиль | цитата
User108, писал(а):
Dilma, не могли бы привести в процентах сравнительный приблизительный анализ ухудшения качества кода производимого с помощью Хиасм, по сравнению с:
1) Дельфи
2) Ассмемблером


User108, а с чего ты это взял?


писал(а):
я уже больше года программирую, но благодаря Хиасм - не написал ни строчки кода...


мидитируешь что-ли на HiAsm?
карма: 0
%time%
0
Гость
Ответов: 17029
Рейтинг: 0
#3: 2007-07-15 18:11:10 правка | ЛС | профиль | цитата


Редактировалось 20 раз(а), последний 2024-10-03 17:08:15
карма: 0

0
Администрация
Ответов: 15295
Рейтинг: 1519
#4: 2007-07-15 20:20:00 ЛС | профиль | цитата
Во-первых, на данный момент вопрос не совсем корректен. Сам по себе HiAsm - это просто редактор схем. Конечную программу собирают кодогенераторы, входящие в состав пакетов. На данный момент есть три основных типа:
1) Объектный CG - пакеты Windows(язык Delphi), PocketPC(язык С++)
2) CG на базе макросов - FASM(язык Assmbler). Подробнее о качестве кода этого пакета может рассказать tsdima
3) Потоковый CG(или FTCG) - пакеты WEB(языки PHP, JavaScript, HTML), Modules(языки C++, JavaScript)

И именно в предалах каждого из способов кодогенерации стоит проводить сравнение и не с языками Дельфи или Ассмемблером, а с исключительно теми языками, которые испольщуются в данном конкретном пакете:
1) Объектный CG - самый худший из существующих способов кодогенерации. Выразить в цифрах качество нельзя, поскольку оно сильно зависит от элементов используемых в схеме. Зависимость примерно такая: чем больше в схеме элементов, выполняющих достаточно мелкие задачи(Math, StrCat, If, For и прочие), тем больше ухудшается качество получаемого в данном пакете приложения. Тесты на строках(использование элемента For и StrCat в циклах от 100тыс итераций) давали примерно 10-15кратное ухудшение работы приложения по параметру "Скорость".
2) Работает несколько быстрее, чем 1) однако точные данные может предоставить только автор
3) Потоковый CG генерирует код практически не уступающий по качеству тому, что мог бы получиться при ручном кодирование. Примеры можно посмотреть в разделе WEB на форуме. Тестовый пример с элементами For и StrCat в пакете Delphi2 давал результаты по скорости работы такие, какие вообще в состояние предоставить данный язык программирования.

По размеру кода все пакеты дают примерно одинаковые результаты, т.е. размер хоть и больше того, каким мог бы быть, но всего лишь в 1.5 - 2 раза. Иногда и меньше.

По ресурсам думаю сравнивать смысла не имеет. Качество распределения ресурсов от способа генерации кода практически не зависит. Скорее от реализации каждого конкретного элемента.

User108 писал(а):
И вообще, если есть желание стать настоящим программистом, стоит ли начинать с Хиасм, или лучше все-таки с Ассемблера и Дельфи?

   Хороший вопрос... В своей практике приходилось сталкиваться с мнениями, что настоящими программистами становятся те, кто начинает программировать на С++ Однако если человек не понимает, что программирование это не клацанье по клавишам, а работа головой и умение мыслить логически, то как раз для него имеет смысл с какого языка начинать.
   С какого языка начинать, посоветовать не могу - уважающий себя программист должет знать их все. Или во всяком случае большинство. Степень сложности по убыванию примерно такая: Assembler, C++, Delphi, C#, Basic.

User108 писал(а):
А то я уже больше года программирую, но благодаря Хиасм - не написал ни строчки кода...

User108, это значит, что цель таки была достигнута Впрочим HiAsm тем и хорош, что позволяет достаточно легко переходить от простого к сложному, путем преодаления у человека непонимания принципов программирования. Кубики и линии понятны всем и каждому, а как только кому-то не хватает существующих возможностей он может дописывать существующие элементы или делать свои, постепенно и ненавязчиво изучая язык пакета.
карма: 27
2
Голосовали:SkyPrinceRus, lisnic
Ответов: 3514
Рейтинг: 184
#5: 2007-07-15 21:30:17 ЛС | профиль | цитата
Важно ли качество кода, или же всё таки важно качество готовой программы, как уже писал Дилма в посте выше..

Помнится очень-очень давно я делал WML редактор, который до сих пор валяется в upload, должен сказать, с того времени много воды утекло, и огда я нашёл схемку у себя на компутере, октрыл.. и ужаснулся.
Связи не понятны, компоненты даже не выровнены, повсюду таймеры и прочая фигня, которая стала ненужной, после открытия чудо-принципа хаба- последовательность.. я выкинул из схемы больше половины компонент, и о чудо, схема стала читабельней, а программа быстрей (наверно )

Поэтому качество кода, думаю, на прямую зависит от познаний и умений рисования в среде...
карма: 0
0
Гость
Ответов: 17029
Рейтинг: 0
#6: 2007-07-15 22:08:56 правка | ЛС | профиль | цитата


Редактировалось 18 раз(а), последний 2024-10-03 17:08:15
карма: 0

0
Гость
Ответов: 17029
Рейтинг: 0
#7: 2007-07-15 22:49:46 правка | ЛС | профиль | цитата


Редактировалось 18 раз(а), последний 2024-10-03 17:08:15
карма: 0

0
Ответов: 3851
Рейтинг: 159
#8: 2007-07-15 23:01:45 ЛС | профиль | цитата
User108 писал(а):
дешифратор К155ИД3

Это скорее не HUB а IndexToChanel, да и то с натяжкой
карма: 0
начавший
0
Администрация
Ответов: 15295
Рейтинг: 1519
#9: 2007-07-15 23:22:43 ЛС | профиль | цитата
User 108 писал(а):
Ты понимаешь все что "напрограммировал"

это не так. Современный уровень программирования как раз и сводится к тому, что программист при ручном кодирование фактически только и определяет последовательность вызова методов и задает связи между объектами приложения. Хороший тому пример C# - язык, в котором существуют почти только одни объекты и где ты "понимаешь все что напрограммировал" только по описаниям интерфейсов этих объектов. Никакого понимания происходящего на самом деле там нет и быть не может. Скажем один GC(сборщик мусора) чего только стоит. В HiAsm же тем, кому надо что-то понимать доступны магические комбинации Ctrl D, Ctrl F, а так же прыжки по всем модулям в рамках исходного файла по Ctrl Enter.

User 108 писал(а):
Да и порядок в коде (читабельность) поддерживать легче, чем выравнивать сотни элементов и связи

1) Читабельность схемы зависит исключетельно от культуры граффического программирования каждого конкретного человека. В HiAsm уже очень давно существуют элементы контейнеры, которые позволяют избавляться от сотен элементов на рабочем поле путем разбиения приложения на логические части.
2) В языках ЯВУ существует точно такая же культура написания кода со своей спецификой, соблюдение или несоблюдение которой делает код программы либо читаемым, либо нет.

User 108 писал(а):
И еще есть компактонсть кода - чтобы проделать какую-нить повторяющуюся операцию - не нужно искать и вставлять элемент hub, например, присоединять его, достаточно обратиться к заранее определенной подпрограмме и передать ей нужные параметры

Тоже не верно. Это выводы, сделанные на основе работы со стандартным древним пакетом. Пакет WEB при желании позволяет рисовать схемы со вставкой подпрограмм, имеющих свои имена с последующим вызовом их из любой точки схемы. Про Hub - вставку в линк между двумя элементами уже придумали делать в два клика. Это только вопрос времени.

User108, думается мне, что все же будущее в массе своей за системами визуального проектирования. Просто сейчас они только только начинают появляться, но потенциал уже достаточно мощный и в отличие от простых языков тут продумывание и реализация каждой возможности занимает не один день. Кроме того поскольку графический язык полностью включает в себя базовый язык ЯВУ в виде InlineCode элементов, то сравнение вообще теряет всякий смысл.
карма: 27
0
Гость
Ответов: 17029
Рейтинг: 0
#10: 2007-07-15 23:34:39 правка | ЛС | профиль | цитата


Редактировалось 18 раз(а), последний 2024-10-03 17:08:16
карма: 0

0
Администрация
Ответов: 15295
Рейтинг: 1519
#11: 2007-07-15 23:43:45 ЛС | профиль | цитата
User108 писал(а):
Но если вы в это верите, наверное еще есть шансы, вам видней наверное

в это даже верить не надо - это следующий логический шаг Цитата из первого поста:
User108 писал(а):
А то я уже больше года программирую, но благодаря Хиасм - не написал ни строчки кода...

достаточно красноречиво говорит о том, что графические языки программирования так или иначе займут свою нишу и будут развиваться и дальше. HiAsm далеко не первая попытка проложить тропинку в этом направление и скорей всего не последняя. Правда когда такие тропинки возьмуться прокладывать сильные мира сего боюсь нам придется отойти в сторону Впрочем поживем увидим...
карма: 27
0
Гость
Ответов: 17029
Рейтинг: 0
#12: 2007-07-18 11:11:39 правка | ЛС | профиль | цитата


Редактировалось 18 раз(а), последний 2024-10-03 17:08:16
карма: 0

0
Ответов: 9906
Рейтинг: 351
#13: 2007-07-18 11:20:08 ЛС | профиль | цитата
А вот как это интересно мы скажем, если не знаем каким макаром получено "в Turbo Delphi - 18.4 Кб"
Больше на вранье похоже
карма: 9

0
Гость
Ответов: 17029
Рейтинг: 0
#14: 2007-07-18 11:31:20 правка | ЛС | профиль | цитата


Редактировалось 18 раз(а), последний 2024-10-03 17:08:16
карма: 0

0
Администрация
Ответов: 15295
Рейтинг: 1519
#15: 2007-07-18 11:31:56 ЛС | профиль | цитата
User108 писал(а):
Может, новая технология Borland ?

Угу новая... Называется .NET
карма: 27
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)