Git Product home page Git Product logo

muduo_knowledge's Introduction

muduo_knowledge

由于之前学习C++的时候,很多东西看过没做过或者做过没看过,要么是通过博客零散的学习的,知识点比较零散,因此需要一次对C++知识梳理和集中实践。这里采用了陈硕编写的muduo网络库的配套书籍中的学习路线。

关于学习方法:

对于理论知识的学习,要集中精力速战速决。而旁枝末节和非本质的知识内容,完全可以留给时间去零碎敲打。

学习步骤:

1.明确这部分技术要解决的问题
2.分析框架
3.形成整体脉络
4.对于重点单点突破

C++基础:

-阅读C++Prime。

-自己编写四个类,以熟悉C++基本操作。分别是

  1. 写一个复数类或大整数类,实现基本加减乘法运算,熟悉封装与数据抽象。

  2. 写一个字符串类,熟悉内存管理与拷贝控制。

  3. 写一个简化的vector类,熟悉基本的模板编程。

  4. 写一个表达式计算器,实现节点继承体系,体会面向对象编程。

-熟悉一些C++常用特性。

Unix网络编程:

-网络编程学习的三个步骤:

(详见Muduo P569)

1.读过教程和文档,做过小练习

2.熟悉TCP/IP协议栈特性与脾气

3.自己写过一个简单的TCP/IP stack

-阅读Unix网络编程卷一卷二:

TCP相关基础知识笔记

练手TCP网络编程值得研究的三个例子:

-echo:熟悉服务端被动接收新连接,收发数据,被动处理连接断开。

-chat:连接之间的数据有交流,从A收到的数据要发给B。

-proxy:更复杂的的连接管理,既要考虑被动接收连接也要考虑主动发起连接。

工具:

学习socket api的利器: IPython。 tcp调试:tcpdump。

muduo_knowledge's People

Contributors

miraclekowk avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.