尽管我曾经将NetBeans用于一个项目,但要成为一名成熟的Ubuntu开发人员,我需要学习哪些语言?
我在NetBeans(仅Java)中的项目是设计一个计算器(相对容易)。此外,我们如何学习制作图像查看器,浏览器等?
另外,对于某些应用程序,最佳的语言是什么?
尽管我曾经将NetBeans用于一个项目,但要成为一名成熟的Ubuntu开发人员,我需要学习哪些语言?
我在NetBeans(仅Java)中的项目是设计一个计算器(相对容易)。此外,我们如何学习制作图像查看器,浏览器等?
另外,对于某些应用程序,最佳的语言是什么?
Answers:
答案很简单,并没有真正的帮助。需要哪种语言。Ubuntu是大量软件,其中一些是用C编写的,一些是C ++编写的,一些是用Python,Perl,bash等编写的。您绝对应该使用bash学习脚本编写,并且应该选择Perl或Python之类的语言,可能是后者。此外,学习老式的C语言永远不会伤害任何人-您可以了解有关程序如何工作,什么是库以及其他工具上很多东西的更多信息。
否则-首先找到一个任务,一个利基市场,一些需要处理的东西,或者缺少的东西,或者只是令人着迷的东西,而您想对其进行处理。然后找出适合该目的的语言。
如果您打算为Ubuntu编写可以在多种设备和外形(台式机,电话,平板电脑,电视...)上运行的应用程序,建议您学习QML和JavaScript。实质上:
您应该学习:
然后,对于所有其他内容,您将需要其他一些东西:
但是仍然有许多其他语言,例如Java等,但是,除了C / C ++之外,上面提到的可能更容易入门,但是值得学习,因为您可以将其与许多其他语言一起使用(例如,扩展python,ruby等)
编程工作包括实际代码和其下的思维模型。
只要您具有计算机工作原理的基本概念,就可以轻松地自学编程语言,但是,为了对项目做出有益的贡献,您还需要了解其背后的设计。
因此,我的建议是加入一个您感兴趣并经常使用的项目,然后开始进行质量保证工作:
这将使您可以在可管理的学习曲线上了解项目的困难,概念性部分,同时保持您的兴趣(因为这是您关心的项目),并可以访问该项目周围的社区。您可以随时掌握实际的编程语言(无论在项目中使用的是哪种语言)。
有关逐步入门的示例,请看我对Beignet项目的贡献。编程语言(在这种情况下为C / C ++)的知识当然不是这里的限制因素。
您应该学习...所有人!或更确切地说,元学习所有语言。当您知道两种或三种语言时,您可以快速学习与这些语言相似的任何新语言。如果您了解足够多的语言,则可以“虚拟地”全部了解它们,更重要的是,您将了解哪一种语言是该语言的一部分,以及与该程序无关的语言。最终,特定的语言是无关紧要的。
因此,您可能想学习Java,C,Scheme,OCaml,Assembly(至少两个体系结构),Forth和一些Prolog,但不一定要按此顺序学习。第二语言将是最难的,因为您既必须学习新概念,又要忘记用第一语言学习但被证明是错误的概念。之后,这很容易,而且只会变得更容易。
然后,在处理特定的开发任务时,请根据编译器和库的可用性和支持,同事的知识,管理方面的策略约束等,使用适应性最强的语言。思维的灵活性是关键。知道多种语言可以赋予这种灵活性。