业余时间可以做什么提升自己在设计 API 方面的水平? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
oooolongtea
V2EX    程序员

业余时间可以做什么提升自己在设计 API 方面的水平?

  •  
  •   oooolongtea 2020-11-21 03:56:35 +08:00 3576 次点击
    这是一个创建于 1854 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近我看了不少职位的要求,上面都有提到说,要求这个人会设计 API 、服务、系统方面的经验。

    我目前的工作其实没有涉及这方面太多。

    我能做些什么提高自己在这方面的理解呢?比如说,我要准备算法,那么我就可以去看 leetcode 刷题。但是 API 这方面,我有什么类似的事情可以做吗?比如做一个 django 的项目?
    14 条回复    2020-11-22 10:19:41 +08:00
    laike9m
        1
    laike9m  
       2020-11-21 05:40:49 +08:00
    可以读一些相关文章,比如微软的 Web API design
    https://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design

    当然不好的一点是这些文章普遍偏向于 REST API 。如果你想找更为通用的教程可能得多搜搜
    yzbythesea
        2
    yzbythesea  
       2020-11-21 05:50:45 +08:00   1
    推荐你去看 system design 相关实例,见得多了,你也就会设计 API 了。
    xuanbg
        3
    xuanbg  
       2020-11-21 07:19:59 +08:00
    学点哲学,提高一下自己的归纳和抽象的能力。
    ericgui
        4
    ericgui  
       2020-11-21 08:58:30 +08:00   1
    还是要写项目,然后重构 5 次,你就好了
    MIUIOS
        6
    MIUIOS  
       2020-11-21 10:44:23 +08:00
    我们是公司要求怎么设计的 不能随心所欲
    darklowly
        7
    darklowly  
       2020-11-21 11:03:09 +08:00
    哇,还是有人在意这个东西。
    maemual
        8
    maemual  
       2020-11-21 11:05:58 +08:00   1
    API 设计的核心在于问题的抽象和模型的建立,API 规范那些随便找个 rest 规范看看就行了,都是死的东西。
    h82258652
        9
    h82258652  
       2020-11-21 11:09:35 +08:00   1
    RESTful API 除了看一楼的,我推荐也看一下 Github v3 的 API 的实现。
    若干年前看见 Star 和 Unstar 的做法时,简直妙不可言。(那年我开关类的 API 还是 POST 传 true 、false )
    Pagliacii
        10
    Pagliacii  
       2020-11-21 11:53:47 +08:00
    oooolongtea
        11
    oooolongtea  
    OP
       2020-11-21 14:57:54 +08:00
    @laike9m 谢谢,读我肯定会读,你有什么实践方面的推荐吗?
    @ericgui 有什么项目推荐吗?
    @maemual 我面试的时候,面试官就认为我没有设计 api 的经验。这个抽象和模型的建立的训练平时能做什么来实现呢?
    jones2000
        12
    jones2000  
       2020-11-21 14:59:27 +08:00
    API 接口易扩展, 向下兼容低版本。
    zhuangzhuang1988
        13
    zhuangzhuang1988  
       2020-11-21 15:09:31 +08:00
    <.NET 设计规范>
    可以看这个 https://book.douban.com/subject/4805165/
    DoctorCat
        14
    DoctorCat  
       2020-11-22 10:19:41 +08:00
    多看看一些大平台的开放平台文档,思考他们 API 是怎么设计的
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1021 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 22ms UTC 18:27 PVG 02:27 LAX 10:27 JFK 13:27
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86