Краткий FAQ по некоторым возможностям модулей и библиотеки, разработанный специально для PascalABC.NET (для C# версии - презентации). Цель: быстро ввести пользователя в курс дела.
Не было этого. Он просто хотел сделать себе красиво. Не вышло.
Новая тема для PascalABC.NET, сделанная похожей на тему Rider
(поскольку именно в данной IDE разрабатывается библиотека).
PascalABCNET.xshd (9.3 KB)
Краткий FAQ по некоторым возможностям модуля PABCSystem, разработанный специально для C#. @Admin, @ibond, @RAlex, @Sun_Serega, @Kotov, имеются предложения по дополнению FAQ? Я пока не решил, что включать в раздел Уровень: Сложный
. У вас есть идеи?
Выпуск NETSquirrel 0.0.13 [Night build] запланирован на сегодня.
NETSquirrel 0.0.13 [Night build] загружена в раздел Releases на GitHub.
- методы для чтения массивов, матриц и кортежей с возможностью задавать форматные строки делегатами
- улучшения в обработке ошибок
Пример к пункту 1:
{$reference NETSquirrel.dll}
uses NETSquirrel;
uses NETSquirrel.Utils;
uses GeneralExtensions;
begin
var prompts := ArrayOf('first', 'second', 'third', 'fourth', 'fifth');
TuplesUtils.ReadBoolTuple3((i: integer) -> $'{prompts[i]}:').PrintLine(); // compiler mistake
ArraysUtils.ReadBoolArray(5, (i: integer) -> $'{prompts[i]}:').PrintLine(); // compiler mistake
MatricesUtils.ReadBoolMatrix(5, 5, (i, j) -> $'{prompts[i]}, {prompts[j]}:').PrintAsMatrix();
end.
А зачем явно указывать тип i
в средних 2 примерах? Это только в данном примере или вообще обязательно? По моему того что переменная называется i
и используется в []
должно было бы быть понятно что это индекс и у него тип integer
.
Без указания типа не компилируется. Вы можете перепроверить у себя. Ошибка - некритическая, работать возможно, но, конечно, краткость кода уменьшает. И хотелось бы, раз библиотека нацелена на краткое выполнение операций, чтобы ничего лишнего писать не требовалось.
Это issue значит
@Sun_Serega, возможно, поможет установить причину проблемы, либо я этим займусь сам, когда освобожусь.
Добавлены расширения для System.Numerics
:
{$reference NETSquirrel.dll}
uses NumericsExtensions;
uses GeneralExtensions;
begin
var prompts := ArrayOf('first', 'second', 'third');
ReadVector3();
ReadMatrix3x2('Элемент {0}, {1}:');
ReadMatrix3x2((i, j) -> $'{prompts[i]}, {prompts[j]}:');
end.
Полагаю, будет справедливо указать кто именно и чем помог в разработке проекта, поскольку любое участье в нём приносит пользу. Пока данный раздел ещё недозаполнен.
В данный момент библиотека NETSquirrel 0.0.13 включает следующий функционал:
- интерфейсы коллекций (immutable их версии включены) для стандартизации кода
- прокси-типы для указания отладчикам Rider и Visual Studio формата отображения коллекций как обобщённых, так и необобщённых
- методы для чтения и генерации кортежей, массивов и матриц с возможностью обработки ошибок и указания форматных строк при вводе строкой, либо лямбда функцией
- расширения для модификации кортежей, массивов и матриц с возможностью игнорирования ошибочных входных данных (значения null), паттерн null-object
- типы делегатов
- срезы массивов и матриц
Добавлены два FAQ (C# версия и PascalABC.NET версия) по работе с базовыми типами.
Теперь учебные материалы по библиотеке и модулям будут составляться на основе Google Docs
. Это позволит пользователям без Microsoft Office
без проблем изучать их. Разумеется, существующие презентации не будут удалены с сайта. Они будут перемещены в архив.
А что не в PDF? Его уж точно все поддерживает, а гугловские документы привязаны к браузеру и его шрифтам.
Будет сделано.
Только не забудьте, что надо использовать “приличный” конвертер, оставляющий возможность простым копипастом добывать из PDF текст, а не лепящим тупые картинки. Например, если в Word от версии 2010 сохранить документ, как PDF и указать опцию “внедрять шрифты”, все будет расчудесно. Но неприемлемо для файлов, размером более 20-30 страниц, ибо он не умеет сжимать документы.
PDF сделан. Код копируется и вставляется успешно. Только, есть один недостаток при вставке - код вставляется в неотформатированном виде (к счастью, средства автоматического форматирования в IDE PascalABC.NET имеются). Пробовал напрямую загружать из Google Drive документы как Pdf, также использовал сторонние конверторы, результат один и тот же - код вставляется неотформатированный.
Также попробовал конвертировать в формат .docx, здесь - код вставляется в отформатированном виде.
Сделал Issue:
Следует, всё-таки, эту проблему решить.
А если для желающих дать возможность скачать PDF, как файл?