【9-2:代碼規范】

算法級思想

  • 代碼規范(java)

代碼規范(java)

  1. 方法參數必須一致,不要出現自動裝箱拆箱操作
  2. SimpleDateFormat是線程不安全的
  3. 使用equals注意空指針
  4. 異常日志
    • 事務場景中如果出現異常被捕時注意回滾
    • 不要再finally中使用return方法
    • 應用中不可直接使用日志系統:log4j
  5. 單元測試
  • 好的單元測試必須遵守 AIR 原則
    • 單元測試在線上運行時,感覺像空氣(AIR)一樣并不但在測試質量的保障上,卻是非常關鍵的,好的特點。
    • 單元測試宏觀上來說,具有自動化、獨立性、可重復執行
  • 單元測試應該是全自動執行的,并且非交互式的
    • 輸出結果需要人工檢查的測試不是一個好的單元測試。
    • 單元測試中不準使用 system.out來進行人肉驗證,必須使用 assert 來驗證。
  • 單元測試是可重復執行的,不能受外界影響
  1. 數據隱私信息應該做脫敏處理
  2. 用戶請求傳入的任何參數都必須做有效性驗證
    • page size 過大導致內存溢出
    • 惡意 order by 導致數據庫慢查詢
    • 緩存擊穿
    • 服務器端請求偽造(SSRF)
    • 任意重定向SQL注入,shel注入,反序列化注入·正則輸入源串拒絕服務 ReDoS

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/42983.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/42983.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/42983.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

字節碼編程javassist之增加異常捕獲

寫在前面 本文看下如何增加try catch異常捕獲。 1:程序 需要增強的類: public class ApiTest1 {public Integer strToInt(String str01, String str02) {return Integer.parseInt(str01);}}插樁類 package com.dahuyou.javassist.huohuo.aa;import …

音頻demo:使用faad2將AAC數據解碼出PCM數據

1、README 前言 本demo是使用的開源項目faad2將aac數據解碼成pcm數據。 a. 編譯使用 faad2的編譯:(faad2下載地址:https://sourceforge.net/projects/faac/files/faad2-src/faad2-2.8.0/) tar xzf faad2-2.8.8.tar.gz cd faad2-2.8.8/ ./configure …

【數據結構】單鏈表:數據結構中的舞者,穿梭于理論與實踐的舞池

歡迎來到白劉的領域 Miracle_86.-CSDN博客 系列專欄 數據結構與算法 先贊后看,已成習慣 創作不易,多多支持! 一、鏈表的概念和結構 1.1 鏈表的概念 在上一篇文章中,我們了解了線性表(linear list),并且學習了其…

Spring——IOC創建對象方式

可參考官網:https://docs.spring.io/spring-framework/reference/core/beans/dependencies/factory-collaborators.htmlhttps://docs.spring.io/spring-framework/reference/core/beans/dependencies/factory-collaborators.html 1. 使用無參構造創建對象&#xff0…

數據庫性能優化系統設計

設計一個數據庫性能優化系統,目標是監測、診斷并改善數據庫的運行效率,確保系統能夠高效穩定地處理大量數據請求。以下是一個概要設計,包括關鍵模塊、功能和實現思路: 1. 系統架構 分布式監控中心:采用分布式架構收集…

C++ STL 協程(Coroutines)

一:什么是協程(Coroutines): 協程是輕量級線程,可以暫停和恢復執行,協程擁有自己的暫停點狀態,協程暫停時,將當前狀態保存起來,在恢復執行時會恢復之前保存的狀態。 二:例子: #include <coroutine> #include <iostream>void doTheWork() {std::cout <…

PHP寶藏神器多功能投票系統源碼小程序

&#x1f389;發現寶藏神器&#xff01;一鍵解鎖“多功能投票小程序”的無限可能? &#x1f308; 開篇安利&#xff1a;告別繁瑣&#xff0c;擁抱高效&#xff01; Hey小伙伴們&#xff0c;是不是經常為組織活動、收集意見而頭疼不已&#xff1f;&#x1f92f; 今天就要給大…

【理解STL】

目錄 一、STL的概念1、STL的定義2、STL的組成 二、容器1、容器的定義及作用2、string類&#xff08;非容器&#xff09;3、vector容器4、set容器5、queue容器6、priority_queue容器7、stack容器8、deque容器9、map容器10、pair容器11、bitset容器12、map和set的區別13、vector和…

Node 中基于 Koa 框架的 Web 服務搭建實戰

前言 在《Node之Web服務 - 掘金 (juejin.cn)》一文中,我們使用 HTTP 模塊構建了后端接口,從而實現了后端服務的開發。可以對此進行進一步優化 http模塊代碼回顧 const http require("http");const server http.createServer((req, res) > {if (reqUrl.pathna…

Python前沿技術:機器學習與人工智能

Python前沿技術&#xff1a;機器學習與人工智能 一、引言 隨著科技的飛速發展&#xff0c;機器學習和人工智能&#xff08;AI&#xff09;已經成為了計算機科學領域的熱門話題。Python作為一門易學易用且功能強大的編程語言&#xff0c;已經成為了這兩個領域的首選語言之一。本…

【零基礎】學JS

喝下這碗雞湯 “知識就是力量。” - 弗朗西斯培根 1.三元運算符 目標:能利用三元運算符執行滿足條件的語句 使用場景:其實是比if雙分支更簡單的寫法&#xff0c;可以使用三元表達式 語法&#xff1a;條件 ? 滿足條件的執行代碼 : 不滿足條件執行的代碼 接下來用一個小案例來展…

C#實現求解函數導數和值

using MathNet.Symbolics; using System; using System.IO; using System.Text;private string ConvertToLatex(string mathExpression) {return mathExpression.Replace(" * ", "").Replace("*", ""); }// 將函數定義為字符串 string…

AI語言處理的雙刃劍:Tokens令牌化技術解析

生成式人工智能模型&#xff0c;如GPT-4o&#xff0c;采用基于Transformer架構的復雜處理方式&#xff0c;這與人類處理文本的方式存在明顯差異。這些模型依賴于一種稱為“令牌化”的過程&#xff0c;將文本分解為更小的片段&#xff0c;稱為“令牌”&#xff0c;以便更有效地處…

Kafka拋棄Zookeeper后如何啟動?

Kafaka如何下載 官網地址 目前Kafka最新的版本就是3.7.1 我們可以看到下面這兩個版本信息&#xff1f;什么意思呢&#xff1f; Scala 2.12 - kafka_2.12-3.7.1.tgz (asc, sha512)Scala 2.13 - kafka_2.13-3.7.1.tgz (asc, sha512) 我們應該知道&#xff0c;一個完整的Kafka實…

平安消保在行動 | 守護每一個舒心笑容 不負每一場雙向奔赴

“要時刻記得以消費者為中心&#xff0c;把他們當做自己的朋友&#xff0c;站在他們的角度去思考才能更好地解決問題。” 談及如何成為一名合格的消費者權益維護工作人員&#xff0c;平安養老險深圳分公司負責咨訴工作的龐宏霄認為&#xff0c;除了要具備扎實的專業技能和溝通…

MySQL篇四:表的約束

文章目錄 前言1. 空屬性2. 默認值3. 列描述4. zerofill5. 主鍵6. 自增長7. 唯一鍵8. 外鍵 前言 真正約束字段的是數據類型&#xff0c;但是數據類型約束很單一&#xff0c;需要有一些額外的約束&#xff0c;更好的保證數據的合法性&#xff0c;從業務邏輯角度保證數據的正確性。…

JAVA學習筆記-JAVA基礎語法-DAY24-Stream流、方法引用

第一章 Stream流 說到Stream便容易想到I/O Stream&#xff0c;而實際上&#xff0c;誰規定“流”就一定是“IO流”呢&#xff1f;在Java 8中&#xff0c;得益于Lambda所帶來的函數式編程&#xff0c;引入了一個全新的Stream概念&#xff0c;用于解決已有集合類庫既有的弊端。 …

python 高級技巧 0708

python 33個高級用法技巧 使用裝飾器計時函數 裝飾器是一種允許在一個函數或方法調用前后運行額外代碼的結構。 import timedef timer(func):"""裝飾器函數&#xff0c;用于計算函數執行時間并打印。參數:func (function): 被裝飾的函數返回:function: 包裝后…

軟件架構之開發方法

軟件架構之開發方法 第6章&#xff1a;開發方法6.1 軟件生命周期6.2 軟件開發模型6.2.1 瀑布模型6.2.2 演化模型6.2.3 螺旋模型6.2.4 增量模型6.2.5 構件組裝模型 6.3 統一過程6.4 敏捷方法6.4.1 極限編程6.4.2 特征驅動開發6.4.3 Scrum6.4.4 水晶方法6.4.5 其他敏捷方法 6.5 軟…

vmware lun回收引起的IO問題

起初并沒人關注的小問題,正常不過的虛機存儲遷移操作,引起的延遲卻引發一連串的變化。 環境 vsphere 6.7 + 華為集中式存儲 開始 下午5:17 業務反饋,存在數據超時,頻繁在1秒鐘以內,正常在200ms。需運維排查虛機的狀態與IO情況等硬件使用情況。下午5:30 隨手翻開zabbix 打開…