请选择 进入手机版 | 继续访问电脑版

搜索
查看: 75|回复: 0

Java开发程序员应该掌握的技术

[复制链接]

1

主题

1

帖子

5

积分

普通会员

Rank: 1

积分
5
 楼主| 发表于 2019-11-5 14:28:00 | 显示全部楼层 |阅读模式
和一种语言一起成长和点燃学习激情的最好办法是,使用你学到的知识来帮助解决令你感到苦恼的问题。不仅要学习语言本身,也要学习语言可以如何应用到实际生活中的问题。今天千锋哈尔滨小编就给大家介绍下Java开发程序员应该掌握的技术!
1、通信协议
各个子系统之间要进行通信,必须要选择一种或多种通信协议,现代比较常见的是基于HTTP的协议。所以,了解更多协议对于学习安全也有很大的帮助,比如MySQL和PostgreSQL的协议都有安全的设计。
2、序列化
系统之间通过网络传输或者存储到文件时,肯定只有一种格式,就是字符串。要将复杂的数据结构与字符串之间进行转换,就需要用到序列化,简单的序列化如JSON和XML,稍微复杂些的有protobuf、thrift等。需要了解所有这些序列化方式之间的优势和劣势。比如JSON和XML只能用于传递数据,而protobuf与thrift还可以用来做RPC协议,至少要确保每种序列化方式都自己尝试过hello world。
3、数据库
要形成自己的数据库选取风格,就需要先对自己常用的数据库有足够深入的了解。对于关系式数据库,除了一般的Create、Query、Delete、Update操作外,还需要能自行建立索引、数据库的平行扩展、了解如何进行性能调试,以及了解常见查询操作的性能级别、常见的查询性能瓶颈点。
4、存储
需要关注的是每个目录下的文件数不应该太多,当一个目录下文件数(实际是inode数量,包括文件和目录)超过1000时,性能就很差了。所以,建议将一个系统中要存储的对象ID做16进制,随后每2位16进制做成一级目录,这样可以确保每个目录下的文件数不会超过256个。现代云计算,如Amazon S3已经把存储的问题解决的很好了,如果可能,尽量用好。
5、应用框架
多注意了解自己关注方向的所有框架的优势和劣势,选择最适合自己的,而不是选择最新的。
6、接口
主要是指接口协议,或者RPC协议。系统之间进行RPC调用很常见,注意选择自己能熟练使用的,并且有所深入研究,并了解其常见的限制。RESTful API就是个比较常见的选择,但是性能并不好,自己要对性能等参数有量化的了解,而不是简单的一句好或不好。短连接接口在三次握手时是串行操作,要了解其为何耗时。除了要在如上的各种不可或缺的组成部分中有所了解,还要能清楚地知道一些常 用系统模块的原理,并能够很深入的玩起来。

www.csnxwt.com/

www.gynxwt.com/


快速回复 返回顶部 返回列表