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

TGINSIGHT SIMILAR POSTS

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

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

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

Hashtags

Резултати

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

Търсене: #thread

当前筛选 #thread清除筛选
ALL About RSS

@AboutRss · Post #1220 · 16.06.2022 г., 01:00

聚合阅读平台 Matter Reader 宣告支持 RSS 官方 #Thread :https://twitter.com/getmatterapp/status/1537117989627080704 内含一个如何添加 RSS url 的指导视频。其作为阅读平台的理念是:若用户填入的 RSS Feed 是高频更新的话,其会提示信息过量导致阅读压力增加的风险,但仍交由用户选择。 官网: https://hq.getmatter.com/

Hashtags

``🖤 T H R E A D my fancasts on characters of the novel qqgk подбор фанкаста исключительно мое мнение, и оно может не совпадать с вашим🩷 тред представлен в комментариях:) просьба ничего не писать, пока тред не будет выложен полностью. #thread | #qqgk

Hashtags

ALL About RSS

@AboutRss · Post #1177 · 28.02.2022 г., 01:00

Typefully Profiles 让你用 Twitter Thread 写博客 #Typefully 是 Mailbrew 家的 #Twitter Thread 撰写工具,最近的更新发布了一个让用户利用 #Thread 写博客的功能,并为生成的 Post 配置了 RSS Feed。虽然感叹分久必合、合久必分,堪称 blog 到 microblog 再到 blog 的一个循环,但确实一举两得了,使之成为内容发布者的一个利器。 https://typefully.com/profile 经试用,一些 Tips : 🔸发布第一条 Post 即可激活你的 Profile : https://typefully.com/{你的 Twitter 名} 🔸过去的 Thread 也可以发布成 Post 🔸RSS Feed 是全文输出 🔸免费 🔸支持 #PWA 我的 Profile : https://typefully.com/aboutRSS 发现于 https://twitter.com/typefullyapp/status/1496434716873936897

djangoproject

@djangoproject · Post #298 · 17.04.2017 г., 07:42

#AI#Artificial_Intelligence #aiohttp #API #AWS #asyncio #audio #automated_testing #automation #atexit #BeeWare #button #client #concurrency #cron #Coroutine #data_analysis #data_mining #data_processing #database #Deep_Learning #Debian #decorator #dispatch #django #dropdownbox #Docker #event #Firefox #form #freeze #functool #Generator #GeoDjango #Google #GPU #Gym #learn #Image_processing #intelligence #input #IOT #lambda #lists #machine_learning #Magenta #map #Metaprogramming #Micro_services #mind #monitoring #MongoDB #Mozilla #Multipart #multi_touch_apps #multiprocessing #Nodes #NoSQL #numeric_computation #numerical #NumPy #OAuth #object_serialization #OCR #overloading #package #parallel #pipeline #protocols #PostGIS #pyAudioAnalysis #PyInstaller #PySide #PyTorch #pytest #python #Pyvideo_archives #Qt #Redis #random #request #REST #satellite #scrapy #scikit_learn #SciPy #searching #submit #selectbox #Selenium #serialization #server #session #socket #sound #task #TensorFlow #text_boxes #text #test #telegram #Thread #transport #tuples #Universe #Unix #urllib #upload #Web