软件工程结构化_以结构化方式创建软件工程项目

软件工程结构化

Thank you for visiting this post! To see a sample README template, click here. Be sure to also take a look at my other work on LinkedIn and Github.

感谢您访问这篇文章! 要查看示例README模板,请单击此处 一定还要看看我在LinkedInGithub上的其他工作

Image for post
Pseudocode of a Mother-to-Be
准妈妈的伪代码

What is something that software engineers and pregnant women have in common? Well, other than possibly back pain (if your whole day consists of coding seated at a desk): developing babies, and due dates for them.

软件工程师和孕妇有什么共同点? 好吧,除了可能的背痛(如果您整天都坐在办公桌旁坐着编码): 正在发育的婴儿,以及他们的到期日。

Specifically, engineers invest countless hours into programming projects that, upon submission at its deadline, are regarded in likeness to a beautifully created bundle of joy. While this particular baby may not be made up of actual DNA, it certainly is comprised of code.

具体地说,工程师将无数的时间投入到编程项目中,这些项目在截止日期提交后就被视为与精美创造的喜悦相似。 尽管这个特殊的婴儿可能不是由实际的DNA组成,但肯定是由代码组成的。

I discovered this similarity as I reflected upon the specialties I was exposed to during my graduate studies of Medical Science. Of the disciplines, I found the most appealing to be Women’s Health, especially after completing a surgical and clinical internship with a renowned Obstetrician/Gynecologist, Dr. Terri Woods-Campbell. It was here that I witnessed her discussions with patients of having a birth plan — an outline detailing how pregnancy is to be managed before, during, and after birth. The physician was intentional in expressing the importance of always having a plan to best prepare for the forthcoming journey.

当我反思自己在医学科学研究期间所学的专业时,我发现了这种相似之处。 在这些学科中,我发现最吸引人的是女性健康,尤其是在与著名的妇产科医生Terri Woods-Campbell博士完成外科和临床实习之后。 在这里,我目睹了她与患者进行生育计划的讨论,该计划详细描述了如何在产前,产中和产后管理妊娠。 医师有意表达始终制定计划为即将到来的旅程做最好准备的重要性。

Now, as I merge the industries of computer science and medicine, I recognize the parallels in an expecting mother’s experience with that of an engineer. As a result, I’ve continued to utilize the strategic implementation of maintaining a plan with the projects that I create — as should you.

现在,当我将计算机科学和医学行业合并时,我认识到准妈妈的经验与工程师的经验是相似的。 结果,我继续利用战略实施来维护我创建的项目的计划,您也应该如此。

为基于Ruby的项目构建流程 (Structuring a Process for Ruby-based Projects)

Just as an expecting mother would care for her unborn child — from the time of its conception to its development, and ultimately, its delivery — a tireless amount of energy and care is poured into projects by programmers, which is then reflected in the application’s ability to effectively communicate with databases and perform complex methods, both cleanly and concisely.

就像准妈妈会照顾她的未出生的孩子一样(从受孕到发展,直到最终交付) ,程序员不懈地投入精力和精力,然后在应用程序的能力中得到体现。有效地与数据库进行通信并执行简洁明了的复杂方法。

With this being said, creating a project of any magnitude can easily become overwhelming for most novice developers, especially while still establishing a sound knowledge base in concepts of software programming languages, such as Ruby. But by implementing a structured, sequential approach, performing tasks will be both efficient and purposeful.

话虽这么说,对于大多数新手开发人员来说,创建任何规模的项目都很容易变得不堪重负,尤其是在仍建立了诸如Ruby之类的软件编程语言概念的良好知识库的同时。 但是,通过实施结构化的顺序方法,执行任务将既高效又有目的性。

遵循模板以增强规划实践 (Following a Template to Enhance Planning Practices)

Let’s take the physician, the patient, and her pregnancy to explore their relationships with one another, from a computer science perspective. As mentioned earlier, there are three stages:

让我们以医生,患者和她的怀孕来从计算机科学的角度探讨他们之间的关系。 如前所述,分为三个阶段

I. Conception

一,构想

The overwhelming feelings of nervousness and excitement that pour over an individual when the word “positive” is read from a pregnancy test are the same likely to be experienced once the perfect idea of a project is conceived. These following steps will allow you to expand on the original abstraction:

一旦构思出一个完美的项目构想,当从妊娠试验中读取“阳性”一词时,倾泻在个人身上的压倒性的压抑感和激动感就很可能会发生。 以下这些步骤将使您可以扩展原始抽象:

  • Brainstorm a concept that reflects an object-oriented relationship (in this post’s example: a mother, a medical provider, and the pregnancy that joins them)

    集思广益一个概念该概念反映了一种面向对象的关系(在此示例中:一位母亲,一名医疗提供者以及与之相关的怀孕)

  • Establish the models (we’re using a three model, many-to-many association)

    建立模型(我们使用三个模型,多对多关联)

  • Prepare a thorough README.md file. This is arguably the most important step, as it will act as the template of your structured approach. Avoid the temptation of diving straight into coding! Although the task may seem boring and tedious (especially if you just derived an idea you believe would become the next letter appended to the FAANG acronym), allowing yourself to organize your thoughts into a pattern will make the logical aspect of creating methods that much easier down the road.

    准备一个完整的README.md文件。 可以说这是最重要的一步,因为它将作为您的结构化方法的模板。 避免直接进入编码的诱惑! 尽管任务看起来很枯燥乏味(特别是如果您只是想出一个主意,您会相信它会成为FAANG首字母缩写的下一个字母),但让您自己将思想整理成一个模式将使创建方法的逻辑方面变得更加容易在路上。

II. Development

二。 发展历程

Your new baby is growing! Some mothers-to-be typically compare the size of their unborn child to an avocado or small melon as it develops; ours will be measured in gigabytes. This stage will inevitably be the longest, and although there may be difficult times (loss of sleep, increased appetite, mood swings — sound familiar?), the final result will be most fulfilling. You will:

您的新宝宝正在成长! 一些准妈妈通常将其胎儿的大小与鳄梨或小瓜的大小相提并论。 我们的数据将以千兆字节为单位。 这个阶段将不可避免地是最长的,尽管可能会有困难的时期(失去睡眠,食欲增加,情绪波动-听起来很熟悉?),但最终结果将是最令人满意的。 你会:

  • Create a functioning environment with necessary gems and files to properly run necessary commands

    创建具有必要的gem和文件的运行环境,以正确运行必要的命令

  • Implement table migrations to structure data collection with SQL

    实施表迁移以使用SQL构建数据收集结构

  • Develop table properties to be collected from the instances of each model

    开发要从每个模型的实例收集的表属性

Image for post
Image for post
Using your README (left sides, in white) as a template for the actual coding (right sides, in blue) of model/table associations
使用您的自述文件(左侧,白色)作为模型/表关联的实际编码(右侧,蓝色)的模板
  • Enhance functionality with methods: basic CRUD (create, read, update, delete) actions; additional queries; user-friendly interaction with TTY Prompts

    通过以下方法增强功能:基本的CRUD(创建,读取,更新,删除)操作; 其他查询; 与TTY提示的用户友好交互

III. Delivery

三, 交货

You’ve come so far; whether through the clicking ofsubmit to your supervisor, or of “play” amongst your peers, this is your moment! But, like we’d tell an expecting mother in labor — just breathe. Relax, but do not become complacent. There’s still work to do, but you’ve got this. Here’s how to finish strong:

你到现在为止; 无论是单击提交给您的主管,还是单击您的同事之间的“扮演”,这都是您的时刻! 但是,就像我们告诉待产的准妈妈一样-呼吸。 放松,但不要自满。 仍有工作要做,但是您已经做到了。 这是完成强项的方法:

  • Revise and update the README.md file so that it properly reflects and aligns with outlining associations, table properties, methods, in an organized manner

    修改并更新README.md文件,以使其有组织地正确反映并与概述关联,表属性,方法对齐

  • Clean up your code — include comments and make the front- and backends aesthetically pleasing

    清理您的代码-包括注释,并使前端和后端美观

  • Navigate through the application as if you are a user to correct and minimize any missed bugs/errors

    浏览应用程序,就像您是用户一样来纠正和最小化任何遗漏的错误/错误

  • If presenting — I recommend a pre-recorded walkthrough of the project, encompassed by both a live introduction and conclusion. Rehearse how you plan to navigate through the application before recording to ensure smooth transitions between features and to minimize breaks and pauses. You can even close with things you learned, difficulties you experienced and how you overcame them, and any highlights worth mentioning.

    如果要演示,我建议您预先录制该项目的演练, 包括现场介绍和结论。 在录制之前,请练习如何计划浏览应用程序,以确保功能之间的平稳过渡并最大程度地减少中断和暂停。 您甚至可以关闭自己学到的东西,遇到的困难以及如何克服这些困难,以及所有值得一提的亮点。

And that’s it! Congratulations on the new addition to your portfolio. Next time that you catch baby fever, you’ll now be equipped to approach any future project in a manner that is practical, structured, and efficient.

就是这样! 恭喜您添加了新的产品组合。 下次发烧时,您将有能力以实用,有条理和高效的方式处理任何未来的项目。

翻译自: https://medium.com/swlh/creating-software-engineering-projects-a-structural-approach-3992637761e8

软件工程结构化

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2021 CSDN 皮肤主题: 深蓝海洋 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值