所處部份 主講內容 技術要點 學習目標
第二部份:
C高級編程 1.內存分區(qū)、函數(shù)調用模型 1.數(shù)據(jù)類型、變量的含義;2.內存四區(qū)特點;3.函數(shù)的調用模型;4.內存操作函數(shù);5.宏定義與預處理 可掌握的核心能力:
1、掌握C語言中的字符串、一維數(shù)組、二維數(shù)組的用法;
2、掌握一級指針,二級指針,三級指針的高級用法,理解N級指針概念,指針數(shù)組和數(shù)組指針;
3、學會結構體、文件的使用;
4、C語言接口封裝設計。
可解決的現(xiàn)實問題:
1、可以實現(xiàn)自己開發(fā)小程序,例如貪吃蛇一類的用C語言寫的程序;
2、應用C語言接口封裝設計的方法,進行企業(yè)項目開發(fā)。
2.指針高級 1.指針基本使用;2.指針的步長的概念;3.指針簡介賦值;4.指針以及多級指針做函數(shù)參數(shù)的特性與使用;5.通過指針操作字符串;6.const類型修飾符;7.位的邏輯運算符;8.移位運算符;9.數(shù)組指針與指針數(shù)組;10.多維數(shù)組做函數(shù)參數(shù);11.結構體嵌套一級指針;12.結構體嵌套二級指針;13.淺拷貝深拷貝
3.函數(shù)指針與回調函數(shù) 1.封裝和設計的思想;2.函數(shù)指針定義的三種方式;3.回調函數(shù)
4.數(shù)據(jù)結構與鏈表 1.鏈表的基本概念;2.單鏈表的相關操作
5.遞歸函數(shù) 1.遞歸函數(shù)的概念;2.遞歸的使用
6.數(shù)據(jù)結構與算法 1.大O表示法基本概念;2.線性表順序存儲和鏈式存儲概念;3.線性表的順序存儲(數(shù)組);4.線性表的鏈式存儲(鏈表);5.隊列的順序與鏈式存儲;6.棧的順序與鏈式存儲;7.二叉樹基本操作;8.常用排序算法
7.接口的封裝和設計 1.函數(shù)的封裝設計;2.解耦合的設計理念;3.模塊實現(xiàn)與業(yè)務分離的思想
第三部份:
C++核心編程
與桌面應用開發(fā) 1.C++對C的擴展、引用 1.C++語言的命名空間的使用;2.C++對C的擴展;3.C、C++中const不同之處;4.定義和使用引用類型變量 可掌握的核心能力:
具備常用C++方向基本知識和常用技能。
可解決的現(xiàn)實問題:
能夠具備基本的開發(fā)能力,看懂簡單代碼,實現(xiàn)開發(fā)簡單程序軟件的功能。
2.函數(shù)重載 1.類的的默認參數(shù);2.c++的函數(shù)重載;3.類和對象的基本概念;4.類的封裝和訪問控制權限;5.類和對象進行簡單編程
3.類和對象 1.類的構造函數(shù);2.類的析構函數(shù);3.explicit關鍵字作用;4.類的拷貝構造函數(shù)的使用;5.深拷貝和淺拷貝問題;6.多個對象的構造和析構函(初始化列表)
4.對象的動態(tài)分配和釋放 1.類和對象的動態(tài)分配和釋放內存;2.靜態(tài)成員變量和函數(shù)的使用;3.C++編譯器對成員變量和成員方法的處理機制;4.this的使用;5.友元函數(shù);6.友元類
5.運算符重載 1.運算符重載概念;2.常用運算符重載;3.自定義的智能指針類;4.實現(xiàn)一個自定義的String類
6.類的繼承和派生、多態(tài) 1.繼承中的訪問控制;2.繼承中的構造和析構;3.多繼承;4.virtual繼承的基本概念;5.多態(tài)的使用(多態(tài)成立條件、使用場景);6.區(qū)分成員函數(shù)的重寫和重定義;7.虛函數(shù)表指針,分步初始化;8.虛函數(shù);9.純虛函數(shù);10.抽象類的使用;11.虛析構函數(shù)和純虛析構函數(shù)
7.面向抽象類編程與設計模式 1.設計模式原則;2.常用的設計模式
8.函數(shù)模板、類模板 1.函數(shù)模板基本語法;2.函數(shù)模板和函數(shù)重載的調用規(guī)則;3.編譯器對模板的編譯過程;4.類模板的概念和基本語法;5.繼承中的類模板;6.類模板中普通友元函數(shù)、友元函數(shù)模板的處理
9.異常、I/O流 1.C++類型轉換;2.C++標準異常庫;3.異常的拋出與捕獲;4.C++標準I/O流(cin、cout);5.C++的文件I/O類的使用
10.STL 1.STL容器、迭代器的原理;2.序列式容器vector、string、deque;3.堆棧容器stack、quenue;4.雙向鏈表容器list;5.關聯(lián)式容器set、multiset;6.對組pair;7.關聯(lián)式容器map、multimap;8.STL算法詳解
11.Qt常用的控件 1.Qt的基本概念;2.Qt應用程序框架;3.Qt信號和槽的應用;4.Qt窗口系統(tǒng);5.常用對話框的使用;7.Qt界面設計;8.Qt事件處理 可掌握的核心能力:
具備常用QT和MFC界面開發(fā)的基本技巧和常用技能;
可解決的現(xiàn)實問題:
能夠實現(xiàn)簡單的前臺界面開發(fā)。
市場價值:
熟練學習和掌握后,可滿足企業(yè)開發(fā)的初級需求,根據(jù)市場反饋數(shù)據(jù)看,薪資普遍在9000-13000元 /月。
12.Qt繪圖與文件操作 1.QPainter繪圖;2.update函數(shù);3.繪圖設備(QPixmap、QBitmap、QImage、QPicture);4.文件操作
13.Qt界面編程實戰(zhàn)案例 1.汽車銷售管理系統(tǒng)ui設計;2.汽車銷售管理系統(tǒng)車輛管理模塊功能開發(fā);3.汽車銷售管理系統(tǒng)銷售統(tǒng)計模塊功能開發(fā);4.汽車銷售管理系統(tǒng)人員登陸模塊功能開發(fā);5.人員和車輛信息文件讀寫類的使用
14.MFC對話框與常用空間 1.Windows編程的基本概念;2.Windows編程模型;3.MFC應用程序框架;4.創(chuàng)建MFC應用程序;5.MFC函數(shù)Ex后綴和Afx前綴的作用;6.創(chuàng)建基于對話框的MFC應用程序;7.模態(tài)對話框和非模態(tài)對話框;8.常用控件
15.MFC界面編程案例 1.銷售管理系統(tǒng)ui設計;2.銷售管理系統(tǒng)銷售管理模塊功能開發(fā);3.銷售管理系統(tǒng)庫存管理模塊功能開發(fā);4.銷售管理系統(tǒng)個人信息模塊功能開發(fā);5.銷售管理系統(tǒng)人員登陸模塊功能開發(fā);6.人員和商品信息文件讀寫類的使用
第四部份:
Linux高并發(fā)服務器開發(fā) 1.Linux命令 1.Linux下的目錄結構;2.工作日程應用命令;3.Ubuntu下的軟件安裝和卸載; 可掌握的核心能力:
具備常用后臺服務器開發(fā)方向基本知識和常用技能,并具備基本的開發(fā)能力。
可解決的現(xiàn)實問題:
能夠實現(xiàn)包括服務器后臺、前端界面、服務器數(shù)據(jù)庫的開發(fā)。
2.Linux開發(fā)與調試工具 1.vim命令模式下操作;2.vim末行模式下操作;3.vim的配置4.gcc的工作流程和掌握常見參數(shù);5.Linux下的靜態(tài)庫與共享庫(windows動態(tài)庫)的制作和使用;6.Makefile;7.gdb調試;8.pcb和文件描述符,虛擬地址空間;9.Linux系統(tǒng)IO函數(shù);10.阻塞和非阻塞的概念
3.系統(tǒng)I/O操作 1.stat/lstat函數(shù);2.文件屬性相關函數(shù);3.鏈接相關概念及函數(shù);4.目錄操作相關概念及函數(shù);5.dup、dup2函數(shù);6.fcntl函數(shù)
4.進程與IPC通信 1.進程相關的概念;2.進程操作相關函數(shù);3.孤兒進程;4.僵尸進程;5.進程回收;6.進程間通信
5.線程與并發(fā)同步 1.互斥量;2.死鎖以及解決方案;3.讀寫鎖;4.條件變量;5.條件變量實現(xiàn)生產消費者模型;6.信號量實現(xiàn)生產消費者模型;7.線程同步解決哲學家就餐問題;
6.信號 1.信號中的基本概念;2.使用信號相關的函數(shù);3.信號內核實現(xiàn)原理;4.信號捕捉函數(shù)signal、sigaction;5.使用信號完成子進程的回收;6.發(fā)送信號時如何進行參數(shù)傳遞;
7.網絡協(xié)議與網絡編程 1.OSI七層模型結構;2.TCP/IP 4層模型結構;3.B/S、C/S優(yōu)缺點對比;4.常見網絡協(xié)議格式;5.套接字;網絡字節(jié)序;6.IP地址轉換函數(shù);7.編寫TCP的C/S網絡程序;8.UDP通信機制與模型;9.本地套接字;10.三次握手建立連接過程;11.四次握手斷開連接過程;12.滑動窗口概念;13.錯誤處理函數(shù)封裝;14.TCP狀態(tài)轉換;15.2MSL概念;16.端口復用方法;17.半關閉;
8.高并發(fā)服務器開發(fā)
(poll、select和epoll) 1.多路IO轉接模型;2.select函數(shù);3.fd_set相關操作函數(shù);4.select多路IO轉接模型poll操作函數(shù);5.epoll多路IO模型;6.線程池模型的設計思想;7.多進程并發(fā)服務器;8.多線程并發(fā)服務器;9.libevent庫;10.epoll反應堆模型;11.使用BufferEvent、evBuffer;12.git代碼管理;
9.Linux并發(fā)服務器項目實戰(zhàn) 通過項目實戰(zhàn),使大家熟悉Linux知識的應用,已經如何開發(fā)服務器程序,從項目需求分析項目設計,到項目實現(xiàn),對程序開發(fā)有個整體的認識。
第五部份:
Windows/Linux
跨平臺企業(yè)項目實戰(zhàn) 1.oracle 1.簡單查詢;
2.oracle的常用函數(shù);
3.多表查詢;
4.集合操作;
5.DDL操作管理表;
6.DML管理數(shù)據(jù);
7.其它數(shù)據(jù)庫對象;
8.PL/SQL編程;
9.存儲過程與存儲函數(shù)
10.觸發(fā)器;
11.工具查詢;
12.解決Top-N問題; 可掌握的核心能力:
掌握常用數(shù)據(jù)庫類型的操作技巧和簡單開發(fā)。
可解決的現(xiàn)實問題:
熟練應用項目中使用的數(shù)據(jù)庫知識,能做簡單的數(shù)據(jù)庫開發(fā)。
2.mysql 1.mysql表的約束;
2.mysql中出現(xiàn)的中文亂碼問題;
3.mysql函數(shù)庫連接數(shù)據(jù)庫;
4.mysql API訪問數(shù)據(jù)庫;
5.使用基礎類API實現(xiàn)mysql客戶端工具;
6.預處理類API訪問mysql數(shù)據(jù)庫;
7.使用api修改mysql事務特性;
3.企業(yè)財富庫的接口的封裝和設計 1.外聯(lián)接口
2.線程同步
3.socket
4.線程池
4.windows經典應用程序開發(fā) 1.windows下圖形化界面;
2.設計模式的應用
3.異步通信
4.xml
5.json
6.html
7.共享內存,消息隊列
5.Linux信息安全開發(fā) 1.共享內存,消息隊列
2.秘鑰加密
3.接口封裝設計
4.ASN.1
5.html
6.程序操作數(shù)據(jù)庫
6.跨平臺兼容開發(fā)與調試 1.windows與linux跨平臺通信
2.windows與linux跨平臺調試
大項目1:
金融類安全傳輸平臺
本項目類似于支付寶與銀行的匯帳,二者相互識別與身份認證,是一款基礎設施類項目,實現(xiàn)標準的信息安全服務;
第六部份:
分布式游戲服務器開發(fā) 1.Lua編程開發(fā) 1.Lua環(huán)境安裝
2.Lua基本語法
3.Lua數(shù)據(jù)類型
4.Lua循環(huán)與流程控制
5.Lua函數(shù)與數(shù)組
6.Lua元表
7.Lua中的的協(xié)程
8.Lua模塊與包
9.Lua面向對象 可掌握的核心能力:
掌握高性能服務器解決方案(負載均衡);
掌握分布式存儲解決方案(redis集群/mysql集群/ mongodb集群);
掌握項目壓力測試和單元測試,掌握服務器邏輯開發(fā)。
可解決的現(xiàn)實問題:
解決大型互聯(lián)網公司并發(fā)高吞吐問題;
解決分布式web應用服務器集群問題。
2.游戲開發(fā) 1.游戲框架
2.物理檢測引擎
3.設計模式
4.MVC架構
3.虛擬化Docker 1.Docker容器基礎指令
2.Docker網絡配置
3.DockerFile、DockerCompose
4.分布式文件存儲服務器和緩存服務器 1.fastDFS分布式存儲系統(tǒng)應用開發(fā)
2.redis緩存開發(fā)
5.深入理解nginx 1.nginx的部署
2.nginx維護機制
3.nginx通信架構模型
4.nginx的高并發(fā)性能架構
6.負載均衡反向代理 1.基于nginx搭建反向代理
2.分布式web應用服務器搭建
7.git 1.代碼版本控制工具git的常用指令
2.git的團隊開發(fā)組建
3.git代碼倉庫的創(chuàng)建與管理
大項目2:
分布式游戲服務器開發(fā) 本項目是指通過集群應用、網絡技術或分布式文件系統(tǒng)等功能,實現(xiàn)的游戲業(yè)務處理、并發(fā)的服務器實現(xiàn)。
第七部份:
入侵檢測與網絡攻防 1.Kali Linux操作系統(tǒng)實戰(zhàn) 1 Kali Linux介紹
2.Kali Liunx安裝
3.Kali Linux系統(tǒng)更新
4.Kali Linux基本配置
5.Kali Linux 常用攻擊工具 可掌握的核心能力:
具備市場主流網絡安全攻防技術;
具備流量監(jiān)測等核心安全研發(fā)能力。
可解決的現(xiàn)實問題:
解決國內外敵對勢力通過隱匿通道(如VPN、即時通信軟件)有限監(jiān)控手段現(xiàn)狀問題;
解決私有加密應用和網絡異常通信行為,并能對加密流量進行還原和審計。
2.網絡防御技術 1.網絡攻防環(huán)境搭建
2.信息安全理論
3.Linux基本安全防護技術
1)訪問權限
2)訪問控制列表ACL
3)文件屬性
4)PAM技術
5)特權機制
4.安全審計
5.網絡嗅探及協(xié)議分析技術
1)Wireshark抓包工具
2)Tcpdump抓包工具
3)網絡嗅探技巧
6.Linux防火墻技術
1)Iptables詳解配置規(guī)則
2)TCP Warrpper
7.Linux 入侵檢測分析技術
1)Debian 9 入侵分析
2)開機自啟服務與安全防護機制
3.網絡攻擊技術 1.安全滲透
2.范圍界定
3.信息收集與DNS記錄分析
4.目標識別技術
1)識別目標主機
2)系統(tǒng)指紋信息識別
5.服務枚舉
1)端口掃描
2)Nmap識別服務指紋信息
6. DDOS分布式拒絕服務攻擊
1)TCP SYN Flood攻擊
2)TCP Reset攻擊
7. 口令暴力破解
8. 網絡攻防藝術
9. 滲透測試實戰(zhàn)
4.DPI(深度包檢測) a) 不少于30大類的網絡應用的識別。
b) 支持HTTP、SMTP、POP3、IMAP等幾十種周知協(xié)議的解析與還原。
c) 加密應用識別:
VPN識別:應支持PPTP、L2TP、OpenVPN、SSTP、IPSec、Cisco VPN的識別和上下線檢測;
即時通信識別:應支持微信、QQ、陌陌、WhatsAPP、Skype等識別。
翻墻軟件識別:應支持Goagent、SSH、Shadowsocks、VPN Gate、賽風3、BTSync、Fqrouter2、OpenDoor、Puffin、無界、紐約時報、Onavo、曲徑、Operamini等的識別和上下線檢測。
通用加密應用識別:應支持HTTS、FTPS、POP3S、SMTPS、IMAPS、Gmail等的識別。
特種木馬:應支持若干種特種木馬的加密通道識別。
5.異常通信行為分析 對采集到的netflow原始流記錄或錄制的原始報文等組合應用多種網絡通信行為分析技術,可發(fā)現(xiàn)未知攻擊和未知木馬。
異常域名檢測:通過分析域名請求、應答記錄發(fā)現(xiàn)異常域名,留存域名訪問記錄元數(shù)據(jù)。
異常通信行為分析:發(fā)現(xiàn)網絡異常通信行為,如內部主機和外部主機的間歇性連接、服務器主動外聯(lián)、工作主機非工作時間主動外聯(lián)等。
6.加密流量還原 支持自由門、極速VPN、shadowsocks等隱匿通道的流量破解還原能力,支持Talkbox應用的破解還原。
大項目3: 網絡隱匿私有
應用入侵檢測系統(tǒng) 網絡私有應用監(jiān)測系統(tǒng)主要由多核硬件平臺、安全操作系統(tǒng)、監(jiān)測引擎、存儲管理、數(shù)據(jù)關聯(lián)分析、協(xié)同分析、升級管理、維護管理、綜合管理界面等功能模塊組成。
第八部份:
Shell腳本編程
與面試強化 1.Shell高級編程 1.高級指令引入2.Shell函數(shù)3.Shell特殊用法4.Shell案例實戰(zhàn) 課程設計理念:
Shell編程作為Linux平臺高級運維語言,掌握Shell可以在任意Linux/Unix操作系統(tǒng)做系統(tǒng)維護和問題定位。
可掌握的核心能力:
Unix/Linux下Shell編程開發(fā);
掌握Shell的函數(shù)語法和工具制作;
掌握Linux常用Shell指令和問題定位方法;
面試強化訓練。
可解決的現(xiàn)實問題:
復習和鞏固所學知識,進行專題面試強化。
2.面試強化 1.高級數(shù)據(jù)結構2.數(shù)據(jù)庫加強訓練3.面試強化訓練 |