Доброй новой недели всем вам.
Звучит прямо как "доброй охоты" :), но правильно отражает мои пожелания.
В прошлый раз я положился на название файла и книжка VC for dummies вышла с анонсом
C# for таких же. За это я был публично выдран и прошу прощения у всех кто скачал
неверную книжку...
Впредь буду внимательнее не только к размеру и названию, но и к содержимому каждой
книжки...
Сегодня мне приятно объявить, что разговор о 1С не прошел даром, и в связи с
полученной от вас поддержкой, и желанием двух человек у нас появился новый раздел.
Если кто хочет стать автором для него, как и для других разделов, милости просим,
а сегодня первая небольшая пробная статья, завтра будет другая, по 1С бухгалтерии.
Статья:
Использование псевдо-логических выражений во встроенном языке 1С
Автор: Ярослав AKA Kivals
Уже после недолгого знакомства с 1С:Языком становится очевидно, что логического
типа данных очень не хватает. Тем не менее многие встроенные функции возвращают
значения 0 и 1 - так почему не использовать их как логические? Сразу скажу -
от конструкций типа
Если (Результат=1) Тогда
...
КонецЕсли;
мы никуда не денемся, но вот посчитать этот самый результат при его зависимости
от многих внешних параметров мы сможем несколько элегантней, чем это предполагается
в 1С :-).
К тому же существуют некоторые функции, которые принимают в качестве параметра
именно эти значения (1 и 0), хотя по идее должны работать с логическими значениями.
Например, это методы Доступность, Видимость, Редактирование реквизитов форм.
Итак, определим, что же нам для этого нужно:
Значения типа: Истина(T) = 1, Ложь(F) = 0;
Операторы: И = _И(Зн1,Зн2); ИЛИ = _ИЛИ(Зн1,Зн2); НЕ = _НЕ(Зн);
Что из себя представляют функции _И, _ИЛИ, _НЕ? Все очень просто (приведены объявления
для глобального модуля):
Функция _И(Зн1, Зн2) Экспорт Возврат Мин(Зн1, Зн2); КонецФункции;
Функция _ИЛИ(Зн1, Зн2) Экспорт Возврат Макс(Зн1, Зн2); КонецФункции;
Функция _НЕ(Зн) Экспорт Возврат 1-Зн; КонецФункции;
Здесь нет утяжеляющих конструкцию и увеличивающих время выполнения проверок на
допустимость значений, т.е. предполагается аккуратная работа с функциями. Желающие
могут дописать эти проверки, ниже будет показано как это сделать.
Проверим таблицу истинности, например, для функции _И:
Полностью статья здесь: http://club.shelek.com/viewart.php?id=107
Всем настоятельно советую читать ее в оригинале - оформление сделанное автором,
гораздо лучше того, которое получается здесь и текст читается легче.
Кроме того открыт форум по 1С программированию здесь: http://shelek.com/forum/viewforum.php?f=37
Второй приятный анонс - это LogRus стал не просто автором сайта, но и взял на
себя раздел программирования под Linux. Раздел обрел своего автора и будет, не
только дополнять сайт, но и развиваться самостоятельно.
Форум к нему доступен здесь: http://shelek.com/forum/viewforum.php?f=11 пока
в рамках общего форума Unix, однако я уверен, что в ближайшее время форумы по
Unix, Linux, QNX и подобным системам выделятся в отдельный блок. Естественно
не без вашей помощи.
Для тех кто плохо знаком с сайтом - обратите внимание, что на главной странице
сайта нет раздела Linux пока, и это упущение сейчас мной прораьатывается, и главная
страница как и структура сайта будут видоизменены для улучшения доступности ко
всем разделам.
Пока здесь: http://club.shelek.com/view.php вы можете найти весь список наших
разделов и подразделов и выбрать любой или даже комплекс из их соответствий.
Статья:
Совместно используемые библиотеки в C под Linux для начинающих.
Автор: LogRus
Для начала напишем два файлика test.c и app.c
Листинг test.c
---------------------------------------------------
int f()
{
return 3;
}
---------------------------------------------------
Листинг app.c
--------------------------------------------------
int main()
{
return f();
}
--------------------------------------------------
Конечно можно всё сразу собрать и всё зарабоет. Но мы пойдем другим путём берём
компилируем test.c в test.o.
$ gcc -c -o test.o test.c
Опция -c значит скомпилировать не соберая. Теперь делаем из test.o библиотечку
статическую. Выполняем вот эту команду.
$ ar cr libtest.a test.o test1.o test2.o
Файлы test1.o и test2.o я вписал просто показать, что можно собрать некий архив
объектных файлов ("архив" это второе название статической библиотеки). Заметьте,
что у слова тест появился префикс lib и окончание поменяли с .o на .a . Команда
опции команды ar означают: c не ругатся если надо создать файл; r запихать в
архив файлы или заменить существующие.
Вся статья здесь: http://club.shelek.com/viewart.php?id=106
Ну и напоследок лакомый кусочек для любителей книг (проверенный) :)
2 мега книжка формата pdf Основы СОМ на русском языке с кодом к книге в архиве
zip
Качать отсюда: http://club.shelek.com/download.php?id=77
Надеюсь я вам подсластил горечь понедельника.
Желаю вам удачи и всего самого наилучшего.
С уважением, Гром.