Efficient Input/Output using JAVA IO, NIO and NIO2

所在平台: Udemy

课程主页: https://www.udemy.com/course/efficient-inputoutput-using-io-nio-and-nio2-in-java/

课程评论:没有评论

第一个写评论        关注课程

课程简介

课程名称:使用JAVA IO、NIO和NIO2的高效输入/输出 课程概述:在实际生产应用中,您可能注意到70%到80%的时间都花在输入/输出(IO)操作上,包括从数据库、文件、磁盘读取和写入数据,以及调用API等。这是因为数据需要被持久化以备未来使用。为了提高应用程序性能,您需要理解以下三个重点:1. 计算应高效进行以节省CPU资源;2. 内存(RAM)的使用应有效且高效,因为其资源有限且昂贵;3. IO操作需高效执行。第三个要点最为重要,因为根据多年大规模生产应用开发的经验,绝大多数应用花费70%的时间在IO操作上。 在本课程中,我们将学习有效的Java IO、NIO和NIO2。课程内容包括:IO基础与经典IO,Classic IO于1996年引入(Java 1),之后在2002年随着Java 4的发布进行了更新,以支持非阻塞IO;2011年,Java NIO又增加了新的功能。即使您对NIO或非阻塞IO不熟悉,也不用担心,我们将逐步讲解。我们将从经典IO开始,讨论文件处理、读取和写入原始字节的基本模式、使用InputStream和OutputStream、读取字符的方法(Reader和Writer),以及如何读取和写入结构化数据。此外,我们还将讨论序列化与反序列化的概念,以存储Java对象的状态。 在经典IO部分结束后,我们将进入NIO部分,首先介绍NIO提供的Path工具,它是文件操作的替代方案。接着我们将深入探讨非阻塞IO及其相关API的工作原理,以及NIO2带来的新特性。在整个过程中,将有大量的动手编码,强烈建议参与编程以加深理解。同时,本课程提供30天退款保证,如果您不满意,可以随时退课。 若您希望成为一名优秀的Java程序员,这门课程是您必学的内容。完成课程后,您将能够编写高效的IO程序。欢迎您加入课程,一起开始这段学习之旅!

课程评论(0条)

课程详情

If you have ever worked on a real life production application you might have noticed that 70 to 80% of the time, applications are busy doing IO or Input Output.IO in the sense: Reading, writing from and to Databases, Files, Disks, calling some APIs etcetera.Why so ? Because Data needs to be persisted somewhere to be used in Future. While an application runs it loads the data in RAM but you know that It's not permanent.So, To make the application perform better, You need to understand three things? 1. Computing should be done efficiently to save the CPU2. Space or RAM should be used effectively and efficiently because that is limited and expensiveAnd Third and most important thing is 3. IO should be done in an efficient way.Why am I calling 3rd one most important ? Because if you believe my several years of experience in building large scale production ready applications, Most of the applications spend 70% time doing IO.So In this course what we gonna learn ? We are going to learn Effective Java IO, NIO and NIO2And what is java way of handling IO? Let me quickly brief the agenda of the course to you...In first few sections of the course.we will learn...I/O Basics and classic IO IO was introduced in 1996 (Java 1).Which is the classic version. IO was pretty popular then, and then modern systems started getting more performant.And then The next IO upgrade came with java version 4 (2002), which is called NIO.To add support for non-blocking IO for modern operating systems.And then in 2011, we got new functionalities in Java NIO. Don't worry if you are not familiar with NIO or with the non-blocking stuff, Or even not familiar to IO. we will discuss everything in this course. We will start with the classic io,Here We will talk about file handling, the basic patterns to read and write raw bytes, which is done using InputStream-Output Stream, we will talk about how we read characters while using classic IO, we have Reader and writers for that.And we will talk about few more important things from Classic IO,We will learn to read and write structured data, in quite similar fashion to how we do reads and writes in database, for this we will discuss Data streams.We are going to cover Random access File for that.Then how to read write a mix of different kinds of data, for example a mix of bytes and characters.After that we will discuss a very important concept, called serialization-Deserialization, to store state of a java object.And right after that, we gonna discuss some utility kind of stuff that supports Java IO.Whenever I say classic IO, I mean the stuff under io package but when I say Java IO, It includes everything that supports Input-output, whether it is ClassicIO, NIO or NIO2.So, here will see some utility stuff.Like how we can improve performance of our code, even if we are not using NIO, for that we will discuss compression techniques. Compression techniques are not io package specific, they are added under the util package in java 7. we can use compression wherever it's needed.So, we will use compressions to enhance the performance while working with IO.We will also discuss few classes which support io and are used in day to day programming.So, that's what we gonna cover under classic IO.Next comes NIO. We are not going to start with understanding what NIO is, rather we will first discuss The path utility provided by NIO. It's a utility interface and is used almost everywhere, It's kind of replacement to file utility in today's java.The reason to discuss it earlier is that, before actually starting NIO, we will be familiar with the very basic pattern of Java IO to access the files and to smoothly work with them.Then we will jump to NIO, Here we will understand what Non-blocking IO is andThen we will be all set to understand the APIs under nio. Will see how they work.And then the enhancements and the new stuff that came with nio2.And all this will come with hands-on Coding. I strongly recommend to program along with me if you want to understand the things better. We are going to write a lot of programs!!Still in doubt ? Don't worry the course comes with a 30 days money back guarantee! So if you are not happy you may return the course.If you want to become a Great Java programmer.. this is a must learn stuff for you and I strongly believe after completing the course you will be able to write efficient programs in terms of IO.Welcome you again to the Journey see you in the course...

课程标签

0人关注该课程

主题相关的课程