与第3方API交互时,什么可以使事情变得具有挑战性? [英] When Interfacing with a 3rd Party API, What Can Make Things Challenging?

查看:101
本文介绍了与第3方API交互时,什么可以使事情变得具有挑战性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

几小时前,我在StackExchange网站上发布了这个问题.

我想在这里分享问题.
http://programmers. stackexchange.com/questions/85270/when-interface-with-a-3rd-party-api-what-c​​an-make-things-challenging [

Some hours back I posted this question on StackExchange site.

I would like to share the question here.
http://programmers.stackexchange.com/questions/85270/when-interfacing-with-a-3rd-party-api-what-can-make-things-challenging[^]

I would like to get some reviews and developers opinions on this question.

My real question is here :) --

Reuse of components in development of software program are always exposed through the API''s. Most of the products in today''s world (such a facebook, google, .Net, JDK, ...) provide API''s to reuse their components without being actually coding from the stratch. Also API''s provide a huge high-level abstraction to the under lying components.

My question is about the usability of these API''s. Certainly, in all API''s there are Obstacles. Obstacles can be

-- skill sets,
-- resources,
-- Documentation of the API''s
-- the API itself.

What do the programmers think the real obstacle are? List few of your opinions.

To Question this here: Being a developer I investigated the obstacles when uisng Highcharts. Though I have strong points why Highcharts is great compared to other Javascript visulization libraries I found myself lost with the usability of the charts when going through their API docs at the beginning.
Indeed, their support forum is good to get your questions answered.

Developers uisng API''s - most of the time - do not understand the design intents of the API, architecural design and the decisions made during the development of the API.

Also, what will be your suggestions to make better API that will reach to large set of developers?

I''m not entirely sure about the friction of learing new API''s.

推荐答案

我会说,您不应该研究障碍",而应该解决应用问题.您不能在这里解决科学的"或基本的"问题,因为……没有这样的问题,这很严重.

(但是,如果您确实需要研究障碍",则应该进行社会研究,而不是工程学. CodeProject将无济于事.您需要许多工程师提供的代表性数据集.我会问这些东西的科学价值.:-))

现在,您在Facebook,Google,.NET和JDK的比较API问题中犯了大错误.这就像比较一匹马和另一匹马的鞍座. JDK和.NET都是马,还有其他一切……甚至不是马鞍.

大多数时候,使用API​​的开发人员都不了解API的设计意图,架构设计以及在API开发过程中做出的决定." –可能是,但是为什么?你称这种人为开发者吗?真正的工程师总是会理解所有这些.如果您说大多数从事开发工作的人不是真正的工程师,那么这又是一个社会问题.结果通常很悲伤.

最后,我将尽力解释您的问题没有任何意义,而且毫无结果.如果您向实际解决障碍的角色提出问题,则通常会将其置于非常尴尬的位置,尤其是在此人礼貌的情况下.如果这个人不礼貌,她或可能会说下地狱,我解决了所有问题!"因为您会给一个不忙于任何严肃事情的人留下深刻的印象.彬彬有礼的人通常会有相同的感觉.

如果您向仍然遭受障碍困扰的人提出这个问题,答案将毫无用处.没有解决问题的人是不是有效的信息来源.

结论? 忙于认真的事情. 很抱歉,这听起来不太客气.我已经非常耐心地回答这个问题.这是真正的建设性建议,而不是之以鼻.

感谢您的理解.

—SA
I would say, you should not "investigate the obstacles", you should solve the application problem. You cannot solve "scientific" or "fundamental" problem here, because… there are no such problems, do be serious.

(However, if you really need to investigate the "obstacle" you should go into social studies, not engineering. CodeProject won''t help you. You need a representative set of data from many engineers. I would question scientific value of this stuff. :-))

Now, you''re making big mistake in your question of comparison API of Facebook, Google, .NET and JDK. This is like comparing a horse with a saddle on another horse. JDK and .NET are horses, everything else… not even saddles.

"Developers uisng API''s — most of the time — do not understand the design intents of the API, architecural design and the decisions made during the development of the API." — may be, but why do you call such people developers? Real engineers do understand all of that, always. If you say most of the people who do development are not real engineers, this is a social problem again. The results are usually sorrowful.

Finally, I will try to explain that your question make no sense and are fruitless. If you ask a question to a persona who actually resolved the obstacles, you will typically put this person in a very awkward position, especially if this person is polite. If this person is impolite she or will probably say "Go to hell, I solved all the problems!" because you will make and impression of a person who is not busy with anything serious. A polite person will typically feel the same.

If you ask this question to the one who is still suffering with the obstacle, the answers will be useless. A person who did not solve the problem is not a valid source of information.

A conclusion? Busy yourself with something serious. Sorry if it sounds not very polite. I already use a lot of patience answering this question. This is a real constructive advice, not a rant.

Thank you for understanding.

—SA


这篇关于与第3方API交互时,什么可以使事情变得具有挑战性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆