• 8点赞

    精通型程序员的特点

    你知道有能力胜任和精通之间的区别是什么吗? 这听起来像一个很难回答的问题,因为这两者似乎意味着同样的事情。但它们之间的微妙区别至关重要。 有能力胜任是指有足够的经验和知识来完成各项工作;精通涉及知道为什么你要用某种方式来做事情,以及如何融入到大局中。换句话说
    Gothdo Gothdo 发表于 6月前
  • 5点赞

    Android网络与数据存储——网络编程数据处理(网络请求,解析xml,解析Json)

    手机的优势是携带方便,可以随时打开,而且手机通常总是处于联网状态的,所以网络支持对于手机很重要。而且Java的网络编程完全适用于Android网络编程。 一.网络请求 1.URL 在真正学习网络请求之前有必要了解一下什么是URL,URL的英文全拼是Uniform Resource Locator,翻译过来
    Scott-Bale Scott-Bale 发表于 6月前
  • 3点赞

    iOS获取定位授权和注意事项

    iOS原生类获取定位授权是通过**CoreLocation**框架中的**CLLocationManager**类完成的,这其中可以解决两大类场景的授权问题: 1、原生开发的授权 2、网页混合开发的授权。使用webview加载网页,授权归入APP授权;在浏览器中加载页面,授权归入浏览器授权。 一、概述获取权限
    ecarrizo ecarrizo 发表于 6月前
  • 7点赞

    高并发Java(8):NIO和AIO

    IO感觉上和多线程并没有多大关系,但是NIO改变了线程在应用层面使用的方式,也解决了一些实际的困难。而AIO是异步IO和前面的系列也有点关系。在此,为了学习和记录,也写一篇文章来介绍NIO和AIO。 1. 什么是NIO NIO是New I/O的简称,与旧式的基于流的I/O方法相对,从名字看,
    mortensen mortensen 发表于 6月前
  • 0点赞

    高并发Java(7):并发设计模式

    1. 什么是设计模式 在软件工程中,设计模式(design pattern)是对软件设计中普遍存在(反复出现)的各种问题 ,所提出的解决方案。这个术语是由埃里希·伽玛(Erich Gamma)等人在1990年代从建筑设计领 域引入到计算机科学的。 著名的4人帮:?Erich Gamma,Richard Helm, Ral
    mortensen mortensen 发表于 6月前
  • 5点赞

    高并发Java(6):JDK并发包2

    1. 线程池的基本使用 1.1.为什么需要线程池 平时的业务中,如果要使用多线程,那么我们会在业务开始前创建线程,业务结束后,销毁线程。但是对于业务来说,线程的创建和销毁是与业务本身无关的,只关心线程所执行的任务。因此希望把尽可能多的cpu用在执行任务上面,而不是用在
    mortensen mortensen 发表于 6月前
  • 0点赞

    高并发Java(5):JDK并发包1

    在高并发Java(2):多线程基础中,我们已经初步提到了基本的线程同步操作。这次要提到的是在并发包中的同步控制工具。 1. 各种同步控制工具的使用 1.1 ReentrantLock ReentrantLock感觉上是synchronized的增强版,synchronized的特点是使用简单,一切交给JVM去处理,但是功能
    mortensen mortensen 发表于 6月前
  • 8点赞

    高并发Java(4):无锁

    在高并发Java(1):前言中已经提到了无锁的概念,由于在jdk源码中有大量的无锁应用,所以在这里介绍下无锁。 1 无锁类的原理详解 1.1 CAS CAS算法的过程是这样:它包含3个参数CAS(V,E,N)。V表示要更新的变量,E表示预期值,N表示新值。仅当V 值等于E值时,才会将V的值设为N,
    mortensen mortensen 发表于 6月前
  • 7点赞

    Spring MVC REST异常处理最佳实践(下)

    在本系列文章的第一部分里,我们讨论了异常发生时,该返回给 REST API 调用者的异常表示(格式)的最佳实践。 在本文(第二部分)中,我们将展示如何在使用 Spring MVC 编写的 REST API 中产生那些异常表述信息。 Spring 异常处理 Spring MVC 有两个主要方式来处理在调用 MVC
    Pavel-Repin Pavel-Repin 发表于 6月前
  • 6点赞

    Spring MVC REST异常处理最佳实践(上)

    如果你已经使用 Spring 来构建你的应用,并且你需要提供 REST API, 那么 Spring MVC 会是你编写 REST 端一个很好的选择。 然而,由于 Spring MVC 常被用来构建用户接口,因此通过 RESTful 方式来清楚表示异常或问题并不是(那么)显而易见。因为在 REST APIs 中并没有直接的
    Pavel-Repin Pavel-Repin 发表于 6月前
  • 3点赞

    Fastlane自动化构建工具(完整解决测试和发布流程)

    Fastlane自动化构建工具(完整解决测试和发布流程) fastlane 控制整体流程和实现的框架容器 支持平台:iOS、Android 官方地址:https://github.com/fastlane/fastlane fastlane流程 fastlane安装: 系统要求:macOS或 Linux 使用 Ruby 2.0.0及以上版本 1.终端 sudo gem install fas
    carter carter 发表于 6月前
  • 4点赞

    为什么要做微服务

    在当今世界, 人们几乎不可能脱离他人的服务, 一切自给自足地生活. 回想一下, 我们在超市购物, 在餐饮吃饭, 在公司上班, 解决客户的问题, 这些时候, 我们都在接受别人的服务, 同时也在为别人提供服务. 服务 Service 是什么? 简单来说, 服务就是为满足他人的需求所做的事情, 一
    sdellysse sdellysse 发表于 6月前
  • 5点赞

    深入研究Block捕获外部变量和__block实现原理

    前言 Blocks是C语言的扩充功能,而Apple 在OS X Snow Leopard 和 iOS 4中引入了这个新功能“Blocks”。从那开始,Block就出现在iOS和Mac系统各个API中,并被大家广泛使用。一句话来形容Blocks,带有自动变量(局部变量)的匿名函数。 Block在OC中的实现如下: struct Block_la
    mortensen mortensen 发表于 6月前
  • 7点赞

    用java做一个最小的操作系统内核2

    (系列视频实战可观看网易云课堂: Linux kernel Hacker, 从零构建自己的内核 ) 上一节,我用java制作了一个虚拟软盘,当把软盘插入虚拟机,启动机器后,屏幕打印出java程序中设定的语句,然后卡死。 在java代码中,有一个二进制数组,imgContent, 它里面存储的实际上是一段二
    Utkash-Bhatt Utkash-Bhatt 发表于 6月前
  • 5点赞

    用java做一个最小的操作系统内核

    (系列视频实战可观看网易云课堂: Linux kernel Hacker, 从零构建自己的内核 ) 用java来做操作系统内核,太搞笑了吧。如果你这么想,同时嘴上发出呵呵一笑。那么我这篇文章的目的也算达到了,评判一篇文章好坏,不就在于它是否能让读者感觉到精神的愉悦吗。如果你笑了,那表
    Utkash-Bhatt Utkash-Bhatt 发表于 6月前
  • 6点赞

    聘请移动应用开发者的10个技巧

    想出了一个app创意?想要实现这个创意并赚到钱?是的,看到数字市场的巨大需求和范围,谁不想从app创意上赚到钱?显然,当给定app的形式时,没有多少app的创意是成功的。为了避免app中出现缺陷,最好的解决办法是聘请移动应用开发者,因为他们有经验,有才能,精通发这个开发
    Utkash-Bhatt Utkash-Bhatt 发表于 6月前
  • 9点赞

    iOS开发中深入理解CADisplayLink和NSTimer

    一、什么是CADisplayLink 简单地说,它就是一个定时器,每隔几毫秒刷新一次屏幕。 CADisplayLink是一个能让我们以和屏幕刷新率相同的频率将内容画到屏幕上的定时器。我们在应用中创建一个新的?CADisplayLink?对象,把它添加到一个runloop中,并给它提供一个?target?和?selecto
    Tsvetomir-Tsonev Tsvetomir-Tsonev 发表于 6月前
  • 8点赞

    JavaScript 中 this 的使用技巧总结

    tip 首先,我知道这篇文章很无聊,无非就是关于 js 中的 this,并且也已经有千千万万的文章写过这部分内容了; 但是,我还是想写一篇关于 js 中的 this 的文章,算是一个总结归纳吧;(大神们可以绕行看我的其他文章) 在 js 中,this 这个上下文总是变化莫测,很多时候出现 b
    Chris Chris 发表于 6月前
  • 2点赞

    3D游戏常用技巧Normal Mapping (法线贴图)原理解析——高级篇

    1、概述 上一篇博客,3D游戏常用技巧Normal Mapping (法线贴图)原理解析——基础篇,讲了法线贴图的基本概念和使用方法。而法线贴图和一般的纹理贴图一样,都需要进行压缩,也需要生成mipmap。但是由于法线贴图存储的是法线信息,压缩和生成mipmap的方法自然会有所变化。 现在
    ecarrizo ecarrizo 发表于 6月前
  • 9点赞

    3D游戏常用技巧Normal Mapping (法线贴图)原理解析——基础篇

    1、法线贴图基本概念 在制作3D游戏时,常常遇到这样一个问题:一个平面,这个平面在现实中并不是一 个“平”面,例如砖墙的表面带有石质浮雕等等。这种情况下如果只是简单的做一个平面,则让人感觉严重失真,如图1所示;而如果用很密集的三角形去表示这类略有凹凸的表面,则性
    ecarrizo ecarrizo 发表于 6月前