技术问答-汇集知识碎片解决技术难题-阿里云开发者社区-阿里云

  • 你遇到过哪些触发NPE的代码场景?
    奖品池:4000积分,保温杯*2,运动腰包*4

    anisbob 最常见的是查询数据库的时候,尤其是关联查询,po里的list没有返回,这个时候该属性是null,如果没有做空指针判断的话,直接使用就会报NPE的错误。处理方式就是判断是否为空。 最好使用一些第三方库对空指针的判断统一处理,尤其是动态数据填充或者api接收参数的入参校验的时候,空指针会影响代码的业务逻辑处理,甚至会让程序退出。

    不省油的灯 空指针异常?

    https://ucc.alicdn.com/avatar/avatar3.jpg https://ucc.alicdn.com/avatar/avatar3.jpg
    26人参与
  • 你见过哪些独特的代码注释?
    奖品池:4000积分,保温杯*2,运动腰包*4

    Sakura、 类型 幽默型。 这段注释以轻松的方式承认了代码的复杂性,同时也体现了作者对代码质量的追求和时间压力的无奈。 作者虽然在自嘲,但也提醒后来的维护者,这部分代码可能需要重构或至少是优雅化的处理。 故事叙事性 以轻松诙谐的故事告诉我们此函数存在一个严重的bug,且到现在还未解决。 警告型 作者提前给其他开发者打预防针,提示他们要格外小心。 个人感悟 总而言之,代码的注释多种多样,每个人可能有不同的...

    anisbob JDK源码的注释可以说是我们学习的榜样,很多的代码注释都配有例子说明,这点对我们国内程序员来讲是很独特的,希望每个程序员学习一下,相当于测试用例,不要嫌麻烦,这样的代码才是强壮的。

    https://ucc.alicdn.com/avatar/avatar3.jpg https://ucc.alicdn.com/avatar/avatar3.jpg
    25人参与
  • 如何看待首个 AI 程序员入职科技公司?
    奖品池:4000积分,开发者定制T恤*5,咖啡杯*3

    it学习者 web应用上什么好?

    aiunng 方便快捷高效 对答如流 专业度拉满 没有废话

    https://ucc.alicdn.com/avatar/avatar3.jpg https://ucc.alicdn.com/avatar/avatar3.jpg
    119人参与
  • 在JS编程中有哪些常见的编程“套路”或习惯?
    奖品池:4000积分,胶囊伞*2,午睡毯*3

    听风de歌 在JavaScript程序设计中,常用的编程“套路”包括: 模块化:通过函数、模块(ES6+)封装代码,提高复用性和可维护性。 异步处理:使用Promises、async/await简化异步代码。 面向对象:利用类(ES6+)或构造函数创建对象,实现代码复用。 事件监听:处理用户交互和DOM变化。 设计模式:如单例、工厂、观察者等,解决复杂问题。

    认真学习的heart 在JavaScript的世界中,套路不仅仅是技巧,它们是生存的法宝。从回调地狱到Promise天堂,再到async/await的快车道,每一步都是对未来的憧憬和对错误回调的告别。一些JavaScript开发中我常用的编程“套路”: 1. 立即执行函数表达式(IIFE) (function() { console.log("隐藏我吧,别让全局变量看见我!"); })(); 这个小技巧...

    https://ucc.alicdn.com/avatar/avatar3.jpg https://ucc.alicdn.com/avatar/avatar3.jpg
    73人参与
  • 2018-07-20
    23961
    14
    25
    2018-10-22
    10905
    3
    13
    已解决
    2018-07-18
    3888
    1
    3
    2024-04-03
    320
    2
    3

    个人中心

    你好,登录掌握更多精彩内容
    账号登录

    话题讨论榜

  • 1
    如何让系统具备良好的扩展性?
    奖品池:4000积分,胶囊伞*2,午睡毯*3
    78

    在系统设计中融入可扩展性理念,关键在于采用模块化、微服务架构、负载均衡、弹性云服务等技术手段。模块化使功能划分清晰,易于替换升级;微服务架构实现服务间解耦,独立扩展;负载均衡分散请求压力;弹性云服务根据需求自动伸缩资源。这些措施共同确保系统能够灵活应对未来增长和变化,实现高效、经济的扩展。

  • 2
    在JS编程中有哪些常见的编程“套路”或习惯?
    奖品池:4000积分,胶囊伞*2,午睡毯*3
    73

    在JavaScript程序设计中,常用的编程“套路”包括: 模块化:通过函数、模块(ES6+)封装代码,提高复用性和可维护性。 异步处理:使用Promises、async/await简化异步代码。 面向对象:利用类(ES6+)或构造函数创建对象,实现代码复用。 事件监听:处理用户交互和DOM变化。 设计模式:如单例、工厂、观察者等,解决复杂问题。

  • 3
    在做程序员的道路上,你掌握了什么关键的概念或技术让你感到自身技能有了显著飞跃?
    奖品池:4000积分,腰靠垫*5,体脂秤*2
    129

    后端 多线程 设计模式 源码、底层原理 业务流程 解决方案

  • 4
    如何处理线程死循环?
    奖品池:4000积分,小米随身音箱*2,计时器*5
    174

    某些编程语言和框架提供了锁的高级特性,如可中断的锁获取(interruptible lock acquisition)或尝试锁定(try-lock),这些特性可以帮助避免死锁。

  • 5
    作为一个经典架构模式,事件驱动在云时代为什么会再次流行呢?
    奖品池:4000积分,加湿器*2,腰靠垫*5
    136

    事件驱动架构(Event-Driven Architecture, EDA)在云时代再次流行的原因可以从多个维度来分析,主要归结为以下几点: 微服务和云原生的兴起: 微服务架构的流行使得系统被拆分成众多独立的服务,这些服务之间需要高效、松耦合的通信方式。事件驱动架构通过发布/订阅模式提供了这种机制,使得服务间可以异步通信,提高了系统的可扩展性和灵活性。 解耦和灵活性: 在复杂分布式系统中,事...

  • 向云产品提问


    http://www.vxiaotou.com