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