给Linux初学者的建议

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42256993/article/details/80392872
Linux是每一位程序员必须要学的,无论是否精通,我们每个程序员多多少少都要懂点,要不一旦在工作中遇到Linux可就GG了,对于初学者,我建议可以参考《鸟哥的LInux私房菜》,这个写的很好的,也很详细的,是一本自学的好书,虽然时间很久了,但绝对经典!附上链接:http://linux.vbird.org/linux_basic/(也可自行百度搜索)
展开阅读全文

给Ajax初学者建议

12-21

Ajax日渐流行,很多大的网站都已经纷纷用上了,别的我不敢多说,但是至少我以用户的身份发表一点意见:Ajax确实给我带来了更好的用户体验!所以作为web开发者学习Ajax是迟早的事了!既然是迟早,这种好事我还是觉得越早越好,毕竟早起的鸟儿有虫吃啊!在这里和大家分享一点我自己学习Ajax的心得,目的是希望大家不要和我一样去“探索”,既然有了好路,为什么还要自己去开路呢?!对吧!?当然,有可能我说得对你完全不实用!所以本文所言仅供参考,如果看后跳楼者,本人一概不负法律责任!rn1、首先当然是XML了,这个也是AJAX的基础,毕竟AJAX中的X就代表XML嘛!而且学了之后您就会知道,页面获得返回信息时最重要的方法就是responseXML()。所以,如果没有XML基础,笔者建议你先不要企图学习AJAX了。(关键是免得伤了自尊!世界上并非每个人脸皮都有我这么厚啊!)rn2、学习AJAX之前笔者强烈建议:先了解一下DOM相关技术,至少很多术语要理解!有了DOM基础学起了会感觉轻松得多!当然如果你对自己的耐性有足够的把握,而且自认有和笔者一样的智商,(^_^),你也可以不用了解,徒手上阵。因为我当初学习AJAX时也没有DOM基础,但是后来发现很多问题,还是需要DOM基础才能理解的!rn3、有了上面两点您就完全可以开始Ajax的学习了,但是我还得劝你去做一件多余的事,绕一个湾子:先学学XmlHttpRequest。您如果掌握了,这个被微软提出来的不是标准的标准您会发现原来Ajax真的就是这么简单!我在学习过了之后有一种片面的认识,其实XmlHttpRequest就是Ajax的绝对核心,甚至冲动的时候会认为Ajax就是XmlHttpRuest的加强版!(完全是笔者个人愚昧的认识,切误当真,不然我好心好意想帮帮大家,恐怕就要被扣上误人子弟的帽子了!)rn4、在以上三点都做到的情况下,我就建议你去看一本叫《Ajax基础教程》的东东。如果你不是太笨,而且不是太懒(最好是总愿意自己动手去写一写,哪怕只是一个“HELLOW WORLD”例子程序。)的话,(当然前提是,您是一个web开发人员,或者对相关的知识有一定程度的了解!)我想在这本书的指引下,你应该在半个月左右就会对Ajax有一个比较好的认识。然后就可以看一些开发策略了!rnrn(如果有朋友想学,确找不到《Ajax基础教程》,可以给我留下小纸条,我这里有PDF,我不是给他打广告,因为他是我的入门老师,所以对他还是有点感情的。注:发给你文档,仅供朋友之间学习交流所用! 坚决支持“侵权可耻”!)rn 论坛

初学者的一些推荐和建议

11-30

本人虽不敢自诩高人,但学习编程也有一些年头,也经常看到一些初涉编程行业的朋友苦于自身难于提高,憋着浑身的劲头却恼于无的放失....所以,今日发这个帖子给所有热爱编程的初学者提供一些学习方面的帮助....没有任何技巧,仅仅是一些学习的辅助工具(广义的)和方向....rnrn对于初学Delphi的朋友书是不可缺少的,可以去查阅以下四本书籍并辅助自己的初级学习:rnrn《Delphi 5/6开发人员指南》----此书比较厚重,内容很广泛,几乎从基本语言介绍到主要技术实现再到主流且较成熟的软件实现技术都有介绍....初学者可以完全按照此书的章节顺序去循序渐进的学习Delphi....rnrn《参透Delphi/Kylix》----本人见过的国内介绍Delphi方面内容的最好的书籍,清华人乔林(DFW的十一少)的著作,很注重对OP语言基本内容的深入讲解,对初学者学习OP语言本身,深入理解OP语言中语言现象的实质有很好的讲解作用,初学者可以在利用《Delphi 5/6开发人员指南》循序学习的过程中重点参考此书对OP语言进行学习....rnrn《Delphi技术手册》----实际上个人认为此书不适合初学者,但由于此书中对OP语言讲解总结的一些独到之处是连帮助和《参透》都缺少的,同样可以增加初学者对OP本身的认识,尤其书中对system单元的内容介绍以及对Delphi对象模型的介绍很值的所有初学者在进一步提高的过程认真研究,所以特别提出....rnrn《Delphi高手突破》----相比较上面三本书籍,此书内容就显的较少了。但个人认为这个书中对OP语言对消息系统的封装的讲解很到位,而且书中提到的一些利用OP较好的实现OO思想编程有一定的引导作用,所以建议所有初学Delphi的朋友好好研读这个书籍----这本书也是本人认为的拜读过的国内Delphi书籍方面少有的三本好书之一(上面的《参透》和DFW的HugDog(陈省)的《Delphi深度历险》----后者是扩展对COM应用理解的绝好书籍,目前正在策划第二版的发行----但不建议初学者学习....)....rnrn除了上面提到的四个书籍,个人认为在Delphi初学道路上也没有什么值的看的书了----学习Delphi的朋友或许都有一个统一的认识,由于Borland公司财力单薄,至今还没有中文的Delphi联机帮助(但很奇怪,听说购买正版Delphi的客户可以获取到一本Delphi OP帮助的中文版,莫非这个书不是Borland的人的著作,呵呵....听某些人说此书有2000Pages哦....羡煞人也....),至于书籍,国内市场上出现的各种Delphi书籍很大一部分都是滥竽充数的“拙作”,这些书籍实际上对Delphi初学者的学习没有任何帮助作用,而且让初学者的知识体系变的混乱无绪,所以发帖推荐个人拜读了解的一些杰出的适合初学者的书籍....rnrn另外建议所有的初学者都不要忽视帮助的存在,因为毕竟那才是原汁原味Delphi出版物,很多基础性的概念里面都有比较详细全面的讲解(但不够深入)....同时就是要提高自己的外语水平,因为很多的优秀资料都是纯英文的,如果你对英文没有一定的把握,是很难很好的理解这些资料中的珍贵思想的....rnrn好了,上面主要提到的是一些书籍和资料....至于现在网络上流行的各种Delphi资料文章都仅仅是整个Delphi应用知识体系上的一个结点或多个结点的表现而已(当然,其中也不泛一些新颖的闪光点),但我想学习的方式毕竟要讲求一个效率,不能把眼光拘泥于局部的知识,而应该从知识背景出发去学习掌握,这样才能以不变应万变,学习Delphi,学习编程同样如此。“编程的知识”这样一个笼统的概念就不知道含盖了多少内容,仅仅Delphi一个IDE对应的知识范围就足以让一个人花一两年的时间去研究学习,但现在人们都讲求在生存中求发展,没有哪个人有充足的时间去实现发展中求生存的生活哲理(大学研究院所的人除外,呵呵!),所以在学习完善知识背景的过程中应以知识框架为重点进行搭建,对于各种细节就要视自己的工作需求和兴趣使然了....不自然间,又说了一些具体学习方向和方式的问题,最后总结为一句就是----不要拘泥于局部的技术点,而应该把眼光放在技术实现背景和技术应用背景去学习技术----当然,一涉及背景这个层面铺开的面就一下扩大了好多倍,但我想任何一个愿意长期从事开发的人都应该将软件基础理论,软件应用开发和软件工程管理三个层面作为自己在不同学习阶段的学习重点....(呵呵,话有点跑题了....)rnrn最后给所有初学者提个省的地方就是在学习Delphi的同时不要忽视OO理论的学习(其实这个在上面已经铺垫过了,呵呵)....rnrn好了,罗嗦了一大堆,最后送给所有喜欢Delphi的朋友一句话:坐拥书城铸内秀!只要每天能感受到切实的进步,你就是高人了.... 论坛

初学者一点建议:学习设计之前

02-03

(这是写给初学者看的,虽然有点吹牛,但高人面前不敢班门弄斧,我写的都是来自我的切身经验。)rnrn初学者学习设计模式之类的东西之前,如果能打好基础,将来必能事半功倍。rnrn初学者不太讲究的一个地方,就是不考虑将来要修改代码的可能性。一个计算器写出来,就觉得“好,我会了”,马上丢到一边。rnrn高水平的程序员,写出来的代码都是易于修改的。但是初学者很难有这种机会要修改自己的程序,怎么办呢?rnrn就我个人经验,我觉得锻炼这种思维的一个好办法,就是反反复复的写同样功能的程序。第一个版本写出来之后,稍微总结一下,然后重新写过,并添加一点功能。rnrn反复几次,你就会看到最后写出来的比起第一次写的真是赏心悦目得多。当你对自己的代码了如指掌的时候,不管要你添加什么功能,你马上就能想到要在什么地方添加什么样的类。rnrn如果你能编写易于修改的代码,将来工作的时候绝对轻松不少。同样的需求,别人要翻来覆去的改东西,而你勾勾手指头就搞定了。一点也不夸张!rnrnrnrn但是,一个[b]初学者[/b],认识的 Java 类没几个,更别说做什么设计了。这样的人能写出这样“高水平”的代码吗?rnrn能!我教你一个简单的原则:[b]不管什么方法都不要超过 5 行[/b]。我相信很多人不是第一次见到这句话,但真正把它放在心上的没几个。rnrn我想说的是,初学者要能认准这句话,那就等于练了九阳神功,写出来的代码保证经脉通畅,内劲十足。rnrn你别说做不到。初学者写的程序本来就没多少功能,一个方法不超过 5 行完全没问题。rnrn具体怎么写呢?举个例子:写一个计算器,main 函数该怎么写?rn[code=Java]public static void main(String[] args) rn setupUIManager(); // 初始化 Swing 风格rn new Calculator().setVisible(true); // 打开窗体rn[/code]rnrn怎么样,两行。Calculator 就是计算器的窗体类。这个窗体有很多控件,初始化一定有很多代码吧?NO,不需要:rn[code=Java]public class Calculator extends JFrame rnrn public Calculator() rn setupFrame(); // 初始化窗体大小、标题等rn createLayout(); // 初始化布局rn createMenu(); // 添加菜单栏rn createTextField(); // 添加文本框rn createButtons(); // 添加按钮rn rn[/code]rn就是这样,通过将代码委派到其他方法,就能把方法缩小到 5 行以内。rnrn看到这里你也许哭笑不得:这搞法未免太弱智了吧?这有什么好处?——告诉你,这样做的好处就是:[b]总揽全局,快速定位。[/b]rnrn拿上面的代码为例,如果将来要添加菜单项,那么一眼就看得出,要修改的只有 createMenu() 方法。如果运行的时候发现少了一个按钮,你也一眼就看得出,问题出在 createButtons() 方法。相反,如果这五个方法参杂在一起,这代码我保证你看了就不想动,如果出了问题要修复,那个头疼啊。。。rnrnrnrn不仅如此,更重要的是,[b]这种预先委派的编码方式对你的思维也有提高[/b]。rnrn打比方我要做的事情分为若干个步骤。在编写步骤 A 的代码之前,先将 A 委派给一个空的方法 a()。至于 a() 的内容,我现在不考虑,我现在考虑什么?我现在考虑 A 完成之后要做的事情。这就叫三万英尺的高度。rnrn假如 A 做完了就做 B,那么我又将它委派给 b()。以此类推,等所有的事情都委派完了之后,我再考虑 a()、b() 里面该写什么。这个时候,a() 已经把步骤 A 给限定了,传入什么,返回什么,都已经定好了。那么写 a() 的时候根本不用考虑这个方法以外的事情。如果 a() 很复杂,我又可以委派给若干个方法来实现。每个方法都是一样的来做,直到某个步骤已经很简单了,我就可以写最后的代码了。rnrn虽然整个逻辑,A,B,C,D,E,...很复杂,但是[b]通过委派的方式,我每次都只需要考虑其中很小的一部分[/b],所以写起来很轻松。这样写出来的代码脉络清晰,好看又好改。rnrnrnrn这就是所谓化整为零,分而治之。所以,一个方法不超过 5 行,不是绝对的,它体现的原则是:[b]一个方法的内容要一眼就能看懂[/b]。咱行内有句俗话:代码是给人看的,不是给机器看的。说句不好听的,不是人看的东西,也一定不是人写的!rnrn你可能会说“没那么严重吧,程序能用就行了嘛”。想想看,如果我愿意,所有的代码都写在 main() 里面,程序不照样能运行?既然能用,我又何必看什么设计模式呢?——所以归根结底,[b]所谓设计,就是将代码组织得更加易懂。[/b]易懂的东西才容易复用,容易复用才叫好的设计。学习设计的时候请务必记住这点。rnrnrnrn开头说了,这都是我的切身体会。如果不是当初学编程的时候在书上看到不要超过 5 行这句忠告,我都不敢想象自己现在会是什么样子。所以我特别崇拜这句话,虽然不知道是谁说的……rnrnrnrnrnrn(PS:给大家拜晚年并散分,祝大家健康愉快,心想事成!)rn 论坛

给一个OOP初学者的十四条建议

03-18

关于Mis和OOP: rnrn  第零条建议:没机会升级的Mis,不用OOP也罢。 rnrn  第一条建议:不上规模的Mis,用OOP只会吃力不讨好。 rnrn  第二条建议:好,你仍然坚持要用OOP,说明你其实是想熟悉一把OOP,赚点经验值。 rnrn  第三条建议:你有两个选择:C++和Java(Delphi?)。rn  rn   rnrn  第四条建议:你的Mis只用于Windows系统,不用于Web,不用于Unix,因此你选择C++(Windows)。 rnrn  第五条建议:推荐使用Borland的C++Builder,而不是Vc++。 rnrn  第六条建议:好,你所有的功能规格都用Class实现。你确实用OOP来构建了项目。你甚至可以屡次使用继承和多态。 rnrn  第七条建议:中途,用户需求终于又清楚了一步:你决定加一个功能。为何不继承一个旧类呢?你决定继承。 rnrn  第八条建议:于是你修改了大量代码,最后得出结论:不如直接做一个新类。或者,从一开始就做继承的准备。关键是:一开始能否预期未来的变化? rnrn  第九条建议:项目的Coding结束。一切都是OOP的语法。但是,能重用吗?项目负责人说:可以,在适当的时候。比如说,要做年统计报表,就可以从月报类继承。无稽之谈。 rnrn  第十条建议:项目完成,没人想回去修改:这些该死的类! rnrn  第十一条建议:面向对象,关键在于初步设计。 rnrn  第十二条建议:参考书 rnrn  rn  rn   关于语言:《Vc++技术内幕》 rnrn  rn  rn   关于设计:《设计模式》 rnrn  第十三条建议:项目,涉及到生活的多个方面,和读书考试相比,或有不同之处。 论坛

没有更多推荐了,返回首页