首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

Java 作为企业级开发,代码是否需要做混淆?

  •  
  •   maxxfire · 39 天前 · 2579 次点击
    这是一个创建于 39 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我不是做 Java 的,但对这个问题比较感兴趣。
    Java/字节码很容易被反编译,那为何不影响其成为企业级开发的王者,或者说企业级环境下是否要做代码混淆?
    28 回复  |  直到 2019-03-18 18:00:42 +08:00
        1
    Cat73   39 天前
    因为一般写的都是业务代码,没什么技术点,又不是什么创新发明。。没什么需要保密的。。。

    一般需要保密是为了防止自己写的垃圾代码被人挖到漏洞然后被黑了😂

    真的为了防止别人破解你 XX 功能实现原理的,emmm 企业级开发寥寥无几,面对公众的东西可能还有点。。
        2
    murmur   39 天前
    关键的东西云服务 要么就卖服务 只能这样了 真的要混淆肯定要落进 c 层
        3
    putaozhenhaochi   39 天前 via Android
    Java 作服务端一般不用。 作安卓的需要
        4
    WordTian   39 天前 via Android
    给你坨没编译的代码你都不一定乐意看,或者说不一定能理顺逻辑。更别提编译过的代码了

    公司有一定安全性需求那就混淆呗,也就一个配置文件的事

    企业开发首选是因为国内 java 的生态,库多,程序员多,开发出来的东西不容易有大问题
        5
    maxxfire   39 天前
    @Cat73 这个理由不错,哈哈
        6
    maxxfire   39 天前
    @WordTian 所以 java 它 1 臃肿 2 性能差 3 内存占用高,然后它还是上位了,这是我最佩服 java 的地方
        7
    sampeng   39 天前 via iPhone
    是能反编译不错。android 需要混淆是因为人人都能拿到 apk 包。字节码被玩坏了。但是服务端嘛。首先、你要能进到服务器。我就是把密码写在文件上,你进不来…什么都是假的。你就是军工级加密。只要让我进来了…对不起,你就是一个在裸奔的舞女
        8
    DsuineGP   39 天前   ♥ 1
    @maxxfire 性能..差..?那你是没跟 node,py 比..
    能这么普及的原因是比 java 性能好的,没他简单;比他简单的没他性能好;比他简单又比他性能好的,库又没他多;
        9
    prenwang   39 天前
    @maxxfire java 性能不差,不了解 jit 不要乱说, 内存占用高只能说他不适合低配或嵌入式等资源紧张的场景,实力企业配置的服务器内存都用不完,所以内存根本不是问题,磁盘更不是问题,Elastic 处理 PB 级的数据,自身的臃肿比起来如九六一毛,java 能繁荣是因为他有好爹,好干爹,朋友圈都是大腕,项目做起来都是大框架大格局。

    一般人是不懂王健林的“小目标”的。
        10
    anguiao   39 天前
    JVM 已经是最强的 VM 了,如果这还算性能差的话,那我也没什么好反驳的。
        11
    sampeng   39 天前 via iPhone
    @DsuineGP 我以前也是觉得 java 慢。但和 node 比起复杂业务的时候。node 得叫爷爷…
        12
    jzmws   39 天前
    首先 Java 屏蔽了底层硬件的不同,让程序员专注于业务
        13
    rogwan   39 天前 via Android
    @DsuineGP 比他简单又比他性能好的,库又没他多
    你是说 go 吗?
        14
    sampeng   39 天前 via iPhone
    @rogwan go 比 java 的库多? go 才流行多久。java 流行了多久… go 能企业级用的库。在每个领域下都只有为数不多的几个…
        15
    wmhx   39 天前
    @rogwan C 也同理.
        16
    Cat73   39 天前
    @maxxfire Java 运行速度并不是太慢,内存吃的多一点也可以加个内存条解决,Java 解决的是可以用水平不是太高的程序员写不是太复杂的代码(只需要业务代码、CRUD 什么的,不需要自己管理内存呀指针呀什么复杂的东西),就能快速做出差不多能用,性能不是太差的东西

    对管理者大概就是,低成本(不需要太强的人)快速出可接受的东西(性能不是太烂,不是太容易出漏洞)

    转隔壁 Objective-C 看看,自己管理内存多恶心。。

    哪怕到了 Swift,也会存在不支持自动回收循环引用对象的问题。。

    隔壁 C# 其实这方面做的也不差,开发者少大概是因为前些年只能跑在 Windows 上,然后 Windows emmm,屁事比较多,我们的服务器版 Windows 虽然不强制更新,但还是整天一连上就提示有更新,而且严格来说并不免费,有额外的成本,而且系统吃掉的硬件明显要高于 Linux。。。

    以上为个人理解喵~
        17
    xuanbg   39 天前
    一般的 Java 代码都部署在服务器上,外人根本接触不到,所以也就不需要混淆加壳这些乱七八糟的。
        18
    maxxfire   39 天前
    @Cat73 除了企业级后端也就算了,现在连做大数据也用 Java 了,这让以性能著称的 C++情何以堪。。
        19
    Allianzcortex   39 天前 via iPhone
    @maxxfire 更多是路径依赖吧,最早的 hadoop 是用 java 写的,之后就都离不开 JVM 生态圈了,那个时候万兆网卡和 SSD 还没这么普及开,IO 速度比处理速度重要多了。G 家三件套没有开源应该是用 C++ 写的,clickhouse 也是 C++ 写的
        20
    hellowes   39 天前 via Android
    没必要,你服务器部署肯定不用担心。 最需要担心的是数据安全
        21
    passerbytiny   39 天前
    @maxxfire “隐藏源码就能防止抄袭”是一种非常低级,并且狭隘的商业思路。软件开发中最重要的部分,首先是人,其次是设计文档(敏捷开发中则是集体智慧)和资源,再次才有可能是源代码。举个例子,Red Hat 收购 CentOS 后,RHEL、CentOS 一套代码,CentOS 全开源,然而 RHEL 照样能赚钱,因为对于大客户来说,RHEL 有 CentOS 中没有的人和资源。

    @Cat73 建议你换掉头像,否则容易让人产生“女人就是没脑袋”的想法。给你说些事实,Hadoop、Hbase、Zookeeper 的编程语言是 Java,Oracle 部分功能的编程语言是 Java,Kafka 的编程语言是 Scala ——运行在 Java 平台上。
        22
    freedomshi   39 天前
    没必要,因为没价值。
        23
    Cloutain   39 天前
    关键算法做加密处理,如果是什么管理软件就没必要了,全是业务代码,没有价值,逆向从来只针对自己人无法编码解决的地方。
    上面有兄弟说了 数据安全才是最需要担心的,这点很赞同
        24
    notreami   39 天前
    看到大家维护 java,最新我也在思考这个问题。
    1、java 的内存占用确实不太适合微服务。比如想做点小服务工具,但是 java 进程起来就百兆。
    2、最近几年,新出的服务工具,新独角兽,都开始往 golang 上转移的趋势。
        25
    haofei   39 天前
    https://www.techempower.com/benchmarks/#section=data-r17&hw=ph&test=json

    说 java 不行的可以试试这个 看你写的程序能不能跑进前十

    java ee 是不行了 但是 core java 还是很有生命力的
        26
    Cat73   39 天前 via Android
    @passerbytiny 每个需要都会有自己的杀手级应用,可你想一想,这个话题所讨论的普通企业开发,真的是天天在做什么 Hadoop Hbase 这种级别的东西么?并不是的,绝大部分企业都是拿来做一些根本没什么技术难度也没多少性能要求的东西而已,我是基于这个前提来分析了一下国内为何 Java 流行,如果说的话不好听那我很抱歉,但请不要搞人身攻击谢谢
        27
    Cat73   39 天前 via Android
    @Cat73 噗,手机打错字了,应该是每个语言都会有自己的杀手级应用
        28
    zoe1026   39 天前
    @passerbytiny 头一回看到因为头像怼人,“女人就是没脑袋”的想法您是从哪里得出来的结论?你的母亲?
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2535 人在线   最高记录 5043   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 17ms · UTC 11:38 · PVG 19:38 · LAX 04:38 · JFK 07:38
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1