“初学者计算机科学与程序设计入门”

时间:2010-05-24 21:04:37

标签: computer-science

我是新来的,也是开发软件和编程的新手,新的我的意思是0经验或教育。

由于我目前正在通过互联网学习医学,而且我平均每天使用电脑约8-9小时,这使我对编程非常感兴趣。我从Redditor的同事那里得到了一个链接,在我深入研究这个项目之前我得到了一些问题。

http://ocw.mit.edu/OcwWeb/Electrical-Engineering-and-Computer-Science/6-00Fall-2008/CourseHome/index.htm

  1. 这对初学者来说太难/太难了吗?
  2. Python™编程语言是可行的,还是我最好先学习其他类型的语言?
  3. 我自己学习基本编程的其他方法是什么?有没有更好的方法让一个完整的初学者开始?
  4. 感谢您的时间!

9 个答案:

答案 0 :(得分:8)

Python是一个可以学习的great language

答案 1 :(得分:8)

恕我直言,Python是要走的路。您可以查看非常有用的Google's introduction courses to Python

祝你好运!

答案 2 :(得分:6)

将医学作为您的主要领域,一种学习曲线几乎平坦的语言,因为Python是您的最佳选择。

你可以获得开源教程和书籍,如A bite of pythonDive into python,Norman marloff的python intro和其他人(只需google for python教程)。 “计算机科学家”一书中的“如何思考”系列试图向您介绍程序设计。 python的最后一个版本是Think Python: An Introduction to Software Design

尽管这些教程非常有用,但为了更加学术和全面地学习该语言,我建议Mark Lutz Learning Python

对于医学研究的实践,你还应该学习很多数学,特别是统计学,包括数据表示方法。数学也是任何计算机科学课程的必修课。 Python为您提供了非常好的库,例如numpy/scipy和matplotlib。 Matplotlib有一个非常完整的tutorial

如果您将研究指向生物医学研究的更多分子方面,Python将为您提供非常强大的工具。例如,查看biopython以处理基因组和蛋白质组数据。巴斯德研究所的Python for biologist有一个有趣的教程

答案 3 :(得分:4)

哇,这么多Python拥护者!

无论你选择哪种语言,最重要的是要记住,你应该从小开始,先学习basics。从Python这样具有较小学习曲线的语言开始,可以帮助您巩固基础知识,而不会陷入可能让您失望的更高级概念 - 但这并不意味着从更先进的东西开始阻碍你!

我个人从Java开始(旁边有一点C/C++),并且不觉得这会以任何方式限制我的发展......

您提供的课程规范似乎是面向对象编程的一个良好开端,我还建议通过对所使用的各种语言的一些额外阅读补充您的学习,以及为什么每个语言都有用。您可能一开始并不了解很多概念,但请继续回顾它们,很快您就会开始了解 以及为什么事情正在发挥作用他们的方式。

最重要的是:练习,练习,练习 - 我说不够!您编写的每一行代码,您阅读的每本书都会教给您一些新的东西。您尝试学习的每种新语言都有助于您理解编程,programming design

让你前进的最好例子(你会学会喜欢/讨厌这个)是“Hello World”程序,它构成了自时间开始以来所有编程语言的起点 - Python example,{{ 3}}

答案 4 :(得分:1)

有很多语言对初学者有好处,你可以从中学习任何相同的概念。一个有良好直觉的优秀程序员应该能够学会使用任何语言。你没有详细解释你想要用编程做什么,因为每种语言对于特定目的都很强。

我个人是Python或Java的粉丝。 C / C ++起初比较困难。

Python的一个缺点是它的一些错误消息是恕我直言,比Java更加神秘。作为开发人员,这可能令人沮丧。在我看来,Python也需要在兼容性方面共同行动。有Python 2. *和Python 3. *,它们不完全兼容,并且在某些方面间接演变。

如果你想了解更多关于计算机科学而不是编程的知识,请选择一本像CLR这样的优秀算法书。

答案 5 :(得分:1)

课程6.00(您的链接)看起来像编程的一般介绍。它使用Python,而不是Python教程。可能是一个好的开始,看看你是否真的对这个话题感兴趣。

如果你想要一个坚实的基础来编写和理解程序(而不是特定语言的语法),那么课程6.01,计算机程序的结构和解释,是经典的。它使用Scheme作为其语言,并且可能需要更多的工作才能通过6.00。另一方面,你会从中获得更多。

答案 6 :(得分:0)

由于我在C高中完成了一个模块,因此我选择了C#路线,但我对编程也是全新的。

我主要是从一本书(Jack Purdum的初学C#3.0)中学到的,我从今年2月开始学习这本书,上周开始学习我的第一本课程。这是微软C#简介(MS2069),在我自己的时间做了很多工作,它在上周上课时给了我一个支持,虽然这些是介绍性的课程,它们涵盖了很多内容我很多都没有,并不明白。课程的节奏各不相同,虽然我发现我的速度非常快,但我总是建议你在注册之前做一些自己的学习,并支付第三方课程,以最大限度地提高你从课程中获得所有东西的机会。

我还建议将C#作为第一语言,没有任何先前的编程经验我发现C#非常容易阅读和理解,在我阅读它时,新代码似乎有意义。

答案 7 :(得分:0)

我喜欢你的热情。我开始从事计算机科学的职业生涯不是通过学习编程语言,而是学习如下的基础知识 1)计算机组织 2)操作系统理论 3)编程的基础(任何编程语言) 4)数据结构 5)编译器设计和原理 6)dbms概念

答案 8 :(得分:0)

  1. 我还没有完成这门课程,但考虑到它是一门入门课程,我认为这对初学者来说很好。由于这是麻省理工学院的课程,我也可以猜测它非常好。

  2. Python是一种很好的语言,因为它很容易上手。然而,另一方面,它更容易,因为它是一种非常高级的语言。这意味着您可能无法通过学习Python来学习一些更基本和重要的编程概念。我从学习C ++开始,然后我学到的第三种语言是Python,在学习C ++之后学习Python似乎很容易。但这让我理解为什么使用Python更快更容易,因为语言为你做了一些你必须在C ++中手动完成的东西,但知道如何做这些事情很重要,因为不是每种语言都高等级为Python。尽管如此,这对于熟悉编程规模来说仍然存在障碍。

  3. 初学者学习编程有很多很好的资源。从麻省理工学院开放式课程,Udacity,Coursera等网站的MOOC到致力于教学编码的网站,如Code Academy,TreeHouse,CodeSchool等,以及在线书籍和教程,如newsboston.com,tutorialspoint.com,如何像计算机一样思考科学家(书教python),如何学习困难的方法(各种语言都有这些教程),http://www.reddit.com/r/carlhprogramming/?count=375&after=t3_9ot7r(用于学习编程基础和C),以及更多的资源。最好找到它们只是谷歌初学者编程资源。