【问题标题】:Coming up to speed on the programming environment [closed]加快编程环境的速度[关闭]
【发布时间】:2008-10-05 07:00:10
【问题描述】:

我不是一个全职的软件人。事实上,在过去的十年中,我 90% 的工作要么在硬件上,要么在编写低级(嵌入式)代码。

但另外 10% 涉及为开发工具编写 shell 脚本、更改内核以添加特殊功能以及为最终用户编写 GUI 应用程序。

问题是我发现自己在知识方面面临着重大漏洞,通常是因为我已经多年没有完成“X”了,我要么忘记了,要么环境发生了变化。

TheDailyWTF.com 上每隔一段时间就会出现类似“WTF:这家伙花了一整天时间编写大量代码,而他本可以在库 baz 中调用 foobar()”的主题。我自己也去过那里,因为除了#include 东西(例如)之外我不记得太多了,而且我的快速搜索不知何故错过了正确的库。

在您很少接触的编程环境中,您发现哪些方法可以有效地快速学习和/或刷新自己?

【问题讨论】:

    标签: development-environment


    【解决方案1】:
    • 询问您认识的在您感兴趣的环境中工作的开发人员。
    • 大量搜索网络。
    • 在相关 IRC 频道中提出具体问题(Freenode 很棒)。
    • 在 StackOverflow 和其他网站上提出具体问题。

    在所讨论的编程环境的“日常流程中”确实没有任何替代品。对当前最先进的技术有良好的感觉是您只能从经验中获得的东西,因为我相信您可以在自己的专业领域验证。

    【讨论】:

      【解决方案2】:

      我尽量了解有关我感兴趣但目前不一定使用的语言的一般新闻。能够遵循一般更改对于您必须重新选择它时有很大帮助。

      除此之外,我个人认为最容易获取最新的参考书,并编写一些基本的东西让我再次适应环境,即作为一名网络程序员,我会制作一个简单的 crud 应用程序,或者一个快速的网络服务/客户端。

      【讨论】:

        【解决方案3】:

        对于框架/API(例如 JavaScript 框架或小部件库):

        1. 快速浏览整个 API 文档;了解一下所有内容,而不是选择似乎适合您需求的第一种方法。
        2. 如果可用,请查看源代码 框架,看看如何 API 旨在被使用。看看幕后的东西会有所帮助。并且 一些方法将被使用 在内部,展示他们的真实意图。
        3. 不一定总是信任现有代码(通过 Google 搜索、来自同事、来自书籍),因为并非每个人都尽职尽责地找出使用 API 的最合适方法。有时甚至 API 文档中的示例也可能已过时。

        【讨论】:

          【解决方案4】:

          在 Java、.NET 和 Python 等更新的全功能环境中,几乎所有常见问题都有库解决方案。不要想“我怎样才能用纯 C 编程”,而是“哪个库为我解决了这个问题?”这是一种态度转变。就资源而言,我提到的三个环境的库文档都不错。

          【讨论】:

            【解决方案5】:

            我认为最好的解决方案是买一本关于你需要赶上的主题/环境的书。

            向您认识的在该领域有经验的开发人员提问。

            您还可以查看新闻组(Google 网上论坛让这一切变得简单)和论坛。您可以提出问题,但即使阅读 10 分钟针对特定主题/环境的最新热门问题,也会让您有点“了解”。

            如果你能找到一个专注的博客,同样的事情也适用于博客。不过这些都非常罕见,我个人并不希望通过博客让我“了解”特定环境。 (我个人认为“这里有一些简洁的东西”或“这是我失败的原因,你可以避免它”或“一般实践”领域中最受欢迎和最有趣的博客。)

            【讨论】:

              【解决方案6】:

              除了上面的答案,我认为你所要求的将花费你大量的时间,你必须愿意花时间来实现你的目标。我的方法与欧文的答案几乎相同;获取参考书或教程,并在您尝试任何给定事物的工作方式时通过更改示例进行修改。我会说作为最低限度,每隔一天分配一个小时来做​​这件事,在你知道你不会被打断的时间里。再少一点,你可能会继续挣扎。

              【讨论】:

                【解决方案7】:

                崩溃学习的最佳方法很简单,只需执行此操作,使用 google 搜索 X 教程,打开您喜欢的浏览器并开始输入即可。一旦你对 X 的感觉达到一定程度,看看其他人的东西,那里有很多开源的,肯定有人以前用过 X,看看他们如何解决某些问题并从中学习,这个是一种简单的方法来验证您是否“走在正确的轨道上”,或者您正在按照其他人定义为“常识”的模式做事或思考。

                由于您的学习曲线已经暂停,因此刷新某些东西要容易得多,我这样做的方法是保留您在编写时所做的一些示例或保留您所做的一些项目。然后您可以轻松地刷新并使用您自己的示例。

                你在这里提到的图书馆问题,只有提高你的搜索技能才能改善那个问题(尽管看看其他人如何解决这个问题也会有所帮助)

                【讨论】:

                  【解决方案8】:

                  不要尝试选择所有环境。

                  专注于有用和/或有趣的内容,然后选择一些高质量的博客定期阅读或收听播客。您将很快掌握环境的当前状态。

                  具体的例子:我已经离开 Java 世界很长时间了,但最近几个月我一直在做一个 Java 项目。从那以后,我收听了 Java Posse 播客并阅读了一些博客,尽管我离 Java 大师还很远,但我已经恢复了速度,没有太多麻烦。

                  【讨论】:

                    【解决方案9】:

                    只是一个。当我们在处理我们的代码时,我们知道我们需要非常努力地优化关键路径,但在非关键路径上,我们通常不会花费太多精力来优化。
                    根据您的描述,您在嵌入式上工作了 90%,在休息上工作了 10%,假设在其余的 50% 中,您花费了更多所需的时间。因此,根据我的计算,您正在优化大约 5% 的工作流程...
                    当然,在你做一些新的事情之前,通常的 google/SO/forums 搜索很有用,但在我看来,投资不仅仅是浪费时间,除非你想浪费一些时间只是为了娱乐或普通教育...... :) ,但这是另一个故事。
                    顺便说一句,我处于相同的位置,上次我需要一些 GUI 并使用了 MFC(因为我有时在 10 年前使用它:))并且我完全理解我可能会在 C# 和朋友中获得更好的结果,但是学习曲线只是不能证明这一点,特别是知道我需要将 C 代码与 GUI 混合。

                    【讨论】:

                      猜你喜欢
                      • 1970-01-01
                      • 1970-01-01
                      • 2010-09-26
                      • 1970-01-01
                      • 1970-01-01
                      • 2016-03-18
                      • 2021-03-26
                      • 1970-01-01
                      • 1970-01-01
                      相关资源
                      最近更新 更多