[入门扫盲]开发人员不能不知道的几个开发工具

  本文地址:http://blog.csdn.net/sushengmiyan/article/details/7340865

  本文作者:sushengmiyan

  程序猿交流群:337503096337503096

  摘要:

-------------

    本篇文章适合为软件开发入门者扫盲,如果你在大学期间不知道学什么有用,或者你不是大学生但是想从事软件开发的工作,但是却无从下手,那么这里这些东西你可以从网上搜索一下,然后熟悉之,如果你喜欢的话,你可以精通其中一个或者几个。这对以后的就业找工作会有很大的帮助。

几种不经常见却很流行的语言:

----------------------------------------------------------------  

per:

    Perl 填补了低级语言(如C,C++,汇编语言)和高级语言(如shell 编程)的空白。低级语言通常难于编码,并且丑陋, 但速度快,且无限制;高级语言,在速度上,很难超过书写良好的低级语言。在低级语言里,你几乎能完成任何事。高级 语言,正好相反,一般速度慢,困难,丑陋,有限制;如果没有系统提供的函数,shell,批处理语言能完成的工作相当有限。Perl 简单,几乎是无限制的,速度快,也有些丑陋。

python:

    Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。自从20世纪90年代初Python语言诞生至今,它逐渐被广泛应用于处理系统管理任务和Web编程。Python已经成为最受欢迎的程序设计语言之一。2011年1月,它被TIOBE编程语言排行榜评为2010年度语言。自从2004年以后,python的使用率是呈线性增长。

  官网:http://www.python.org/

Ruby/rails:

    Ruby on Rails 正在令整个 Web 开发领域受到震憾。让我们首先了解底层的技术: Ruby 是一门免费的、简单的、直观的、可扩展的、可移植的、解释的脚本语言,用于快速而简单的面向对象编程。

  官网:rubyonrails.org

delphi/pascal:

    Delphi,是Windows平台下著名的快速应用程序开发工具。它的前身是DOS时代盛行一时的“Borland Turbo Pascal”,最早的版本由美国Borland(宝兰)公司于1995年开发。主创者为Anders Hejlsberg。经过数年的发展,此产品也转移至Embarcadero公司旗下。Delphi是一个集成开发环境(IDE),使用的核心是由传统Pascal语言发展而来的Object Pascal,以图形用户界面(Graphical User Interface,简称GUI)为开发环境,通过IDE、VCL工具与编译器,配合链接数据库的功能,构成一个以面向对象程序设计为中心的应用程序开发工具。

Qt:

    QT是一个1991年由奇趣科技开发的跨平台图形用户界面应用程序开发框架。广泛用于开发GUI程序,这种情况下又被称为部件工具箱。也可用于开发非GUI程序,比如控制台工具和服务器。它是Digia公司的产品。QT使用标准的C++和特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏。通过语言绑定,其他的编程语言也可以使用QT。QT是自由且开放源代码的软件,在GNU较宽松公共许可证条款下发布。所有版本都支持广泛的编译器,包括GCC的C++编译器和Visual Studio。

.net:

    .NET是微软下一代的操作平台,它允许人们在其上构建各种应用方式,使人们尽可能通过简单的方式,多样化地、最大限度地从网站获取信息,解决网站之间的协同工作,并打破目前计算机、设备、网站、各大机构和工业界间的障碍--即所谓的“数字孤岛”,从而实现因特网的全部潜能,搭建起第三代互联网平台。NET是微软的新一代技术平台,为敏捷商务构建互联互通的应用系统,这些系统是基于标准的,联通的,适应变化的,稳定的和高性能的。

c#:

C#是微软公司发布的一种面向对象的、运行于.NET Framework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司 .NET windows网络框架的主角。

如上只是部分比较不怎么流行的语言,如果对网络比较感兴趣,那么java语言以及jsp技术,基础的html.javascript,像js库的JQuery extjs等等,还有像一大堆的开源框架(典型的:spring struts 2 hibernate),都是需要去了解学习的,这些东东,慢慢学习,慢慢掌握,不怕没得学。

感兴趣的同学可以自己去搜集有关资料学习。我这里想说的是,当你精通其中一个的时候你就能把玩其他任何一个....精通之后,语言便不是障碍。比如你学c++或者学java比较好,如果对网络感兴趣,那么你可以学习HTML 、XML、jsp、asp 。那么你完全可以在短时间内学习上述所有语言。相信自己吧!

常用的开发IDE:

----------------------------------

现在集成开发环境很多,比如VB、VF等。对于java推荐使用Eclipse根据个人习惯来,有人更喜欢NetBeans有人则喜欢visual studio我最喜欢Eclipse因为我最喜欢java还有Myeclipse。对于pascal语言,delphi是一个不错的选择,还有对python来说,wingIDE是一款不错的IDE。

常用的文本编辑工具:

-------------------------------------------

VIM(windows下表现跟linux同样卓越)、UltraEdit、 EditPlus、 notepad++、 XMLspy 学习VIM本身就需要掌握不少知识,学会之后你就知道它带给我们的便利了。现在拥有一个好的文本编辑器对于程序员来说,可以节省不少调试检查编码错误的时间。

常用的调试工具:

-----------------------------------

IDEDebug 、DebugView 、HttpDebuger 、HttpAnalyzer、 DeDe、 w32Dasm、 Windebug 、Olydbg 、IceSword同学们可以去下载体验一下。这个不一定会全部应用,但是掌握一个还是对开发有帮助的,网页上的firefox插件firebug是网页调试必备。

黑客工具ResHacker:

-------------------------------------------

ResHacker能在没有资源文件的情况下分析,显示不同的信息,重写可执行的资源,包括(EXE,DLL,OCX)等。是方便强大的汉化工具,可以直接修改用 VC++ 及 DELPHI 编制的程序的资源,包括菜单、对话框、字串表等。还有一些进程查看的工具,大家可以查看一下procExp、processinfo、 peexploror、processmon、totalcmd

无所不能的软件:

-----------------------------

everything 一款可以迅速检索电脑文件的神奇软件、hypersnap、totalcmd、 winhex,hypersnap是一个截图软件。跟QQ聊天截图差不多,挺好用的。

UML建模工具: 

-----------------------

rose、 jude


版本控制工具:

-----------------------

SVN 、CVS

构建工具:

----------------------

Ant 、Maven、 FinalBuilder

Ant是对java的集成很好,在开发java应用程序的时候接触过,挺方便的部署。

这里列举了很多工具,不需要都去使用,但是以后的学习工作中你可能会遇到或者可能就需要用到。技不压人,有时间的同胞们拿出那些时间来把玩这些工具吧。

  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一.脱壳机名字的由来 skylly's CoolDumpper,借用了看雪论坛里高人某个让人流口水的工具的名字 界面也是盗版的CoolDumpper,不过本人盗版技术不高,做成了个四不像~~ 二.脱壳机的原理 由以下几大要部分组成, 1.侦壳功能. 完全拷贝自看雪论坛“任平生”的代码 2.Dummpper(进程转存) 初期,完全拷贝自lenus的lenus's Dummper代码, 现在为了适应脱壳的需要,发现原来的代码对非标准格式的PE文件的处理有些小问题, 所以代码基本都重写过了,但是基本处理步骤还是一致的,外表上看不出来 3.cooldebugger plugin(调试插件) 完全自主开发的插件,说是调试器其实没有用调试,而是注入,然后进行一些最简单的内存操作,没有 什么技术含量,可以完美躲过调试器检测的壳,对于内存检验比较强的壳可能不是很好用。 4.真正意义上的调试器 用最简单的调试API做的一个具有基本功能的调试器,目前还不能用于脱壳,只是一个玩具,为了将来扩展用的。 但是hook api始终不是很妥当,总会让壳有机可乘,以后可能会考虑加入驱动,驱动最让我不放心的是它的稳定性。 三,关于源码 由于还在开发中,暂不开源(主要是怕被人拿去篡改,反而让人以为他是正宗,我是盗版) 等到我不再开发时,会开放全部源代码,技术这东西,共享才是王道。 四。使用说明。 我想不用说太多了吧,选择目标文件后(支持拖放),再选择对应的插件,再点击脱壳按钮就可以了。可以说是接近傻瓜化了... 几个子功能说明: 详细日志:是调试器用的 PE标准化:是对某些被改得乱七八糟的壳(如upack)进行简单的PE修复 移除自校验:这个功能可以说是没有设计好,不同的壳自检验的地方不一样, 所以处理也应该不一样,可按照现有的工作模式又不可能把它做到plugin(插件)里面去, 但是,总之我会加进去的。 第x次调用API中断:这个功能是从CoolDumpper那儿抄袭界面遗留下来的,光有界面,未实现功能,将来如果有自动脱壳搞不定 的壳时,可能可以把这个地方扩展成手动脱壳。 OEP输入框和IAT输入框:功能已经弱化,由脱壳插件自动完成。 纠正映象大小:功能已经弱化,已经由dumpper自动完成。 五。关于private版本. 由于种种原因,不再发布public版本,仅作为私下交流之用。 所谓私下交流,可以算一种"精华"门槛吧. 1.看雪论坛或者一蓑烟雨,30精以上的朋友(高手)或者500帖以上的朋友(超级水牛),或者30贴以内且精华率在1/3以上的(超级高手)随时可以向我索要最新版。不过我相信高手们只会把我这个东西当玩具玩玩而已。 2.在使用这个脱壳机过程中遇到比较严重的问题或者不能脱的壳,可以来E-mail和我交流,欢迎技术交流,谢绝任何形式的脱壳请求, 因为我只是个菜鸟。对于有价值的来信,我会酌情回复最新版脱壳机。 得到这个脱壳机的人,任由其处置。 六。开发目标 开发常见压缩壳和加密壳的插件并实现自动脱壳。 压缩壳插件做十个左右,加密壳插件做二十个左右。 压缩壳插件: upx, upack, aspack, nspack, mew, hmimys, pecompact, expressor, fsg, kbys, packman, PEncrypt (已经基本完成。) 加密壳插件:(还没想好,暂定, 刚刚开始开发) pe-armor, armadillo, aspr, acpr, telcok, execrypt, pelock, pc-guard, morphine, safedisc, themida, enigma, obsidium, starforce, yoda_s_cryptor, epe, pespin, svkp, sdp.............. 预估主程序最终版本版本号:2.0 预估所有插件最终版本号:0.3 已知bug: 1.由于修复输入表是用的ImpRec.dll这个动态链接库,我没有源码,它在处理某些IAT不连续的程序时,获取的IAT的大小有问题,所以暂时还没 有解决方案来对付,等我复习好输入表结构,以后脱壳机就自己来重建输入表了,呵呵。 2.无法对付多层壳. 3.处理自校验有问题,请不要随便选中,否则后果自负 现在发布的这个版本仅仅代表了一个脱壳机的起步阶段,当玩具吧。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值