如何开发软件

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

内容

成为软件开发人员是一项可观的职业计划。通常情况下,他们是拥有非常好的技能的人。但是他们到底在做什么?由于您更有可能无法超越他们,因此您必须加入他们的行列。您是否喜欢技术,想与用户互动以开发优质软件?稍加集思广益,并从下面的步骤1开始,您可以。

脚步

第1部分,共3部分:掌握基础知识

  1. 确定您对哪种软件开发感兴趣。 软件开发有两种基本形式: 应用开发开发系统。应用程序开发侧重于创建满足用户需求的程序。其中包括手机应用程序,高预算视频游戏或企业级记帐软件。系统开发专注于使用生命周期开发来创建和维护操作系统。系统开发通常包括数据安全性和网络可操作性。

  2. 自己学习编程语言。 任何人都可以想到有趣的想法,但是只有开发人员才能实现这些想法。即使您只打算从事与软件设计相关的工作,您仍然应该熟悉编码并能够创建基本的原型。您可以自己学习许多编程语言。以下是一些最重要和最有用的编程语言:
    • C-C是仍在使用的旧编程语言之一,也是此列表中大多数其他语言的基础。 C用于开发底层程序,并且与计算机硬件非常兼容。
    • C ++-这是C的面向对象版本,也是世界上最受欢迎的编程语言。某些程序(例如Chrome,Firefox,Photoshop和其他程序)都是用C ++编写的。这也是用于创建视频游戏的非常流行的语言。 C ++开发人员几乎总是在搜寻。
    • Java-这是从C ++语言演变而来的版本,由于易于进行跨平台切换,因此成为一种熟悉的语言。几乎所有系统都可以使用Java虚拟机来运行Java软件。此语言广泛用于视频游戏和商业软件。许多人认为这是基本语言。
    • C#-C#是基于Windows的语言,并且是Microsoft .NET框架的一部分。该语言与Java和C ++紧密相关,因此,如果您学习过Java,则可以快速转换为C#。该语言对创建Windows或Windows Phone软件的开发人员特别有用。
    • Objective-C-这是专门为Apple系统设计的C语言的另一个版本。这种语言在iPhone和iPad应用程序中非常流行。对于自由职业者来说,这也是一种很棒的语言。
    • Python-这是一种非常容易学习的语言,可能被认为是最容易掌握的语言之一。 Python专长于Web开发。
    • PHP-这并不完全是一种软件开发语言,但是如果您对学习Web开发感兴趣,那么学习PHP是必不可少的。尽管不如软件开发那样有利可图,但PHP开发人员总是有很多工作。

  3. 查找有助于您学习的材料。 大多数书店都有用于编程书籍的板块,当然,还有关于亚马逊和其他电子零售商的大量书籍。精心编写的编程书可能是您的最佳资源,并且还允许您在进行项目时快速参考它。
    • 除书籍外,Internet是详尽的参考书和说明的不竭资源。您可以在CodeAcademy,Code.org,Bento,Udacity,Udemy,Khan Academy,W3Schools等网站上找到有关所选语言的参考。

  4. 上一些课。 虽然无需获得正式学位即可进行软件开发,但在中心学习或在当地社区大学上某些课无需花费任何费用。好处是您可以获得个人指导,并有机会尝试自己学习时很少遇到的问题。
    • 如果您想参加课程,则需要支付学费,因此请确保仅注册可帮助您学习未知课程的课程。
    • 尽管许多开发人员可能只是凭借出色的技能进入该行业,但如果您在大学四年后获得计算机科学学士学位,则可以脱颖而出。该学位为您提供更广泛的背景知识,以便能够参加数学和逻辑等其他有用的课程。
  5. 个人利益项目。 在将新的编程技能应用于现实生活之前,您应该尝试自己做一些项目。挑战自己,以编程语言解决问题。这不仅可以帮助您提高技能,还可以美化您的职业简历。
    • 示例:不要使用桌面日历应用程序来组织任务,而是尝试设计自己的任务!
    • 如果您对视频游戏开发感兴趣,请尝试创建不关注图形或复杂游戏规则的简单游戏。相反,请专注于使游戏有趣且独特。您创建的一系列迷你游戏将使您的个人资料看起来很棒。
  6. 提个问题。 使用Internet是与其他开发人员进行交流的好方法。如果您在处理其中一个项目时遇到问题,可以在StackOverflow等网站上寻求帮助。确保巧妙地提问,并表明您尝试了尽可能多的事情。
  7. 每天练习。 即使每天只有一个小时,也要每天处理您的激情项目。这可以帮助您保持动力并不断学习新技能。通过确保他们每天都接触到语言,许多开发人员已经成功地学习了一种语言。
    • 确定每天可以花多少时间来编码,或者设置需要完成的截止日期。尝试在工作日进行项目,以便周末放松。
    广告

第3部分的第2部分:开发程序

  1. 集思广益,提出想法。 一个好的程序通常会执行使用户更方便的任务。查看当前可用于您要执行的任务的软件,然后考虑使该过程更轻松或更顺畅的解决方案。成功的程序是为用户带来许多好处的程序。
    • 在计算机上测试您的日常任务。有某种方法可以通过程序自动执行部分任务吗?
    • 写下所有想法。即使在撰写本文时听起来很傻或很奇怪,这个想法还是有帮助的,甚至值得。
    • 了解其他程序。这些程序做什么?他们如何变得更好?他们缺少什么?回答这些问题可以帮助您提出解决自己的想法。
  2. 写草图文字。 本文档将概述您在进行项目时将要实现的概述和目标。在开发过程中引用大纲文本将使您的项目保持正确的轨道并实现其所需的重点。有关详细的文字撰写,请参见本文。
  3. 创建一个原型。 这是展示您要实现的功能的基本程序。原型是一个快速的程序,需要不断地重新创建它,直到找到有效的示例为止。例如,如果要创建日历应用程序,则演示模板可以是基本日历(具有确切的日期!),并且可以将事件添加到日历中。
    • 原型通常会在整个开发生命周期中发生变化,因为您可能会突然发现解决问题的新方法或想出以后要使用的想法。
    • 原型不必很漂亮。实际上,设计风格和图形应该位于您需要关注的事物列表的底部。以日历应用程序为例,您的原型通常是纯文本的。
  4. 试运行多次。 错误是任何开发人员都可能遇到的东西。代码错误和异常使用会在完整的软件中引起各种问题。在您仍在进行项目时,应尝试对其进行尽可能多的测试。找出所有可能的程序错误,并尽力避免以后再出现相同的错误。要求家人和朋友测试程序并报告错误。提供反馈的任何方式都可以帮助开发过程。
    • 如果您的程序包含日期,请尝试输入奇怪的日期。过去或将来的日期可能会导致程序异常运行。
    • 输入错误的变量类型。示例:如果要创建一个要求用户年龄的表格,请尝试输入一个单词以查看程序会发生什么。
    • 如果您的程序具有图形界面,请尝试单击所有内容。当您返回上一个屏幕或按错误的顺序按下按钮时会发生什么?
  5. 优化您的项目。 如果在原型开发和开发阶段创建一个草图项目是可以的,但是如果您希望其他人计划使用它,则需要花费更多的时间进行精炼。这意味着您需要确保菜单位于正确的位置,UI看起来整洁且易于观看,没有易于检测或致命的错误,并且最终版本看起来一定很好
    • 用户界面的设计和功能可能非常困难和复杂。有些人花了所有的时间来设计用户界面。确保您的程序易于使用且易于查看。没有预算和开发团队,几乎不可能完成创建专业用户界面的工作。
    • 如果您有预算,应该知道有很多自由图形设计师可以在与您签约时设计UI。如果您希望有一个大型项目会吸引很多人,请尝试寻找一位优秀的UI设计师,并说服他们加入您的团队。
  6. 将您的项目提交到GitHub。 GitHub是一个开放源代码社区,可让您与他人共享代码。结果,您可以对自己编写的代码有更深入的了解,同时可以帮助其他努力寻找自己可能想出的解决方案的人。 GitHub是一个很好的学习库,也是您建立事业的好方法。
  7. 分发您的软件。 创建完整的软件后,可以在两个选项之间进行选择,即是否分发软件。当前,根据创建的软件类型,有许多方法可以执行此操作。
    • 将软件分发给小型开发人员或独立开发人员的最流行方法之一是通过个人网站。确保所有功能都已充分掌握,并提供了一些屏幕截图和用户手册。如果您正在出售软件,请确保您拥有良好的互联网支付系统和用于分发软件的服务器。
    • 如果要为特定设备或操作系统开发软件,则可以利用数字商店。例如,如果您正在为Android设备开发软件,则可以通过Google Play商店,Amazon App Store或您自己的个人网站出售软件。
    广告

第3部分(共3部分):找到工作

  1. 获得季节性工作。 虽然它不会像全职和不太可靠的工作那样赚钱,但您可以通过从事各种季节性工作来显着改善简历。您可以参考Elance或ODesk之类的网站(目前也称为“ Upwork”)来找到工作。虽然考虑签订合同可能有些困难,但是在找到第一份工作之后,它将变得容易得多。
    • 对于那些寻求自由职业者和合同工的人来说,《黑客新闻》是一个不错的资源。您应注意“询问”部分。
    • 尽管有时我们想放弃,以低价出售以轻松地获得季节性工作,但不要抛售您的劳动力。您不仅陷入必须做的事多而少得到应得的情况,而且还会使业内其他人感到沮丧,从而导致与社区的联系更加艰难。
    • 做好一份兼职工作有时可以帮助您获得一份全职工作。因此,您应该始终展示自己的长处!
  2. 尽可能多地交流。 参加许多开发人员会议和聚会。您不仅有机会解决各种问题并了解更多代码,而且还会遇到同一行业的人。您可能会认为程序员通常在一个房间里一个人工作,但实际上大多数全职开发人员都是团队的一部分,彼此之间的交互同样重要。任何其他事情。
  3. 申请全职工作。 在进行了一些季节性工作以记录您的简历后,您可以继续将简历发送给较大的组织,以进行全职工作。除了Monster and实际上,您还应该访问许多开发人员特定的工作机会网站,包括GitHub Jobs,StackOverflow工作委员会,AngelList,CrunchBoard,Hirelite和Hacker News。
  4. 多样化您的技能。 一个好的软件开发人员通常会说多种语言。尽管大部分内容将在工作中使用,但您应该花一些空闲时间来扩展知识并学习其他一种或两种语言的基础。这使向新项目的转移变得容易得多,并使您成为吸引雇主更多关注的优秀候选人。
  5. 不用担心工资。 起初,并非所有软件开发工作都会为您带来高薪。实际上,没有这样的工作。但是,软件开发的优势是就业市场蓬勃发展。如果您认为从当前工作中获得的收入还不够,那么申请新公司的新职位相对容易(如果您具备相关技能)。将最初的工作视为必要的经历,而不是努力退休。广告