LINUX.ORG.RU

Metaprog: универсальная графическая среда программирования [в разработке] часть 2

 , , ,


2

3

Не нравится - проходите мимо. Нравится - помогайте проекту.

Дополнительно:

Структуры условного выбора типа

Примеры

Metaprog: универсальная графическая среда программирования [в разработке]

Metaprog: универсальная графическая среда программирования [в разработке] часть 3

Структура

Структура GtkWidgetClass с кучей членов-указателей на функции:

https://i.postimg.cc/bwTrb1r1/2.png

Слева - члены структуры, справа - подсказки к выходам структуры, всплывшие при наведение мышью. Там можно прочитать имена членов структуры. Здесь я буду брать прототипы для функций, вызываемых по перечисленным событиям (фишка gtk+).

Да, большая и на экран не вмещается. После релиза эта проблема будет решаться перемещением видового экрана по диаграмме и зумом (как в играх-стратегиях или при просмотре фоток под зумом).

Она же в текстовом виде: https://pastebin.com/TeTsSMQz

☆

Последнее исправление: CYB3R (всего исправлений: 12)
Ответ на: комментарий от metaprog

Но по сути несложная и доступная для понимания.

Одним высшая математика даётся, другие на таблице умножения вязнут. Надо знать пределы своих способностей.

anonymous
()
Ответ на: комментарий от metaprog

Ничего сложного в дюжине сишных фундаментальных типов нет

Есть, попробуй поработать с числами которые больше чем 2^80, ну или с векторами.

Deleted
()
Ответ на: комментарий от Deleted

Да и для кроссплатформенности тоже!

Deleted
()
Ответ на: комментарий от metaprog

Владимир

Почему то вы ООП все время отождествляете с абстракциями и объектами.
ООП - один из возможных подходов для использования объектов.
Си позволяет реализовать любую объектную модель.

anonymous
()
Ответ на: комментарий от Deleted

Ну то после релиза уж)))) Большое число как массив из 64-битных типов.

metaprog ☆
() автор топика
Ответ на: комментарий от metaprog

Сложны не сами абстракции, а вещи, которые можно делать с их помощью. Если вы на C попробуете написать Chromium, то у вас это займет на несколько порядков больше времени, чем на C++.

balsoft ★★
()
Ответ на: комментарий от anonymous

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

metaprog ☆
() автор топика
Ответ на: комментарий от metaprog

Сложно всё, что сложнее курсача. Я же говорю, кто-то на таблице умножения вязнет, кто-то printf осилить не может. Таких не берут в программисты.

anonymous
()
Ответ на: комментарий от metaprog

Ну на метапроге проще будет и быстрее, чем на чистом Си.

Какие ваши доказательства?

anonymous
()
Ответ на: комментарий от anonymous

ООП С++, джавы, .нет. Ну плюс еще не нравится питон, джаваскрипт, РНР и вообще весь современный веб кроме простого HTML.

metaprog ☆
() автор топика
Ответ на: комментарий от Deleted

Сферическое в вакууме может и нет, а на деле что получается - сам знаешь, так?

metaprog ☆
() автор топика
Ответ на: комментарий от metaprog

ООП С++, джавы, .нет. Ну плюс еще не нравится питон, джаваскрипт, РНР и вообще весь современный веб кроме простого HTML.

А жить ты на что будешь? Кто возьмёт на работу амбициозного хама, которому всё вокруг не нравится?

anonymous
()
Ответ на: комментарий от Deleted

Не только о программировании речь.

2-мерная диаграмма (с текстовыми полями, кнопками, фотками, видео итд итп) как аналог веб-страницы.

metaprog ☆
() автор топика
Ответ на: комментарий от metaprog

Если что, донат-адрес висит.

А ты смешной.

anonymous
()
Ответ на: комментарий от Deleted

Думаю мануалы к метапрогу так делать

metaprog ☆
() автор топика
Ответ на: комментарий от metaprog

Владимир

Поддерживаю ваше стремление к простоте, но не до абсурда.

anonymous
()
Ответ на: комментарий от Deleted

Сделал свою метапроговскую функцию, скоро будут еще функции и схема с ними. С жесткими последовательностями все понятно?

metaprog ☆
() автор топика
Ответ на: комментарий от metaprog

Кстати, по русски/украински сокет так и будем называть?

Это, конечно, первое, что нужно решить. Проектирование побоку. Главное, как что называться будет.

anonymous
()
Ответ на: комментарий от metaprog

Владимир

В электроники CADs все построены с использованием абстракций.
Все микросхемы, ... - объекты.

anonymous
()
Ответ на: комментарий от anonymous

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

Однако все же не помешает определиться с терминологией. Графическое программирование снимает с программ мертвую привязку к английскому. В Лабвью все свои функции, типы и прочее я называю по-украински. Точно так же можно будет делать в Метапроге, а к каждому задаваемому человеком названию будет прилагаться словарь на разные языки и диалекты (все это никак не будет влиять на логику программы, кроме случаев явного задания имен на уровне Си).

metaprog ☆
() автор топика
Ответ на: комментарий от metaprog

Владимир

Предоставьте стандартные названия и возможность пользователям использовать синонимы.
И пусть называют сокет например - «саке» /это будут их проблемы/.

anonymous
()
Ответ на: комментарий от Deleted

В заголовке вкинул:

Функция для открытия слушателя (listener) на нужном адресе и порте и ее схема:

https://i.postimg.cc/8kXBCX40/image.png

Зеленые стрелки - особенные. Они задают жесткую последовательность выполнения. Сначала bind и только потом уж listen. Сначала listen - и только потом уж сокет можно передать дальнейшим функциям (например, accept).

metaprog ☆
() автор топика
Ответ на: комментарий от metaprog

Главное не забывать что сервер на стандартном listen, accept будет лагать при 10 человеках %) Нужно использовать асинхронный ввод/вывод!

Deleted
()
Ответ на: комментарий от anonymous

Будет возможность использовать разные языки и даже самодельные диалекты.

Кстати уже шутил сверху о том, как некоторые политики возмущаются на публику языковыми вопросами, но где же их праведный гнев по поводу того, что почти все программирование намертво завязано на английский?))

metaprog ☆
() автор топика
Ответ на: комментарий от metaprog

встроено в glib?

А, ну кстати в glib есть GIO, а там асинхронные сокеты для сети, можешь их использовать!

Deleted
()
Ответ на: комментарий от metaprog

А почитать-то что?

Низнаю %)

Ну вообще отличие простое, когда ты вызываешь accept, или допустим scanf, программа «зависает» до того времени как кто нибудь не подключиться (accept), или не введет что нибудь (scanf). А вот «асинхронный accept» никогда не зависает.

Deleted
()
Вы не можете добавлять комментарии в эту тему: топик перемещен в архив.