开发人员:构建API时先自己试试

简介:

简单地构建一个API是不够的。如果在发布API之前不能“先自己试试”,那么结局就是失败。Zachary Flower详细解释了个中原因。创业公司的开发生命周期必然充满妥协。有太多东西需要完成,但是没有足够的资源保证所有东西都“正确”完成,因此开发人员在恰当的时候必须妥协。不幸的是,为产品构建API与其说是技术决策,不如定义成业务决策更为贴切,这也正是需要妥协的地方。

为已有产品构建API的挑战是,业务需求总是最重要的。为了跟上业务需求的脚步,我们通常被强迫在产品质量上作出让步,这在创业公司应用开发过程中很常见,也绝对是API开发的最差方式。

开发API时最重要的一件事是就是使用它。“Dogfooding”是创业论坛里的流行词汇,用来描述企业规律地使用自己的产品,从而更好服务客户的行为。在创建API时,能够“先自己试试”极其重要,因为其向开发人员提供了一种方式来集成业务的核心功能到自己的产品里。如果这样,或者作为主要产品的一部分,API无法正常工作,那么开发人员,及其用户,注定无法获得良好的用户体验。这会让所有人都感觉很糟糕。

挑战代码基

如果在构建API时不先自己试试,那么可能最终需要管理两个单独的,大部分功能一样的代码基。第一个代码基,主要产品,是大部分开发活动发生的地方。因此,它比第二个代码基,API,更加清晰并且功能更为丰富。

被称为“第二个”代码基的API,会很快成为无主代码。它的更新很繁琐,和实际开发相比更像数据处理的工作,因为大部分工作是从“主要”代码基里拷贝方法出来。因为其特性和bug修复晚于主要产品,这会使得用户——至少坚持在使用的消费者——感到上当受骗,甚至可能感到被开发人员背叛了。

API开发会最终延期,甚至可能完全终止,从而保证团队将更多的资源关注于主要产品上。

正确还是完全不正确

当构建API时,一个很好的规则就是,如果还没有准备好重写所有后台代码从而自己试试API,那么最好避免开发API。要像思考任何新产品那样仔细全面地思考开发API的决策。这样,你才能高效投入到构建两个新产品里,因为不能不使用API。

当API是你自己产品的正式后台时,那么很容易保持代码DRY——不重复自己。特性直接为API而开发,这使得可以立即向客户发布特性。这也使得在将主要产品发布给API用户之前测试这些新特性容易得多。当制造者同时也是产品的用户时,那么所有API上存在的问题都会得到极大的重视。Bug会被立即修复,因为它们影响到所有人。

随着开发人员越来越频繁地使用第三方API,我发现大家都能够指出哪些是核心产品的核心部分,哪些是后来添加的东西。不需要专家就能构建出质量良好的产品,开发人员会主动解决使用产品直接会遇到的问题:这在后来开发的API里就缺失这样的关注。



本文转自d1net(转载)

相关文章
|
3月前
|
运维 NoSQL Serverless
|
1月前
|
人工智能 API 开发工具
构建AI智能体:一、初识AI大模型与API调用
本文介绍大模型基础知识及API调用方法,涵盖阿里云百炼平台密钥申请、DashScope SDK使用、Python调用示例(如文本情感分析、图像文字识别),助力开发者快速上手大模型应用开发。
1010 16
构建AI智能体:一、初识AI大模型与API调用
|
4月前
|
机器学习/深度学习 JSON 监控
如何通过API技术提升电商客户忠诚度:构建智能化客户关系引擎
在电商竞争激烈的当下,客户忠诚度成为核心壁垒。通过API技术构建智能化客户关系系统,整合全渠道数据,实现个性化推荐与自动化运营,提升用户黏性与复购率。结合实时行为分析、差异化定价、积分系统等手段,打造高效忠诚度管理体系,助力企业实现长期增长。
96 1
|
5月前
|
数据采集 机器学习/深度学习 搜索推荐
利用通义大模型构建个性化推荐系统——从数据预处理到实时API部署
本文详细介绍了基于通义大模型构建个性化推荐系统的全流程,涵盖数据预处理、模型微调、实时部署及效果优化。通过采用Qwen-72B结合LoRA技术,实现电商场景下CTR提升58%,GMV增长12.7%。文章分析了特征工程、多任务学习和性能调优的关键步骤,并探讨内存优化与蒸馏实践。最后总结了大模型在推荐系统中的适用场景与局限性,提出未来向MoE架构和因果推断方向演进的建议。
966 11
|
4月前
|
监控 安全 数据挖掘
构建自定义电商数据分析API
在电商业务中,构建自定义数据分析API可实现销售、用户行为等指标的实时分析。本文介绍如何设计并搭建高效、可扩展的API,助力企业快速响应市场变化,提升决策效率。
148 0
|
2月前
|
安全 Java API
使用 Java 构建强大的 REST API 的四个基本技巧
本文结合探险领域案例,分享Java构建REST API的四大核心策略:统一资源命名、版本控制与自动化文档、安全防护及标准化异常处理,助力开发者打造易用、可维护、安全可靠的稳健API服务。
203 2
|
3月前
|
运维 NoSQL Serverless
《第四纪元》玩得轻松,构建也轻松 | 阿里云云原生 API 网关、函数计算助力 IGame 快速构建轻休闲游戏
在轻休闲游戏流量波动大、生命周期短的背景下,传统架构难以应对成本与扩展挑战。本文介绍了基于阿里云函数计算 FC 和 Redis 构建的新一代服务器架构,实现弹性伸缩、成本优化与高效运维,助力轻休闲游戏快速迭代与稳定运营,提升开发效率并降低运维复杂度。
《第四纪元》玩得轻松,构建也轻松 | 阿里云云原生 API 网关、函数计算助力 IGame 快速构建轻休闲游戏
|
2月前
|
监控 安全 API
构建坚不可摧的防线:全方位保障API接口数据安全
在数字化时代,API作为系统间数据沟通的桥梁,其安全性至关重要。本文系统解析API安全的四大基石:身份认证、授权管理、数据完整性与机密性,并深入探讨HTTPS加密、强认证机制、精细授权、数据保护及纵深防御等关键技术实践,帮助企业构建全面的API安全体系,防范数据泄露与攻击风险,保障数据传输安全与业务稳定运行。
|
4月前
|
监控 安全 测试技术
从0到1构建电商API:如何用规范设计省下百万维护成本?
本文系统解析电商API接口开发全流程,涵盖需求分析、架构设计、安全实践、测试上线及文档维护等关键环节,结合技术规范与实际案例,助力构建高可用、可扩展的电商系统。
|
4月前
|
SQL 安全 BI
Dataphin数据服务API行级权限管控解决方案 ——构建企业级数据安全的精细化管控体系
Dataphin数据服务推出行级权限管控功能,解决传统权限管理中用户权限分散、管控复杂等问题。支持直连与代理双模式访问,实现API与SQL权限统一管理,满足金融、零售、医疗等行业对数据访问的精细化控制需求。通过动态权限决策引擎和自动化继承体系,确保数据安全且提升应用开发效率。
460 0