零、苦逼码农的自我修养系列
PS:为什么此部分序号是零而不是一?因为这是作为一个码农所应该具有的基础之中的基础,要想做个好码农,此部分还得花大力气啃书啊,这决定了我们看待计算机程序的高度。
0.1 数据结构与算法学习总结系列
(1)你必须知道的指针基础系列:
{ 预备篇 gcc开发环境搭建 }
{ 指针的移动、指针的危险 }
{ 应用篇 自己实现strlen函数,endsWith函数 }
{ 栈空间与堆空间 }
(2)数据结构温故知新系列:
①线性表部分:
线性表(上){ 数组、ArrayList }
线性表(中){ 单链表、双链表、LinkedList }
线性表(下){ 循环链表、约瑟夫问题 }
②栈与队列部分:
栈 { LIFO、Stack<T> }
队列 { FIFO、Queue<T> }
③树与二叉树部分:
树与二叉树(上){ 二叉树的创建与递归遍历 }
树与二叉树(中){ 二叉树的非递归遍历与二叉查找树 }
树与二叉树(下){ 二叉树的应用:求解四则运算 }
④图部分:
图(上){ 图的基本概念、存储结构与模拟实现 }
图(中){ 图的深度与广度优先遍历算法与实现 }
图(中){ 最小生成树算法介绍与实现 }
图(下){ 最短路径算法介绍与实现 }
⑤查找部分:
查找(上){ 二分查找、二叉查找树、平衡二叉树、SortedDictionary<TKey,TValue> }
查找(下){ 哈希表、Hashtable、Dictionary、三种查找表的对比测试 }
⑥排序部分:
排序:{ 插入排序、交换排序、选择排序、归并排序 }
(3)剑指Offer面试题学习系列:
面试题1:{ 实现Singleton模式 } 面试题2:{ 二维数组中的查找 }
面试题3:{ 替换空格 } 面试题4:{ 从尾到头打印链表 }
面试题5:{ 重建二叉树 } 面试题6:{ 用两个栈实现队列 }
面试题7:{ 旋转数组的最小数字 } 面试题8:{ 斐波那契数列 }
面试题9:{ 二进制中1的个数 } 面试题10:{ 数值的整数次方 }
面试题11:{ 打印1到最大的n位数 } 面试题12:{ 在O(1)时间删除链表 }
面试题13:{ 调整整数数组使得奇数在偶数之前 } 面试题14:{ 链表的倒数第k个节点 }
面试题15:{ 反转链表 } 面试题16:{ 合并两个排序的链表 }
面试题17:{ 二叉树的子结构 } 面试题18:{ 二叉树的镜像 }
面试题19:{ 包含Min函数的栈 } 面试题20:{ 栈的压入、弹出序列 }
面试题21:{ 从上到下打印二叉树 } 面试题22:{ 二叉搜索树的后序遍历序列 }
面试题23:{ 二叉树中和为某一值的路径 } 面试题24:{ 复杂链表的复制 }
面试题25:{ 二叉搜索树与双向链表 } 面试题26:{ 字符串的排列 }
面试题27:{ 最小的k个数 } 面试题28:{ 连续子数组的最大和 }
面试题29:{ 丑数 } 面试题30:{ 第一次只出现一个的字符 }
面试题31:{ 两个链表的第一个公共节点 } 面试题32:{ 数字在排序数组中出现的次数 }
面试题33:{ 二叉树的深度 } 面试题34:{ 翻转单词顺序vs左旋转字符串 }
面试题35:{ 将字符串转换为数字 }
0.2 操作系统原理学习总结系列
① 操作系统导论 { 程序的演变过程、操作系统是什么、操作系统的角色和功能 }
② 操作系统基本概念 { 硬件基础知识、抽象、内核态与用户态、操作系统结构、系统调用 }
③ CPU管理部分:
进程原理(上){ 进程模型、进程的层次结构、进程的状态、进程的缺陷 }
进程原理(中){ 进程调度的定义、各种调度算法、调度异常之优先级倒挂 }
进程原理(下){ 进程通信概要、各种通信方式 }
线程原理(上){ 线程基础、线程同步 }
线程原理(下){ 死锁描述、死锁必要条件、死锁应对方式、哲学家就餐问题、银行家算法 }
④ 内存管理部分:
内存管理(上){ 内存管理概念、基本内存管理 }
内存管理(中){ 页式内存管理、页面置换算法 }
内存管理(下){ 段式内存管理、段页式内存管理 }
⑤ 外存管理部分:
外存管理(上){ 磁盘定义、磁盘结构、访问时间、磁盘调度算法 }
外存管理(下){ 文件系统、文件夹、文件系统的调用 }
⑥ 设备管理部分:
设备管理 { I/O基本原理、I/O硬件与软件、I/O软件的分层 }
0.3 计算机系统原理总结系列
一、基础技术学习总结系列
PS:此部分主要是我阅读一些技术书籍的相关读书笔记,或者是一些基础实践的开发笔记,多对所学所感做一些分享,是一件快乐的事儿!
1.1 基础技术书籍读书笔记
(1)《C#图解教程(第四版)》读书笔记:
该读书笔记的目录:http://www.cnblogs.com/edisonchou/p/3696348.html
(2)《你必须知道的.NET(第二版)》读书笔记:
该读书笔记的目录:http://www.cnblogs.com/edisonchou/p/3719416.html
(3)《CLR via C#(第四版)》读书笔记:
(4)《代码的未来》读书笔记:
② 也谈闭包
1.2 基础知识之美专题系列
(1)【翻译】.NET中六个重要的概念:栈、堆、值类型、引用类型、装箱和拆箱
(2).NET中那些所谓的新语法系列
①Part 1 自动属性、隐式类型、命名参数与自动初始化器
②Part 2 匿名类/方法与扩展方法
③Part 3 内置委托Func/Action与Lambda表达式
④Part 4 标准查询运算符与LINQ查询表达式
(3)ORM框架学习系列
② 轻量级ORM初探-Dapper与PetaPoco的基本使用
(4).NET基础知识拾遗系列(new√)
③ 字符串、集合与流
⑤ 多线程开发基础
1.3 基础开发技术专题系列
(1)自己动手写三层代码生成器
技术点:数据库中几个比较重要的视图(INFORMATION_SCHEMA(.TABLES、.COLUMNS))、类型属性Data_Type与Column_Name、StringBuilder高效的字符串连续拼接等;
(2)自己动手写游戏专题系列:
-->技术点:WindowsForm、GDI+、单例模式、面向对象、碰撞检测等;
-->技术点:WindowsForm、GDI+、单例模式、面向对象、碰撞检测等;
-->技术点:面向对象、GDI+、单例模式、Socket网络编程、多线程/线程池等;
-->技术点:面向对象、组件化设计、观察者模式等;
(3)自己动手写工具专题系列:
-->技术点:HttpWebRequest、JSON解析、异步委托、FileStream文件流等;
-->技术点:WebBroswer、HtmlDocument、Chrome插件开发等;
-->技术点:HTTP协议、TCP协议、Socket连接与响应、文件流、动态反射等;
(4)其他动手实践专题系列:
二、数据库开发学习总结系列
2.1 走向面试之经典的数据库基础复习
(3)二、SQL进阶之CASE、子查询、分页、JOIN与视图
(4)三、SQL进阶之变量、事务、存储过程与触发器
2.2 SQL Server数据库技术内幕学习笔记系列
三、Web开发学习总结系列
3.1 Web前端开发学习系列:
(1)HTML5+CSS3
(2)JavaScript
(3)Bootstrap
(4)AngularJS
(5)Hybird App 混合模式移动App开发
3.2 ASP.Net开发基础温故知新学习笔记系列:
(2)ASP.Net WebForm温故知新学习笔记:
(3)ASP.Net WebForm页面生命周期探索文章(翻译)
(4)ASP.Net请求处理机制探索系列文章:
①Part 1 前奏
②Part 2 核心
③Part 3 管道
④Part 4 WebForm页面生命周期
⑤Part 5 ASP.NET MVC页面生命流程
(5)自己动手写MVC框架系列:
3.3 ASP.Net MVC开发征程学习笔记系列:
(1)ASP.Net MVC开发基础学习笔记:一、走向MVC模式
(2)ASP.Net MVC开发基础学习笔记:二、HtmlHelper与扩展方法
(3)ASP.Net MVC开发基础学习笔记:三、Razor引擎与路由详解
(4)ASP.Net MVC开发基础学习笔记:四、校验、AJAX与过滤器
(5)ASP.Net MVC开发基础学习笔记:五、区域、模板页与WebAPI
3.4 《大型网站技术架构》读书笔记系列
(0)读书笔记目录贴
(1)大型网站架构演化
(2)大型网站架构模式
(3)大型网站核心要素
3.5 大中型网站技术实践系列
3.5.1 初级篇
(1)【应用层】借助Nginx搭建反向代理服务器
(2)【应用层】借助LVS+Keepalived实现负载均衡
(3)【应用层】海量图片的分布式存储设计与实现
(4)【数据层】动手搭建MySQL的主从复制架构
(5)【数据层】动手实现MySQL的读写分离模式(还未写好...)
3.5.2 中级篇
四、面向对象与设计模式学习总结系列
4.1 面向对象分析与设计系列
(1)OOAD利器之UML基础
4.2 设计模式学习笔记系列
五、NoSQL初步探索学习系列
5.1 Key/Value之王—Memcached初探系列
(1)一、掀起Memcached的盖头来
(2)二、Memcached在.Net中的基本操作
(3)三、Memcached解决Session的分布式存储场景的应用
5.2 NoSQL初探之人人都爱Redis系列
(1)Redis简介与简单安装
六、Unity3D游戏开发学习系列
6.1 Unity3D游戏开发初探系列
(2)初步了解3D模型基础
(3)初步了解物理引擎
七、其他扩展学习总结系列
7.1 Hadoop基础学习总结系列
该学习笔记的文章目录索引:http://www.cnblogs.com/edisonchou/p/4440107.html
7.2 Linux下的.Net之旅系列
(1)第一站,CentOS+Mono+Xsp构建最简单的ASP.Net服务器
八、Agile 敏捷开发学习系列
8.1 Scrum Guide-Scrum入门指南
8.2 敏捷软件开发:原则、模式与实践
8.3 测试驱动开发
8.4 Scrum敏捷软件开发
九、谈人生谈理想之扯淡随笔
(1)【整理】.Net开发工程师就业求职技术储备
(2)【转载】我的学习方法 from anytao
(3)【总结】回顾2013,展望2014
(4)【总结】回顾2014,展望2015
(5)【读书感想】《省委班子》读后感:“无所贪欲,何忧何畏”
(6)【总结】回顾2015,展望2016
(7)【读书笔记】《京东技术解密》度数笔记:坚持技术十年如一日
总结
写博客是一个既痛苦又快乐的征途,作为一个计算机专业的毕业生,作为一个IT行业的从业者,看博客、评博客、写博客是一份坚持和一个习惯。每一次写博文,我都力求深入浅出,细致说明,充分地多使用相关图片补充介绍,也形成了一个自己的写作风格。我会坚持,记录自己所学所见所感,分享给各位园友。所以,继续加油!Edison Chou,沿着技术道路一路行走!此刻,脑海中又浮现出古人教育孩子的一句话:“胆欲大,心欲小;智欲圆,行欲方。大志非才不就,大才非学不成。”,其意思大概是:
一个人做事要胆大,有魄力,但考虑事情又要心细、周密;用智要圆通灵活,但行为要端正大方。大的志向没有才干不会取得成就,而大的才干没有勤学苦练也是不成的。
我没有大的志向,也没有大的才干,只有小小的梦想:在这个城市立足,实现自己的价值,养活自己,活的自在。希望我可以通过努力,让梦想不再是幻想!
作者:周旭龙