如何提高我的编程能力?我掌握了C#的基础知识,但对我的能力并不太自信。
答案 0 :(得分:14)
信心来自经验。
答案 1 :(得分:9)
每天阅读Stack Overflow:)
严重。尝试解决有趣的问题。即使您没有发布解决方案,也请稍后再回来查看其他人是否提出类似的问题,为什么他们的解决方案可能会有所不同等等。
答案 2 :(得分:8)
答案 3 :(得分:4)
http://www.asp.net/LEARN/videos/
Voile,您正在编写ASP.net。
请记住,随着代码的发展,您可能需要更多地掌握C#。为了使用这本好书,大多数微软学习C#都非常整洁(学习ASP.net非常蹩脚)。 当然,这就是我当时所做的(大约2年前),现在你应该能够在网上找到一些很棒的教程。 祝你好运;)
答案 4 :(得分:4)
想想一个有些复杂的有趣项目(更多的是“Hello,world”)并对其进行编码。
练习,练习,练习!
还阅读论坛,博客,参与讨论。你会学到很多书中没有提到的东西。
答案 5 :(得分:3)
阅读大量代码,编写大量代码并保留C# 3.0 in a nutshell方便的副本。
答案 6 :(得分:3)
学习新的编程语言。学习数据结构,算法和设计模式。学习正则表达式。学习数据库。学习HTML / XHTML / DOM。学习学习学习学习。
在编程中,知识===权力。
答案 7 :(得分:2)
做某事,即使它正在重新发明轮子。您可以全天阅读书籍,观看视频和收听播客,但真正的体验来自实际构建应用程序。不要构建一个你知道可以构建的应用程序 - 而是创建一个稍微超出你的范围的应用程序,然后冲洗并重复。
当你意识到你创造了一堆不可维护的意大利面条代码时的体验无法真正替代,因为这真的允许你研究改进代码的技巧。当然,随时可以在MSDN上阅读有关事件,代表和Lambdas的内容,但在您需要它们的那一刻阅读它们意味着知识真的会在您的记忆中消失。
我尝试对尽可能多的主题有一个粗略的了解,但这通常很浅:我知道一种技术存在并且大致解决了它所遇到的问题,因此当我需要它时,我可以了解它。
在我看来,第一手真实世界体验的唯一替代方案是更多的第一手真实世界体验。
答案 8 :(得分:1)
答案 9 :(得分:1)
你说你正在学习ASP.NET和C#。你有没有做过任何编程或网页开发?因为,如果你还没有,那么你需要退后一步,学习HTML,CSS的基础知识,并掌握如何通过HTTP在客户端和服务器之间传递数据。我还强烈建议在基础SQL方面获得基础,因为大多数认真的Web开发都会在某些时候使用数据库。
之后,一些基本的OOP(面向对象编程)理论对你有好处。这样,在深入编码之前,你就可以在主题方面有一个良好的基础。
为了学习C#,我会建议一些很好的教程:
The C# Station Tutorial和Softsteel Solutions C# tutorial。
我在学习ASP.NET时也发现ASP.NET Quickstarts很有用 - 我更喜欢通过实例而不是理论来学习。
至于自信,我担心这只会来自经验。也许试着在这里回答几个问题?获得一些投票可能只会给你提升。祝你好运。
答案 10 :(得分:1)
这符合您迄今为止收到的答案的类别,但审核开源项目。
了解它们是如何工作的,甚至可能是为什么它们以特定方式组合在一起。它不仅可以提高您编写C#的能力,还可以提高您对软件工程的理解,这最终是您如何充分利用编程语言(C#或其他方式)。
答案 11 :(得分:1)
创建一个利用大量不同技术的项目是掌握“全局”视图的好方法。
作为一个例子,想想一个n层应用程序,你在一个非常简单的网页中输入一个值,这个值被发送到一个Web服务,在这个WS后面是一个简单的业务层,它在读数之间切换到一个表在数据库的基础上,然后返回在初始网页的回发中完成输出的值。在我个人看来,该层的每个元素都是一个简单的元素,但是,使整个系统无误地工作是初学者的挑战,这样你就可以建立对你的技能的信心,使你能够采取任何其他想法。
嗯,那是我的两分钱。祝你好运!答案 12 :(得分:1)
可能有很多项目可以制作。选择使你的项目成为真正的项目,你认为你的水平很难。 1)分析你的项目 2)定义目标 找到实现目标所必需的东西 3)然后推导出一种清晰解释工作流程的算法 4)然后开始woking
根据我的经验,“ 通过工作学习 ”是一个好主意。首先抓住基础知识然后开始工作,你将逐步学习。不要放弃,成为一个不停的十字军。 练习练习它是作为程序员幸存的唯一方式。
成为一名优秀的程序员需要很多耐心,思考技巧,注意力,知识渊博。
聪明的人总是以好奇心取代对未知的恐惧
答案 13 :(得分:0)
积极参与编程(和非编程)论坛。