The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Выпуск языка программирования Rust 1.64, opennews (??), 23-Сен-22, (0) [смотреть все] +1

Сообщения [Сортировка по времени | RSS]


125. "Выпуск языка программирования Rust 1.64"  –1 +/
Сообщение от Аноним (-), 23-Сен-22, 22:09 

os::unix::process::CommandExt::process_group
os::windows::fs::FileTypeExt::is_symlink_dir
os::windows::fs::FileTypeExt::is_symlink_file

Агаблин, вот вам и стдлибы для блага портабельного кода...
Ответить | Правка | Наверх | Cообщить модератору

126. "Выпуск языка программирования Rust 1.64"  +1 +/
Сообщение от Анонн (?), 23-Сен-22, 22:25 
Ну а как ты предлагаешь писать платформозависивый код?
Городить #ifdef __linux__ #elif _WIN32 везде? Или оформить это в виде отдельного модуля?
Что удобнее? Потому что платформозависимость никуда не денется.
Ответить | Правка | Наверх | Cообщить модератору

146. "Выпуск языка программирования Rust 1.64"  +/
Сообщение от _kp (ok), 24-Сен-22, 10:56 
Если изначально предполагается писать под разные платформы, то очевидно что б не загаживать исходники #ifdef'ами, не вызывать напрямую, функции ОС, которых нет в другой, или работающие иначе.

Я пишу в основном встраиваемое ПО, под самые разные микроконтроллеры.
Но обычно пишу сперва кроссплатформенное ПО на десктопе, тестирую, и потом просто запускаю на контроллере, еще тестирую, и готово.

Использую модули реализующие какой то класс операций под платформу в отдельных модулях. Что заворачивается в функции, а что то реализуется h файлами.
Для запуска ПО на каком нибудь очередном китайском контроллере, приходится не каджое ПО перелопачивать, а портировать только библиотеки, или наклепать оберток, над тем, что уже есть.

Идея заимствована.. с Ардуино.
Там же практически не требуются #ifdef под каждую платформу, которых уже никто не знает сколько.

Ответить | Правка | Наверх | Cообщить модератору

182. "Выпуск языка программирования Rust 1.64"  +/
Сообщение от Аноним (-), 25-Сен-22, 17:37 
> Ну а как ты предлагаешь писать платформозависивый код?
> Городить #ifdef __linux__ #elif _WIN32 везде? Или оформить это в виде отдельного
> модуля?
> Что удобнее? Потому что платформозависимость никуда не денется.

И как на *nix сработает конструкция вида os::windows::fs::FileTypeExt::is_symlink_dir интересно, ежели без условной сборки то? Где оно имплементацию то возьмет?

Ответить | Правка | К родителю #126 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру