2017编程提高群第二季火热招募中

想写出漂亮优雅的代码,除了一些表面的技巧之外,更重要的是面向对象的设计(OOD)能力,简单来讲,就是能不能把职责划分到合适的类中, 然后让他们协作起来, 尽可能地预料变化并且封装变化。 

所以封装、继承、多态只是入门, 重点是 OOD和设计模式背后的思想,思想,思想。

2017编程提高群第二季的正餐就是 OOD 和 设计模式。

如果你增删改查做烦了,不妨考虑提升下设计能力。

1正餐

第1周:概述

结构化 vs OO

OO如何实现责任转移和应对需求变更

发现变化并且封装变化

优先使用组合而不是继承

OOD原则之SRP(单一职责原则)

作业:  重构一个发送邮件的程序,使之符合SRP

第2周:OOD原则

OCP(开放封闭原则)

LSP(Liskov替换原则)

ISP(接口隔离原则)

DIP (依赖倒置原则)

备注: 每个原则包含若干练习题

第3周:UML介绍

讲解最常用的类图,顺序图和用例图

作业: 画出两个小系统的类图和顺序图

第4,5 周:案例研究

案例1: 薪水支付,这是一个经典的OO案例, 体现了抽象的重要性,务必要动手写一遍

案例2: 餐馆预约系统, 这是一个简单的系统, 主要练习单一职责原则

第6,7,8周 : 设计模式

设计模式只是面向对象设计思想的体现。  选取最常用的设计模式,重点讲解 why , 以及如何体现OOD的思想。 

学习的方法我希望以讨论为主,点评为辅。 同时希望同学们能分享自己的心得, 有奖金作为奖励。

创建型模式: Builder, 简单工厂,工厂方法,抽象工厂,单例

结构型模式: 组合,代理,装饰,外观,适配器,桥接

行为型模式:观察者, 模板方法,策略,命令,访问者,解释器, 迭代器

第9,10 周: 实现 lite junit

模仿JUnit ,实现一个简单版本,可以对java类进行自动化单元测试,  体验从模式构建架构的思想

第11周: Jive 代码剖析

通过剖析Jive这个大量使用设计模式的古老论坛, 分析它使用设计模式的得与失。

2加餐

1. 数据结构与算法: 继续每周布置/讲解作业

2. 各种基础知识

第一季讲过的内容

计算机的组成

漫谈计算机语言的发展

虚拟内存

进程和线程

程序的机器级表示

IO模型(同步异步,

阻塞非阻塞)

Socket & Https

Web 安全

Java 并发编程之Volatile

Java 垃圾回收

编写可读代码的技巧

文件系统

从字节码到AOP

职场15年:一个普通人的奋斗

面试:建立互信的过程

云计算介绍

敏捷软件开发

第二季的计划

已经确定的部分主题:

Java 并发编程:线程和锁,死锁, 线程池, CAS, ThreadLocal

缓存基础

SSO

微服务

实现一个简单的词法分析器

web socket

软件行业应用层和基础软件技术发展史

分布式文件系统(以FastDFS为例)

........

欢迎补充更多, 会根据大家的需求动态调整内容。

3目标听众

1.  整天做增删改查, 想提升设计能力的同学

2.  课程会使用Java来讲解,需要有Java SE基础

4上课时间

开课时间: 6月11 日

结束时间: 8月13 日

周日晚8点 : 正餐, OOD和设计模式

周三晚8点半: 加餐, 基础知识, 数据结构

形式: QQ群视频,肯定有录屏

5费用

想立刻参与的话,可以给我微信或者支付宝转账, 和第一季一样,还是300元

微信:liuxinlehan

支付宝 :[email protected]

转账后务必加我的微信(liuxinlehan)或者QQ(3340792577) ,我会邀请你入群。

想咨询的话也可以加我的微信或QQ交流。

你看到的只是冰山一角, 更多精彩文章,请移步《码农翻身文章精华

有心得想和大家分享? 欢迎投稿 ! 我的联系方式:微信:liuxinlehan  QQ: 3340792577


码农翻身

用故事给技术加点料

2017编程提高群第二季火热招募中_第1张图片

微信号:coderising

你可能感兴趣的:(2017编程提高群第二季火热招募中)