我现在很迷茫,不知道怎么选择,请大家帮帮我。
明年我就毕业了,我的方向是逆向,也就是反病毒,反外挂等工作,自己的编程基础差一些,逆向分析基础还可以吧。
前几天我在唐山地区的一个8校软件人才选拔大赛上得奖了,奖品是可以免费学习一个培训机构的所有课程之一(有软件测试,有.NET 有JAVA) 可是我发现这些都没有和我的逆向有关的东西,我改怎么办?随便选一个学?还是放弃呢?价值10000元的培训。说放弃还真有些不忍心,可是如果我要选一个学,哪个和我的逆向或者是桌面开发有帮助呢?貌似这些都是web开发。有人建议我学习软件测试,据说软件测试学习完了 对漏洞挖掘有帮助, 软件测试+逆向分析=漏洞挖掘 。也有人说软件测试一点用处也没有,都是用工具去测试软件,很少要你去看源码。
我有几个问题搞不懂,希望大牛帮我指点一下:
1 我现在不怎么懂c++和vc环境 学。net和java c++和vc环境的水平吗?
2 这里的.NET 只适合web开发?适合桌面开发吗?也就是说如果我跟着学,以后来搞。net逆向前景可好?
3 这里的软件测试,只适合web方向?适合c/C++里面的测试吗?
4 有人说搞逆向要熟悉编程,那么这3个方向哪个更可以帮助我更好的逆向
5 如果你是我,是随便选择一个,还是放弃呢?理由是?
问题就这么多了,现在好迷茫,希望大家帮帮我
.NET课程设置
第一阶段:主要讲述公共课程,趣味性为主,引用丰富多彩的案例,树立继续学习的信心;同时培养学员的逻辑思维能力,在编程方面具有一定的感性认识
第二阶段:主要讲述软件开发知识,一个中小项目案例贯穿教学,以理解概念为主,培养自学能力。课程讲述完成后,学员也就有能力独立完成一个中小项目。
技能上主要训练面向对象的思想、代码编写的熟练度和规范度,开始接触企业的应用,在编程方面具有一定的理性认识
第三阶段:实训提高阶段,我们主要讲述开发框架、设计模式、团队协作;学员主要几个人完成一个中大行项目;
面向就业,企业项目实战训练为主,培养学员独立分析问题、解决问题、总结问题的能力和习惯
技能上讲解业务流程、行业应用、主流框架技术,按照企业常用的开发模式、管理流程,组织进行实战训练
六、课程安排
1. 公共基础课程
1.1 数据库
讲授Sql Server 2005数据库。包括:表、查询、视图、存储过程、触发器、函数、索引、规则、DDL语句、DML语句、动态SQL等。
经过本课程的学习以后学生具备开发基于数据库软件的基础能力。
1.2 HTML
讲授Html标记语言。包括:html 4.1 语言规范内容、xhtml语言规范内容。
经过本课程的学习以后学生具备手写html网页的能力,本课程属于将来b/s架构程序开发的基础课程。
1.3 CSS
讲授CSS样式表,包括:CSS样式表2.0规范内容。
经过本课程的学习以后学生具备使用DIV+CSS设计网页布局的能力,具备使用CSS修饰HTML网页内容的能力。
1.4 JavaScript
讲授JavaScript 1.5规范内容。
1.5 Jquery
1.6 OOAD&UML
2. DotNet课程
2.1 C#
2.2 ASP.Net
2.3 Ajax
2.4 SliverLight
2.5 微软前沿课程
2.6 项目案例、项目实战
软件测试课程设置
课程介绍
1、语言基础(C#语言)
为了满足软件测试中的白盒测试要求,需要测试工程师具备编程语言基础。
在语言基础课程中,将为学员讲解C#程序设计语言,C#语言目前是较为主流的程 序设计语言,也是目前.net平台下的主流编程语言。C#语言包含了目前其他程序语言所 具有的公共性知识,将来在实际工作中转换别的程序设计语言时也很容易。
2、数据库基础
绝大部分项目都会涉及到数据库系统,需要质保工程师掌握一定的数据库技能。数 据库课程中主要以Sql Server为主,以MySql和Oracle为辅。讲解DML语句、DDL语句、 存储过程、视图、触发器、索引、视图、优化、管理等内容。
3、操作系统与网络服务
操作系统与网络服务课程主要讲解Windows、Linux操作系统的安装与使用,讲解 在Server服务器端操作系统中配置使用DHCP、DNS、打印服务等。
4、测试入门导引
4.1基础概念
让学生理解软件测试的目的以及软件的生命周期等
4.2测试过程
主要讲解单元测试、集成测试、系统测试等测试过程,让学生了解测试的基本工作
4.3软件质量
了解ISO9000和CMM,理解并掌握质量模型。
4.4测试方法
了解白盒测试和黑盒测试等测试方法
4.5需求管理
理解需求管理相关知识,完成实例项目的需求跟踪矩阵,阅读项目开发文档,理解 软件开发的整个过程
4.6缺陷管理
理解缺陷管理相关知识,能进行缺陷提交和简单分析
5、测试理论课程
5.1测试覆盖率
掌握覆盖率的概念以及分析方法
5.2单元测试
掌握单元测试的概念以及分析方法,能进行桩函数、驱动函数的编写,通过项目实 例,掌握nunit和覆盖率工具的使用
5.3集成测试
掌握集成测试的概念以及分析方法,能进行测试代码编写,并完成实例项目的集成 测试
5.4系统测试
掌握系统测试的概念以及分析方法,了解各种系统测试类型和质量模型间关系,并 完成实例项目的系统测试执行
5.5测试用例设计方法
通过实例和实践掌握常用的黑盒和白盒测试用例设计方法
5.6需求评审
阅读并分析实战项目的需求
5.7系统测试计划
掌握系统测试计划写作要点,进行实战项目的系统测试计划写作,制定测试策略
5.8系统测试用例
进行测试设计和分析,完成实战项目的系统测试用例设计
5.9系统测试执行
完成实战项目的系统测试执行,完成测试报告
6、测试工具
讲解LoadRunner、TestDirector、QTP等测试工具的使用方法。
7、项目实战
结合实际项目案例,讲解测试计划编写、测试方案设计、测试用例设计、测试执行 等实操内容。
8、职业素养
职业素养课程主要讲解团队合作、商务礼仪、简历及面试技巧等课程。
[注意]APP应用上架合规检测服务,协助应用顺利上架!