我在编程方面有一个非常奇怪的学习经历。我有点教C ++,但我没有从中得到很多。这是我从中得到的:标题和变量声明。我试着自学PHP,其中我学到了很多东西。问题是,我的很多知识都是广泛的,随机的,并针对特定情况而设计。
所以,我的问题是:用大多数语言进行编程有哪些基础知识?
答案 0 :(得分:23)
术语“基础”意味着一个简短的列表,但要成为一名有效的程序员,您必须学习很多概念。但是,一旦你学会了它们,你就可以跨语言应用许多相同的概念。
我编写了一个(很长的!)概念列表,这些概念在几种(如果不是大多数)编程语言中很重要。
语言语法
输入系统
内存管理
作用域
语言结构/程序组织
数据类型和数据结构
功能,方法,闭包
语言类型(不相互排斥)
面向对象的原则
API(或如何做基本的东西)
答案 1 :(得分:5)
此处未提及的另一个重要事项是面向对象编程。这些想法围绕着类,继承,接口等。
答案 2 :(得分:3)
一个非常重要的基本编程技能是能够在许多不同的抽象级别进行思考,并知道何时以及哪种抽象级别最适合特定的编程任务。
答案 3 :(得分:2)
指针。因为很少有人真正理解它们。
递归和迭代,加上差异,以及何时使用它们。
获取算法书并完成练习 - 你不会失望。
答案 4 :(得分:2)
测试! (单元测试,集成测试,夹具,模拟对象,......)
并非编程技能,但肯定是一项开发技能:使用修订控制,并学习提交处理一个(或几个相关)需求或错误修复的更改集,并且将始终生成编译的源树没有错误。这将教你组织你的工作: - )
最后但并非最不重要:英语...... :-)同样,这不是编程技巧,我知道有些人可能不同意,但我觉得任何使用英文关键词的编程语言也应该用英文编程。所以:使用英文变量名,依此类推。我甚至会说代码注释应该是英文的,但我相信更多的人会不同意这一点......所以:了解其他人如何描述他们的代码,并坚持这一点。
答案 5 :(得分:1)
如果我是你,我会回去学习K& R课程中的C编程语言。
答案 6 :(得分:1)
首先找出你想要编程的东西 - 例如web,PC应用程序,基于Java的应用程序,移动设备,报告,系统接口,企业对企业界面等等,然后从那里开始。