造個‘’輪子‘’!只要掌握了這幾點,你也可以擼一個寫在簡歷上的輪子(附手擼過程)
序言

最近公司的項目有點少,摸魚的時間有點多,閑來無事就去程序員最大的交友論壇(Github)上看了看,發現上面好多輪子,簡直可以說是車輪遍地爬!我也就好奇了?怎么那么多人不上班,每天忙著造人?啊不,造輪!
待我自己看了看,發現其實造輪子這件事也沒有想象中的那么難,我也就嘗試了一下在公司摸魚的時間造了一個小小的獨木輪。為什么叫他獨木輪呢?因為我的想法很簡單,就是要每一個模塊甚至每一個類單獨拎出來都可以直接測試,直接使用,用祖傳的CV方法可以直接用在自己的項目中,不需要引入依賴,不需要搞花里胡哨的配置,最重要的是,官方文檔,爺爺奶奶看了都能馬上上手!
輪子簡介
我給我的獨木輪命名為:SweetCode,意味著你每天寫代碼就和吃Sugar一樣甜蜜,哎呀媽呀,簡直不要不要的。他的官方文檔長這樣,目前我就寫了一個模塊,都是自己在工作中常用到的一些小工具類,自己整理起來也是方便自己以后復用。
Arrays
我們來手擼一個Arrays的類,先來試試手。我目前常用到的對于數組的處理比較多的是:
顯示字符串數組的內容,用,分隔.
取得數組的第一個元素.
把List轉換成字符串數組.
判斷字符串數組是否包含指定的字符串
package cn.linstudy.arrays; import java.util.ArrayList; import java.util.List; import java.util.Set; /** * @Author XiaoLin * @Date 2021/7/7 15:15 * @Description 數組工具類 */ public class ArrayUtils { /** * 顯示字符串數組的內容,用,分隔 * @param args 字符串數組 * @return 字符串數組的內容 */ public static String toString(String[] args) { return toString(args, ","); } /** * 顯示字符串數組的內容 * @param args 字符串數組 * @param separator 分隔符 * @return 字符串數組的內容 */ public static String toString(String[] args, String separator) { if (args == null || args.length == 0) { return null; } StringBuilder buffer = new StringBuilder(); for (int i = 0; i < args.length; i++) { if (i > 0) { buffer.append(separator); } buffer.append(args[i]); } return buffer.toString(); } /** * 取得字符串數組的第一個元素 * @param stringArray 字符串數組 * @return 字符串數組的第一個元素 */ public static String getFirst(String[] stringArray) { if (stringArray == null || stringArray.length == 0) { return null; } return stringArray[0]; } /** * 取得數組的第一個元素 * @param array 數組 * @return 數組的第一個元素 */ public static Object getFirst(Object[] array) { if (array == null || array.length == 0) { return null; } return array[0]; } /** * 把List轉換成字符串數組 * @param list 字符串List * @return 字符串數組 */ public static String[] toArray(List
大概寫完的話就這些幾個方法,其實也很簡單,最重要的是你需要在寫方法的時候統籌全局,知道這個方法是干什么的,為什么要寫他?寫他會不會出現耦合性很強的問題,我寫代碼的時候,首先會想一下這段代碼我寫的目的是什么?然后先開始寫注釋,將這個方法的作用、入參、返回值一一定義清楚,讓后面的人看了這個代碼有一種醍醐灌頂的感覺,不會說一頭霧水,接著就要開始去寫方法了,寫方法的話就涉及到了代碼規范,我在總結的時候講,總之這個項目我會一直維護下去和寫下去的!
心得(代碼規范)
其實說是寫輪子,最重要的還是代碼規范和方法的一個抽取,什么樣的代碼是好代碼,什么樣的代碼是屎山,想必這個很多程序員都是不知道的,下面我就來說一下我眼中的代碼規范!
方法要見名知意,看到方法的入參、返回值、方法名都要知道他的具體含義,而不是要進入方法看邏輯才知道。
方法的耦合性要盡量低,不要這個方法依賴下一個方法,下一個方法又調用其他的方法,如果在公司寫代碼方法要拆分的足夠細,需要想好這個方法后面會不會復用,人如果復用的話需要抽取出共同的一些語句,防止重復寫代碼。
方法不要有太多的魔法值,如果有魔法值,可以用枚舉或者常量去代替,降低代碼耦合度。
數據結構
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。