13

我正在努力列出所有常规开发人员在现实世界应用程序开发中使用的所有常见编程任务。您在大多数常规 LOB 应用程序中重复使用的代码。即使它不那么常见,并且您认为将其添加到列表中是相当值得的,请这样做。

让我从:

  1. 从磁盘读取文本文件,将其加载到字符串中
  2. 将字符串保存到文本文件
  3. 将业务对象序列化为 XML
  4. 将 XML 从字符串和/或磁盘反序列化为业务对象
  5. 根据 XSD 架构验证 XML 字符串

现在轮到你了。

更新:让我说一下为什么我想要这个列表。一旦我有相当数量的任务,我想为这些任务中的每一个创建一个非常有效的代码的方便参考。因为每次我编写代码来完成其中一项任务时,我都可以简单地参考我的代码参考。我不希望我的代码在多个地方都不同。我的第 2 步是为所有这些任务编写高效而优雅的代码。

我想我应该把它写成一篇博文。这是一个错误的地方吗?

4

15 回答 15

11

我对这个问题投了赞成票,以使您在否决的代表击中出局;我不是特别喜欢列出问题,但有些问题确实有助于培养更好的程序员,我认为这就是其中之一。

有个名叫 Dave 的人(我看我找不到是姓氏)写了一个很好的想法,叫做CodeKata。它是关于各种练习,可帮助您更好地理解编程背后的原理和理论。

像这样的东西在那里被覆盖。

这也是我自己的项目清单。

  • 学习如何使用数组(尤其是如何减轻它们的缺点)
  • 尽快学习正则表达式!如果您甚至可以成为正则表达式助手,那么您将遥遥领先
于 2008-10-20T17:07:09.717 回答
5
  • 数据库访问,CRUD
  • SOAP/网络服务
  • 排序、搜索和以其他方式操作对象集合

这些是首先想到的事情。

于 2008-10-20T16:37:46.920 回答
4

提示用户输入。获取输入。验证类型:是数字吗?是约会吗?

于 2008-10-23T18:52:28.097 回答
3

编写测试——你应该为任何你不想失败的东西编写测试,所以这应该是最常见的任务。

于 2008-10-20T22:16:20.823 回答
2

从数据库获取数据到客户端,允许用户编辑(添加/更新/删除)数据,将数据返回到数据库。

于 2008-10-20T17:40:13.847 回答
2

当用户访问页面/程序的受限部分时验证用户身份

于 2008-10-20T17:46:17.920 回答
2
  1. 调试
  2. 通过开发人员的监视器、IDE 或电子邮件显示调试输出。
于 2008-10-21T03:37:55.590 回答
2

获取/更新数据到数据库。表单验证

两者都是非常无聊的任务,但我想说它们占用了我工作中大约 50% 或更多的编码时间。

于 2008-10-23T02:02:48.213 回答
2

获取电子表格(csv 或 xls),对其进行解析、验证、存储在数据库中。

于 2008-10-23T20:49:23.290 回答
2

Rosettacode 以多种语言编制了一份常见编程任务及其解决方案的列表。您可能想在以下位置查看:

http://rosettacode.org/wiki/Category:Programming_Tasks

于 2012-11-29T15:50:17.373 回答
2

我是一名网络开发人员,所以对这些持保留态度。

对于一些常见的任务/主题/概念,我喜欢用我精通的任何编程语言轻松实现,以及到目前为止我必须使用它们的频率,请考虑以下项目:(
低、中、高)需要的频率

  • 使用 API 或 Web 服务(REST/SOAP) (高)
  • 创建 Web 服务器 (低)
  • 创建/维护 REST API(与数据库交互的 crud 操作)(高)
  • 文件 I/O - 处理 CSV、电子表格等(中)
  • IPC(进程间通信)/进程/守护进程- 产生子进程,操纵/控制子进程,重定向子进程的标准输入、标准输出和/或标准错误,处理中断(低)
  • TCP 套接字或 Websockets - 服务器套接字和客户端套接字(低)
  • 线程- 创建和运行新线程、线程操作、同步、线程间通信、死锁(如果适用于您选择的语言)(低)
  • 设计模式(与您选择的语言相关)(高)
  • 自动化测试- 单元/功能/集成/端到端(高)
  • Cron 作业- 创建和调度(高)
于 2019-02-26T04:40:34.340 回答
1

清理数据:获取格式错误的无格式数据并将其转换为经过验证的定义明确的格式。通常输入数据将无法验证;您必须能够拒绝它并准确指出错误的位置。

于 2008-10-20T17:23:38.573 回答
1
  • 以编程方式将网页抓取到字符串中(如屏幕抓取)

PS:我会继续在这里添加,因为我会问更多的人并找出答案

于 2008-10-20T22:11:35.013 回答
1

重写一个包含大量硬编码数据的 python 脚本,而不是从设计用于更一般用途的单独文本文件中读取数据。然后尝试获得与旧的硬编码程序完全相同的结果......请祝我好运!

于 2008-10-21T02:57:11.757 回答
1

为 NASA JPL 原型自主漫游车中使用的系统制定导航算法。

哦,我多么希望那是真的。实际上,我通常只是清理数据并将其移动到数据库中,或者开发 SSIS 包来执行各种预定的工作,例如读取 XML、格式化、写入 Excel 文件并通过电子邮件发送。其他时候我只是在一个 CRUD 网站上工作——显示来自数据库的信息,从用户那里接收数据,存储回数据库,并使用 CSS/HTML 来使网页看起来不那么糟糕(我是一个比 web 更好的算法开发人员开发商)。

于 2008-10-23T20:41:47.487 回答