第一次做开源 Java 库,用于进制转换 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
BigMikey
V2EX    Java

第一次做开源 Java 库,用于进制转换

  •  
  •   BigMikey Mar 20, 2023 3681 views
    This topic created in 1136 days ago, the information mentioned may be changed or developed.
    https://github.com/BigMikey-V/Transfer/blob/main/README.md
    提供与 Python 进制转换函数类似功能。
    忘记把自己新被子放床上了,睡觉睡觉~
    (各位看官走过路过瞄几眼呗)
    div class="cell">25 replies    2023-05-02 15:26:25 +08:00
    zagfai
        1
    zagfai  
       Mar 20, 2023   1
    既然小朋友你这么大胆我也不妨直喷了。。。你这代码质量很差,性能很差,没有意义。

    建议,先多看,看够 20 万行代码再写
    KoedaNagi
        2
    KoedaNagi  
       Mar 20, 2023 via Android
    既然小朋友你这么大胆我也不妨直喷了。。。你这代码质量很差,性能很差,没有意义。

    建议,先多看,看够 40 万行代码再写
    auh
        3
    auh  
       Mar 20, 2023
    既然小朋友你这么大胆我也不妨直喷了。。。你这代码质量很差,性能很差,没有意义。

    建议,先多看,看够 400 万行代码再写
    c6h6benzene
        4
    c6h6benzene  
       Mar 20, 2023
    好像有 parseInt()?
    msg7086
        5
    msg7086  
       Mar 20, 2023
    首先吧,测试用例呢?你不会以为人们愿意在没有测试覆盖的情况下用你的库吧……
    hefish
        6
    hefish  
       Mar 20, 2023
    这个,还是应该鼓励为主的。
    litchinn
        7
    litchinn  
       Mar 20, 2023   5
    原则上应当以鼓励为主
    但是首先,java 的 Integer 类有 Integer.toBinaryString 、Integer.toOctalString 、Integer.toHexString 方法,你可以参考下
    其次你的代码真的很不 java
    tairan2006
        8
    tairan2006  
       Mar 20, 2023   1
    Java 里面流行的是 hutool 、common-lang3 这种大而全的 utils 集合,这种小功能写个库好像 nodejs 中比较流行,小兄弟不妨考虑换个方向。
    selca
        9
    selca  
       Mar 20, 2023
    至少功能实现了
    Cola98
        10
    Cola98  
       Mar 20, 2023
    public void init(){
    result = "";
    atmp = "";
    btmp = "";
    }
    这一段初始化的,Java 不是有一个 get/set 方法嘛?还有就是命名规范有点问题,main 方法里面的测试你可以单独弄成测试单元去跑下
    chocotan
        11
    chocotan  
       Mar 20, 2023
    第 89 行
    result = new StringBuffer(atmp).reverse().toString();
    if(btmp.length() > 1) result += "." + btmp;

    这 new 了个 StringBuffer 就是为了 reverse ?
    CodeCodeStudy
        12
    CodeCodeStudy  
       Mar 20, 2023
    if 后面一定要跟{},不然不利于阅读
    godleon
        13
    godleon  
       Mar 20, 2023
    建议给 x 做个非空
    dqzcwxb
        14
    dqzcwxb  
       Mar 20, 2023
    逆耳良言
    leahoop
        15
    leahoop  
       Mar 20, 2023
    好奇问一下,用了共享变量怎么没用多线程控制
    Eiden
        16
    Eiden  
       Mar 20, 2023   1
    我还以为 java 没有内置进制转换
    fiveStarLaoliang
        17
    fiveStarLaoliang  
       Mar 20, 2023
    话不多说, 加油
    leonard916
        18
    leonard916  
       Mar 20, 2023
    标准库里有的,不要重新去实现。除非你有更好的算法或数据结构。
    当然你作为学习项目,怎么写都可以。作为库就没必要了。
    yaphets666
        19
    yaphets666  
       Mar 20, 2023   1
    其实很好,哪怕自己写的代码不好,发出来就有大佬斧正了,自己就提高了
    sleepyfevniv
        20
    sleepyfevniv  
       Mar 20, 2023   1
    既然别人都批评过了,那么我就来按照我公司的规范来讲讲吧。

    首先,Transfer 类我可是第一次见还能 import static 的方式(毕竟我不这么用),一般来说都是 import java.lang.Math; 然后 Math.pow() 使用。

    第二点,每个方法都不是 static ,意味着每次都需要 new 之后才能使用。

    第三,for if 等这种方法,都需要用大括号括起来,不要因为一行语句就不用大括号了,不要吝啬空行。

    第四,没有异常处理。

    第五,没有注释。

    只说了一点点,剩下的交给其他人来补充吧。建议看看别人的一些源码学习学习。
    BigMikey
        21
    BigMikey  
    OP
       Mar 21, 2023 via Android
    谢谢各位的斧正,本着学习的心态来讨教的哈哈,谢谢啦!
    BigMikey
        22
    BigMikey  
    OP
       ar 21, 2023 via Android
    喷没有问题哈,实话说我也不介意被喷,主要吧还是想学技术。
    BigMikey
        23
    BigMikey  
    OP
       Mar 21, 2023 via Android
    只要不是恶意的都没有问题~
    susu200213
        24
    susu200213  
       Apr 8, 2023
    @BigMikey 加油
    BigMikey
        25
    BigMikey  
    OP
       May 2, 2023
    @rzdCG #24 谢谢啦
    About     Help     Advertise     Blog     API     FAQ     Solana     4257 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 79ms UTC 10:12 PVG 18:12 LAX 03:12 JFK 06:12
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86