@fosspost · Post #590 · 23.12.2020 г., 10:39
Xfce 4.16 released, finally with fractional scaling: https://xfce.org/about/news/?post=1608595200 #Xfce
Hashtags
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #721 · 26.12
Почему я люблю языки с сильной системой типов, проверяемой статическим анализом кода — хорошо написанная программа является своей собственной спецификацией и позволяет выражать через язык программирования законы существования предметной области. Когда-то давно я писал на ActionScript. Там была система типов, но вот десериализация JSON'ов по-умолчанию была в какой-то общий Object, к полям которого нужно было обращаться ["по_строковому_имени"]. В один момент мне потребовалось написать что-то на C#, который я совсем не знал, я стал гуглить, как десериализовать JSON, и с удивлением обнаружил кучу советов заранее объявить класс со всеми нужными полями и десериализовать в него. "Какой ужас!", — подумал я тогда, — "Это же дико неудобно! А если я не знаю полей JSON? А если их много? Отвратительный язык!" Теперь то я прекрасно понимаю, что JSON это контракт, и что правильная десериализация только такая и должна быть, и что в хорошем API в одном поле никогда не бывает данных принципиально разных типов, и так далее. Нет, если вы набиваете вечерами пет-проект или сидите бессонную ночь на хакатоне, нет ничего плохого в том, чтобы взять простой язык с динамическими типами вроде JavaScript или Python, не требующий описывать данные. Но вот в энтерпрайзе, особенно когда над одним проектом работает много людей (а бывает это очень часто) — хорошее использование системы типов убережёт разработчиков от огромного количества ошибок, будет бить их по рукам, когда они пытаются сделать что-то не то, и будет подсказывать, когда они не уверены в чём-то. С помощью статической типизации можно на уровне кода обозначить правила, по которым ведёт себя предметная область вашей программы в реальном мире. Разработчику не только будет сложно их нарушить, но он ещё и станет узнавать какие-то вещи, которые мог не знать раньше. Например, если мы делаем медицинскую CRM, и больница заводит новых пациентов только тогда, когда знает их группу крови, мы можем объявить тип "Пациент" (или, если точнее, "Карта пациента") и запретить создавать экземпляры этого типа, не передав в конструктор группу крови (которая, в свою очередь, тоже является типом, вероятнее всего ValueObject'ом). Если новый программист пришёл в проект, он, во-первых, не сможет записать в БД некорректную карту пациента. Понятно, мы не учитываем случаи, когда новый программист переделывает модели предметной области — это будет хорошо видно на кодревью. А, во-вторых, даже если ему никто не сказал, что пациенты должны быть с группой крови, он узнает это из кода. И уже будет понимать, что в тех процессах реальной жизни, которые он описывает кодом, карта пациента создаётся только при наличии группы крови. А, значит, нужно искать какой-то способ сначала эту группу крови получить, и только потом создавать карту. Программирование моделирует реальный процесс. В настоящей работе даже на языках с типами, конечно, без должного контроля можно написать что угодно. Нужна управленческая воля, компетентность руководства, понимание опасности техдолга, в идеале отдельные должности для архитекторов, опытные лиды и старшие разработчики. Но когда всё это есть, можно отсекать много проблем ещё на старте и проще погружать новичков. #dev
Hashtags
Търсене: #xfce
@fosspost · Post #590 · 23.12.2020 г., 10:39
Xfce 4.16 released, finally with fractional scaling: https://xfce.org/about/news/?post=1608595200 #Xfce
Hashtags
@Nomad01290 · Post #4099 · 19.06.2023 г., 16:22
#wallpaper#xfce#ubuntu
Hashtags
@aigcrubbish · Post #157 · 27.01.2026 г., 14:39
Xfwl4: the roadmap for a Xfce Wayland compositor Xfce 团队宣布将资助 Brian Tarricone 开发 xfwl4,这是 Xfce 的 Wayland 合成器。 xfwl4 不会基于现有的 xfwm4 代码,而是将使用 Rust 语言和 Smithay 构建块从头开始编写。 此前,团队曾尝试修改 xfwm4 代码以同时支持 X11 和 Wayland,但发现此路不通,主要原因包括: * xfwm4 的架构难以将窗口管理行为抽象为不包含 X11 特定细节的通用接口。 * 重构 xfwm4 有风险,可能给 X11 引入新 Bug。两个独立的代码库能让 Wayland 合成器快速开发和实验,且完全不影响 xfwm4。 * 一些 X11 的窗口管理概念目前无法通过 Wayland 协议实现或支持,在 X11 优先的代码库中处理这些差异很困难。 * 沿用现有代码库将强制使用 C 语言和 wlroots,即使有更好的替代方案。 该项目开发工作已启动,目标是在 2026 年中发布开发预览版。 原文链接:https://lwn.net/Articles/1056159/ #Linux#Xfce#Wayland#开源开发 #AIGC Read more
@githubtrending · Post #15087 · 23.08.2025 г., 12:00
#shell#cassowary#docker#freerdp#gnome#hacktoberfest#integration#kde#libvirt#linux#linux_app#nautilus#nix_flake#podman#qemu#qemu_kvm#seamless#winapps#windows#wine#xfce You can run Windows applications like Microsoft Office and Adobe Creative Cloud directly on your Linux desktop (KDE, GNOME, or XFCE) as if they were native apps using WinApps. It works by running Windows inside a virtual machine (using Docker, Podman, or libvirt) and then showing Windows apps seamlessly on Linux with FreeRDP. Your Linux home folder is accessible in Windows, and you can right-click files in Linux to open them with Windows apps. This lets you use all Windows programs without leaving Linux, improving productivity and convenience without needing dual boot or separate hardware. https://github.com/winapps-org/winapps