这是我对初级开发者的一些建议,针对的对象主要是大学前期对编程感兴趣的新手。
选择一种能够快速见效的编程语言和平台
你需要选择一个既实用又喜欢的平台,让它保持您的兴趣,激励您快速扩展您的知识,最重要的是你要喜欢。
有的文章建议初学者首先学习C语言,因为它是必需的、基础的语言;但是有些人会让您先学习Lisp,因为它有坚实的理论并通过一种简单的方式教给你许多编程概念。
这些都是好的建议,只不过思考问题的角度不同。但是对于“第一种”要学习的语言,我认为选择一种你喜欢而且能够激发潜力的语言是比较重要的。Lisp和C语言都很好,但在更高版本中更容易欣赏到这些特点。
我建议您将VisualBasic.NET作为首先要学习的语言。微软提供了免费完整的IDE,你只要安装包文件就可以了。重要的是,平台里包含了创建桌面程序和web程序的快速可视化设计器,你不需要学习整个图形工具而只需要熟悉编程环境就可以了。学习的代价是非常小的,同时你会学到很多以后学习其他编程语言的编程技巧。从教学的角度考虑,VB.NET不是特别的令人讨厌的陋习,它简单有趣,让您在一周内就可以做出实用的程序。
另外一种语言选择是Python。这种语言和VB.NET有许多相似之处,有terser语法。选择Python的唯一原因是它有一个较小的内置库和不提供固定的、标准的创建桌面程序或基于网络的应用服务设计器和框架。您可以单独下载这些工具包,但它不是立即见效,没有设计器您将在启动和运行上花费不少时间。
参加论坛和在线社区
通过加入论坛你会学到很多东西,坚信知识就是力量,在发问、解答问题或者仅仅是参与讨论的过程中你都会获得他人的尊重。
不要陷入“政治”讨论
参加您喜欢的编程语言社区或论坛,不要陷入编程的宗教讨论。许多程序员对他们的行业有强烈的偏见,包括丰富的经验。他们大部分的争论围绕个人喜好、语言适用的不同领域,技能和知识水平而展开。这些争论会浪费你的时间,还不如利用这些时间去学习或写软件。
耐心、自信、谦逊
了解你知道的以及不懂的,对不知道的知识不要灰心,只要不断的改进和学习,你就会变得更好。
学习技术正如你学习编程
为您最喜爱的游戏或应用程序去学习数据库、XML、网络协议、提供编写插件的具体的API等。用你学习的第一种语言作为基础,去拓展需要的技术知识、尝试不同的东西,而不要太在意你的代码是否完美。
不要忽视理论
最初的焦点是作事情并且让它有乐趣,这样做的过程中要明确知道你的工作意义。学习语言细节和相关的技术理论是很重要的。
购买其他编程语言书籍
有些书籍看起来可怕又好像不是您需要的类型,其实并非如此,这些都是应该购买的。和其他书籍相同,前面提到的知识是一样的,但他们是有深度的并提供了很多更深入的语言运用。当你在寻求一本书时,要确保它能在解释如何做和实际上做什么之间提供良好的平衡。
购买编程技术书籍
在这个阶段,您不应该买那些与行业相关以及教你如何成为“专业开发者”的任何书籍了,应该买一些像编程实践、编程技巧方面的书籍等。我强烈建议您购买《Code》,作者是Charles Petzol。这本书内容翔实,有启发性,易懂,并会指导你正在做的东西。
如果可以,找一位“领路人”
找一个聪明、热情并有经验的程序员做指导。即使他们只能抽出极少的时间帮你解决疑问,但是对你的学习也是极有帮助的。尊重他们的时间,只发问在其他地方你不能容易找到答案的问题。
原文链接:http://hobbit-hobbit.blogspot.com/2008_06_01_archive.html

转载于:https://www.cnblogs.com/java201408/archive/2008/10/22/3901012.html

对初级软件开发者的建议(1)相关推荐

  1. 成为一流软件开发者的 34 条建议

    点击上方"逆锋起笔",公众号回复 pdf 领取大佬们推荐的学习资料 本文来源:http://r6d.cn/qGAu 我们列出了一张包含 34 条建议的清单,来帮助你成为一流的软件开 ...

  2. 四条建议助力APP软件开发者直击幼教蓝海

    据相关资料显示,中国目前0-6岁幼儿约有1.8亿,全国共有20万所幼儿园,预计到2020年,我国在校幼儿园人数将达4000万人.佛山APP开发公司英趣科技了解到,如果每个孩子每年幼儿园平均交纳1000 ...

  3. 软件开发者升职加薪的 8 项技能

    私下里,经常有一些读者问我:"作为一名软件开发者,我应该掌握哪些技能,才能被领导赏识给我呢?"说实话,我心目中很多选项,不少于 20 个,但我斟酌再三,只挑选了其中最能让你受益的 ...

  4. 软件开发者的最佳实践

    近期在一个站点上看到一篇写关于软件开发者应该有的几项实践,感觉写的很的好.以下将列举下文章中提到的几个方面. 首先文章中提出,软件开发者须要不断的练习,什么是练习,为什么要练习,练习意味着什么?文章中 ...

  5. 提升软件开发者效率的10个提示

    Ilias Tsagklis是电信领域的一位资深软件工程师,以软件开发者的身份参与了多个应用与服务的开发工作.目前,Ilias是PCRF解决方案的技术领导者.他感兴趣的领域包括多层架构.中间件服务及移 ...

  6. 软件开发者最重要的四大技能

    摘要:现如今,可供选择的技术.语言及平台可谓五花八门,因此要弄明白哪里是花时间训练的最佳投资点也就难上加难-- 现如今,可供选择的技术.语言及平台可谓五花八门,因此作为软件开发者,要弄明白哪里是花时间 ...

  7. 软件开发者面试百问答案,老紫竹研究室出品(已经有64个)

    当然,全部是我个人的答案,不代表别人.地址 www.laozizhu.com/program.jsp?typeId=104 老紫竹研究室,分享软件开发的快乐与收获 ' 我这里贴上已经写好的答案连接. ...

  8. 2012年软件开发者薪资调查报告

    2012年末,CSDN和<程序员>杂志发起了一年一度的"软件开发者薪资大调查".本次调查收到了上万份问卷,开发者的参与积极性超过以往.通过分析这些数据,我们得以对目前软 ...

  9. “碟中碟”虚拟光驱软件开发者——万春读《寒江》

    <寒江独钓--Windows内核安全编程>读后感 大多数在Windows环境下工作的计算机使用者都有着对Windows操作系统内部机理了解的迫切要求和渴望,但是由于Windows 操作系统 ...

  10. 怎样才能成为一名优秀的软件开发者

    怎样才能成为一个优秀的软件开发者? (译者注:原文是for BCBer 的,但其实本文所述对所有Programmer都适用,具体到编程语言的几乎没有,所以就这样译了...) 作者:    不详     ...

最新文章

  1. 新手学JAVA(六)----处理随机性的数据
  2. 电容触摸屏GT911、GT928、GT9147的使用
  3. spring框架学习(三)
  4. c++内存中字节对齐问题详解
  5. 古巴比伦乘法_古巴平台中的通用过滤器–类固醇上的excel过滤器
  6. 数据库周刊第十七期来啦!
  7. linux下ip层的一些概念
  8. centos7 如何安装部署k8s_架构运维篇(五):Centos7/Linux中安装部署RocketMQ
  9. JS数组关联查找的性能优化
  10. ZPL指令打印 斑马打印机指令打印
  11. Linux 中 用cat 输出文件内容
  12. DNS原理及解析过程
  13. 优缺点 快速扫描 硬盘监测_对手中SSD的性能做到心中有数,十款SSD测试软件介绍...
  14. 面试题:你让工人为你工作7天,给工人的回报是一根金条...
  15. web服务器遭受命令注入攻击怎么办。
  16. 【批量去除图片的背景】
  17. C#+CodeSoft 根据Label模板打印标签
  18. Vue组件自调用/无限递归导航/element-ui导航封装
  19. 待得天晴花已老,不如携手雨中看
  20. 分子动力学模拟之SETTLE约束算法

热门文章

  1. Python 入门演示
  2. ubuntu安装python
  3. Linux中的ls命令详细使用
  4. 计算字符串长度(英文占1个字符,中文汉字占2个字符)
  5. mac ssh key 的获取 (转)
  6. .NET(WinCE、WM)开发转Android开发 ——Xamarin和Smobiler对比...
  7. C#操作十六进制数据以及十进制与十六进制互相转换
  8. 量子计算会带来什么样的革命?
  9. cocos2d-x自制工具07:打印cocos2d-x的节点树
  10. Centos 6 编译安装 Apache 2.4