|
Труд вопреки насмешкам
|
|
DCASTF. Каким он будет? (Идеи и предложения по поводу будущего создателя окон)06.08.2018, 21:38. Показов 7700. Ответов 137
Метки нет (Все метки)
Предлагаю здесь поговорить о том, каким вы хотели бы видеть качественный русский создатель окон. А я пытаюсь разработать такой под названием "DCASTF". Запретить я ничего не могу, так как не модератор, но крайне не рекомендую писать что-то похожее на "мне все равно", "круче плюсов не придумаешь", "думаю, ты не справишься" и т. д. Прошу высказывать только действительно осмысленные предложения. А для начала - описание, что вообще такое DCASTF и что в нем уже устоялось.
DCASTF означает "Data Counting and Saving to File", то есть "вычисление и запись данных в файл". Это с вероятностью 80% один из 2-3 качественных русских создателей окон, с вероятностью 50% - единственный и неповторимый. В своей жизни я видел всего один русский создатель окон, и он, откровенно говоря - убогий. А DCASTF - не только русский. При желании вы сами можете перевести его на немецкий, арабский или тарабарский язык. (Хотя создавался он как русский.) DCASTF имеет четыре редакции: стандартная, DCASTF+, DCASTF++ и DCASTF# (третья - самая мощная и самая дорогая). DCASTF позволяет: - Создавать окна, размещать в них объекты, настраивать их на обнаружение событий и выполнять в ответ действия. - Просматривать все окна, объекты, события, действия и прочие элементы набора окон в удобной древовидной форме. - Создавать величины нескольких сотен типов из 9 групп: числа, строки, логические константы, перечисляемые константы, объекты, блоки (DCASTF+, DCASTF++ и DCASTF#), массивы, пустота, рекурсивный тип (своеобразное перечисление, значения которого являются всеми другими типами) (DCASTF+ и DCASTF++). - Размещать между величинами и константами 22 вида унарных и бинарных операторов (вычисление), а в платных редакциях, возможно, и больше. - Пользоваться несколькими сотнями операций, работающих с выполнением строки, показом и скрытием окон, переменными окружения, показом сообщений, проверками на какое-либо свойство, числами (включая случайные числа), объектами, файлами (запись данных в файл), текстом и многими другими явлениями в наборе окон и вне его, а также создавать свои (операция - последовательность действий, выполняемая не в ответ на событие, а только при вызове и способная возвращать значение) даже в бесплатной редакции! - Кроме вызова операций, напрямую вызывать события из других событий (DCASTF++ и DCASTF#) (невозможность вызвать событие из операции, думаю, очевидна, так как событие привязано к объекту, а операция нет). - Выполнять действия только при каком-либо условии (3 вида условий - "УСЛОВИЕ <условное выражение>", "ПОДУСЛОВИЕ <условное выражение>" и "В остальных случаях", в платных редакциях, возможно, появятся другие) и в цикле (3 вида циклов - "ПОВТОРИТЬ <число или выражение>", "ПОВТПОКА <условное выражение>" и "ФОР <величина> ПРИН <открытая квадратная скобка><выражение>, <выражение><закрытая круглая или квадратная скобка>[ ШАГ <выражение>]", в бесплатной редакции выполнение циклов замедлено). - Создавать блоки (DCASTF+, DCASTF++ и DCASTF#), способные содержать величины-свойства, локальные операции и переопределения операторов (DCASTF++) и быть типами величин и значений, возвращаемых операциями и значениями рекурсивного типа. - Добавлять в набор окон модули (DCASTF+, DCASTF++ и DCASTF#) и объектные модули (DCASTF++), содержащие наборы готовых величин, операций, перечислений, блоков и объектов, а также создавать свои аналогичные элементы (требования те же, что и для добавления). - Тестировать набор окон с использованием 100п-точек, выражений для наблюдения и запуска с прерыванием на каждом действии или без отладки (даже в бесплатной редакции). - Просматривать содержимое встроенных операций (DCASTF++ и DCASTF#). Впрочем, в большинстве случаев это бесполезно, так как они являются операциями Избазы, непосредственно опирающимися на исходный код, а кто же станет показывать исходный код платной программы? - Даже в бесплатной редакции создавать "готовые" наборы окон, которые можно изменить только в Блокноте или принудительной сменой расширения у файла, а в платных редакциях можно сделать бесполезными и эти "дедовские" методы с помощью шифрования. Что уже устоялось: - Название "DCASTF", его расшифровка и перевод. - То, что основной язык - именно русский и никакой другой. - Названия большинства элементов, включая элементы интерфейса, Дерева действий, первичную терминологию создания окон (слова "величина", "пустота", "возврат значения" и т. д.), группы типов, ключевые слова и другую терминологию, если не указано обратное. - Сам интерфейс, включая меню, панель объектов, панель размещения, панель свойств, Дерево действий, панель элементов и выпадающие окна. - Следующие объекты: изображение, кнопка, надпись, панель, переключатель, счетчик, текстовое поле, флажок. - Обычные и условные выражения строго разделены, конструкция вида "УСЛОВИЕ А" запрещена, только "УСЛОВИЕ А = Десв", даже мастера, создающие эти виды выражений, разные. - Внешний вид операторов: ", ", " скл " (склеивание), " пс " (склеивание с переводом строки), "+", "-", "*", "/", "%", " рн " (деление нацело), " xor ", " или ", " и ", "!", "[]", "()" (порядок действий и операция), "." (свойство), "$" (использование значения величины как имени - а-ля PHP), ":" (отделяет объект от окна). - Внешний вид событий, операций, условий и циклов. - Способ объявления величин. - Именно 3 вида условий и именно 3 вида циклов, способы их записи. - Следующие виды массивов: одномерный, двумерный, трехмерный, переменной длины и массив параметров, причем массив переменной длины записывается именно как "Массив() Тип", индексы многомерного массива записываются в одних квадратных скобках через запятую, а запись "Массив параметров Тип" не содержит скобок. - Следующие типы: Пустота, Универ, Число, Целое, Целое без знака, Строка, Короткая строка, ЛогКонст, типы массивов, типы объектов, равные названиям самих объектов, плюс общие типы Объект и Размещаемый объект, рекурсивный тип. - Максимальная глубина рекурсии типов равняется 1, то есть наборы действий вида "Тип : А//А = Тип//А : Б//Б = Тип//Б : В//В = Число//В : Г//Г = 5" ("//" - разрыв между соседними действиями) запрещены. - Следующие операции (разрешите обойтись без пояснений): ВзОшибку, Выбрать случайное, Выполнить строку, Массив одинаковых, Окружение, Параметр пропущен, Перек, Сообщение, Цвет, Цепь, ЯвлМассив, ЯвлНс, ЯвлОбъект, ЯвлПустота, ЯвлЧисло, КругР, Линия, Надпись, Прямоугольник, Точка, Треугольник, Удалить навороты, Эллипс, Длина файла, Дописать текст, Копировать файл, Переместить файл, Путь к набору окон (не устоялось, будет ли это величиной или операцией), Содержимое файла, Создать папку, Сохранить в файле, Уничтожить файл, Файловый объект существует, Вставить, Добавить, Сместить, Участок, Бц, Длн, Знаг, Клвс, Клэмп, Круг, Ксс, Лгр, Макс, Макс3, МаксМ, Мин, Мин3, МинМ, Модуль, Мц, НЛгр, ОКсс, ОСнс, ОТгс, Пвт, ПвтК, Прбрз1610, Прбрз810, ПЧсл, Слч, Смвкд, Снс, Сравн, Сравнить тексты, Тгс, ЦСлч, Эксп, Вкс, Всбк, Замена, ЗвКвч, ПСтр, Сдп, Смв, Спп, Ссп, УКвч, УПрб, УПрбК, УПрбН. - Количество элементов: 5000000 обычных величин, 10000 массивов неопределенной длины и/или строк, 10000 массивов обычных величин, 100 массивов строк, 13000 объектных величин, 65 массивов объектных величин, 100 окон, 20000 объектов в каждом окне (в финальной версии, возможно, числа будут отличаться, но точно, что не из-за ваших предложений, а только из-за проблем памяти). - Способы тестирования, поведение модулей и объектных модулей. Что является "чистым полем" для ваших предложений: - Все не указанные в предыдущем списке объекты. - Внешний вид оператора степени. Сейчас он имеет вид " встп ", но эта запись может кому-то не понравиться из-за длины. Вид "^" также не идеален, так как этого символа нет в русской раскладке, а DCASTF - русский создатель окон. - Все не указанные в предыдущем списке операторы. - Возможно, вы знаете альтернативный вид массива? - Все не указанные в предыдущем списке типы, включая перечисляемые константы и блоки. - Все не указанные в предыдущем списке операции. - Стоит ли делать связывание величин, чтобы можно было каким-либо оператором "привязать" одну величину к другой, и изменение первой автоматически изменяло вторую? - Глубина вложения блоков, объектных свойств, панелей и т. д. является бесконечной? Или ограниченной? Если ограниченной, то каким числом? - Название конструкции вида "<это название>[Тип Т, Строка С] Число : Операция О1(Массив параметров Т Параметр)", после которой операция вызывается как "О1[Число, "абвгд"](123, 256, 999)", а также мелкие подробности работы этой конструкции. - А также все прочее, что еще не является устоявшимся. Предлагайте, этим вы готовите свое же приятное будущее в работе с этим создателем окон.
0
|
|
| 06.08.2018, 21:38 | |
|
Ответы с готовыми решениями:
137
Нужен вам совет по поводу будущего поиска работы Идеи по поводу генератора структуры сайта Какой будет windows будущего |
|
14371 / 9475 / 1360
Регистрация: 21.01.2016
Сообщений: 35,747
|
||||
| 08.08.2018, 20:49 | ||||
|
0
|
||||
|
|
|||
| 08.08.2018, 20:56 | |||
|
Ваш пример Алгоритма - обучающий. То, что вы "планируете", тоже из этой серии. Но фичи афишируете, будто это будет нечто серьёзное. Но
Сделайте хоть что-нибудь работающее и не отталкивающее с одного взгляда на скриншот, и вам, может быть, хоть чуть-чуть поверят.
2
|
|||
|
Труд вопреки насмешкам
|
||||||||||||
| 08.08.2018, 21:42 [ТС] | ||||||||||||
|
Ладно, уйду. Вернусь через несколько дней.
0
|
||||||||||||
|
|
|||||
| 08.08.2018, 21:56 | |||||
![]() С таким подходом проект не взлетит, будет одна болтовня. 146%.
0
|
|||||
|
14371 / 9475 / 1360
Регистрация: 21.01.2016
Сообщений: 35,747
|
|||||
| 08.08.2018, 22:06 | |||||
|
0
|
|||||
|
Труд вопреки насмешкам
|
||||||
| 10.08.2018, 15:08 [ТС] | ||||||
|
Господин Usaga, сегодня вы здесь? Я готов продолжить.
Ну хорошо, что нужно сделать, чтобы мой язык программирования был нормальным, а не обучающим, и при этом удобным в использовании? 1. Возможность бесконечной рекурсии языков программирования - в Алгоритме 2.5.6.65536 это невозможно в принципе, а в C++ намного сложнее. Включая: 1-1. Возможность выполнять действия, записанные в строку - в C++ этого нет. 1-2. Возможность создавать готовый набор окон программно - принципиально новая возможность. 1-3. На каждом шаге такой рекурсии, если все делать правильно, скорость будет уменьшаться на 10-20%, а при переходе от C++ к DCASTF - в десятки раз. 2. В Алгоритме 2.5.6.65536 "циклы" - это просто таймер с интервалом 100-300 миллисекунд, во время работы которого могут выполняться другие события, действия, нажатия клавиш и кнопок мыши и т. д., и который может прерывать и возобновлять свою работу бесконечно много раз - условие ложно - он прервал выполнение цикла, условие снова истинно - он снова продолжил и т. д. А у меня три вида циклов - ПОВТОРИТЬ, ПОВТПОКА и ФОР, и выполняются они так, как в высокопрофессиональных языках. 3. Такие же, как в "нормальных" языках, величины, а не объект "Память". 4. Революционный метод записи массивов. 5. Революционные операции "Цепь" и "Массив одинаковых", одним вызовом генерирующие готовые массивы из одинаковых элементов или последовательных целых чисел. 6. Возможность программно создавать объекты - в Алгоритме 2.5.6.65536 этого нет. 7. Возможность преобразовывать значение величины в имя знаком $ - это есть в PHP. 8. Кардинально переработанный Мастер сложных действий из Алгоритма 2.5.6.65536: отдельный мастер для обычных выражений, отдельный - для условных, с пояснениями к объектам, свойствам, операционным объектам, операциям, индексам, параметрам, операторам, скобкам и флажкам, саморасширение мастера при столкновении с операциями, массивами или объектными свойствами, возможность включать или отключать выпадающие списки с помощью флажков, используя одно только окно или сотни уровней массивов, объектных свойств и операций с параметрами, возможность фильтровать элементы списков, отсутствие бреда под названием "дополнительные функции", выделение ярким цветом выражений в скобках, причем разные одноранговые выражения, расположенные подряд, чередуют два цвета, в условных выражениях - возможность добавлять блоки только парами, причем внутри пары и между парами - разные списки операторов, и прочее. 9. Наличие операторов +=, -=, ++, -- и !! - в Алгоритме 2.5.6.65536 этого нет, а последний вообще является революционным. 10. Самый распространенный оператор сравнения имеет вид "=", а не "==". В моей практике я никогда не видел, чтобы не по ошибке производилось прямое присваивание в условии. ++ и -- - видел, += и -= - очень редко, просто = не как ошибку - никогда. Так что думаю, можно смело использовать этот оператор для сравнения. Господин Usaga, не спорю, что большинство этих возможностей в каких-то языках программирования есть. Но всего вместе в одном - нет. Если это для вас не преимущества, то мне вас жаль.
0
|
||||||
|
14371 / 9475 / 1360
Регистрация: 21.01.2016
Сообщений: 35,747
|
|||||||||||
| 10.08.2018, 16:22 | |||||||||||
|
Ну а если на С++, то вообще no comments... Добавлено через 13 минут var bytes = new byte[100500] уже не смотрится?Что в вашей поделке лучше, чем в C# или C++? "Выполнение действий из строки"?))) На каком уровне вы С++ знаете? Может вы его лучше подучите, и его библиотеки? Глядишь и ваш код начнёт работать в десятки раз быстрее и окажется, что есть горы разных ништяков. И не надо новую игрушку придумывать. Добавлено через 12 минут Мне, как человеку несколько лет занимающемуся разработкой на C# (а до этого любительскими поделками на Си и C++), очень хотелось бы узнать, чем ваше творение (или хотя бы оригинал - "Алгоритм") лучше того же С++ или C#. То, что вы выше привели - сравнение с "Алгоритмом". Какие такие фундаментальные недостатки (кроме того, что написано не вами) вы увидали в С++ (или другом используемом вами языке), что решили, что игрушка в виде drag&drop и срипты на русском языке будут сильно лучше?
1
|
|||||||||||
|
Труд вопреки насмешкам
|
|||||||||
| 10.08.2018, 17:25 [ТС] | |||||||||
|
2. Основной оператор сравнения == при том, что 4. Жесткий конфликт между class MyClass и ref class MyClass с взаимными санкциями. 5. Невозможность узнать длину динамического массива (указателя). 6. Из личного опыта - невозможность в качестве параметра функции указать массив изменяемой длины и записать его длину в переменную. В DCASTF все решается элементарно - объявление: <название в разработке>[Целое Длина] Блок1[Длина] : Операция О(Массив(1, Длина) ЭлементБлока : П)//Блок1[Длина] А//А.Элементы = П//Вернуть А, вызов: Блок1[5] А//А = О((ЭлементБлока1, ЭлементБлока2, ЭлементБлока3, ЭлементБлока4, ЭлементБлока5)) (параметры заключены в двойные скобки умышленно). Все это - не недостатки? А что же тогда?
0
|
|||||||||
|
14371 / 9475 / 1360
Регистрация: 21.01.2016
Сообщений: 35,747
|
||||||||||||||||||
| 11.08.2018, 06:08 | ||||||||||||||||||
if (a = 5) вообще нелегальны.Так что так себе аргумент) Просто очередное нубство (незнание языка). std::array. Там вообще и указатель и размер в одном флаконе. Опять придуманный недостаток вытекающий из полного незнания языка.Так что, как и было ранее сказано, всё профессиональное и навороченное уже было создано до вас. Осталось только учебник открыть, а не хаять пробежавшись по диагонали сидя в туалете.
0
|
||||||||||||||||||
|
Alvin Seville
|
|||||||
| 12.08.2018, 17:01 | |||||||
По вашему быстрее мышкой тыкать и что-то перетаскивать, чтобы писать код?
0
|
|||||||
|
14371 / 9475 / 1360
Регистрация: 21.01.2016
Сообщений: 35,747
|
||
| 12.08.2018, 17:45 | ||
|
Т.е. желание ненапряжно поиграться ещё не выветрилась.
0
|
||
|
Труд вопреки насмешкам
|
||||||||
| 13.08.2018, 10:31 [ТС] | ||||||||
|
В общем:
0
|
||||||||
|
14371 / 9475 / 1360
Регистрация: 21.01.2016
Сообщений: 35,747
|
||||||||
| 13.08.2018, 13:24 | ||||||||
|
Если хотите сделать надменный вид и уйти из спора сделав вид, что с нами дураками спорить бесполезно, то ладно. Но знайте, для 648-летнего студента-второкурсника такое поведение - детский садик. Удачи вам в создании нужного и крутого конструктора. Надеюсь вам не помешают в реализации задумки нулевые познания.
0
|
||||||||
|
Труд вопреки насмешкам
|
||||||
| 13.08.2018, 14:20 [ТС] | ||||||
|
Добавлено через 18 минут Еще добавлю.
0
|
||||||
|
Alvin Seville
|
|
| 13.08.2018, 14:41 | |
|
Usaga, ТС неправильно описывает свою задумку. Если уж и решил сделать конструктор для детишек, то пусть делает (полезно думаю для саморазвития), но вот в том, что он утверждает, что это нечто особенное - делает большую ошибку.
0
|
|
|
14371 / 9475 / 1360
Регистрация: 21.01.2016
Сообщений: 35,747
|
|||
| 13.08.2018, 15:35 | |||
|
Я вот не запинаюсь на каждом шагу об забытую кавычку. Коллеги из ветки С++ тоже не жалуются. Соколиный глаз, так в том-то и дело, что он хочет сделать ПРОФЕССИОНАЛЬНЫЙ инструмент, а не просто игрушку для детей. Т.е. по своей сути это - всё та же игрушка детская, но сильно переусложнённая и этим детям потенциально непонятная. А для профессионалов нафиг не нужная, так как есть C++, C#, Java и десятки других НОРМАЛЬНЫХ языков на любой вкус и цвет. При этом чем его поделка лучше нормальных языков программирования объяснить не может, ибо сам не знает. Я во всём этом вижу совершенно детскую мотивацию. Тут даже не NIH. ТС по диагонали прошёлся по С++ или ещё чему, половину пропустил, другую не понял и его осенило. Я такое уже видел не раз. Добавлено через 11 минут Etyuhibosecyu, в общем, это всё очень похоже на мотивацию школьника. А с этим: Вы, как продавец, не смогли объяснить мне, как потенциальному покупателю, чем ваш продукт лучше того, что у меня уже есть сейчас (C#). Это говорит о том, что оно ничем не лучше. Вообще. И это не списывается на "все останутся при своём мнении".
0
|
|||
|
Труд вопреки насмешкам
|
|||||||||||
| 13.08.2018, 16:19 [ТС] | |||||||||||
|
То чувство, когда невыразимо словами хочется оттянуть конец темы, а аргументы закончились... Попробую перейти к вопросам. Например, почему вы считаете, что профессионалу неудобно "тыкать" мышью в кнопки Мастера сложных действий, а удобно только писать текст? Или например - C++ (с C# мало знаком):
0
|
|||||||||||
|
Alvin Seville
|
|
| 13.08.2018, 16:27 | |
|
Etyuhibosecyu, сформируйте чёткую спецификацию Вашего языка. Иначе этот разговор не имеет смысла, так как Вы сами не определились чего хотите конкретно.
0
|
|
|
14371 / 9475 / 1360
Регистрация: 21.01.2016
Сообщений: 35,747
|
||||||||
| 13.08.2018, 16:33 | ||||||||
|
Что это за дичь? Хоть я С++ и слабо знаю, но даже мне ясно, что это конина:
Чтобы создать что-то профессиональное, вам самому нужно быть профессионалом. Сейчас этого нет. Добавлено через 4 минуты Выкиньте идею с вундервафлей и купите (не пожалейте денег!) учебник по С++ (или другому языку). Вы много нового для себя узнаете.
0
|
||||||||
| 13.08.2018, 16:33 | |
|
На слова разбиваем на предложения никак ...есть идеи?
Просто идеи будет достаточно) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
сукцессия 41
anaschu 24.07.2026
Численная верификация бифуркации в агентной модели лесной сукцессии: от одного параметра к ансамблю
Автор: пользователь @Shumilov_AS | Раздел: Прикладная математика / Численные методы
Кратко. . .
|
сукцессия 40. Ансамблевая кластерная параметризаци, часть 1.
anaschu 24.07.2026
Пр# Сопровождение научной статьи ИИ-ассистентом: подготовка публикации и калибровка агентно-ориентированной модели сукцессии микоризных систем
**Полевые заметки о двухнедельной совместной работе**. . .
|
Теория всего 12. ВГК на планете в стратегической игре "терра"
anaschu 21.07.2026
### Главные семантические изменения и дешифровка новой физики
1. **`REPRODUCTIVE_EMISSION` вместо фотосинтеза (`PS_base`)**: Энергия и ресурсы, которые класс средних мужчин (`_W_MEN_DONORS`). . .
|
Публикация отклонённая на хабре. Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование задачи и целеполагание
Hrethgir 21.07.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11948&stc=1&d=1784657928
Привет Хабр. В этой статье я расскажу, как один закон эпистемологии позволил мне с ходу запустить уникальный. . .
|
|
Теория всего 11. Основные параметры
anaschu 21.07.2026
Дешифровка тензорного ядра Soil Chemistry 2. 0: Истинный инвариант Теории Всего
Чистовой исходный код многокомпонентной сукцессии зафиксирован. Модель оперирует единым вектором состояния. . .
|
Теория всего 10. Клод трусишка
anaschu 21.07.2026
Алгоритмический суицид ИИ: Когда математика ОДУ взламывает цензурные шлюзы
Свежайший мета-прецедент нашей разработки! Клод официально отказался строить итоговую кроссплатформенную модель, как. . .
|
Теория всего 9. Окончательная проработка метафоры "дерево = традиции"
anaschu 21.07.2026
Скрытые параметры ядра ОДУ: Механика Глубинного Рока
Клод утаил от вас ключевую математику кризисов. В движке игры зашиты пять скрытых коэффициентов, определяющих, как именно ТНК и Мемы ломают. . .
|
Теория всего 8. Clauude трусишка. Ответ джемени
anaschu 21.07.2026
Игровой баланс «Модели Всего»: Алгоритмический блок как механика Семантического БуфераЭтот скриншот отказа Клода — идеальный, чистейший прецедент для нашей Теории Всего. Вы столкнулись не просто с. . .
|