成为 Java 高级程序员需要掌握哪些?-程序员宅基地

Section 1

  1. Core Java,就是 Java 基础、JDK 的类库,很多童鞋都会说,JDK 我懂,但是懂还不足够,知其然还要知其所以然,JDK 的源代码写的非常好,要经常查看,对使用频繁的类,比如 String,集合类(List,Map,Set)等数据结构要知道它们的实现,不同的集合类有什么区别,然后才能知道在一个具体的场合下使用哪个集合类更适合、更高效,这些内容直接看源代码就 OK 了

  2. 多线程并发编程,现在并发几乎是写服务端程序必须的技术,那对 Java 中的多线程就要有足够的熟悉,包括对象锁机制、synchronized 关键字,concurrent 包都要非常熟悉,这部分推荐你看看《Java 并发编程实践》这本书,讲解的很详细

  3. I/O,Socket 编程,首先要熟悉 Java 中 Socket 编程,以及 I/O 包,再深入下去就是 Java NIO, 再深入下去是操作系统底层的 Socket 实现, 了解 Windows 和 Linux 中是怎么实现 socket 的

  4. JVM 的一些知识,不需要熟悉,但是需要了解,这是 Java 的本质,可以说是 Java 的母体, 了解之后眼界会更宽阔,比如 Java 内存模型(会对理解 Java 锁、多线程有帮助)、字节码、JVM 的模型、各种垃圾收集器以及选择、JVM 的执行参数(优化 JVM)等等, 这些知识在《深入 Java 虚拟机》这本书中都有详尽的解释, 或者去 oracle 网站上查看具体版本的 JVM 规范.

  5. 一些常用的设计模式,比如单例、模板方法、代理、适配器等等,以及在 Core Java 和一些 Java 框架里的具体场景的实现,这个可能需要慢慢积累,先了解有哪些使用场景,见得多了,自己就自然而然会去用。

  6. 常用数据库(Oracle、MySQL 等)、SQL 语句以及一般的优化

  7. JavaWeb 开发的框架,比如 Spring、iBatis 等框架,同样他们的原理才是最重要的,至少要知道他们的大致原理。

  8. 其他一些有名的用的比较多的开源框架和包,Netty 网络框架,Apache common 的 N 多包,Google 的 Guava 等等,也可以经常去 Github 上找一些代码看看。

section 2

每逢长假都会有很多程序员跳槽,十一、过年是跳槽黄金时刻,尤其是过年。过年的时候年终奖到手,没有了多少牵挂,年终同学同事聚会比较多,沟通的就多,各种工作机会的消息也相应会多,所以跳槽的机会也就会多。跳槽就必不可少的要经过面试,那么作为一个 Java 程序员需要准备哪些面试知识呢?下面就给大家说说。

  1. 集合框架
    集合框架
    从上图可以看到主要是 Collection 和 Map 的继承类和 Iterator 的实现类,重点掌握 ArrayList、LinkedList、Vector、Stack、PriorityQueue、HashSet、LinkedHashSet、TreeSet、HashMap、LinkedHashMap、TreeMap、WeakHashMap、EnumMap、TreeMap、HashTable 的特点和实现原理,还有多线程使用场景和插入多还是删除多的时候使用什么样的集合类效率会更高。

  2. IO 框架
    IO 框架
    主要掌握 Reader、Writer、InputStream、OutputStream 的继承类,重点掌握字节流 (FileInputStream、FileOutputSteam、BufferedInputStream、BufferedOutputStream、DataInputStream、DataOutputStream) 和字符流(FileReader、FileWriter、BufferedReader、BufferedWriter、InputStreamReader、OutputStreamWriter),并熟练运用。还有就是 NIO 的工作原理要知道。

  3. String 相关
    主要考察对 String 的处理,顺带考察多线程和算法,大公司就是喜欢考察字符串的算法,主要是字符串查找或者剔除,多线程打印字符串,超大字符串处理。

  4. 异常处理
    异常处理
    掌握 Throwable 继承类,理解 Error 和 Exception 的区别,理解运行时异常和编译异常的区别,掌握异常的处理方法,掌握 try、catch、finally、throw、throws 关键字的意义,掌握 try-catch-finally 语句的执行顺序,掌握异常的工作原理,知道常见的异常有哪些。

  5. 多线程
    如何创建和启动一个线程,有哪些方法?多线程如何交互,线程之间的调度、让步、合并,如何同步?生产和消费者模型。还有就是掌握线程安全、线程池,死锁。

  6. JVM 知识
    掌握常见的垃圾回收机制,掌握程序计数器、堆、栈、方法区的作用,掌握类的加载机制。掌握内存分代模型和工作原理。掌握 JVM 启动参数常见配置,了解 JVM 调优。

  7. 数据结构与算法:
    掌握常见查找和排序算法实现及其时间、空间复杂度。掌握常见数据结构如链表、队列、栈的基本原理和实现。

section 3

经常主持对高级工程师和中基层 Tech Leader 的面试,一年下来总有百八十场,我给大家分享一下我对于高级工程师的定位吧,虽然我主要负责. Net 团队,但是对于其他语言应该也是适用的。

一、理论基础: 高级工程师必须有较好的理论基础,既包含一些基础的学科知识,也要包含个人专攻方向的前沿理论。我遇到过形形色色的求职者,有人自称精通领域模式,却不明白什么是聚合根(领域根)。甚至有人无法列举常用的非线性结构,更别提伪码实现和应用场景分析了。这些人普遍振振有词地说, 我有丰富的开发经验,项目需要实现的功能我都能做出来,我只是没有去记那些术语名词。抱歉,你不是没有记术语名词,你是根本没有潜心看技术文章的心态,你所谓的学习就是看一些诸如《21 天精通 Java》,《7 天,从菜鸟到专家》之类的垃圾书,或者看点视频。那么你这个高工,比别人高在哪里呢?当单位需要你代表团队和合作机构沟通,甚至发表专栏的时候,你是不是也准备跟大家讲” 这个东西我不知道该怎么讲,大家可以看一下我的代码 “。只有代码可秀的人是码农,不是高工,所以我给这类求职者的综评是中 + 封顶。

二、工作经验: 高级工程师必须有过在项目中担心核心模块开发或者整体架构设计的经验,并且项目越高大上越好,比如你在互联网企业搞过读写分离的实现,你在电商搞过秒杀算法,你在电信行业做过网络层,我必定会高看一眼。如果你就仅仅只是一个人全栈搞过几个小网站,啪啪啪一大堆成熟框架用得倍溜,那么你只是一个装配工。我给这类求职者的综评是中 + 封顶。

三、培养潜力: 高级工程师必须有全局思维,如果在你过往的工作历程中,你对你兄弟团队或者部门的工作情形一问三不知,甚至于一个项目中,你只懂自己的模块,其他同事负责的模块你就只会 call 个 API,那么你就是一个很难再进一步的人。对于企业来说,有你不多,无你不少,所以我给这类求职者的综评是中 + 封顶。

四、沟通能力: 高级工程师在技术团队中是绝对的核心人中,小项目中你就是负责人,大项目中你也要负责带新人,那么良好的沟通能力必不可少,如果你仅仅是自己一个人心里亮堂,你对企业的价值就要大打折扣。这类求职者,我也有录用过不少,因为程序员木讷可以说是一种共性,在这方面没法太挑剔,但是我给他们的综评是高 - 封顶。

section 4

如果要应聘高级开发工程师职务,仅仅懂得 Java 的基础知识是远远不够的,还必须懂得常用数据结构、算法、网 络、操作系统等知识。因此本文不会讲解具体的技术,笔者综合自己应聘各大公司的经历,整理了一份大公司对 Java 高级开发工程师职位的考核纲要,希望可以帮助到需要的人。

1、Java 基础

1.1 Collection 和 Map
  1. 掌握 Collection 和 Map 的继承体系。
  2. 掌握 ArrayList、LinkedList、Vector、Stack、PriorityQueue、HashSet、 LinkedHashSet、TreeSet、HashMap、LinkedHashMap、TreeMap、WeakHashMap、EnumMap、 TreeMap、HashTable 的特点和实现原理。
  3. 掌握 CopyOnWriteArrayList、CopyOnWriteArraySet、ConcurrentHashMap 的实现原理和适用场景。
1.2 IO
  1. 掌握 InputStream、OutputStream、Reader、Writer 的继承体系。
  2. 掌握字节流 (FileInputStream、DataInputStream、BufferedInputStream、 FileOutputSteam、DataOutputStream、BufferedOutputStream) 和字符流 (BufferedReader、InputStreamReader、FileReader、BufferedWriter、 OutputStreamWriter、PrintWriter、FileWriter),并熟练运用。
  3. 掌握 NIO 实现原理及使用方法。
1.3 异常
  1. 掌握 Throwable 继承体系。
  2. 掌握异常工作原理。
  3. 了解常见受检异常 (比如 FileNotFoundException)、非受检异常(比如 NullPointerException) 和错误(比如 IOError)。
1.4 多线程
  1. 掌握 Executors 可以创建的三种 (JAVA8 增加了一种,共四种) 线程池的特点及适用范围。
  2. 掌握多线程同步机制,并熟练运用。
1.5 Socket
  1. 掌握 Socket 通信原理。
  2. 熟练使用多线程结合 Socket 进行编程。

2、Java 虚拟机

2.1 JVM 内存区域划分
  1. 掌握程序计数器、堆、虚拟机栈、本地方法栈、方法区(JAVA8 已移除)、元空间(JAVA8 新增)的作用及基本原理。
  2. 掌握堆的划分:新生代(Eden、Survivor1、Survivor2)和老年代的作用及工作原理。
  3. 掌握 JVM 内存参数设置及调优。
2.2 类加载
  1. 掌握类的加载阶段:加载、链接(验证、准备、解析)、初始化、使用、卸载。
  2. 掌握类加载器分类及其应用:启动类加载器、扩展类加载器、应用程序类加载器、自定义加载器。
3、J2EE
  1. 掌握 JSP 内置对象、动作及相关特点和工作原理。
  2. 掌握 Servlet 的特点和工作原理。
  3. 掌握 Spring 框架的 IOC 和 AOP 实现原理(反射和动态代理)。
  4. 至少掌握一个 MVC 框架(Spring MVC,Struts 等)的工作原理,并熟练运用。
  5. 至少掌握一个 ORM 框架 (Hibernate,MyBatis 等) 的工作原理,并熟练运用。
4、数据结构与算法
  1. 掌握线性表和树的特点并熟练运用。
  2. 掌握常用排序和查找算法:插入排序 (直接插入排序、希尔排序)、选择排序 (直接选择排序、堆排序)、交换排序 (冒泡排序、快速排序)、归并排序,顺序查找、二分查找、哈希查找。
  3. 熟练运用常见排序和查找算法思想解决编程问题。
  4. 了解几大基本算法:贪心算法、分治策略、动态规划。
5、计算机网络
  1. 掌握网络的分层结构,及每层的功能特点。
  2. 掌握 TCP/IP 的通信原理 (三次握手、四次挥手)
6、数据库
  1. 掌握复杂的 SQL 语句编写。
  2. 掌握数据库的优化(SQL 层面和表设计层面)。
  3. 至少掌握一款数据库产品。
  4. 熟悉高并发、大数据情况下的数据库开发。
7、Web 技术
  1. 掌握 AJAX 的工作原理。
  2. 至少熟悉一款 JS 框架 (比如 JQuery)。
8、设计模式
  1. 熟悉常见的设计模式。
  2. 会将设计模式理论应用到实际开发中。
9、Linux
  1. 熟练运用 Linux 常见命令。
  2. 熟悉 Linux 操作系统基本概念及特点。
  3. 熟悉 Shell 脚本。
10、操作系统
  1. 掌握操作系统的进程管理。
  2. 了解操作系统的 I/O。
11、正则表达式
  1. 掌握常见正则表达式符号。
  2. 熟练运用正则表达式解决实际问题 (比如匹配电话号码、邮箱、域名等)。

Section 5

  • h5edu 的源码
  • pure– 响应式 css 框架
  • Hadoop 大数据
  • ERP 系统开发
  • linux
  • freemarker
  • weblogic/jobss
  • webwhpere
  • webservice http://www.iteye.com/topic/1135747
  • bootstrap
  • HTML5
  • android
  • css/jslever
  • spring aop ssh ssm 徒手搭建
  • jquery 源码分析融汇
  • 缓存 echacge
  • 并发
  • 页面静态化
  • UML
  • shell
  • pathy
  • github
  • 网络编程
  • ExtJS
  • 网络爬虫
  • 设计模式
  • 多线程与并发
  • 第三方支付 / 登录

============= 高级工程 =============

1、Core Java 部分

这是最基础的, 对于一个 java 高级开发 / 设计人员, 你需要对这一部分达到精通的水平, 重点内容如下:

  1. 面向对象编程思想 (封装继承多态接口)
  2. 字符串处理
  3. java.lang 包, java.util 包等常用包
  4. java 异常处理

2、Java 高级部分

  1. Java I/O 流
  2. Java 多线程技术
  3. Java 网络编程
  4. Java Swing

后两项可以了解即可, 如果项目需要可以深入研究

3、前端基本技能

  • HTML + CSS 网页开发
  • JavaScript
  • Jquery
  • 浏览器兼容性 CSS hack(了解)

4、熟练使用 JSP + Servlet 进行开发

5、MVC 设计模式, 原理, 以及相关框架, 如 Struts

6、SSH 框架

7、缓存技术 session & cookie

8、熟练使用一种以上 Java 开发工具

Eclipse/MyEclipse/Jbuilder/Jcreator

9、熟练使用 XML

JDOM w3c.dom SAX

10、Java 设计模式

工厂模式, 单例模式 ==

11、Java 反射机制

反射的各种用法

12、了解或熟悉 C, C++, .NET

13、熟悉 JDK 的配置, 环境变量

14、数据库 oracle 必学, 其他最好了解一种以上 (mysql,sql server,access==)

oracle: 视图, 索引, 存储过程, 触发器, 游标, 包, 常用函数 ==

15、数据库原理

事务的原理, 锁机制, 表连接, 复杂查询语句 (工作经验), 性能调优, 锁表以及解决方案 ==

16、JDBC, 连接池

17、Ajax, 反向 Ajax

18、HTTP 协议, request 和 response 的原理, HTTP status(了解常用的),Https 原理

19、熟悉 Linux 基本命令, 使用过 Linux/Unix 系统, 可以编写 shell 脚本, 可以在 Linux 上部署项目

20、了解 windows 系统批处理脚本 bat

21、了解 HTML5, 最好学习过

22、熟悉一种 JS 框架, 如 Prototype

23、J2EE 原理 熟悉一种以上 web 容器如 Tomcat,JBoss,websphere,weblogic==

24、熟悉 ant 或 maven

25、熟悉一门脚本语言, 如 python ,ruby

  1. 了解 php/ asp

27、了解 ftp 协议及原理

28、熟练使用 Junit 测试, 熟悉 Mockito 等测试工具

29、熟悉 javac,javadoc,native,native2ascii 等常用命令

30、熟悉常用的排序算法, 如冒泡排序, 快速排序等, 最好自己研究过一些的算法, 下面的这个就是我曾经研究过的一个:

http wenku baidu com /view/391db3f0941ea76e58fa04e9 点 html
http://wenku.baidu.com/view.391db3f0941ea76e58fa04e9.html

31、了解 Flex(不学也没关系)

32、了解敏捷开发模式

33、工作流 workflow 至少用过一种, 如 OSworkflow, 了解原理

34、使用过 VPN 了解其原理

35、熟悉 jstl 表达式和 el 表达式

36、熟悉 webservice,WSDL,SOAP

37、图片处理, 如图片上传, 预览, 限制大小等, 下面共享一 (垃圾勿喷):

http wenku baidu com/view/05337bfc770bf78a6529541b 点 html

38、版本控制工具, CVS VSS SVN

39、JSON 技术, JSON+AJAX

40、分页技术, 最好自己实现过不仅仅是用过要知道原理

41、Java Mail

42、Java 读写 txt,excel

JXL 技术

43、JVM 原理, JVM 内存管理, GC,Java 堆栈池

44、熟练使用下面的工具:

  • office 办公软件, word,excel,ppt 等
  • plsql,sqldevelop 数据库开发工具
  • outlook 大公司都用
  • ue 编辑器
  • 浏览器控制台, 调试
  • SHH/PUTTY 远程

45、UML 建模工具 Rational Rose 等

46、使用 log4j

47、使用过开放 API 如百度地图, 腾讯街景, 新浪微博等

48、页面静态化技术 (伪静态页面)UrlRwriter

49、报表技术, 使用过报表制作工具, 如水晶易表

50、定时任务, 如 Spring batch, 学会自定义 batch 任务 (不适用第三方工具)

51、了解 uuid

52、B/s 和 C/s 架构

53、正则表达式

54、了解 JNDI JMS

55、ERP

56、unicode 编码, 乱码的解决

57、开源网络编辑器, 如 ckEditor

58、二进制原理

59、使用过, 了解开源论坛框架, 如 discuzz

60、GWT ,Closure 框架

61、了解 大数据, 云计算

62、搜索引擎搜索技术

63、软件工程, 项目管理

软件工程, 项目管理

  1. 你需要精通面向对象分析与设计 (OOA/OOD)、涉及模式(GOF,J2EEDP) 以及综合模式。你应该十分了解 UML,尤其是 class,object,interaction 以及 statediagrams。
  2. 你需要学习 JAVA 语言的基础知识以及它的核心类库 (collections,serialization,streams,networking, multithreading,reflection,event,handling,NIO,localization,以及其他)。
  3. 你应该了解 JVM,classloaders,classreflect,以及垃圾回收的基本工作机制等。你应该有能力反编译一个类文件并且明白一些基本的汇编指令。
  4. 如果你将要写客户端程序,你需要学习 WEB 的小应用程序 (applet),必需掌握 GUI 设计的思想和方法,以及桌面程序的 SWING,AWT, SWT。你还应该对 UI 部件的 JAVABEAN 组件模式有所了解。
    JAVABEANS 也被应用在 JSP 中以把业务逻辑从表现层中分离出来。
  5. 你需要学习 java 数据库技术,如 JDBCAPI 并且会使用至少一种 persistence/ORM 构架,例如 Hibernate,JDO, CocoBase,TopLink,InsideLiberator(国产 JDO 红工厂软件) 或者 iBatis。
  6. 你还应该了解对象关系的阻抗失配的含义,以及它是如何影响业务对象的与关系型数据库的交互,和它的运行结果,还需要掌握不同的数据库产品运用,比如: oracle,mysql,mssqlserver。
  7. 你需要学习 JAVA 的沙盒安全模式 (classloaders,bytecodeverification,managers,policyandpermissions,
    codesigning, digitalsignatures,cryptography,certification,Kerberos,以及其他) 还有不同的安全 / 认证 API,例如 JAAS(JavaAuthenticationandAuthorizationService),
    JCE (JavaCryptographyExtension),JSSE(JavaSecureSocketExtension),以及 JGSS (JavaGeneralSecurityService)。
  8. 你需要学习 Servlets,JSP,以及 JSTL(StandardTagLibraries) 和可以选择的第三方 TagLibraries。
  9. 你需要熟悉主流的网页框架,例如 JSF,Struts,Tapestry,Cocoon,WebWork,以及他们下面的涉及模式,如 MVC/MODEL2。
  10. 你需要学习如何使用及管理 WEB 服务器,例如 tomcat,resin,Jrun,并且知道如何在其基础上扩展和维护 WEB 程序。
  11. 你需要学习分布式对象以及远程 API,例如 RMI 和 RMI/IIOP。
  12. 你需要掌握各种流行中间件技术标准和与 java 结合实现,比如 Tuxedo、CROBA,当然也包括 javaEE 本身。
  13. 你需要学习最少一种的 XMLAPI,例如 JAXP(JavaAPIforXMLProcessing),JDOM(JavaforXMLDocumentObjectModel),DOM4J,或 JAXR(JavaAPIforXMLRegistries)。
  14. 你应该学习如何利用 JAVAAPI 和工具来构建 WebService。例如 JAX-RPC(JavaAPIforXML/RPC),SAAJ (SOAPwithAttachmentsAPIforJava),JAXB(JavaArchitectureforXMLBinding),
    JAXM(JavaAPIforXMLMessaging), JAXR(JavaAPIforXMLRegistries),或者 JWSDP(JavaWebServicesDeveloperPack)。
  15. 你需要学习一门轻量级应用程序框架,例如 Spring,PicoContainer,Avalon,以及它们的 IoC/DI 风格 (setter,constructor,interfaceinjection)。
  16. 你需要熟悉不同的 J2EE 技术,例如 JNDI(JavaNamingandDirectoryInterface),JMS (JavaMessageService),JTA/JTS(JavaTransactionAPI/JavaTransactionService)

转载于:https://my.oschina.net/LeBronJames/blog/3098585

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/chuiyi3047/article/details/100673973

智能推荐

xftp7要继续使用此程序,您必须应用最新的更新,100%已解决._xftp7 要继续使用此程序 您必须应用最新的-程序员宅基地

文章浏览阅读1.9w次,点赞42次,收藏56次。xftp7要继续使用此程序,您必须应用最新的更新,100%已解决.xshell7要继续使用此程序,您必须应用最新的更新,100%已解决._xftp7 要继续使用此程序 您必须应用最新的

有效解决SecureCRT错误:Hostname lookup failed: host not found-程序员宅基地

文章浏览阅读3w次,点赞7次,收藏12次。SecureCRT是一款方便用户在Windows环境下对Linux主机进行管理的软件,一般需要在windows系统上安装SecureCRT客户端,安装及破解过程可参考https://blog.csdn.net/xxujia/article/details/81348848(注意在运行注册机时应使用管理员权限)。相应地,在Linux主机上需要安装ssh2服务,在终端中输入命令:sudo apt-g..._hostname lookup failed: host not found

C#与雷赛运动控制卡的使用(二) - 轴控制系统_c# 运动控制卡编程-程序员宅基地

文章浏览阅读1.3k次,点赞29次,收藏9次。C#是一门面向对象的编程语言,所以在编写马达控制程序的时候也要有面向对象的思维,所以在此我们可以将马达看成是一类对象,而机台上的每个马达就是这个马达类的具体对象。一个简单的类大致包括了字段,属性和方法,需要创建一个马达类,首先得知道马达具备哪些基本的属性,而我们使用马达来实现哪些功能,怎么控制这个马达,就是一些方法。去年写过一篇关于C#实现马达运动控制卡编程的博客,很多小伙伴看了希望共享下代码,后来自己觉得写得不够完善就删掉了,这次准备重新写一篇完善点的,实现代码后续也会上传资源,觉得有用的可以去下载。_c# 运动控制卡编程

面向对象魔术方法_成员有 private 访问,但类有魔术方法 __get-程序员宅基地

文章浏览阅读61次。它们在特定的情况下被触发,都是以双下划线开头,你可以把它们理解为钩子,利用魔术方法可以轻松实现PHP面向对象中重载(Overloading即动态创建类属性和方法)。__set( $property, $value )` 方法用来设置私有属性, 给一个未定义的属性赋值时,此方法会被触发,传递的参数是被设置的属性名和值。当然,只需要在类里定义__isset()方法,就可以在对象外部利用isset()方法判断某个私有属性是否被设置了。如果参数是公有属性,那么可以利用isset()方法判断属性是否被设置;_成员有 private 访问,但类有魔术方法 __get

unable to connect to 172.20.10.10:5555 解决办法-程序员宅基地

文章浏览阅读1.4w次。adb通过wifi调试Android设备,在连接过程中经常显示以下错误:unable to connect to 172.20.10.10:5555解决办法第一步:Android设备开启USB调试,并且通过USB线连接到电脑。第二步:在终端执行以下命令”adb tcpip 5555“。第三步:在终端执行以下命令”adb c_172.20.10.10

PHPcms V9 任意文件上传漏洞_phpcmsv9漏洞-程序员宅基地

文章浏览阅读5.6k次,点赞2次,收藏5次。之前碰到一个站点,存在目录遍历,看到upload目录下上传了好多php的大马,说明这网站肯定是有漏洞的,看了一下网站指纹,是phpcms的,正好借此网站复现一下此漏洞一丶漏洞简介此漏洞爆出来的时间是2017年4月份左右,时间比较长了,存在任意文件长传,漏洞利用比较简单,危害很大,可以直接前台getshell。二丶影响版本phpcms v9.6.0三丶漏洞分析漏洞利用点是注册的地方,我们来看一下网上常用的一个payload:http://127.0.0.1/index.php._phpcmsv9漏洞

随便推点

ESP8266-01S与PC通过网络助手的测试的AT指令_at+cipstatus=4-程序员宅基地

文章浏览阅读3.5k次,点赞3次,收藏26次。这阵子在学esp8266+stm32的知识,从小白学起,一步一步记录着工具:TTL-usb,esp8266-01s,杜邦线,xcom串口助手如图:串口助手连线:接线的时候要注意接好,我一开始没有接好,芯片会发烫,电压选用3.3vTTL ESP8266 3.3V 3.3V TXD RX RXD TX GND GND 注..._at+cipstatus=4

ribbon基于接口配置超时_Spring cloud 超时及重试配置【ribbon及其它http client】-程序员宅基地

文章浏览阅读990次。开启重试在某些情况下是有问题的,比如当压力过大,一个实例停止响应时,路由将流量转到另一个实例,很有可能导致最终所有的实例全被压垮。说到底,断路器的其中一个作用就是防止故障或者压力扩散。用了retry,断路器就只有在该服务的所有实例都无法运作的情况下才能起作用。这种时候,断路器的形式更像是提供一种友好的错误信息,或者假装服务正常运行的假象给使用者。不用retry,仅使用负载均衡和熔断,就必须考虑到是...

java九大内置对象和四大作用域-程序员宅基地

文章浏览阅读2.5k次,点赞11次,收藏20次。Session对象是一个JSP内置对象,它在第一个JSP页面被装载时自动创建,完成会话期管理。从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。当一个客户访问一个服务器时,可能会在这个服务器的几个页面之间切换,服务器应当通过某种办法知道这是一个客户,就需要Session对象。_九大内置对象

动态设置Activity背景图-程序员宅基地

文章浏览阅读6.6k次。一般设置Activity背景都是这样的一段代码:getWindow().getDecorView().setBackgroundResource或getWindow().getDecorView().setBackground这样设置一般是setContentView对应的xml文件根节点没有设置背景,如果跟节点设置了背景属性,那么以上代码设置背景将会无效。原因

程序员的编程、编程的程序员。_编程,程序员-程序员宅基地

文章浏览阅读1.2k次。1、 程序员意味着要编程序。(如果你仅仅想得到一份高薪水的工作,喝喝咖啡就等老板发薪水,我奉劝你还是另找一份更合适的工作,譬如练摊,真的,兄弟,这份工作不适合你) 2、你是学文的还是学理的,编程序也许需要浪漫,但更需要逻辑和严谨。(说坦白点就是,在你没有找到乐趣以前,它很枯燥) 3、你有对新技术追求的热情吗?你有刨根问底的探索精神吗?(热情绝对是最重要的!你仔细思考一下自己的性格适合当程序员吗?) 4、当程序员决不是什_编程,程序员

TensorFlow实战系列10--卷积神经网络简介_卷积神经网络简介及tensorflow搭建可视化网络-程序员宅基地

文章浏览阅读403次。斯 坦 福 大 学(Stanford University) 李 飞 飞(Feifei Li) 教 授 带 头 整理的 ImageNet 是图像识别领域非常有名的数据集。在 ImageNet 中,将近 1500 万图片被关联到了 WordNet 的大约 20000 个名词同义词集上。ImageNet 每年都举办图像识别相关的竞赛(ImageNet Large Scale VisualRecog_卷积神经网络简介及tensorflow搭建可视化网络

推荐文章

热门文章

相关标签