TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #247 · 11.03

Попробовали на работе предметно-ориентированное проектирование (Domain Driven Design). Это такой способ построения архитектуры, когда ты (чаще всего с помощью системы типов и ООП) описываешь физическую суть вещей, которые представлены в твоей программе. Например, если в программе есть объект "Книга", то её нужно снабдить свойствами, которые бывают у книг в реальности: число страниц, автор, язык, тип обложки и т.д. При этом данные свойства должны быть такими, чтобы присвоить им нереалистичные значения было нельзя. Допустим, число страниц не может быть отрицательным (и скорее всего в реальном мире не может быть нулём). При попытке установить отрицательное число страниц программа должна выбросить исключение. А совсем в идеальном случае -- не дать этого сделать программисту на уровне статического анализа кода. Описав все свойства книги, вы снабжаете её операциями, которые над ней можно сделать. Например, из книги можно вырвать страницу, и при этом число страниц уменьшается. Нет такого случая, когда можно вырвать страницу без изменения числа страниц. Вы строго программируете эту зависимость, делаете у книги метод "Вырвать страницу", а он уже уменьшает число. Кстати, свойство "Число страниц" при этом нельзя переназначить в уже созданной книге. Можно только создать книгу, передав в её конструктор (так называется в программировании функция создания объектов) заданное число страниц. Но поменять число страниц можно только специальными методами "Вырвать страницу" и "Вклеить страницу". С помощью этого подхода вы гарантируете, что ваши объекты всегда находятся в валидном состоянии -- то есть таком, которое возможно в реальной жизни с объектом, представленным программой. Плюсы подхода очевидны: меньше число ошибок. Код описывает сам себя, и программист, если не лезет внутрь объекта "Книга", вообще не сможет сделать с книгой ничего недопустимого. Минусы, думаю, тоже понятны: изначально проектировать сложнее, нужно учесть много нюансов, писать тесты. Время разработки изрядно растёт. Изменение требований даётся дороже: например, если каким-то образом в ваш книжный магазин поступят книги со страницами из кевлара, которые невозможно вырвать :) Но первый проект с этим подходом мы сдали хорошо, без багов. Лучше, чем многие предыдущие. #dev

Hashtags

Резултати

Намерени 216 подобни публикации

Търсене: #aosp

当前筛选 #aosp清除筛选
Android Broadcast

@android_broadcast · Post #8961 · 15.04.2025 г., 06:40

Интересная статья(16м) про GrapheneOS - основанная на AOSP ОC для Google Pixel устройств с повышенной защитой Если хотите мой обзор на GrapheneOS - голосуйте тут #android#aosp

Android Broadcast

@android_broadcast · Post #8851 · 26.03.2025 г., 15:53

🤖Google вводит разработку нового функционала в AOSP через Feature Flag Теперь весь новый функционал будет закрываться Feature Flag для изоляции кода, прошедшего тестирование, от частей в разработке. Это позволит: 👉 сократить срок жизни веток с новым функционалом 👉 упростить и ускорить разработку задач 👉 перейти на trunk-based подход при разработке и сливать весь код в одну ветку, не дожидаясь его тестирования 👉 легко вырезать куски кода с функциями, которые не должны быть видны Новому подходу должны следовать все разработчики-контрибьюторы в AOSP. #android#aosp

Android Broadcast

@android_broadcast · Post #8850 · 26.03.2025 г., 15:43

‼️Исходный код Android будет частично закрыт в ближайшем будущем Google подтвердила изданию Android Authority, что в ближайшем будущем перестанет публиковать код исходных версий Android по причине "упрощения разработки Android ОС и отказа от поддержания 2 веток разработки". Разработка Android состоит из 2 основных веток: 👉 публичной, где содержится исходный код стабильной версии ОС 👉 внутренней (internal), где происходит разработка Android ОС. Поддержка 2 веток приводит к конфликтам слияния, необходимости тратить время на доработки, чтобы опубликовать изменения в публичную ветку, потому что она не содержит всё из internal. Google всё также будет публиковать исходный код, но многие части будут переходить в закрытую разработку. Также публикация кода станет реже. Как это повлияет: ❌ Изменения не ускорят обновление ОС 👉 Журналисты потеряют доступ к утечкам информации 👉 Пользователи не заметят изменений 🙏 Разработчики приложений не пострадают Прекрасно понимаю Google, как сложно поддерживать 2 разные ветки разработки, особенно с ростом проекта и его функциональности. Все во благо процветания бизнеса Android и его лучшего развития! Официальный анонс состоится в ближайшую неделю. Скорее всего, Android перейдет на Trunk Based разработку в internal ветке, потому что есть следующая новость... #android#aosp#googleplay

YuKongA | Channel

@YuKongA13579 · Post #1956 · 15.03.2026 г., 08:43

一个适用于类原生的 Xposed 模块, 修改点击和拿起事件为仅触发息屏显示,不触发完整亮屏, 适用于不想常开息屏显示又只想看一眼息屏时间、通知的情况? 相关实现,部分类原生内置此功能。 对大部分人没什么用,不过写都写了就发一下。 #aosp#xposed#misc

YuKongA | Channel

@YuKongA13579 · Post #863 · 17.06.2024 г., 02:53

关于小米 14 TWRP 颜色异常问题: https://github.com/AOSPA/android_bootable_recovery/commit/cc89e956c088ef279a3a3192e689a86175be0f31 然后启用: vendor.display.enable_spr=1 注意:由于 TWRP 的 drm 代码完全过时,所以你不能随便合并此 commit,需要一些努力。 #Xiaomi14#TWRP#AOSP

Libreware

@libreware · Post #1211 · 06.12.2023 г., 22:27

Fully Customizable ROM + Latest Treble Patches & Features #GSI#AOSP 14 https://xdaforums.com/t/gsi-aosp-14-fully-customizable-rom-latest-treble-patches-features.4637632/ https://github.com/tabletseeker/treble_build_aosp

Hashtags

123•••10•••1718
ПредишнаСтр. 1 от 18Следваща