Java目前仍然在服务器端拥有广大的市场,如何使用Java进行合理的程序设计,利用Java的特性,使得你的程序更加简单可靠,更高效。通过本课程的学习,增加对设计模式的理解以及Java的特性对设计模式的支持,掌握服务器端开发包的了解,如ZeroMQ、Netty、Akka等。本课程为开发课程,在开发一个高性能可扩展的Java服务器端应用的同时,深入介绍设计模式以及Java的特性对这些设计模式的支持。 本课程为开发实践课程,将针对设计模式及运用、高可靠性等话题进行深入讲解。学员将参与一个Java服务器端程序的开发及测试。该程序包括三个部分: 1、从不同数据源(TCP、串口、文件)获取信号数据——设计模式、反射、annotation 2、对不同信号数据进行解码,解码之后的信息通过多种协议对外发送,提供数据服务——netty、zeromq 3、服务器端提供编码接口,允许输入Java对象,并编码成为信号协议数据,将数据发送至数据源进行控制 4、系统获取解析之后的信号之后,通过异步方式提交后台进行大计算量的处理——Akka及Java多线程编程 5、上述步骤4中的处理结果以服务信息对外发布 软件代码将通过多次迭代重构的方式不断深入设计 《基于案例学Java服务器端程序设计》课程内容: 第1课 课程介绍 介绍本课程将要开发的服务器端程序的基本功能,必要的知识点,以及第一个版本的程序 第2课 工厂模式以及其它模式的使用 通过前两周的开发接触,对已有程序进行优化,利用设计模式使得开发工作更加有弹性,更加能够支持未来的功能扩充。 第3课 反射机制的使用 通过反射机制,建立更加简单的处理模式,使得程序有更加强大的适应性。 第4课 如何处理多线程及提高系统的容错性 服务器端开发避免不了对多线程的使用,本节课讲解对Java多线程处理的分析,以及Akka如何能够在Java多线程的模式下更加灵活的处理相关问题。系统的容错性以及错误恢复能力,对于服务器端程序是重中之重,如何通过Java实现容错性的提高,以及Akka如何在这方面给我们提供一个近似银弹的解决方案? 第5课 Akka究竟能给我们带来什么? 在基本理解服务器端编程(并行、并发处理,其中可能存在的问题,以及容错性处理)面临的挑战以及传统的Java处理方式后,重新审视基于Scala的Akka,看看Akka究竟可以在哪些方面帮助我们简化服务器端编程,使得我们更加便捷的处理我们所面临的挑战。 第6课 ZeroMQ以及Netty(一) 服务器端编程无法避免网络传输以及网络编程,那么通过传统的Java网络开发包,无论是Socket还是NIO,可以给我们带来什么?同时又给我们带来哪些问题?如何利用ZeroMQ、Netty这些第三方包去提高网络开发的效率、稳定性以及性能? 第7课 ZeroMQ以及Netty(二) 进一步深入了解ZeroMQ以及Netty开发。 第8课 网络传输的处理 网络传输既需要考虑跨平台的支持,又需要考虑性能的问题,还需要考虑向下兼容性,如何使得我们的程序能够支持这些方方面面的问题? 第9课 完善建立模拟运行环境 到现在为止,我们已经基本开发完成了一个具有一定的稳定性、效率、容错性以及架构弹性的服务器端应用,如何进一步完善我们的程序? 第10课 负载均衡处理 当应用达到一定规模的时候,我们需要进行一定程度的负载均衡处理,这时候怎么办? 授课时间: 课程将于2016年12月28日开课,课程预计持续时间12周 授课对象: 具备一定Java编程能力,希望在Java编程中提高自己的设计能力的学员,或者希望能够熟悉Java中一些常用的第三方包的学员 授课环境: 测试和演示环境Windows、Linux或Mac OSX 收获预期: 过开发一个服务器端的Java程序,对于Java的特性,例如反射、annotation增进了解,对设计模式在编程中的使用加深理解,同时深入了解一些广为使用的第三方包,如netty、zeromq、protobuf、akka等。同时对Java网络编程及其中涉及的问题及处理方式有更加深入的了解。 讲师简介: 陈轶宁,网名yining,ITPUB社区元老,超级版主,ITPUB Java等开发板块的开创者。曾任职IBM多伦多实验室IT架构师,现从事地理信息系统开发创业工作。 课程试听: 新颖的课程收费形式:“逆向收费”约等于免费学习,仅收取100元固定收费+300元暂存学费,学习圆满则全额奖励返还给学员! 本门课程本来打算完全免费,某位大神曾经说过“成功就是正确的方向再加上适度的压力”。考虑到讲师本身要付出巨大的劳动,为了防止一些朋友在学习途中半途而废,浪费了讲师的付出,为此我们计划模仿某些健身课程,使用“逆向收费”的方法。 在报名时每位报名者收取400元,其中100元为固定 收费,另外300是暂存学费,即如果学员能完成全部课程要求,包括完成全部的书面和互动作业,则300元全款退回。如果学员未能坚持到完全所有的学习计划任务,则会被扣款。期望这种方式可以转化为大家强烈的学习愿望和驱动力! 课程授课方式: 1、 学习方式:老师发布教学资料、教材,幻灯片和视频,学员通过网络下载学习。同时通过论坛互动中老师对学员进行指导及学员之间相互交流。 2、 学习作业:老师每周布置书面及互动作业,学员需按时按质完成作业。 3、 老师辅导:根据作业批改中发现的问题,针对性给予辅导,帮助大家掌握知识。 4、 结业测验:通过测验,完成学业。 您是否对此课程还有疑问,那么请 点击进入 FAQ,您的问题将基本得到解答 咨询QQ: 2222010006 (上班时间在线) 技术热点、 行业资讯,培训课程信息,尽在炼数成金官方微信,低成本传递高端知识!技术成就梦想!欢迎关注! 打开微信,使用扫一扫功能,即刻关注炼数成金官方微信账户,不容错过的精彩,期待您的体验!!! |