作者: Roger Morrison
创建日期: 17 九月 2021
更新日期: 1 七月 2024
Anonim
从自学软件开发到开互联网公司?分享我的编程自学方法
视频: 从自学软件开发到开互联网公司?分享我的编程自学方法

内容

在本文中:学习编程语言创建程序创建程序原型构建程序测试程序将附加值赋予程序定价程序5参考

要编程软件,您将不得不花费大量时间学习编程语言,并且无论您多么努力,都不要灰心,并且要记住,许多著名的程序员都是自学成才的。一旦像程序员一样思考并吸收了语言的基本知识和概念,就可以开始创建小型应用程序而无需花费太多时间。在学徒工作中增加的经验将使您知道越来越多的“针对性”的解决方法。然后,您可以考虑创建您的应用程序。


阶段

第1部分学习编程语言



  1. 选择一种语言开始。 如果您以前从未编程过,则必须将自己局限于一门可以负担的语言,但又不要忽略它可以实现目标的事实。您只有尴尬的选择,才决定沉迷于完全适合您想要接近的应用程序领域的编程语言的学习中。
    • C是通用编程语言的“ doyen”。尽管年龄大,他仍然是迄今为止使用最广泛的语言之一。几乎所有操作系统都是使用C语言开发的,该语言被设计为可移植的,可以在服务器,台式机或嵌入式设备上使用。 C还是一种所谓的“过程”语言,用于“高级”编程以及在需要时直接访问硬件。学习C将使您以后拥有相对简单的C ++和Java方法。
    • C ++语言是C的最强大的继承者,它借鉴了C的大部分语法和哲学,但同时也增加了面向对象编程或C语言的概念。 POO。 C ++通常用于创建“大型”应用程序(例如Microsoft Office或视频游戏)的领域,在这些应用程序中C ++以其生成的可执行文件的速度而流行。您将需要花费大量时间来掌握C ++,但这将在以后为您带来一些有趣的商机。
    • Java使用与C和C ++有关的语法。 Java是在虚拟执行环境中运行的完全面向对象的“高级”语言,该语言将安装在将要使用它且完全不考虑硬件的操作系统上。在就业市场上,对这种多应用程序语言的需求很大。
    • Python是一种开放源代码解释语言。易于吸收,它在中等和高等教育机构以及科学界中越来越多地被采用。它的设计人员拥有大量的函数库来解决大多数编程问题,从台式计算机上运行的应用程序到使用特定框架的服务器。 Python在开发中非常有趣,因为您可以在运行时测试输入的代码,而无需对其进行编译。



  2. 安装开发环境。 要开始编写代码,您将需要一些软件工具,这些软件工具大多捆绑在一起。 开发环境。您的特定需求将在很大程度上取决于您使用的语言。
    • 代码编辑器:所有程序员都将喜欢与致力于他们选择的语言的发行商合作。尽管您可以使用系统随附的基本编辑器(例如Windows上的记事本)进行操作,但是如果使用具有某些功能的语法编辑器(如语法高亮,外部编译,运行时或调试工具),您会发现生活变得容易得多。 。其中,您可以找到适用于Windows的Notepad ++,适用于Mac的Mate或Jedit和Geany,可在所有系统上下载。
    • 编译器或解释器:必须将以C,C ++或Java生成的源代码编译为可执行语言或 二进制 计算机可以理解的。在这些情况下,您将需要 编译器 适应您的编码语言。大多数编译器除了执行其主要任务外,还会向您发布发现的错误或错误列表。同时,Python将需要一个 翻译员,这将允许您同时翻译和执行代码,而无需编译。
    • EDI 或集成开发环境:某些编程语言具有一个环境,您可以在其中使用所需的所有工具,包括编辑器,编译器,有时 调试器。这些环境可在语言编辑器的网站上找到。


  3. 阅读教程。 如果您以前从未编程过,则必须从一开始就学习如何像程序员一样思考。基本上,寻找通用教程,向您介绍使用所选语言进行编程的主要概念。这必须包括一些主要概念,例如语法,变量,函数,条件语句,循环以及如何使整个事物变得共轭。
    • 您会发现大量的站点可以为您提供良好的教程,其中包括Udemy,Khan Academy,Codecademy,Code.org或Stack Overflow。



  4. 下载示例和开源程序。 剪切代码示例将帮助您了解使用所选语言执行某些任务的机制。您可以下载大量示例和小型开源程序。从可能与您要构建的应用程序类型相关的简单程序开始。


  5. 创建简单的程序来学习基础知识。 当您开始编写自己的代码时,请应用最基本的概念。使用最简单的输入和输出编写一些小程序,然后逐渐复杂化分解操作的机制,直到得出更高级的概念,例如数据操作和功能创建。不要犹豫,尝试各种形式的实验,直到 休息 您的程序(如有必要)。


  6. 在程序员论坛上注册。 能够与经验丰富的程序员讨论您遇到的问题将为您带来很多帮助。您会发现大量具有丰富经验的程序员社区,他们对首选语言充满热情,这也是您选择学习的语言。在一些活跃的论坛上注册并阅读所有内容。不要害怕提出问题,但是在执行此操作之前,请确保您已经从身边尝试了一切,以寻求解决问题的方法。


  7. 了解学习语言有时可能很乏味。 不要气disc,成功之路总是充满麻烦,除吹牛者外,没有人能一夜之间编写出一个有点复杂的程序。学习如何正确使用编程语言将需要大量时间和耐心,但是您将逐渐意识到,在能够处理更复杂的项目之前,您将获得效率。

第2部分设计程序



  1. 在纸上设计您的项目。 在编程过程中创建一个描述性文档供您参考将非常有用。本文档将描述程序的目标并详细介绍功能。这将使您在整个编码过程中始终专注于程序的功能。
    • 设计文档应讨论您要实现的每个功能以及如何实现它们。
    • 您将需要考虑在程序执行过程中与用户的可能交互以及程序将如何使用该程序进行工作。


  2. 建立程序流程图。 该图应突出显示用户如何从一个程序功能导航到另一个程序功能。如果您的应用程序仍然很简单,那么流程图就足够了。


  3. 确定适用于您的程序的结构。 程序的目标将决定要应用的体系结构。知道哪种结构最适合您的程序将有助于您进一步的开发。


  4. 从类似的程序开始 1-2-3. 这是适用于程序的最简单的结构,您将对语言感到满意。从技术上讲,该程序将启动,向用户询问条目或操作并显示结果,然后停止。
    • 后结构 1-2-3 来了 REPL. REPL 是的缩写 读执行 - 环读 - 执行 - 环秀。它是与结构中定义的动作相同的动作流程的基础 1-2-3,除了步骤 3 完成后,程序循环返回到步骤 1.
    • 评估使用结构的需求 管道。它是一个复杂的结构,可修改用户提供的输入并连续循环运行。这种结构适用于需要很少用户操作(例如处理RSS feed)的程序。这些结构通常写为共享相同循环的可变数量的类。

第3部分创建程序原型



  1. 将注意力集中在功能上。 原型通常只关注程序的主要功能之一。如果创建个人组织者,则原型基本上将包含一个日历,在该日历上您将逐渐添加事件功能。


  2. 一直工作到原型工作为止。 它必须作为一个独立程序运行,并将构成此后将添加的所有内容的基础。这就是为什么您必须将精力集中在此原型上,直到它运行无任何缺陷为止。
    • 原型可以使您快速进行更改,然后逐个测试。
    • 让您的原型经过他人测试,以确保其正常工作。
    • 预期在开发工作期间会对原型进行重大更改。


  3. 不要害怕 休息 您的原型。 实验是成为原型的唯一原因。它使您可以在开始编码之前检查程序所有功能的可行性。如果它停止工作并且您找不到原因,则放弃它并返回设计阶段。这将节省您的时间和许多麻烦。

第4部分构建程序



  1. 创建定义为伪代码的算法. 这将是您的项目的骨架,其余的开发将在该骨架上进行表达。伪代码只是对真实代码的一种处理方式,但是计算机无法对其进行编译或解释。它的主要目的是帮助程序员理解软件的操作并分析其执行过程中可能发生的所有事件。
    • 伪代码大致指将要使用的编程语言的语法,并且必须以与实际代码相同的方式进行构造。


  2. 在原型的基础上开发伪代码。 您可以使用现有的原型作为伪代码的基础。您还可以在扩展到最终程序的结构中调整原型中使用的代码。尽可能地,不要浪费您已经花在运行原型上的时间。


  3. 开始编码。 您现在正在进入“主菜”。正是这个开发阶段会占用您的大部分时间。您将需要进行大量的编译和测试,以确保您的程序正常运行。如果您在团队中工作,则基于伪代码进行编码将有助于所有参与者之间的良好协调。


  4. 评论所有源代码。 使用您的编程语言允许的注释标签。在源代码中添加注释将对您以及以后需要维护程序的所有人员提供很大的帮助。不要忘记注释中的源代码:描述每种模块或程序功能的动作,并在您采用复杂的机制时进行更多说明。

第五部分测试程序



  1. 检查添加到软件中的所有功能。 添加到程序中的每个新功能都必须进行编译和测试。参与这些测试的人越多,发现错误就越容易。您将需要事先告知该测试阶段的参与者您的程序仍然只是开发版本,并且他们应该会遇到严重的错误。
    • 程序的第一个测试版本通常称为 Alpha版本。您可以决定发布多个版本 阿尔法 当您进行更正时。


  2. 检查所有计划功能的实施。 一旦实现了程序的所有功能,就必须开始一系列涵盖所有方面的密集测试。此系列测试应提交给尽可能多的用户。
    • 程序的第二个测试版本称为 测试版。您可以决定发布多个版本 公测 当您进行更正时。


  3. 测试版本 预发布 您的程序。 预制版本或 发布候选 在解决了先前测试中报告给您的所有错误并添加了所有公告的功能之后,即可发布您的软件。版本号 RC 程序通常与最终广播的程序非常接近,但是可以遇到的错误有时非常恶毒,因为它们通常很难检测和再现。

第6部分为程序增值



  1. 考虑什么可能会增加程序的价值。 程序的性质将决定性地选择可以为其增加价值的内容。您需要在节目正式播出前提供答案:它可能是声音或自定义图标,或使其完全多语言化。如果您的软件足够复杂,则应该很好地添加以用户选择的语言显示的有用帮助文件。


  2. 评估外包开发的需求。 如果您没有创造出可以为您的软件增加价值的要素的才能或人力,那么您应该考虑外包实现。您会发现许多独立的承包商,甚至是志愿人员,他们可以创造您所需的东西来为您的软件增加价值。


  3. 实现程序的增强。 首先,请确保您的软件功能不受增值项目的干扰,并且没有多余的东西。这种实现通常发生在程序的最终开发阶段,除非它是软件本身的一部分,这在创建视频游戏时通常是这种情况。

第7部分将程序投放市场



  1. 考虑广播您的节目 开源. 程序的开源分发主要由志愿者社区管理。开源软件最著名的例子是 Python.orgLibreOffice的 现在全世界有数百万人正在使用它们。任何人都可以查看您的代码并对其进行更改,从而可能会大大扩展其功能。除了您可能希望从想要支持您的用户那里要求的捐赠以外,不要期望获得财务上的好处。首先以开源模式发布程序将使您广为公众所知,如果运气好的话,有些公司在经验丰富的程序员结束时会与您联系。


  2. 创建一个在线商店。 如果您想出售软件,则可以在您的网站上创建在线商店。请记住,您的客户将期望该软件具有功能完善,无“错误”且正确维护的软件。
    • 您可以想象围绕程序开发收费服务,例如添加附加组件以带来更多功能或培训客户员工。


  3. 坚持定期维护程序。 发布您的应用程序时,期望会收到来自新用户的有关影响其操作的错误的通知。按严重程度将这些错误分类,然后开始研究原因并提供解决方案。随着您的前进,您将需要通过更新某些部分来开始将“次要”更新发布到您的程序或修补程序插件。
    • 完善的售后服务将对您的客户产生积极的影响。程序的用户会毫不犹豫地做出“口口相传”的工作,这将使广告质量达到您的服务质量。


  4. 在您的程序周围做广告. 您的软件的潜在用户应在购买许可证之前了解其存在。提供您将在网站上提出的免费试用版。与软件杂志联系网站,创建强调其最重要功能的新闻稿,并向其发送功能性副本以进行测试。

我们的选择

如何剪长毛狗的衣服

如何剪长毛狗的衣服

本文的共同作者是MRCV的Pippa Elliott。 Elliott博士是一位具有三十多年经验的兽医。她于1987年毕业于格拉斯哥大学,曾担任兽医7年。此后,她在兽医诊所工作了十多年。本文引用了13篇参考文献,它们位于页面底部。 如果不时用长毛修剪狗的毛发,就会给他一个漂亮的外表。同样,您将防止结的形成和残渣的残留。尽管最好的方法是将他带到专业的美容师那里(尤其是如果您没有经验),但是您也可以在...
如何修剪郁金香

如何修剪郁金香

本文的合著者是Maggie Moran。玛吉·莫兰(Maggie Moran)是宾夕法尼亚州的专业园丁。本文引用了10个参考,它们位于页面底部。 您可以选择修剪郁金香以促进其再生或将其放入花瓶中。用修剪机在茎的根部切下郁金香的花朵。当您的郁金香开始褪色或想要将其放入花瓶时,请执行此操作。如果您保重,花瓶中的郁金香可以持续3到7天。您可以轻松地修剪郁金香以制成美丽的花束或为下一季做好准备。...