所以我在这里说我不是专业编码员.我是一个业余爱好者.和其他人一样,我觉得我做错了.
就像这个问题一样,如果我开始有这样的感觉,我就不是一个优秀的程序员.现在我基本上知道他们说你不应该担心,即使你不断怀疑自己,你也应该好.但是,他们正在和他说话.我不喜欢他(从某种意义上来说,我更像是一个新手)...我已经作为业余爱好者编写了3年(3个业余爱好者,请注意你!),不像他说的10-11岁.
另外,我可能深入阅读的唯一内容是在21天内自学C++.在我继续之前,为什么你不会对我在(主要是)iPhone和OpenGL上发布的各种问题感到困惑,我已经对这两件事情进行了几个月的探讨,并最终对两者都有所了解.他们.但是,从我注意到的是,我是在制作好的代码.对我而言,我甚至不讨论我是否做错了:我可以告诉我(从我创建的各种意大利面条代码和其他各种差异我和其他人可以看到并在我的代码中注明).什么是摆脱我的这些可怕习惯并以更正确的方式做到这一点的好方法,或者如果没有"正确的方法"那么我的意思是"典型的",方式?
业余开发者应该做什么:(我不是专家;我列出了我所有的想法。如果我错了,请纠正我)
需要彻底学习该语言(C、C++ 或 Java)。我们中的许多人都对计算机和编程着迷,我们开始学习和构建软件以获取乐趣。您可以在 amazon.com 上找到许多有关最佳实践的书籍。人们可以经历这一点。
学习 OOP、设计模式、UML 等概念。在所有这些之前,每个人都应该问“为什么”。这将帮助您理解系统建模的最佳方法。许多 C 程序员在转向 C++ 时,他们使用类作为容器来存储所有变量和方法。那么如何创建一个类,为什么我要创建一个抽象类。所以“为什么”是有用的。
学习核心概念,如操作系统、计算机组织、计算机体系结构、算法、软件工程等。我们大多数人只是程序员(称谓“软件工程师”)。我们都知道如何编码并获得可行的解决方案。除此之外,我们大多数人对计算机一无所知。因为,许多程序员来自不同的工程流派。学习了这些编程概念并开始构建应用程序并作为软件工程师加入了一些公司。但我们(其他流)从未学过这些概念。因此需要掌握这些概念,这将有助于更好地理解和编码。
参加会议(例如 Microsoft TechEd),这有助于了解即将推出的技术。
撰写有关最佳实践、您的发现、新概念、解决方案的博客。博客将像一本讨论书,访问者将在其中讲述他们的观点,这将帮助您更好地理解概念。
从博客订阅 RSS。这真的很有帮助。
亚马逊网站。我发现 amazon.com 对于挑选合适的书籍来学习新概念非常有帮助。用户评论并检查书籍列表。