1. 熟悉Unix/Linux Shell和常见的命令行 (start : 7.9 - end: 7.12)
1.文件系统结构和基本操作 ls/chmod/chown/rm/find/ln/cat/mount/mkdir/tar/gzip …
2.学会使用一些文本操作命令 sed/awk/grep/tail/less/more …
3.学会使用一些管理命令 ps/top/lsof/netstat/kill/tcpdump/iptables/dd…
4.了解/etc目录下的各种配置文章,学会查看/var/log下的系统日志,以及/proc下的系统运行信息
5.了解正则表达式,使用正则表达式来查找文件。(grep 简单查找文件内容,find 简单查找文件)
2. 学习Web基础(HTML/CSS/JS) + 服务器端技术 (LAMP) (start : 7.12 )
1. 学习HTML基本语法
2. 学习CSS如何选中HTML元素并应用一些基本样式(关键词:box model)
3. 学会用 Firefox + Firebug 或 chrome 查看你觉得很炫的网页结构,并动态修改。
4. 学习使用 Javascript操纵HTML 元件。理解DOM和动态网页(http://oreilly.com/catalog/9780596527402) 网上有免费的章节,足够用了。或参看 DOM 。
5. 学会用 Firefox + Firebug 或 chrome 调试Javascript代码(设置断点,查看变量,性能,控制台等)
6. 学习PHP,让后台PHP和前台HTML进行数据交互,对服务器相应浏览器请求形成初步认识。实现一个表单提交和反显的功能。
7. 把PHP连接本地或者远程数据库 MySQL(MySQL 和 SQL现学现用够了)
8. 跟完一个名校的网络编程课程(例如:http://www.stanford.edu/~ouster/cgi-bin/cs142-fall10/index.php ) 不要觉得需要多于一学期时间,大学生是全职一学期选3-5门课,你业余时间一定可以跟上
9. 学习一个javascript库(例如jQuery 或 ExtJS)+ Ajax (异步读入一个服务器端图片或者数据库内容)+JSON数据格式。
10. HTTP: The Definitive Guide 读完前4章你就明白你每天上网用浏览器的时候发生的事情了(proxy, gateway, browsers)
11. 做个小网站(例如:一个小的留言板,支持用户登录,Cookie/Session,增、删、改、查,上传图片附件,分页显示)
12.买个域名,租个空间,做个自己的网站。
3、 C语言和操作系统调用
1. C程序设计语言
2. 学习Unix/Linux系统调用(Unix高级环境编程)
- 用这些系统知识操作一下文件系统,用户(实现一个可以拷贝目录树的小程序)
- 用fork/wait/waitpid写一个多进程的程序,用pthread写一个多线程带同步或互斥的程序。多进程多进程购票的程序。
- 用signal/kill/raise/alarm/pause/sigprocmask实现一个多进程间的信号量通信的程序。
- 学会使用gcc和gdb来编程和调试程序(参看我的《用gdb调试程序》)
- 学会使用makefile来编译程序。(参看我的《跟我一起写makefile》)
- IPC和Socket的东西可以放到高级中来实践。
3. 学习Windows SDK编程(Windows 程序设计 ,MFC程序设计)
- 写一个窗口,了解WinMain/WinProcedure,以及Windows的消息机制。
- 写一些程序来操作Windows SDK中的资源文件或是各种图形控件,以及作图的编程。
- 学习如何使用MSDN查看相关的SDK函数,各种WM_消息以及一些例程。
- 这本书中有很多例程,在实践中请不要照抄,试着自己写一个自己的例程。
4、 算法
1. 算法导论视频
2. 每天 SZU OJ刷题 > 2