Re: [討論] 寫三元判斷式code review被打槍
Code review 檢查這些會有點太花時間,應該有更重要的東西要看。
可以用一些 Gradle plugins 卡在 CI 比較省事:
1. Checkstyle
顧名思義檢查 style。
2. SpotBugs
FindBugs 的繼任,這個超老牌了。
3. PMD
有超多 rule 可以用,比方說限制 code 裡面不能有 System.out/err。
4. Errorprone
檢查一些潛在錯誤,像 String split 跟你想的其實不一樣、unused variables
、Format Method vararg check 等等。
5. Uber NullAway
這個是 Errorprone 的 plugin,他可以解決大部分 Java 惱人 null check 問題,
我現在新專案就直接先套這個。
6. Google Java Format
Formatter,搭配 Spotless 使用。優點是 Google,缺點是 80 chars 不能改。
7. Palantir Java Format (120 chars)
Formatter,搭配 Spotless 使用。優點是 120 chars 且 lambda 也好看,缺點
是 Palantir ,他們股價好像有點糟。
以上推薦給大家,也歡迎大家推薦好用的給我。
※ 引述《a88241050 (再回頭已是百殘身)》之銘言:
: 小弟寫java的
: 以前常常寫三元判斷式
: 就比如說
: String a;
: if(con) {
: a= "aaa";
: } else {
: a="bbb";
: }
: 這樣就要佔掉六行
: 所以我通常都是寫
: String a= con ? "aaa" : "bbb";
: 從五行變成一行
: 在我看來簡潔又方便
: 但最近給一個資深前輩code review的時候
: 他說不要用三元判斷式
: 因為不好閱讀
: 他工作那麼久也從來不用三元判斷式的
: 而且java有很多套件都可以用來取代三元判斷式
: 所以用三元判斷式真的不好嗎?
--
以下開放投票:Maven or Gradle
(抱歉ㄌ Ant 朋朋們)
Gradle +1
Maven
JS/TS有ESLint,不知道Java有沒有相似的東西?
JAVA 就sonarlint
沒有偏好的話,可以用 clang-format 啦
Gradle
這篇正解 不懂前幾篇在吵什麼
grandle
確實
推這篇分享
很多公司根本不管這塊 所以才在review階段吵然後被電
大概接案甲方有要求才會做
推
兩種都用過 覺得沒差
Maven
推
95
首Po小弟寫java的 以前常常寫三元判斷式 就比如說 String a; if(con) {18
三元不能用 算還好了 我還遇過 a=1; ... ...12
從 C++ 的角度來說 三元運算子有機會改變 l-value/r-value 的性質,進而破壞最佳化 舉個簡單例子 可以看到用三元運算子的時候,回傳區域變數竟然要 copy 而不是 move 雖然說 Java 沒有這些5
沒有 沒有什麼公認 要解決coding style 最好的辦法就是CTO大頭召集全部RD開會 把這間公司的coding style全都記下來8
這種事情 不就和阿里巴巴一樣 一開始給大家一本手冊 哪些code 或是哪些style在本公司不要出現1X
隨著語法的進步 很多會寫 code 的人都很少寫判斷式了 不管是三元還是 if else 寫太多的判斷式 如果….所以…否則…如果….則又…如果..24
說到switch,想來問問你各位公司的code style是下面哪種 (1) switch Var1 { case a: xxx5
好啦 假設不是反串 我覺得滿有道理的 但有一點其實你說錯了 其實並不是語法進步 之前學 Rust 覺得哇 pattern matching 真是他媽神 好潮喔 後來跑去學 OCaml 我才發現(Rust設計者是OCaml粉 一開始的compiler就是用OCaml寫)9
"特定"情況下的確是好方式 舉個例子 以前我在調校能時候有用過這種方式 這是c#的code部分節錄 void Mem_w(ushort address, byte value) { if (address < 0x2000) NES_MEM[address & 0x7ff] = value;
20
Re: [討論] 刷leetcode的語言選擇最近剛好有在指導一些學生練習,可以來回應一下這個問題 一般最常見語言有三個:C, JAVA, Python 也是最容易找到範例 code 的三個語言 各有不同優點,可以看你的狀況選擇 首先,如果未來有一天18
[討論] 請大家聊聊靜態語言的缺點繼上個系列串 我想問問大家認為靜態型別的缺點是什麼呢? 本人寫Java也寫JS,最近也在碰Python 我自己寫Java,一開始覺得宣告比較麻煩,需要思考這個變數是什麼型別 (其實說實在,Java的變數最常使用也就幾個,我正常刷Leetcode除非特殊情況否則很少會想不出要用什麼型別的變數)12
Re: [請益] python會寫小遊戲 能投的相關職缺?為啥你講話感覺顛三倒四 你一邊喝五梁液一邊打這篇文章? 你想走py遊戲開發 你究竟想找寫py的工作還是想做遊戲? 遊戲開發大部分用C# C++13
Re: [請益] C#、AI物聯網 進修課程及就業請益以前有葛做AI的同事 沒看過他寫幾行code 只看他每天在肯paper喃喃自語 喔對了他是物理博士 他每次看到我就嗆我: 你寫那個登入功能不就google一下複製貼上就好1
Re: [討論] 請大家聊聊 JavaScript的缺陷小弟介紹自己語言的圖譜。 1.寫 Java 三年(沒在寫了)。 2.被公司逼寫 Nodejs 寫了五年(現在還在寫)轉換成本半年。 3.被公司逼 TS 四年(現在還在寫)轉換成本一個月。 4.被公司逼 GO 兩年(現在還在寫)轉換成本兩周。