用C++做外挂,应该学习C++哪些方面

新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
白手起家, 积分 20, 距离下一级还需 180 积分
论坛徽章:0
小弟苦逼学生党一枚,叔叔是司机要在网络学习很麻烦,让我代劳苦于本人比较贪玩C语言又没有学好,拜求各位帮忙设计一个外挂软件
经常需要人点击才能通过 很是郁闷& &
拜谢各位大神
&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp&&nbsp|&&nbsp
小富即安, 积分 4195, 距离下一级还需 805 积分
论坛徽章:209
来错地了&&
白手起家, 积分 20, 距离下一级还需 180 积分
论坛徽章:0
请问这个应该放在那里啊??拜谢
白手起家, 积分 0, 距离下一级还需 200 积分
论坛徽章:0
跟大神学外挂 超给力共有 4667 人关注过本帖
标题:c++ 怎么写游戏辅助
来 自:贵阳市
等 级:新手上路
结帖率:75%
&&已结贴√
&&问题点数:20&&回复次数:4&&&
c++ 怎么写游戏辅助
求大神给一个c++游戏辅助作为参考,谢谢~~~
搜索更多相关主题的帖子:
来 自:三体星系
等 级:贵宾
威 望:22
帖 子:500
专家分:1607
你看看这个。
http://www.apull.net/html/.html
等 级:贵宾
威 望:26
帖 子:290
专家分:1573
学习是大事&&&吃喝拉撒睡是小事&&&其他的那都不是事
来 自:何方
等 级:版主
威 望:158
帖 子:6710
专家分:41591
一般 都是,分析 读取其他进程的内存,修改其内存,
如果ui的,就是截屏,分析成数据,模拟鼠标点击之类的了
我的博客:
http://blog.sina. com. cn/yuccn
来 自:福建省
等 级:贵宾
威 望:19
帖 子:240
专家分:956
你应该专门下个教程去
版权所有,并保留所有权利。
Powered by , Processed in 0.066914 second(s), 8 queries.
Copyright&, BCCN.NET, All Rights Reserved3569人阅读
1、什么是外挂它是怎样定义?
外挂是指某些人利用自己的电脑技术专门针对一个或多个网络游戏,通过改变网络游戏软件的部分程序,制作而成的作弊程序。这是一个让游戏公司痛恨、玩家分派、作者成就、工作室必备的游戏辅助软件程序。
2、一般外挂分几类?
有模拟类、内存类、封包类、变态类、脱机类,一般来讲模拟类是最轻的,比如用按键精灵来代替鼠标和键盘的操作;内存挂、封包挂是比较正规和普遍的挂;变态类和脱机类是最“非法”的,甚至影响到游戏的生命,所以是被强烈打击的对象。
3、为什么游戏公司反对外挂而且国家也不提倡?
玩家下载的外挂内经常附带病毒,会对您的电脑以及账号安全产生严重危害。玩家使用外挂一旦被查出,将会被长时间甚至永久封号。玩家使用外挂会对游戏平衡造成破坏,并对游戏内其他玩家造成影响。有可能被玩家踢出,无法正常进行游戏。玩家使用外挂会让原本有趣的游戏过程变得索然无味,丧失原有的游戏性。可能遭到战队人员踢出。会记录不良游戏行为,影响声誉。(百度摘录)
所以,游戏公司反对主要是因为外挂者破解了游戏规则甚至在跟他们争夺利益,国家不提倡大概是要保护游戏公司的合法权益。
4、既然国家不提倡那我们为什么要制作外挂?
世上有矛就有盾,游戏公司创建的虚拟世界按理说他是想怎么制定规则就怎么制定规则,但是他的游戏也是个程序,运行在咱们的电脑上,那咱们是想怎么研究就怎么研究。作为一个有技术人的思维总是从技术角度来解决问题的。所以,只要不涉及到法律问题,从事计算机技术研究,就是没问题的。
5、制作外挂的风险以及如何避免风险的问题?
其实真正被抓的还是少数,想避免风险,就要只做不卖,只研究不经销,只是自己用不去做宣传,只用来解决生活问题而不用来发财致富,只在私下用别挂淘宝上卖,别开网站跟游戏公司对着干,目前外挂制作和游戏工作室都属于灰色地带,多了解点儿这方面的新闻,多看看相关法律知识。总之一句话,做挂要低调。
6、学外挂还有前途吗(能赚多少钱)?&
能赚多少钱,不是我们说了算,学习和赚钱,完全是能力与价值的转换,还有运气,很多人有能力也赚不到钱。很多东西,必须了解后才能看到商机,但是弄大了可能会引起别人的注意甚至牵涉法律问题,而研究技术是允许的,所以这个“度”要怎样做,就看各位的头脑了。
7、为何现在很多人出来做外挂教程?
我只能说自己的情况,首先声明我不是大牛,我是因为有兴趣业余学学而已,整天弄代码跟游戏公司的技术对抗实在是很累,所以我就从前线退下来做些免费视频,而且最近开设了“风叶林”论坛,希望能够多交些朋友。至于别人为啥出来搞教程,可能是因为在顺应发展潮流吧。
8、网络教程VS实地培训?
网络收费教程盛行是在前几年,但是现在翻录、合购大量出现,所以网络收费教程基本上是在走下坡路了(正规大型网站有版权的除外)。在众多可以免费获得教程的同时,自学无人指导的苦恼却时刻存在。与此同时实地培训则大量兴起,比起网络教程来,实地培训更接近真实,能够与我们心中的大牛面对面实在是太让人高兴了。但是费用就要提高非常多,吃住的费用甚至比教程都贵,更何况还要远离家乡。所以我认为自学+找老师辅导才是性价比最高的学习方式。
9、没基础能去实地培训吗?
没基础不适合参加实地培训,如果你以前只会玩游戏,打字而已,那你需要从现在起学习一下基本的编程知识,需要懂if&else&、while、for、switch&、goto的基本语法,需要知道一些基本数据类型BYTE、&WORD、&DWORD的衍生数据类型&char&、short&int、int、long等等。(郁金香实地培训摘录)
我也认为在家自学一些基础再去实地培训比较好,毕竟初级的东西还是比较简单的。
10、实地培训都会讲哪些内容?
C、C++程序设计、数据结构、Windows程序设计、MFC程序设计、数据库编程、网络通信编程、汇编语言、软件逆向工程、PE文件结构、壳的编写、内核编程。(15PB实地培训摘录)
开发工具的熟悉和使用、数据类型与变量,逻辑控制与简单算法、数据结构与类,面向逻辑和面向对象、项目开发基础、常用API介绍、DLL开发、内存读写、常见注入、非常规注入、独家注入、基础语法、扩展语法、编译形态、驱动加载工具、DLL注入器、inlinehook引擎(IGS实地培训摘录)
11、学外挂需要的必备基础知识
不管学什么语言,必须会汇编,所以所有关于汇编的书籍是必备的,另外游戏基本都是C++写的,所以掌握C++也是很重要的,还有常用工具的使用。汇编书籍是有很多的,随便找找就行,反汇编的书籍啊冲强烈推荐《C++反汇编与逆向分析技术揭秘》和《加密解密3》,这两本书几乎是必备的。
12、需要学的太多了,能掌握吗?&&
现在的“免费”教程非常多,能不能消化吸收就要看你能否坚持住了,如果没事玩游戏、看电影、泡妞肯定是不行,整理好笔记,挑出自己最想学的部分去学比容易些。另外,现在团队合作很重要,专精一项比较切合实际。所以除了搞技术,还要多交朋友,找到志同道合的朋友可以让你在前进的路上速度飞快。
13、每个人都能学会吗?
有志者事竟成,如果你是因为爱好才来学习的那么一定会学有所成,如果只是想赚钱来学这一行业,那就不一定能成功了,总之一定要坚持,把学习外挂编程当作自己的爱好来做,如果只为赚钱学外挂那还不如去炒股票、买**了,那都是国家提倡的啊。
14、我英语水平不行,可以学不?&
不怕你们笑话,我的英语水平只是会几个函数命令而已,经常重复见到的单词,就能记住了,不懂的可以百度查,其实编程没那么痛苦的,你对它感兴趣就不累了,乐此不疲就这个道理了。你记不住不是你脑子笨,而是重复次数太少,理解是记忆之父,重复是记忆之母。另外还可以学习中文编程,比如易语言。我们再换一个角度想,如果英语是学好外挂的唯一标准,那么那些英语老师就都是外挂大牛啦?
15、我不是计算机专业能行吗?
我也不是计算机专业,甚至只是业余学学而已,但也学会了不少东西,据360CEO说他们那还有个初中水平的易语言编程者呢,后来转学了C++后也成为了核心人物,所以毕业文凭并不代表一切。专业和非专业只是差在大学那几年而已,有的大学生说在校学三年都不如出去上培训班学三个月,而且XXX老师也跟我讲过:其实学校教计算机就是在糊弄呢,教的东西都是过时的。如此说来能不能行,跟专业没关系,是兴趣、理想、毅力......不过话说回来有专业就更好了哈。
16、关于初学者拿什么游戏练手比较好呢?
拿老游戏、没保护的游戏、小游戏、教程中讲的例子游戏、甚至单机游戏比较好,比如有位叫蓝树的朋友就制作了“植物大战僵尸”的游戏外挂,发表之后非常火呢。还有棋牌类的小游戏啥的都行。
17、新拿过来的游戏从哪里入手比较好?
先看看是否有保护,然后可以先找游戏基址,找找血量、蓝值、坐标、移动、打坐等等这些显而易见的东西,另外还可以从登陆部分开始,因为游戏在登陆窗口那里各种检测加的比较少。
18、目前外挂的难点在哪里?
大体分三步,过保护、找数据、编写代码。在几年前是入门难,现在是入门简单了,但是游戏的保护(R0)、检测(R3)比较难搞,所以我认为是到了团队合作时代了,就是找个朋友一起研究,每人专攻一项比较好。
19、按哪条路开始学比较好?
每个人的路不同,有从基础一点点学起的正规之路,也有根据需要用到什么就学什么的实用路,而我的经验是根据兴趣,现在能够找到的教程非常多,看哪个能引起我们的兴趣就从哪个学起,先找简单的一点一点来,不知不觉就从跨进这个大门了。
20、初学外挂视频教程谁的比较好
我是从郁金香教程学起的,同时我还看了天道酬勤的教程,还有重楼的教程也很好,除此之外和尚过保护、幽灵驱动也比较好,如果你是易语言的,那么魔鬼作坊、挂茶管、独立团等都可以,教程要从简单开始学起,从无保护的老游戏开始练手,在没老师指导的情况下多加Q群、多去搜索、多泡论坛(看雪、吾爱破解、广海、风叶林等等),等感觉有信心能行的时候,其实花点钱找个老师也是非常值的。
21、国服游戏和外服游戏的传说中的情况?
外服在驱动保护上的技术越来越强,强大的随机任务,还有人工管理;国服除了一般的保护外,有的游戏公司甚至不考虑用户体验到处加VM(虚拟代码变形),把几百M的游戏加到了几个G,这是一种无理智的变态防护。(DebugGo)
22、一般用到的工具?
OD(OllyDBG)、CE(Cheat&Engine)、注入器、遍历器等,据说还有个IMM(改版OD),还需要会些编程基础。
23、关于用什么编程语言(老生常谈)?
我觉得语言只是工具,碰到具体的问题,用哪种语言解决最快,最方便才是最好的工具。其实每种语言都有一席之地,在外挂中一般常用的编程语言是易语言、C++、Delphi、VB,这些都是能够找到大量源码、文章和视频教程的,除此之外还有个TC语言,至于按键精灵则属于VB的脚本语言(加强版),主要用来做模拟外挂。有人说C++是王道,但是作为初学者尤其是不懂英文的人来讲,从易语言入手还是比较现实的,我本人最开始就是学过几天易语言,然后转入DELPHI,再转到VC++,但是我每样都不精通,所以不要跟我学,要精通一种语言才是最好的。
24、关于汇编、反汇编和逆向的概念?
汇编语言是机器语言,是计算机懂得的唯一语言,因为计算机只懂二进制,汇编就是一组二进制命令的集合。反汇编就是用工具将已编写好的程序反过来以汇编形式来操作的,其实也是汇编语言。逆向技术,从技术角度来说外挂制作也是属于游戏逆向技术,也就是将游戏当作程序进行反汇编逆向研究,找出程序本有的功能和数据通过我们的程序进行调用,通过这种方法节省人工操作甚至修改。逆向工程是一项巨大的工程,黑客、破解、反病毒、反汇编、调试、加密、解密等等都是其中的一部分,那么,外挂涉及到很多知识,应该属于逆向工程里相对基础的部分。
25、找游戏数据的概念?
通过工具查找出游戏程序中我们所需要的功能、数值,就是通常所说的找游戏数据,包括找CALL、人物信息、地图信息、NPC、怪物等。现在很多游戏都加密、加壳、加保护,所以越来越考验初学者的意志,所以说先从简单的游戏入手。
26、什么是找CALL?
从编程的角度上看每个CALL可能就是一个函数命令,但是在反汇编下就是以汇编的CALL命令来进行调用的,因为游戏的每个功能可能都对应一个CALL或者几个CALL,所以除了游戏中人物、NPC的信息以外,主要就是找出这些对应的功能CALL,比如走路CALL、打坐CALL、技能CALL等等。
27、什么是驱动保护?
“原来的游戏封外挂,功能像个杀毒家,现在的游戏防外挂,功能像个防火墙”,这是我在学习郁金香驱动教程时的感言,现在看仍然如此。驱动保护就是在驱动层(R0层,可以理解为系统最高权限)对游戏进行保护,防止别人对游戏进行调试、查找、修改等操作。
28、32位与64位问题?
XP是32位的(64位的很少见),但是这个系统即将被淘汰,WIN7、WIN8都是32位和64位并存的,以后的系统必定是64位的,因为32位限制在了4G内存。那么在驱动层对32位和64位是非常敏感的,有的游戏保护只针对32位,换到64位下驱动保护就不启动了。现在的保护32位已经非常成熟了,所以游戏正在对64位系统加强保护,所以以后64位的保护才是重点。其实64位下也不是很难,比如寄存器中存的数值比原来又多了一倍,其实原理还是一样的。就像你以前住普通的楼,现在换做高层了,用户增多了(超过4G内存),楼层增加了(寄存器变长)。
29、为什么说学驱动就必须学C语言?
在WINDOWS系统中,一般的应用程序是VC++写的,而在WINDOWS系统中的驱动层代码是C语言写的,可能是因为在系统层,面向对象的功能不是很重要吧,据说LINUX也是C语言写的、UNIX系统也是C语言写的,因此证明C语言本身也是非常适合写底层的。所以,当我们要想过驱动保护时,那么从C语言入手无疑就是很有必要的了。
30、如何保护自己的程序?
最简单的就是加壳,还有加VMP,现在的壳有很多,也能够找到很多免费的壳,另外还可以自己写个驱动来保护我们的程序,就像游戏的自我保护、杀毒软件的自我保护那样。保护技术可是门大学问,在精力有限的时候可以花点钱买人家现成的商业保护软件嘛,一般这种软件都叫X盾、X网络验证之类的。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:1553497次
积分:15246
积分:15246
排名:第537名
原创:29篇
转载:721篇
评论:157条
(1)(2)(13)(17)(5)(12)(2)(3)(17)(41)(31)(11)(8)(14)(12)(12)(6)(18)(10)(8)(17)(5)(2)(7)(7)(7)(10)(15)(23)(25)(5)(19)(9)(3)(9)(7)(10)(18)(19)(25)(13)(14)(7)(15)(36)(7)(3)(8)(17)(12)(32)(14)(4)(14)(26)(7)(15)(11)(16)(5)学习 C++能带给我们什么
投稿:hebedich
字体:[ ] 类型:转载 时间:
这篇文章主要介绍了学习 C++能带给我们什么的相关总结,主要来自于前辈们,这里汇总给大家,需要的朋友可以参考下
C++准确说是一门中级语言,介于汇编和高级语言之间吧,要求程序员了解计算机的内部数据存储。个人认为,作为学生还是花功夫学C++,因为《设计模式》《数据结构》这些课程基本上还是C++应付的比较好(我的切身体会),学习 C++,认真阅读c++ primer,而后配合 The ADAPTIVE Communication Environment (ACE)了解设计模式, 再看看《深入浅出STL》,就会发现其他语言都一样,不变的是思想本身。
在以下领域,C++有着根本性的优势:低级系统程序设计、高级系统程序设计、嵌入式程序设计、数值科学计算、通用程序设计以及混合系统设计等等。让我们略微展开描述一下:
&&& 1. 低级系统程序设计:C++是迄今为止最好的低级程序设计语言。
&&& 2. 高级系统程序设计:包括操作系统核心、网络管理系统、编译系统、电子邮件系统、文字排版系统、图像和声音的编排系统、通讯系统、用户界面、数据库系统等等。
&&& 3. 嵌入式系统:包括照相机、汽车、火箭、电话交换机、汽车等等。
&&& 4. 数值/科学计算:包括仿真、实时数据获取和数据库访问等等。
&&& Bjarne的个人主页上,有一页applications,那儿列出了一些(全部或大部分)使用C++编写的系统、应用程序和库。下面是一些例子:
&&& 1. Adobe Systems:所有主要应用程序都使用C++开发而成,比如Photoshop & ImageReady、Illustrator和Acrobat等。
&&& 2. Maya:知道“蜘蛛人”、“指环王”的电脑特技是使用什么软件做出来的吗?没错,就是Maya。
&&& 3. :使用C++开发大型电子商务软件。
&&& 4. Apple:部分重要“零件”采用C++编写而成。
&&& 5. AT&T:美国最大的电讯技术提供商,主要产品采用C++开发。
&&& 6. Google:Web搜索引擎采用C++编写。
&&& 7. IBM:OS/400。
&&& 8. Microsoft:以下产品主要采用C++(Visual C++)编写:
&&&&&&& Windows XP
&&&&&&& Windows NT:NT4、2000
&&&&&&& Windows 9x:95、98、Me
&&&&&&& Microsoft Office:Word、Excel、Access、PowerPoint、Outlook
&&&&&&& Internet Explorer,包括Outlook Express
&&&&&&& Visual Studio:Visual C++、Visual Basic、Visual FoxPro
&&&&&&& .NET Framework类库采用C#编写,但C#编译器自身则使用C++编写而成。
&&&&&&& Exchange
&&&&&&& SQL Server
&&&&&&& FrontPage
&&&&&&& Project
&&&&&&& 所有游戏
&&&&&&& ......
&&& 9. KDE:K Desktop Environment(Linux)。
&&& 10. Symbian OS:最流行的蜂窝电话OS之一。
&&& 我通常使用C++进行高端程序开发。
&&& “通常”一词没什么好说的,有时只是出于公司文化或个人爱好方面的原因,选用了别的语言而不是C++,或者相反。我所说的“高端”是指:关键业务处理,效率要求极高,实时性要求高等等。
&&& 我看见几乎所有严肃的工控系统软件和实时数据采集、处理和表现(主要是图形)软件,都是采用C++(或C,少部分采用Java)编写而成的。
&&& 据我的了解,我原先所在的研究院几乎每一个研究所都在不同程度地使用C++(以及一些别的语言)。
&&& 想想看,迄今为止,现代Unix操作系统的各种变体上,最常使用的是什么样的开发语言?(C/C++)
&&& C++语言
&&& C++语言是灵活,但首先要看看使用者能不能发挥它的灵活性;C++语言够强大,但要看看使用者有没有本事发挥它的强大功能。
&&& 使用C++语言和编译器编写一个快速的程序,并不难,不过编写一个强健而高效的大型程序,就不是那么容易了。
&&& 语言之间的区别,绝非只是大括号和begin、end或Sub、End Sub之间的区别。选择了一种语言,你就选择了一种思维方式,一种程序设计思想。要想跳出语言的束缚,首先要对语言有着深刻的认识和透彻的把握。世界上一些大师级的人物,也常常毫不掩饰自己对某种语言(我并没有专指C++)的偏爱。一些人对语言尚一知半解,就大谈要跳出语言的束缚了 — 你无需跳出,因为你根本不曾深入。
&&& 纯粹的技术性(学术性)研究,总能给人带来纯粹的快乐。C++语言复杂至极,可研究性极强,但一般来说,没有3~5年的持续学习、思考、使用,是不可能真正掌握C++的。
&&& 我不是唯语言论或唯工具论者,但我反对抹杀不同语言、不同开发工具之间的区别。抱持这种观点的人,若非无知,即是别有用心。这就好比杂牌笔记本电脑厂商最喜欢叫嚷“笔记本电脑已经进入同质时代”一样,杂牌机怎么能和IBM相比?
&&& 选择C++或选择Java,要看你个人爱好和对将来的打算。虽然只是语言上的差别,但由此决定的就业领域的确不一样。
&&& 不管你走什么样的技术路线,不管你用不用它做开发,学习C++总会带来长远的好处。一名熟悉C++的开发人员,假如他不是一个偏执狂的话,再学习Java或C#,都要容易得多。
&&& C++不过是一门编程语言,我们总是要用它来解决实际问题,所以要学习开发工具(比如Visual C++),了解操作系统(比如API),熟悉领域知识(比如电力系统),掌握其他软件技术(比如数据库),等等。编写真正的代码,解决实际问题的能力,才是衡量一名程序员是否有真水平的唯一标准。
&&& 设计模式和统一建模语言
&&& 设计模式(Design Patterns)和统一建模语言(Unified Modeling Language,UML)是两个不同的概念。前者主要目标在于提供可重用的面向对象软件设计方案,后者则是一种描绘软件蓝图的标准语言。
&&& 当然了,可以使用UML来描述设计模式的结构。
&&& UML所描述的模型可以映射成C++、C#、Java等语言代码,甚至可以映射到关系型数据库。映射过程可以是双向的,一般都有相应的软件工具(或插件)支持。
&&& 不同的语言,特性有所差别,这多少会影响设计模式在该语言中的实现(方式、难易)。比方说,假如使用C语言来描述设计模式,那么,继承、封装和多态等特性就变成了需要研究的设计模式,但在任何一门面向对象的语言中,这都纯属多余。
&&& 现在市面上还没有看到象样的以C#为手段讲述设计模式的书(我没有看到),但这并不打紧,倘若有兴趣,完全可以读一读《Design Patterns: Elements of Reusable Object-Oriented Software》(中文版名《设计模式》机械工业出版社)这本书,尽管它主要以C++和Smalltalk语言为讲解手段。
&&& 设计模式本身无所谓好坏,根据你要解决的目标问题,选择适当的设计模式。
&&& 系统架构
&&& 在企业级软件开发中,架构第一重要。架构有缺陷,系统就存在硬伤。优秀的架构来自于优秀的设计。这一点毋庸置疑。
&&& 任何成功的软件,即使它没有明确地使用建模思想、架构方法,但在骨子里、潜意识中,大都具有良好的设计思想和架构。
&&& 只有写过好多好多代码以后,只有做过一些够份量的企业级项目之后,才可能对软件架构形成清晰的认识。很难想像一个连几行像样的代码都没有写过的人,对程序思想和架构却有着深刻的认识。这种人,十有八九属于纸上谈兵之辈。
&&& 我们时不时会看到这种情况,软件的设计也不算太差,但程序员要么不知道怎么写实现代码,要么是代码写得缺乏效率,或不够强健,甚至有时连“架构师”自己对此都一筹莫展。
&&& 我们也常常听到一些声音,不要太拘泥于语言(技术)细节了,要从大处着眼,要有大局观,架构怎么怎么重要,这些都是大实话。不过现实情况往往是,很多程序员不是太拘泥于语言(技术)细节了,而是对语言(技术)细节掌握得还远远不够。
&&& 书本知识的重要性毋庸置疑,但绝不要以为读了两本书,自己就成了牛气的架构师、设计师或者什么建模专家。
&&& 从前的软件开发埋头实践而缺乏必要的理论指导。现在越来越走向另外一个极端:设计文稿越来越图文并茂,琳琅满目,但开发出来的软件却比以前差很多。这种表面文章,意义何在?
&&& 数据库
&&& 大多数软件都要和数据库打交道,并非只有MIS类软件如此,数据库知识几乎是非掌握不可的,无非使用深度和广度有别而已。迄今为止,我编写的每一个项目软件,都要访问数据库,有一个程序甚至同时要跟两个数据库打交道(Oracle和SQL Server)。
&&& 如果你上过任何一门数据库基础理论方面的课,或认真看过任何一本数据库基础理论方面的书,或许都不必再买更多的(类似的)书。二十多年以来,关系式数据库理论之稳定,远远超过C++语言的稳定:)
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信