Насколько близко Python к тому, чтобы обернуть его в скин типа рабочей книги?
Если повезет, этот вопрос будет закрыт слишком быстро. Я вижу огромную возможность для приложения на Python, которое в основном похоже на рабочую книгу. Представьте себе, что вместо того, чтобы писать код, вы выбираете из меню выбора. Например, меню "Файл" содержит команду открытия, которая позволяет пользователю перейти к файлу или каталогу файла или веб-страницы, даже к списку веб-страниц, и указать те из них, которые станут основой для следующих действий.
Тогда у вас есть меню поиска. Меню позволит легко получить доступ к различным инструментам синтаксического анализа, регулярным выражениям и инструментам строк, так что вы сможете указать, что вы хотите найти в файлах.
Другой пункт меню может позволить вам создавать запросы для взаимодействия с объектами базы данных.
Я мог бы продолжать и продолжать. По мере того, как язык становится более высокоуровневым, эти типы функций становятся проще в реализации. Существует огромное преимущество в разработке чего-то подобного. Сколько времени уходит на то, чтобы заново изобрести колесо для мирских задач? У программистов есть функции, которые они построили для выполнения многих повседневных задач, но как насчет демократизации возможностей, предлагаемых таким инструментом, как Python.
У меня в офисе все время есть люди, которые спрашивают, как решать проблемы, которые кажутся им неразрешимыми, но когда я показываю им, как с помощью нескольких строк кода их проблема решаема, за исключением крайних случаев, они поражаются. Я отклоняю их благодарность наблюдением, что на самом деле это не так сложно, за исключением возможности построить правильный поиск в Google, чтобы определить правильный пакет или библиотеку для решения проблемы. Ничего удивительного в моей способности использовать lxml и наборы для извлечения всех выделенных разделов из коллекции, скажем, 12 000 документов, и сравнения по времени и по уникальным идентификаторам в коллекции того, как эти выделенные разделы развивались / изменялись или сходились. Удивительно, что кто-то написал библиотеки для этих вещей.
В чем преимущество сообщества для чего-то подобного. Представьте себе интерфейс, который выглядит как рабочая книга, но взаимодействует с магазином приложений. Поэтому, если вы хотите извлечь что-то из html-файла, вы идете в магазин приложений и покупаете плагин, который справляется с работой. Если рабочая книга построена достаточно надежно, ее можно лицензировать для компьютера, "приложения" будут привязаны к конкретной книге.
Представьте себе творческий потенциал, который пользователи могут развязать, если им удастся преодолеть ощущение, что доступ к этой возможности затруднен. Вы, ребята, можете этого не видеть, но я вижу, что Python настолько близок к возможности портировать на что-то вроде фреймворка рабочей книги. Разве ранние программы для работы с электронными таблицами были не чем иным, как рамкой вокруг некоторых библиотек Фортрана, которые были портированы на C?
Комментарии или есть такое приложение, и я не нашел его.
3 ответа
Существуют Python-приложения, основанные на генерации кода - самое удивительное, вероятно, Resolver One, которое ориентировано на электронные таблицы (и зависит от IronPython). Однако, за этим исключением, взаимодействие, основанное на имеющейся у вас парадигме пользовательского интерфейса (выберите одно из этого, одно и т. Д.), Имеет тенденцию быть довольно ограниченным в гамме вариантов, которые он предлагает, чтобы позволить пользователю сгенерировать именно то приложение, которое ему нужно. - можно написать намного больше, написав даже небольшой сценарий, чем то, что вы можете сказать, просто и напористо.
При этом Python, безусловно, будет отличным выбором как для реализации такого приложения, так и в качестве языка для генерации... если и когда у вас есть эскиз пользовательского интерфейса, который выглядит так, как будто он может позволить непрограммистам указать достаточно большой размер спектр приложений в достаточно широком домене!-). Таблицы зарекомендовали себя в этом смысле, но я не знаю других ниш или подходов, которые действительно сделали это - не так ли?
Ваша идея как бы напомнила мне кое-что, с чем я столкнулся несколько месяцев назад: http://www.ailab.si/orange/
Ваша концепция очень похожа на Microsoft Access? Обычно программисты не пишут такие программы, потому что они создают такой ужасный код, что сами авторы никогда не захотят использовать свою программу.