这是一个创建于 2012 天前的主题,其中的信息可能已经有所发展或是发生改变。
之前老早就注册了网易云课堂,迫于没什么时间,又怕没人交流反馈,课程设置的不好反倒浪费了初学者的大量时间,想起年轻的时候也在 暗组 出过不少 web 二进制漏洞的教程 获得过不少好评,现在 25+了 经历太多了俗世,反倒没有过去那份激情了。
目前的计划 :
1. 人数控制在 20-50 之间,教学形式 包括 书籍学习 在线视频教学 文档学习 课后大作业 等形式,时间跨度应该在 12-18 个月左右,目前主要是周末有空做教学,平时应该比较困难。不要轻易被这个时间吓到,现在就业市场形势对新手程序员并不友好,想转行走职业开发这条路相对前些年已经变得更困难了,在学习之前,请先找一份工作养活自己。
2. 有基本的数学 /英语 基础考试 数学包括 基本的集合运算 一阶函数求导 函数的性质 之类,主要会局限在高中课堂的数学知识,数学主要是检验基本的逻辑思考能力跟学习演绎能力,这两点作为职业程序员是非常关键的技能,基本数学能力不达标或者短时间无法学习掌握这些基本的数学工具,大概率上逻辑思维能力较差,不太适合学习编程。英语考察词汇量,小学水平即可,我给一些单词,不要机器翻译(自欺欺人的做法),能给出一般中文释义即可。
3. 课程内容
原则上还是以教授特定技能为辅 /讲解基础知识为主,因为还是想搞职业程序员培训,而不是简单的应用编程工具解决一些简单的问题,例如用 Python 解析一个 excel 文档绘制图标之类的东西,这些应用性质的东西,在掌握基本知识后,是很容易在网络上找到相关应用知识的。
第一阶段的课程从 C/X86 汇编 开始,讲解机器是怎么执行我们的代码的,不会讲编译原理(因为我也只会简单的递归下降解析法),目标掌握 C 语言在 Windows/Linux 下基本编程应用 ,Unix 网络编程, 汇编语言掌握基本的 x86 指令 mov lea jmp call retn 之类 跟调用二进制 ABI 调用约定 fastcall stdcall 之类,这一阶段的课程 C 语言会跟汇编混着一起讲,其实这一直是我个人实践的一个想法,因为我学习编程最初很大兴趣上是为了搞二进制漏洞,结果发现很多 C 语言中很多理解不了的东西在汇编里面很容易就理解了,后来学完之后才发现 C 语言其实就是汇编语言高级一点封装,像 C 语言的 switch case break 就很大程度上沿袭了汇编机器码的执行流程。
第一阶段同时也会讲基本的网络跟操作系统的知识,因为编程离不开这些抽象概念,网络的课程 会从 以太网协议讲起,像 TCP 重传 阻塞之类的高阶网络知识可能不会讲太深,主要 让初学者掌握 UDP TCP 应用,如何排查网络问题。操作系统会从 现代操作系统 第四版中 抽取一些抽象的概念知识。
这一阶段课程的中会穿插讲解一些 win32/64 的基本的软件破解跟逆向分析的知识,主要还是为了检验第一阶段的成果以及提起大家对编程学习的兴趣。
第二阶段的课程从 Java 编程 /Linux 命令行应用 /基本的 Python 脚本应用以及编写,主要集中在 Java 世界中怎么配置各种流行的框架跟应用这些框架,Java 高级反射 /框架原理知识,如何面向对象编程,以及做代码模块化管理 。 学习目标 使用 SpringBoot + Spring + Mybatis + MySQL 构建 一个自己的个人博客 /小型的商城购物系统, 学习阅读 TinySpring 框架的代码, 仿写一个简易的 Spring 框架,Linux 命令行 掌握 标准输入流 /标准输出流 以及使用各种命令组合解决问题,Python 脚本 主要掌握一些字符串的处理 如何发送 http 请求 简易的爬虫编写。
这一阶段是大杂烩,git maven 什么工具都会讲一遍,因为最后学完肯定还是走的就业向这个路径,所以课程会以我目前工作中日常应用的大量工具跟技能知识作为主要目标,中间也会讲很多原理性的东西,如果第一阶段学习认知的比较好,其实这一阶段学习就会变得非常容易。
-----
稍晚一点我会放上 考试的题目跟 QQ 群号
|
|
1
yq970 2019-06-01 14:15:36 +08:00
沙发??
|