初学者:我应该从高阶还是低阶开始

Beginner: Should I start High Level or Low Level?

本文关键字:开始 高阶 我应该 初学者      更新时间:2023-10-16

我对编程相对陌生,希望能够为Linux和Windows制作本机C++程序。

我只是想知道,作为一个初学者,我应该首先学习vim中的C和汇编等低级别语言,还是应该直接从带有C++的IDE中开始?

如果你想学习C++,就学习C++。首先学习C语言或汇编语言不仅是浪费时间,而且通常会养成相对较差的习惯,在你好好使用C++之前,你需要先解决这些习惯。

这并不是说知道C语言或汇编语言就不可能很好地使用C++——但每种语言都需要截然不同的思维方式,因此会产生额外的工作。

如果你的最终目标是学习C++,那么你首先学习C并不是先决条件。你可以,但你不必。

底线是,做你觉得最舒服的事。

C++(实际上(不是一种高级编程语言。只要您犯了一个小的编程错误,您仍然可以手动管理内存,并获得未定义的特定于环境的行为。除此之外,C++对新程序员来说是一种非常不友好的语言,因为它过于复杂,而且(在我看来(设计得很糟糕。

我建议从Java、Python或C#等实际的高级语言开始,并结合一个花哨的IDE。如果您想更多地关注低级方面,而不是一般的编程技术和范式,那么从C开始也是一种选择。

此外,如果你想开始编程,你不必学习vim,一个简单的编辑器,如gedit或Notepad++也可以很好地工作。不过,专门为您的语言设计的IDE可能是最舒适的。

EDIT:正如Jerry Coffin正确指出的那样,如果您的目标是编程C++应用程序,则此建议并没有真正的帮助。尽管我仍然建议在开始使用C++之前,先从一种更简单(高级(的语言开始,以获得一般的编程技能。如果C++对你想要实现的目标不是绝对必要的,那么重新考虑你是否真的想使用这种语言也不是一个坏主意。

如果你想学习C++,从C++开始。你不需要先学习C;这实际上会有点适得其反,因为当你转到C++时,你必须un学习一些东西。

C和C++是不同的语言,有不同的目标和哲学。一个写得好的C++程序看起来或行为都不会像一个写的好的C程序。

一旦您熟悉了高级C++功能,然后您就可以开始深入研究较低级别的细节了。

"如果我看得更远的话,那就是站在巨人的肩膀上"-伊萨克·牛顿爵士

不要重新发明轮子

从尽可能高的高度开始,从核心中抽象出来,只有在你的道路上没有其他前进方式时,才重新审视核心。

在我看来,你的问题更多的是关于学习编程。语言选择可能是学习编程范例/概念的次要因素。

因此,如果编程是你的重点,那么你可以首先学习面向对象编程(OOP(概念,这样你就不必像来自过程方法的人经常做的那样"采用"它们。然后,如果需要,你可以深入研究过程方法和一些C习惯用法/技巧以及低级方法。

OOP可以用C++和Java等语言进行教学,在那个阶段并不重要。

一旦你的心态是"面向"的,那么实际的编程将更多地使用现有的库(API(,事实上,这将需要比语言本身更多的学习。

所以我的建议是先学习面向对象的概念,然后再回顾你未来的语言偏好。玩得高兴

Javascript是我学习的第一门语言,我感到很幸运。有了它,我可以跳过其他语言的许多复杂和障碍,比如静态类型、指针和编译。使用javascript,您甚至不必安装任何东西,只需转到此处,就可以开始尝试:http://jsfiddle.net/X4PpW/。

在我掌握了Javascript之后,我很容易理解在C中使用指针和类的概念。另一种好的语言是Python。

另外,你打算做什么?并不是所有的桌面应用程序都必须用C编写。事实上,一些新的框架借用了网络应用程序的思想,甚至允许将网站上的HTML嵌入到你的应用程序中。

  • 游戏:Unity3dhttp://unity3d.com/(用这种方式编写的游戏可以移植到移动设备或网络,但需要插件(
  • 带UI的通用应用程序:QThttp://qt.nokia.com/products/