Кажется, что необходимо пройти таблица sqlite_master , как это:
SELECT * FROM dbname.sqlite_master WHERE type='table';
И затем вручную проходят каждую таблицу с SELECT
или подобный для рассмотрения строк.
.DUMP
и .SCHEMA
команды, кажется, не видит базу данных вообще.
Мощный инструмент абсракции, Макросы Lisp . Почему бы не заглянуть в прошлое и настоящее? :)
Некоторые области, которые я считаю потенциально плодотворными:
Преднамеренное программирование или что-то подобное. Компания Чарльза Симони Intentional Software некоторое время хранила молчание, но теперь начинает демонстрировать некоторые многообещающие ранние демонстрации.
Функциональное программирование : идеи функционального программирования все чаще находят свое воплощение основные языки, такие как Python, C # (Linq, лямбды и т. д.) и даже C ++ (лямбды в C ++ 0x). F # становится первоклассным языком .NET с полной поддержкой в Visual Studio. Рост многоядерной разработки - еще один фактор, способствующий более широкому внедрению функциональных концепций.
Domain Specific Languages (DSL): тесно связаны с идеями, лежащими в основе преднамеренного программирования, Microsoft, похоже, прилагает некоторые усилия для поддержки DSL как части экосистемы .NET.
Гораздо более сложные IDE. Уже есть некоторые положительные изменения в инструментах рефакторинга в IDE, таких как Visual Studio и IntelliJ, но я думаю, что в этой области есть много возможностей для прогресса. Переход от глупых текстовых исходных файлов к чему-то более похожему на представление абстрактного синтаксического дерева может значительно упростить работу на более высоком уровне абстракции. Опять же, это связано со многими идеями, лежащими в основе преднамеренного программирования.
Они могут использовать саморазоблачительную семантику, чтобы лучше разрешить метапрограммирование среды / языка, представленного как интерфейс конечного пользователя. Семантика изменяемого языка.
За счет встроенного средства обнаружения глупых идей, которые, когда они срабатывают, блокируют разработчика из среды IDE и не позволяют ему кодировать когда-либо снова.
ООП довольно хорошо упрощает абстракцию. Это разработчики приходят с плохо сформулированными идеями.
Доказательства кода Эйфеля . (предупреждение: ссылка на PDF!)
Убедитесь, что вы делаете это по уважительной причине: простая функция, подобная приведенной ниже, допускает статическую типизацию и позволяет вашей среде IDE делать такие вещи, как «Найти ссылки» и «Рефакторинг -> Переименование». -2510538-
Давайте посмотрим, как насчет того, чтобы сделать абстракцию обязательной для каждого типа данных, а затем предоставить способы обобщения наших абстракций по параметрам типа? Подождите! Я только что заново изобрел CLU . Получу ли я премию Тьюринга?
Любой, кто интересуется ролью абстракции в программировании, должен изучить CLU .
Функциональное программирование, аспектно-ориентированное программирование, дизайн по контракту и вообще все, что уводит нас от темный век императивного программирования.
Кроме того, я надеюсь, что разработка неуправляемого программного обеспечения перестанет существовать. С ++ и другие мелочи низкого уровня меня огорчают. : - (
Мне нравится мой LINQ, мой лямбда-оператор, мои методы расширения и мои удобные интерфейсы. О, и я люблю PostSharp.NET. И F #, но я думаю, очень сложно НЕ любить F #.: -)