1
8
我发现我需要做一个项目来正确地学习一门语言,但是那些可以是个人项目。当我在工作中学习了python时,我第一次想到(并且发现)我的工作效率有一段时间明显下降。我阅读了标准教程、编码标准,并在Python列表中潜伏了一段时间,这让我对语言的最佳实践有了更好的了解。 学习一门语言时,做一些诸如编码dojos之类的事情可以帮助你对事物有一种感觉。我最近刚刚换了工作,回到Java,我花了一些时间在玩具程序上,只是为了找回对事物的感觉(我也在阅读有效的Java,第二版,就像我以前的Java 1.4的主要经验)。 |
2
4
我认为,在某些方面,无论学习语言的动力是什么,你都必须从模仿新语言中的好模式开始。无论这意味着要找到一本好书,要有出色的代码示例、良好的在线教程,还是在经验更丰富的开发人员的带领下,您都必须先理解用特定语言编写好代码意味着什么。一旦你达到了一个舒适的水平,你就可以开始扩展和试验你所学的模式的替代品,寻找应用你从其他语言学到的东西的方法,但是要遵守语言的“规则”。最终,你会发现你可以打破之前学过的规则,因为你有足够的经验知道它们何时适用。 我个人的偏好,即使是被迫学习一种新语言,也是从一些废弃的代码开始。即使从好的教程开始,毫无疑问,您也会编写代码,稍后您将回顾这些代码,并且不理解您可能有多么愚蠢。如果可能的话,我更喜欢把它作为我第一次尝试语言代码的方式来写,这将被丢弃,以后不会再回来困扰我。另一种方法是,随着您了解的越来越多,花大量时间重构。最终,你也会这样做。 |
3
3
我想在这里提到alt.net
因此,本着alt.net的精神,走出舒适区学习新语言是一项挑战,但很有用。一些真正帮助我的事情如下:
最后,我认为学习一种强大的语言,如C语言或Java,一种函数语言和一种脚本语言,如Ruby或Python是值得的。 这些东西极大地帮助了我,我认为将帮助所有软件工程师和架构师真正为任何开发环境做好准备。 |
4
2
在我被聘为Zend框架项目的项目负责人之后,我学习了PHP。 这有助于我有20年的专业编程背景,以及对C、Java、Perl、JavaScript、SQL等的很好的知识。在我的大部分职业生涯中,我也倾向于使用动态脚本语言。我用awk编写了应用程序,用shell编写了框架,用troff编写了宏包,甚至只用sed编写了一个论坛。 有助于在工作中学习语言的事情:
当然,我确实应用了我从其他编程语言中学到的知识。许多计算机科学概念都是语言通用的。给定语言的差异通常只是惯用的,一种用另一种语言表达可以用另一种方式完成的事情的方式。对于像Perl或PHP这样的语言来说尤其如此,它们都从早期的语言中借用了大量的习语。 这也有助于我在大学里选修了编译器设计课程。在构建语言的基础上有了良好的基础,更容易掌握新的语言。在某种程度上,它们都只是抽象运行时堆栈和对象引用的方法。 |
5
1
如果你是团队的初级成员,不懂语言,这不一定是个问题。只要有一些代码审查和监督,您就可以成为一个有生产力的人。 语言语法是一个问题,但体系结构差异是一个更重要的问题。许多语言也是开发平台,如果您没有使用该平台的经验,就不知道如何创建一个可行的解决方案体系结构。所以,如果你是项目负责人或是独自工作,在做设计工作之前,你最好在平台上有一些经验。 例如,我会说,一个没有VB经验的有经验的C编码人员很可能会在一个VB.NET项目中生存下来。事实上,对于只具有C/ASP.NET经验的开发人员来说,完成C_WPF项目比完成VB ASP.NET项目要困难得多。一个有经验的PHP开发人员在ColdFusion项目上可能会有点犹豫,但他们可能不会犯任何严重的错误,因为他们熟悉基于脚本的Web开发体系结构。 许多概念,如对象建模和数据库查询策略,可以很好地在语言之间转换。但是对于一个新的平台来说,总是有一个学习曲线,有时它会非常糟糕。最糟糕的情况是项目必须被抛出,因为架构太错误了,无法重构。 |
6
1
我喜欢在项目中学习一种新语言,因为 真实的 项目通常会强迫我学习语言的某些方面,否则我可能会跳过这些方面。我喜欢做的第一件事就是用那种语言读代码,然后跳进去。我找到资源(如书籍和各种互联网网站)来帮助我继续前进。 然后,在我研究了一段时间之后,我喜欢阅读(或重新阅读)有关该语言的书籍或其他资源。到了这个时候,我已经掌握了一些知识,这将有助于巩固一些东西,并指出我在理解上完全错误的地方。例如,我可以看到我对语言之间的相似性做了错误的假设。 这也适用于工具——在使用工具一段时间并学习基础知识之后,阅读(或略读)文档可以教会我很多东西。 |
7
0
在我看来,你应该尽量避免这种情况。我知道,大多数时候你不能,但无论如何,不要把新语言和旧语言混合在一起,也不要把旧习惯、练习和模式混合在一起。 总是尝试寻找资源来帮助你以语言的工作方式,而不是其他语言的工作方式,通过新的语言;那将永远不会有一个快乐的结局,如果它这样做,将很难修改到正确的方式。 干杯。 |
8
0
是的,我有。 我是说,还有别的办法吗?我所学过的唯一一种语言是ABC BASIC,它是你在我的第一台电脑上使用的语言。 |
9
0
我建议你从某种语言开始,坚持下去。我这么说是因为过去我试过很多次,尝试了越来越多的不同的方法,而我刚开始使用的方法是最好的。 |
Sudhanva c · 如何提高编码技能?[已关闭] 6 年前 |
hoffm · 为什么Ruby找不到调用方类中定义的常量? 7 年前 |
Thamme Gowda · “lambda”关键字的较短替代项? 7 年前 |
AlphaModder · 有没有带有“不寻常”访问修饰符的编程语言? 9 年前 |
lucasasecas · 有可能静态地使用动态语言吗? 10 年前 |
Eugenio Laghi · 仅由括号、加号和感叹号组成的语言 10 年前 |
dallin · 数组中的逗号运算符是否有名称? 10 年前 |