本文主要介紹了在使用Python面向對象編程時,如何實現組合關系,同時對比了組合關系和繼承關系的優缺點,并講解了如何通過csv模塊來保存Python接收/生成的數據。 ...
本文介紹了在 AWS 無服務器架構上實現 RESTful API 的過程。它詳細概述了架構、數據流和可使用的 AWS 服務。本文還介紹了無服務器架構與傳統方法相比的優勢。什么是無服務器架構? 無服務器架構,又稱無服務器計算或功能即服務,是一種軟件設計方法,允許開發人員在不管理底層基礎設施的情況下構建 ...
定義 適配器模式是一種結構型設計模式,它允許將一個類的接口轉換為客戶端希望的另一個接口。適配器使得原本由于接口不兼容而不能一起工作的類可以協同工作。通過創建適配器類,可以將現有類的接口轉換成目標接口,從而使這些類能夠在一起工作。 為什么使用適配器模式 兼容性 適配器模式能夠解決由于接口不兼容而無法直 ...
定義 抽象工廠模式是一種創建型設計模式,它提供一個接口,用于創建一系列相關或依賴的對象,而無需指定它們的具體類。抽象工廠模式將對象的創建過程抽象化,允許子類通過實現具體工廠類來定制對象的創建。 為什么使用抽象工廠模式 產品族的一致性 抽象工廠模式確保同一產品族中的對象之間的一致性。 部分遵循開閉原則 ...
定義 代理模式(Proxy Pattern)是軟件工程中的一種設計模式,它屬于結構型模式,用于在不直接訪問實際對象的情況下,通過一個或多個代理對象來間接訪問某個對象或執行某些操作。 目的 這種模式的主要目的是: 控制訪問:代理可以在訪問真實對象之前或之后添加額外的操作,如權限檢查、延遲初始化、日志記 ...
最近時間稍微空閑,整理下云屏整機設備的OTA流程及方案,適用設備內置的升級場景。之前開發時有過定義/設計,這里稍微整理總結下 整機軟件有很多模塊,系統及外設固件、Windows服務、Windows應用,比如系統點屏9969、攝像頭固件、觸摸框固件、顯卡驅動、Windows一些自研服務(用于通信以及系 ...
定義 工廠方法模式是一種創建型設計模式,它定義了一個用于創建對象的接口,但由子類來決定實例化哪一個類。工廠方法使得類的實例化延遲到子類,這樣可以讓客戶端在不需要知道具體類的情況下創建對象。工廠方法模式通過使用繼承和多態性,允許子類來控制對象的創建方式,能夠更好地應對對象創建的復雜性和變化性。 為什么 ...
本文主要介紹了Python中創建自定義類時如何使用多重繼承、菱形繼承的概念和易錯點,同時講解了如何使用PyQtGraph庫對串口接收的數據進行繪圖。 ...
定義 簡單工廠模式(Simple Factory Pattern)是一種創建型設計模式,它定義一個用于創建對象的接口,但由一個單獨的類來實現實際創建的工作。簡單工廠模式通過在一個類中集中管理對象的創建過程,可以減少客戶端與具體類之間的耦合,使得代碼結構更加清晰和易于維護。通過專門定義一個類來負責創建 ...
需求場景 按著慣例,還是以一個應用場景作為代理模式的切入點。現在有一個訂單系統,要求是:一旦訂單被創建,只有訂單的創建人才可以修改訂單中的數據,其他人則不能修改。 基本實現思路 按著最直白的思路,就是查詢數據庫中訂單的創建人和當前Session中的登錄賬號ID是否一致。 class Order { ...
本專欄一共包含6個專題,每個專題都涵蓋了實際業務中常見的性能優化需求: 專題一:服務器硬件與基礎設施優化 硬件升級與選擇:討論不同服務器硬件(CPU、內存、磁盤等)的選擇及其對性能的影響。 負載均衡:介紹負載均衡的基本原理、常見方案(如Nginx、HAProxy),以及如何配置和優化。 網絡優化:講 ...
定義 裝飾模式(Decorator Pattern),又稱為包裝模式,是一種結構型設計模式。它允許在不改變現有對象結構的情況下,動態地添加新的功能。通過將每個功能封裝在單獨的裝飾器類中,并且這些裝飾器類通過引用原始對象來實現功能的組合,從而提供了靈活性和可擴展性的優勢。裝飾模式避免了通過繼承方式增加 ...
沒想到自己的小破站也逃不掉被攻擊的命,分分鐘就給我刷欠費了。 本來不想寫這篇文章的,但看到好多大佬(小林coding、 JavaGuide)近期cdn都被盜刷了。 還是來提醒下大家,防火防盜防cdn流量盜刷 事故時間:2024年7月5日晚8點左右 事故現場:好不容易到了周五,想著第二天就周末了,和朋 ...
本文主要介紹了日志的定義和作用,以及 Python 內置日志處理的 logging 模塊,同時簡單說明了日志等級和 logging 模塊的簡易使用方法。 ...
本節課,我們主要講解了在Python類的繼承中子類如何進行初始化、調用父類的屬性和方法,同時講解了模擬串口傳感器和主機類的具體實現,并使用xcom串口助手與兩個類進行串口通信使用。 ...
Maven簡介 Maven的本質是一個項目管理工具,將項目開發和管理過程抽象成一個項目對象模型(POM:Project Object Model) 這玩意兒是使用Java開發的,所以采用的就是Java的思想:面向對象 Maven的作用: 項目構建:提供標準的、跨平臺的自動化項目構建方式 依賴管理:方 ...
首先,Raft 集群必須存在一個主節點(leader),我們作為客戶端向集群發起的所有操作都必須經由主節點處理。所以 Raft 核心算法中的第一部分就是選主(Leader election)——沒有主節點集群就無法工作,先票選出一個主節點,再考慮其它事情。 其次,主節點需要承載什么工作呢?它會負責... ...
生成全局唯一 ID 全局唯一 ID 需要滿足以下要求: 唯一性:在分布式環境中,要全局唯一 高可用:在高并發情況下保證可用性 高性能:在高并發情況下生成 ID 的速度必須要快,不能花費太長時間 遞增性:要確保整體遞增的,以便于數據庫創建索引 安全性:ID 的規律性不能太明顯,以免信息泄露 從上面的要 ...
本文我們主要介紹了數據封裝的基本概念和特性,如何設置自定義類的私有屬性和私有方法,protect屬性的概念和特點。 ...
本文我們主要講解了如何為自定義類添加方法,pyseria 庫的基本使用(串口數據收發、serial.Serial 類的屬性和方法),VSPDPro 虛擬串口軟件使用方法等,并使用自定義的串口類和 PC 主機進行串口數據收發。 ...