Discover api design best practices, include the articles, news, trends, analysis and practical advice about api design best practices on alibabacloud.com
Stack Basic ConceptsStack is a special kind of linear tableStacks can only operate at one end of a linear tableTop: one end of the consent operationBottom of Stack (Bottom): one end of the operation is not agreedFrequently used operations on stacksCreating stacksDestroying stacksEmpty stackInto the stackOut of the stackGet top of stack elementGet the size of the stackAnalysis of relationship between stack model and linked list modelSequential storage design
is 2 hours, that is, 7,200 seconds)Error code, such as error codes, the JSON packet example is as follows (the example is AppID invalid error):{"Errcode": 40013, "errmsg": "Invalid AppID"}Reference article:https://www.zhihu.com/question/20863625http://blog.csdn.net/gebitan505/article/details/39178035Http://www.tuicool.com/articles/jQJV3ihttp://www.oschina.net/question/1433358_233412Http://www.lai18.com/content/944366.htmlhttp://blog.csdn.net/gebitan505/article/details/39178917http://blog.csdn.n
Stack Basic ConceptsStack is a special kind of linear tableStacks can only operate at one end of a linear tableTop: One end of the allowed operationBottom of Stack (Bottom): One end of operation is not allowedCommon operations for StacksCreating stacksDestroying stacksEmpty stackInto the stackOut of the stackGet top of stack elementGet the size of the stackAnalysis of relationship between stack model and linked list modelSequential storage design and
, predictability really requires you to do more to write some parameters about the physical location. The external detection is changed to internal inspection. Yes, the use of people comfortable and happy with ease. God The most important thing is Haisen.Vii. readability of annotations and documentsOne of the best interfaces is that no documentation is required and we will use it, but often the interface is a bit more and the business is increased, and the interface will be a little laborious to
This article introduces a design method of Java platform and Enterprise Edition (Java ee 5), which utilizes the new Java persistence API (JPA) of Enterprise JavaBeans (EJB) 3.0 ). JPA provides a standard Object link ing solution that avoids dependency on third-party frameworks (such as Hibernate ). You will see the details of the sample application, which validates this method and clarifies the key
+ -) Server_float_ctime:returnHttpResponse ('It 's been a long time, so go buy one.') # Second pass: Server_md5_str= MD5 ("%s|%s"%(Key, Client_ctime,))ifServer_md5_str! =Client_md5_str:returnHttpResponse (' Don't') # Third pass:ifVisited_keys.Get(CLIENT_MD5_STR):returnHttpResponse ('you give up, it's late.') Visited_keys[client_md5_str]=Client_float_ctimereturnFunc (request,*args,**Kwargs)returninner@api_authdef Test (Request):returnHttpResponse ('Normal User')Service-side codeThe server writes
Design Fluent API in C #Some frameworks we often use, such as EF, Automaper, and nhib.pdf, provide excellent Fluent APIs. Such APIs fully utilize the smart prompts of, the written code is also very neat. How can we also write this Fluent code in the code? Here I will introduce 3 commonly used models, A slight change or modification in these modes can be used as an API
include a key "Mgpagenumber"#defineMGPageNumberKey @ "Mgpagenumber"extern NSString * mgtilemenuwillswitchtopagenotification ;extern NSString * mgtilemenudidswitchtopagenotification ;Rule 25: Test the hellIn the end, we all know the whole thing.Software Project Specialization article 101th: Make sure it does work.Whether to use formal TDD (test driven development) depends on you. But the test itself is unlikely to be comprehensive. There may be problems with each of the thousands of combinatio
notification:// Notice UserInfo contains a key "Mgpagenumber"#defineMGPageNumberKey @ "Mgpagenumber"extern NSString * mgtilemenuwillswitchtopagenotification ;extern NSString * mgtilemenudidswitchtopagenotification ;Rule 25: Test the hellFinally, everything has been known to everyone. Specialization in Software engineering 101th: Make sure it does work.Whether to use formal TDD (test-driven development) depends on you, but the test itself is impossible to do comprehensively. Each of the thous
IOT command (based on sip) client API design for java, iotsipThe Iot Device Control we implement is implemented by extending the sip protocol. Because pjsip is implemented based on pjsip, while pjsip uses C Programming, how to make the business layer (android end, java) easier to use the provided command API is the focus, the original method is to encapsulate (C
narg, lua_Number def){Return lua_gettop (L) }TOLUA_API const char * tolua_tostring (lua_State * L, int narg, const char * def){Return lua_gettop (L) }
This means that the default value is returned only when you do not pass the API. Otherwise, the default value is left for lua APIs, which do not support the default parameters of the application layer, 0 is returned for lua_tonumber errors, and NULL is returned for lua_tostring errors.
This kind of
locations (circlelist* list, int pos);//delete node of POS location circlelistnode* circlelist_delete (circlelist* list, int pos);//Data deletion based on node value circlelistnode* Circlelist_deletenode (circlelist* list, circlelistnode* node);//Reset Cursor circlelistnode* circlelist_reset (CircleList* list);//Gets the node circlelistnode* circlelist_current (circlelist* list) of the current cursor;//Returns the node of the original cursor to the upper layer, Then let the cursor move to the n
security descriptor for the service. Sdset----------- Set the security descriptor for the service. Showsid--------- Displays the SID string corresponding to the assumed name . Triggerinfo----- The trigger parameters for the configuration service. Preferrednode--- set the preferred service NUMA node. getdisplayname-- Get the DisplayName of the service Getkeyname------ Get the servicekeyname of the service . EnumDepend------ Enumerate the dependencies of the service. author::Nickname:Old Wow
used to write code old think, make so many disorderly seven or eight Groove design mode Why, this is not their own to find sin to suffer. Now in this API development process only know the design pattern of the fierce, really is not the realm, never understand it. Fortunately adhere to the code so long, and finally into the de
Autobuffer
Whether to buffer load
First, we add an audio element to the page:The effect in Google Chrome is as follows:Controls refer to the user control interface, so we can see the above operation panel on the Web page, including play and pause, play progress bar, volume progress bar, and progress time display. AutoPlay refers to the automatic advertisement of loaded media files, so we can open the page to play directlyThe interface of the HTML5 Audio
, we have realized that we only wake the other side of the operation.Producer, consumer sample code: Class Resource{private String name;private int count = 1;Private Boolean flag = False;Private lock lock = new Reentrantlock ();Private Condition Condition_pro = Lock.newcondition ();p rivate Condition Condition_con = lock.newcondition ();p ublic void Set (String name) throws Interruptedexception{lock.lock (); Try{while (flag) condition_pro.await ();//t1, T2this.name = name+ "--" +count++; System
proceduresThe interface documentation is sometimes set at the beginning of the project, and the front and back developers are developed according to the interface specification,Some are written after the completion of the interface development.The interface document should be clear and unambiguous, including the number of interfaces, the address of each interface, parameters, request method, data Interchange format, return value, etc. must be written clearly.Interface test procedures, if availa
In the previous article, we introduced the physical deployment idea of the Enode framework. In this article we will briefly analyze the command service API design:
Command service is important in the Enode framework, where users use the Enode framework's main entry point is the command service. The UI layer, such as controller, sends a command to the command service, and the framework begins processing the
Fully resource-oriented, the API is represented in plural form
Path (Endpoint)
http://example.com/libraries //列出所有图书馆
http://example.com/books //列出所有图书
http://example.com/libraries/ID/books //列出某个图书馆的全部图书
http://example.com/libraries/ID/books/ID //列出某个图书馆的某本图书
Filter criteria
http://example.com/books?library_id=ID //参数的存在允许AP
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.