【建站服务】靖江网站推广【靖江办理400电话】靖江SEO优化、靖江微信公众号APP客户端小程序开发、靖江网站托管、靖江APP开发-域名申请
作者: 风兰 . 阅读量: 6 . 发表时间:2022-09-20 15:25:56
上往建站提供服务器空间服务商,百度快照排名,网站托管,百度推广运营,致力于设计外包服务与源代码定制开发,360推广,搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。
靖江网站推广【靖江办理400电话】靖江SEO优化、靖江微信公众号APP客户端小程序开发、靖江网站托管、靖江APP开发
靖江市,简称靖,江苏省辖县级市,由泰州市代管,位于泰州市东南部,介于北纬31°56′-32°08′,东经120°01′-120°33′之间,属亚热带季风气候,是江苏省新兴的港口工业城市,总面积665平方公里。截至2019年,靖江市常住人口达68.46万人。 [1-3]
明成化七年(1471年),始置靖江县,属常州府。1996年7月19日,地级泰州市设立,靖江市改由泰州市代管。 [4] 截至2019年,靖江市辖1个街道、8个镇;另辖5个乡级单位。 [5]
2019年,靖江市实现地区生产总值979.57亿元,同比增长7.2%。按常住人口计算全年人均GDP为143066元。分产业看,第一产业实现增加值25.70亿元,增长2.1%;第二产业实现增加值540.91亿元,增长6.5%;第三产业实现增加值412.96亿元,增长8.5%,第三产业增加值占GDP比重比上年提高1.4个百分点。 [1] 2020年12月,社科院发布《全国县域经济综合竞争力100强》,靖江排名第30 [6] 。
优酷接口采用了HTTP响应状态码加结果返回的形式,如:
Request URL:https://openapi.youku.com/v2/videos/show_basic.jsonRequest Method:GETStatus Code:400 Bad Request{"error":{"code":1004,"type":"SystemException","description":"Client id null"}}复制代码新浪微博也一样:
Request URL:https://api.weibo.com/2/statuses/mentions/ids.jsonRequest Method:GETStatus Code:403 Forbidden{"error":"auth by Null spi!","error_code":21301,"request":"/2/statuses/mentions/ids.json"}复制代码微信接口则采用了统一200的形式,如:
Request URL:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=Request Method:GETStatus Code:200 OK{"errcode":41002,"errmsg":"appid missing"}复制代码比较不幸的是,对于接口服务的规范和语义,现在社区暂时还没形成统一的标准,这就导致了客户端接入了A接口系统后,当需要再次接入另一个B接口系统,又需要重新开发一次,完成对接的工作。因为很可能,不同的接口系统,它们制定的格式不一样,签名方式不一样,使用的协议也不尽相同。
哪一种格式更好呢?需要时间来证明。
揣测接口框架最终将如何被使用,是开发完成后所体现的成效。但在这之前,技术开发人员还有完成一系列的编码开发、测试联调、Bug修复等一系列操作。如何开发一个接口服务,很大程度上取决于接口框架如何设计、如何引导以及如何约束。不同的开发过程,不仅会带来不同的开发体验,还会最终塑造不同的接口形态。
回归到本质的问题,当别人在使用你设计的接口框架进行开发时,你是希望他们顺势而下,还是逆流而上?顺势而下即自顶而下的方式,先最外层或最顶层,再到最底层;逆流而上则是自底而上的方式。还是想两者皆可得?
不管是自顶而下,还是自底而上,都需要一种架构分层模式来分离关注点,以便将高层的调度决策与底层的实现细节分开。这时,则需要引入合适的分层模式,将日后将会产生的大量应用层代码进行垂直或水平划分。同时,分层模式还应能为大众所熟悉,以降低学习成本以及理解的难度。MVC是很流行的分层模式,但也是被误用、误学得最多的分层模式。
此外,接口框架还应帮助开发人员管理系统所面对的领域复杂性以及技术复杂性,并且将这两者明显区别开来,从而保障领域业务概念的完整性得以充分测试,基础设施部分可以脱离业务逻辑最大程度上实现重用。这就是Evans在《领域驱动设计》一书中重点讲述的内容。
在现代软件开发中,一个不可忽略的最佳实践是测试驱动开发。哪怕作为接口框架的设计者,你可能不会编写单元测试,但至少你所提供的接口框架应该能支持别的开发人员对他们所编写的应用层代码进行单元测试,并做到友好支持。
所以,开发人员在下载我们的接口框架后,如何进行开发,很大程度上取决于我们当初是如何设计接口框架的。在本质上,我们应探寻一种符合接口服务系统领域本身,恰如其分的设计和规范,并通过时间和实践反复验证、调整。这是一个开放式的话题。但有一些原则是值得去遵循的。其中有一个原则就是易用性。可以这么来理解框架的易用性,如果一个普通的开发人员,在前面学习了文档并曾经已经做过功能开发,当需要再次开发一个类似的功能时,他是否能在不看文档、不复制已有代码的前提下,快速、自然而然、不需要陷入回忆痛苦就能完成?如果是,那么你的接口框架设计得非常优秀。如果不是,或者说甚至乎连自己都要反复查阅文档才能完成新的功能开发,那么接口框架的设计还有待提高。
通过提前设想将来时态的开发情况,从而反推现在接口框架的设计是件很有意思的事情。因为你还需要设想开发人员在开发过程中还会遇到哪些问题,以及作为接口框架的设计者,你又该如何向他们进行解释呢?
一人追求完美,活得很累。禅师对他说:“这世界是一半一半的。天一半地一半;男一半女一半;善一半恶一半;清净一半浊秽一半。很可惜,你拥有的是不全的世界。”“为什么?”“你要求完美,不能接受残缺的一半,所以你拥有的是不全的世界,毫无圆满可言。”“学会包容,就会拥有一个完整的世界。”
对于设计开发框架也一样,要学会包容,才能成为一个完整的框架。包容指除了能处理正常的场景外,还应能兼容异常的情况、轻松吸纳第三方扩展类库,并拥有对未来不确定性的开放性。
异常的处理是一种艺术,应以一种优雅的方式来统筹,而不应放而任之,更不应该将其视为“恶魔之源”而排斥之。曾经有一个更有趣的轶事,与我共事的一位同事,他强烈反对在PHP代码中过多使用异常抛出。当我追问为什么时,他的回答竟然是过多使用异常会影响正常情况下的运行性能。我说不会,只有当异常抛出时才会触发异常调用栈的响应机制,而在正常情况下是丝毫不会影响性能的。他依然坚持否认这个观点。无奈之下,我写了一段简单的测试代码来对比,并通过实际的效果向他证明了事实的真相。最终他也承认是之前认识上有所偏差。
通过这个身边的小故事,也许很多人会反对或者潜意识里排斥异常,可能是因为他们觉得会对性能造成影响,又或者他们因为异常一抛出就会导致程序终止运行。无论如何,他们都不喜欢异常。但这些认知都是不对的,恰恰相反,异常机制是一种传递错误的信号,不仅能减少代码嵌套的复杂度,如果能在高层上统一异常的处理机制,还能形成优雅的框架设计。
细想一下,当使用框架进行开发时,会遇到哪些异常呢?最为明显的是,因底层系统或者基础服务而导致的错误,如:数据库连接不上、CURL时网络不通、系统文件无写入权限。其次,还有开发人员在应用层自行设计抛出的异常。不容易识别的是,当开发人员未按照框架所设计的规范开发时,又该进行友好的错误提示,以便开发人员能及时、清晰地定位到问题。因此,异常情况可简单归为三类:
底层异常:因底层不可抗因素而导致的失败。
框架异常:因不符合框架规范时的错误。
应用异常:应用层自身的异常体系。
那么,对于异常的处理方案又有哪些呢?PHP一开始是面向过程式的,后来才慢慢支持面向对象编程,注意是支持而不是强制。由于PHP语言的历史原因,它提供了很多面向过程式的函数,在这种情况下,处理异常的方式通常是静默式的,即不会显式抛出异常,而是通过返回一个状态码来表示成功与否。这也就是为什么PHP会提供那么多错误码以及获取某个操作后错误的函数。例如,常见的CURL操作时失败的判断:

靖江网站推广【靖江办理400电话】靖江SEO优化、靖江微信公众号APP客户端小程序开发、靖江网站托管、靖江APP开发
上往建站提供搭建网站,域名注册,官网备案服务,网店详情页设计,企业网店,专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管,网页美工排版,致力于域名申请,竞价托管,软文推广,全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机,网站推广,百度竞价托管,网站建设,上网建站推广服务,网络公司有哪些等业务,专业团队服务,效果好。
服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)
关键词:网站建设,企业网站,网站制作,网页设计,高端网站建设,企业网站制作,网页制作,制作网站,网站设计,高端网页设计,高端网站设计,做网站,自适应网站


