首页 文章 精选 留言 我的

精选列表

搜索[图床管理],共10000篇文章
优秀的个人博客,低调大师

Python:一图看懂Python2还是Python3的编码

无论是Python2还是Python3,都使用unicode作为内存编码,简称内码。保存在python解释器内存中的文本,输出到屏幕、编辑器,或者保存成文件的时候,都要将内码转换成utf8或者gbk等编码格式;同样,python解释器从输入设备接收文本,或者从文件读取文本的时候,都要将utf8或者gbk等编码转换成unicode编码格式。因此,无论是Python2还是Python3,想要在unicode、utf8、gbk等编码格式之间转换的话,下图是通用的: 我们之所以会产生困惑,是因为py2和Python3给这些编码格式指定了令人困惑的名字。Python2的字符串有两种类型:unicode类型和str类型。Python2的unicode类型就是unicode编码,Python2的str类型泛指除unicode编码之外的所有编码,包括ascii编码、utf8编码、gbk编码、cp936编码等。Python3的字符串也有两种类型:bytes类型和str类型。Python3的str类型就是unicode编码,Python3的bytes类型泛指除unicode编码之外的所有编码,包括ascii编码、utf8编码、gbk编码、cp936编码等。同样是str类型,在Python2和Python3中完全颠倒了!下图稍微补充了一点内容,更有助于理解编码问题。 接下来,我们实战演练一下。 s = 'abc天圆地方'type(s)len(s) 7 s 'abc天圆地方' print(s) abc天圆地方 s.encode('unicode-escape') b'abc\u5929\u5706\u5730\u65b9'不管是否在字符串前面加了u,只要不在字符串前面使用b,在IDLE中定义的字符串都是unicode编码,也就是py3的,其长度就是字符数量,不是字节数。我们把unicode字符串’abc天圆地方’转成utf8编码: s_utf8 = s.encode('utf8')type(s_utf8) len(s_utf8) 15 s_utf8 b'abc\xe5\xa4\xa9\xe5\x9c\x86\xe5\x9c\xb0\xe6\x96\xb9' print(s_utf8) b'abc\xe5\xa4\xa9\xe5\x9c\x86\xe5\x9c\xb0\xe6\x96\xb9' s_utf8.decode('utf8') 'abc天圆地方'utf8编码就是bytes类型(字节码),长度就是字节数量。我们把unicode字符串’abc天圆地方’转成gbk编码: s_gbk= s.encode('gbk')type(s_gbk) len(s_gbk) 11 s_gbk b'abc\xcc\xec\xd4\xb2\xb5\xd8\xb7\xbd' print(s_gbk) b'abc\xcc\xec\xd4\xb2\xb5\xd8\xb7\xbd' s_gbk.decode('s_gbk') 'abc天圆地方'gbk编码也是bytes类型(字节码),长度也是字节数量。我们再来看看,不同编码的字节码能否连接: ss = s_utf8 + s_gbkss b'abc\xe5\xa4\xa9\xe5\x9c\x86\xe5\x9c\xb0\xe6\x96\xb9abc\xcc\xec\xd4\xb2\xb5\xd8\xb7\xbd' ss.decode('utf8') Traceback (most recent call last): File "", line 1, in ss.decode('utf8')UnicodeDecodeError: 'utf-8' codec can't decode byte 0xcc in position 18: invalid continuation byte ss.decode('gbk') 'abc澶╁渾鍦版柟abc天圆地方' ss.decode('utf8', 'ignore') 'abc天圆地方abcԲط' ss.decode('gbk', 'ignore') 'abc澶╁渾鍦版柟abc天圆地方'看以看出,不同编码的字节码可以连接,但一般不能解码成unicode(字符串),除非使用ignore参数。

优秀的个人博客,低调大师

一张图看懂大牛直播SDK的模块化组合

如上图所示,此Demo系大牛直播SDK的android平台SmartRelayDemoV2工程,此demo涵盖以下功能: 1. RTMP/RTSP直播播放(支持大牛直播播放SDK全部功能,如软、硬解码设置、实时静音、快照、view旋转、秒开等); 2. RTMP/RTSP流录制(支持音频转AAC后录制,支持只录制音频或视频,文件自动切分等); 3. RTMP/RTSP流转RTMP推送(行业内转发延迟最低,支持同时转发多路); 4. 内置RTSP网关(对外提供RTSP服务,可同时开启多个service,提供小规模并发访问); 好多开发者以为只是单个功能展示,实则不然,大牛直播SDK的灵活之处在于,以上4个功能模块,可以随意同时组合使用,亦或功能模块全开,资源占用,行业内最低,不服来比。 如:RTSP流播放的同时,转发到其他RTMP服务器,并同步开启录像功能,本地录像,并对外提供RTSP服务(作为拉流网关服务器)。 附4个模块功能列表: Windows/Android/iOS RTMP、RTSP直播播放器SDK 如不单独说明,系Windows、Android、iOS全平台支持。 [支持播放协议]高稳定、超低延迟(一秒内,行业内几无效果接近的播放端)、业内首屈一指的RTMP/RTSP直播播放器SDK; [多实例播放]支持多实例播放(如同时播放多路RTMP/RTSP流); [事件回调]支持网络状态、buffer状态等回调; [视频格式]支持RTSP H.265、RTMP扩展H.265,RTSP/RTMP H.264; [音频格式]RTMP/RTSP支持AAC/PCMA/PCMU,此外RTMP还支持Speex; [H.264/H.265软解码]支持H.264/H.265软解; [H.264硬解码]Android/iOS支持H.264硬解; [H.265硬解]Android支持H.265硬解; [H.264/H.265硬解码]Android支持设置Surface模式硬解和普通模式硬解码; [硬解码自适应]Android/iOS平台支持硬解码码自适应,如检测到硬解码不支持,自动切换到软解; [RTSP模式设置]支持RTSP TCP/UDP模式设置; [RTSP TCP/UDP自动切换]支持RTSP TCP、UDP模式自动切换; [RTSP超时设置]支持RTSP超时时间设置,单位:秒; [RTSP 401认证处理]支持上报RTSP 401事件,如URL携带鉴权信息,会自动处理; [缓冲时间设置]支持buffer time设置; [首屏秒开]支持首屏秒开模式; [低延迟模式]支持类似于线上娃娃机等直播方案的超低延迟模式设置(公网200~400ms); [复杂网络处理]支持断网重连等各种网络环境自动适配; [快速切换URL]支持播放过程中,快速切换其他URL,内容切换更快; [音视频多种render机制]Android平台,视频:surfaceview/OpenGL ES,音频:AudioTrack/OpenSL ES; [实时静音]支持播放过程中,实时静音/取消静音; [实时快照]支持播放过程中截取当前播放画面; [渲染角度]支持0°,90°,180°和270°四个视频画面渲染角度设置; [渲染镜像]支持水平反转、垂直反转模式设置; [实时下载速度更新]支持当前下载速度实时回调(支持设置回调时间间隔); [解码前视频数据回调]支持H.264/H.265数据回调; [解码后视频数据回调]支持解码后YUV/RGB数据回调; [解码前音频数据回调]支持AAC/PCMA/PCMU/SPEEX数据回调; [音视频自适应]支持播放过程中,音视频信息改变后自适应; [扩展录像功能]完美支持和录像SDK组合使用,录像相关功能,可参见"8. Windows/Android/iOS录像SDK"; [全屏]Windows平台双击画面进入全屏模式; [Windows本地FLV播放器]支持本地FLV文件播放(支持获取FLV文件的duration(时长);支持显示当前播放位置; [Windows本地FLV播放器]支持开始播放或播放过程中seek(跳转播放位置),也许是行业内seek最快的flv点播播放器)。 Windows/Android/iOS录像SDK [拉流]支持拉取RTSP流录像; [拉流]支持拉取RTMP流录像; [推流端录像]支持推送端同步录像; [逻辑分离]大牛直播录像SDK不同于普通录像接口,更智能,和推送、播放、转发、内置轻量级RTSP服务SDK功能完全分离,支持随时录像; [url切换]在录像过程中,支持切换不同URL,如两个URL配置一致,则可以录制到同一个MP4文件,如不一致,可自动分割到下一个文件; [参数设置]支持设置单个录像文件大小、录像路径等,并支持纯音频、纯视频、音视频录制模式; [音频转码]支持音频(PCMU/PCMA,Speex等)转AAC后再录像; [265支持]支持RTSP/RTMP H.265录制到MP4文件; [推送端265录像]Windows/Android推送端SDK支持H265录像; [事件回调]从开始录像,到录像结束均有event callback上来,网络堵塞、音视频同步均做了非常友好的处理。 Windows/Android/iOS RTMP/RTSP多路流媒体转RTMP推送SDK 如不单独说明,系Windows、Android、iOS全平台支持。 [拉流]支持拉取RTSP流; [拉流]支持拉取RTMP流; [预览]支持拉取到的RTMP/RTSP随时本地预览、关闭预览; [拉流音频调节]支持拉取的RTMP/RTSP流静音; [音频转码]支持拉取的RTMP/RTSP的PCMA/PCMU/SPEEX音频格式转AAC后再转发到RTMP服务器; [url切换]支持转发过程中,拉取的RTMP/RTSP或本地FLV文件实时内容切换; [转发]超低延迟转发拉取的rtsp/rtmp流到rtmp server; [H.265支持]业内首家支持RTSP/RTMP H.265转RTMP推送的SDK(提供配套RTMP扩展H.265服务器)。 Windows内网RTSP网关SDK 内网RTSP网关SDK,系内置轻量级RTSP服务SDK扩展,完成外部RTSP/RTMP数据拉取并注入到轻量级RTSP服务SDK工作,多个内网客户端直接访问内网轻量级RTSP服务获取公网数据,无需部署单独的服务器,支持RTSP/RTMP H.265数据接入。 简单来说:内置轻量级RTSP服务SDK和内置RTSP网关SDK的区别在于数据来源不同,内置轻量级RTSP服务SDK数据来源于终端设备自带摄像头数据/屏幕数据/外部编码前后数据,内置RTSP网关SDK的数据源是RTSP/RTMP流数据。 [音频格式]AAC; [视频格式]H.264、H.265; [接入协议]支持内外网RTMP/RTSP流接入; [输出协议]RTSP,拉取的RTSP/RTMP流,注入轻量级RTSP服务SDK; [音频转码]支持音频(PCMU/PCMA,Speex等)转AAC后注入; [端口设置]支持RTSP端口设置; [鉴权设置]支持RTSP鉴权用户名、密码设置; [获取session连接数]支持获取当前RTSP服务会话连接数; [多服务支持]支持同时创建多个内置RTSP服务; [H.265支持]Windows内置rtsp server支持发布H.265视频(64位库); [RTSP url回调]支持设置后的rtsp url通过event回调到上层。 更多资料,可查看https://github.com/daniulive/SmarterStreaming

优秀的个人博客,低调大师

一张图让你读懂鹅厂的物联网框架

本文从物联网的中心要素、物联网的关键场景、微信硬件平台的通讯协议剖析三个维度去剖析基于微信硬件平台的物联网架构。 一、基于微信硬件平台的物联网架构图 上图涵盖以下信息: 基于微信硬件平台的物联网的架构组成,有微信大众平台/硬件平台、第三方厂商云后端、手机微信/大众号、微信硬件设备终端(Wifi和蓝牙BLE)。 绿色代表腾讯向开发者和大众提供的根底平台和效劳,并经过白色(airsync/airkiss)定义的硬件外设协议供硬件设备接入,白色(微信硬件平台接入协议,XML/JSON)供厂商云后端接入;蓝牙和紫色区域代表开发者所要完成的义务,其中蓝牙是嵌入式硬件设备终端的义务,紫色是第三方厂商云后端的义务。 物联网各个组成局部之间的通讯协议标识。除了白色标识的协议是微信大众平台和硬件平台制定的协议必需遵照外,其他组成局部的协议都是自定义的协议。 Wifi模组的供给商提供的SDK普通都提供socket通讯接口,而云后端普通会运用JSP/PHP等web编程技术,因而wifi设备需求模仿HTTP协议跟云终端通讯。HTTP是一个规范的公共的通讯协议,使用层需求在HTTP之上树立自定义的使用协议来完成设备的控制和交互,而使用协议可以是XML/JSON等等。当然,假如云后端运用底层的socket编程,则wifi设备终端可以不需求模仿http。 蓝牙经过airsync协议接入微信,该协议规则了设备发现、绑定、登陆、初始化、接纳用户指令、自动发送音讯等进程。 Airkiss是经过JSAPI的方式让用户可以在微信上输出路由器的用户名和密码,然后告知没有按键输出和屏幕显示的wifi设备,让该设备可以连上路由器进入网络在线形态。除此之外,Airkiss跟之后用户和厂商、设备的交互完成没有关系。实质上,Airkiss只是一个配置上网功用,跟物联网的控制和交互有关。 Wifi设备接入微信硬件平台是远场控制,设备只需处于联网在线形态,那手机用户无论在哪里,只需能上网都可以对设备停止控制,典型的例子是在公司下班可以经过手机控制家里的智能插座上电;蓝牙设备接入微信硬件平台必需依赖于手机,是近场控制,典型的场景是手机控制家里的灯和空调等。 二、物联网的中心要素 本文是从开发者的角度去剖析整个微信硬件平台物联网,不去讨论物联网运营之类等范畴。那麼,从开发的角度,物联网的中心要素什麼,微信平台又支持了什麼?我的了解是: 设备的合法性和独一性 微信硬件平台在物联网范畴做的事情其实不多,只需细心想想架构图中的这麼多的紫色和蓝色都是留给开发者,而且都是要光秃秃的编程。关于普通的设备商,他们想接入也是勉爲其难啊。在这集体系架构中,微信硬件平台做的最重要的一件事情就是身份认证。 就像一团体出生后要办一张身份证(出生证明的号码也是身份证号码)一样,设备消费出来要想进入微信硬件范畴,它就必需到微信硬件平台注册本人的身份,那它拿什麼去注册呢,这个根据自然应该是无独有偶的,就像每团体的指纹,假如我国的小孩办身份证都以录指纹爲根据,那就不会呈现那麼多拐卖儿童了。如今公安局的做法是什麼,是硬生生地把一串身份证数字跟人名绑在一同,跟自然人的生物特征没有一丁点关系!!!设备的无独有偶的根据就是48位的MAC地址(或许是MAC地址经过某种加密运算失掉的后果)。 接着办身份证/出生证不是要给小孩起个名字吗,当前大家交流就叫名字了,公安局也是叫名字的嘛,不能够每次喊话都把指纹的二进制数字读出来的啊。嗯,那硬件设备注册时也要报备本人的名字,即设备ID。设备ID也应该在微信硬件平台独一啊,不然会乱的。就像MAC地址一样,有一局部是代表一个设备提供商向世界IETF组织请求的企业辨认字段,另一局部是设备商外部的分配。或许像身份证那样,后面6个字段是代表一团体出生时的县区行政区划码,前面的数字才代表本身,但同时要保证在这个行政区外面的独一性。那微信硬件平台怎样标准设备身份?设备身份包括两个局部,deviceType是设备商/销售商的微信大众号的原始ID,deviceID由设备商/销售商自定义,由设备商保证deviceID在其deviceType中的独一性。 这就是设备的注册场景。设备注册了当前在微信硬件平台就具有合法性和独一性了。 设备被拜访的合感性和合理性 设备最终是应该和人/手机用户交互的,否则就得到了物联的意义了。那麼哪个用户可以拜访这个设备呢? 微信誉户要关注设备商的微信大众号和绑定设备才干对设备停止拜访。假如不绑定就可以拜访,那就是一切用户都可以拜访这个设备,这显然是不合理的。你买的智能插座放家里,另一团体也能控制你的插座,多风险。 微信硬件平台确保设备的独一性,微信大众平台确保微信誉户的独一性,两者经过关注和绑定这个流程树立起完全权益的拜访关系。 微信硬件平台是微信大众平台的一个子集,微信硬件平台会应用微信大众平台已有的功用来完成根底效劳。 设备和用户交互的音讯触达才能 设备要成爲物联网中的一员,必需可以联网,好比人体的神经元,具有可以和外界交流的才能。 微信硬件平台次要从云后端接入和硬件接入两方面作出努力。一是经过airsync协议让蓝牙设备和微信互通,airkiss协议让复杂的没有按键和UI交互的wifi设备联网;二是经过制定云后端接入协议来接纳厂商云,经过音讯接口和API接口运用户和设备的音讯可以互相触达。即设备收回的音讯经过微信平台发送到厂商云,厂商云的音讯也能自动推送给设备,完成交互。 效率 扫一扫功用对微信的影响是宏大的,加关注,好友,挪动领取等等都经过二维码来完成,设备绑定是二维码。微信硬件平台和大众平台发生的二维码关联了用户、设备ID等信息,经过扫一扫功用能方便地停止绑定,接入进入大众号的音讯界面。 物联网触及到终端、前端和后端等等,是一个大工程,无论从开发的角度,还是从用户运用的角度,都要一直强调便捷的效率,以让用户有足够好的体验,才干使得物联网得以壮大。 音讯处置才能—嵌入式零碎 这一点并没有在物联网架构的图示中呈现。物联网决不只仅是一种控制,例如开灯和关灯之类,也不只仅是复杂的经过各种传感器来停止数据采集,将来的物联网一定会让用户不时地进步用户体验,例如多媒体、虚拟与完成、数据决策等等,这局部是由初级的嵌入式零碎来完成的。嵌入式零碎才是设备的大脑,物联网应该更好地拥抱嵌入式零碎。 三、物联网场景剖析和通讯协议剖析(近场蓝牙控制方案) 1.注册 下面已有阐明 2.用户绑定 下面已有阐明 3.衔接 用户在绑定进程中会自动完成对提供设备的厂商的微信大众号的关注。在当前每次进入大众号时,会自动经过手机蓝牙对蓝牙设备停止扫描衔接。只要完成airsync协议的蓝牙设备才干连上微信。例如蓝牙设备播送的字段外面要声明本人的MAC地址,这样微信能辨认到这个一个要接入微信的蓝牙设备,然后才会自动地衔接它。 4.控制(菜单控制) 1)用户点击微信大众号提供的菜单,如开灯。 2)音讯经过微信大众平台发送给厂商云后端。 3)云后端在本人的数据库内验证微信誉户和设备的无效性后,将微信菜单的开灯音讯转化爲自定义协议的开灯音讯(这个协议只要云后端和外设设备所看法),并依据airsync中的protobuf协议抵消息体停止打包封装,最初经过调用微信硬件平台提供的API接口自动推送出去。 4)微信硬件平台收到信息后经过微信大众平台回传给微信誉户所在的大众号。 5)微信将这个音讯依据airsync协议经过手机蓝牙发送蓝牙外设。 6)蓝牙外设收到音讯停止相应的处置。 从这个进程来看,间接的菜单控制走的流程太长了,影响效率。上面引见的JSAPI控制就是间接控制,不需求再经过厂商云来发指令。 5. 控制(H5/JASPI控制) 1)用户点击微信大众号提供的H5网页链接 2)微信阅读器经过H5地址向厂商云后端恳求呼应,前往H5页面。 3)用户点击H5页面的开灯button 4)button经过JSAPI接口间接向蓝牙设备收回自定义的控制音讯,JSAPI蓝牙接口曾经封装好airsync协议。 5)蓝牙设备收到音讯停止相应的处置。 四、物联网场景剖析和通讯协议剖析(远场wifi控制方案) 1.注册 下面已有阐明 2.用户绑定 下面已有阐明 3.衔接 由于用户和wifi设备并不在一个区域,而是经过网络来衔接,因而用户是不间接跟wifi设备打交道的,一切的交互都给经过wifi设备商的云后端停止直接交互。(之前曾经说了airkiss只是微信提供的一个配置上网功用,wifi设备经过一次配置后,当前会记住这个路由器的ssid和pwd的,所以配置好一次后,airkiss跟物联网交互一点关系都没有,因而airkiss不应该算在物联网的音讯触达协议内)。 用户进入wifi设备对应的大众号后,微信大众号会经过微信大众平台向厂商云订阅和征询设备的在线形态。因而设备一上线时应该自动联络厂商云后端,告知本人上线了,并不时地发送心跳包维持衔接。这样微信大众号一订阅恳求,云就前往设备的形态给它。 假定设备在线,云后端前往在线形态,微信大众号就会显示设备衔接上。 4. 控制(菜单控制) 1)用户点击微信大众号提供的菜单,如开灯。 2)音讯经过微信大众平台发送给厂商云后端。 3)云后端在本人的数据库内验证微信誉户和设备的无效性后,将微信菜单的开灯音讯转化爲自定义协议的开灯音讯(这个协议只要云后端和外设设备所看法),然后间接经过网络发给wifi设备。 4)wifi外设收到音讯停止相应的处置。 5. 控制(H5控制) 1)用户点击微信大众号提供的H5网页链接 2)微信阅读器经过H5地址向厂商云后端恳求呼应,前往H5页面。 3)用户点击H5页面的开灯button 4)button经过AJAX接口向厂商云后端收回自定义的控制音讯。 5)厂商云接纳到音讯会转化硬件控制音讯,间接经过网络发给wifi设备。 6)wifi设备收到音讯停止相应的处置。 从这点来看,wifi设备接入微信硬件平台,微信硬件平台仅仅起到一个入口的作用,音讯转发都不经过微信硬件平台了。 五、微信硬件平台的优与劣 回过头来想想,国际这几年早曾经有多家物联网平台,如机智云,yelink等等,它们除了充任公安局的角色确保设备的独一性,还完成了后端的效劳平台,甚至给用户提供物联设备模块,极大地简化了物联设备消费商的开发流程。在这样的根底上,微信硬件平台把那麼多的义务丢给了开发者,但还是很多厂商拥抱它,只能说微信是一个超级APP,是一个极佳的入口,掌握了全社会大局部用户的入口。在挪动互联网范畴,用户数量就是霸道。 固然,用户量宏大和腾讯体量庞大是微信硬件平台物联网的劣势,但要想做得更好,是不是思索给用户多做一些像机智云一样的任务? 换作各位小同伴,你们会怎样做呢?欢迎留言~~

优秀的个人博客,低调大师

小爬虫抓取今日头条街拍美女图

先实际感受一下我们要抓取的福利是什么?点击 今日头条,在搜索栏输入街拍 两个字,点开任意一篇文章,里面的图片即是我们要抓取的内容。 可以看到搜索结果默认返回了 20 篇文章,当页面滚动到底部时头条通过 ajax 加载更多文章,浏览器按下 F12 打开调试工具(我的是 Chrome),点击 Network 选项,尝试加载更多的文章,可以看到相关的 http 请求: 可以看到请求的 URL(Request URL)为:http://www.toutiao.com/search_content/, 其请求参数为: 很容易猜测 offset 表示偏移量,即已经请求的文章数;format 为返回格式,这里返回的是 json 格式的数据;keyword 是我们的搜索关键字;autoload 应该是自动加载的指示标志,无关紧要;count 为请求的新

优秀的个人博客,低调大师

3D酷炫立体图现已加入 pyecharts 豪华晚餐

1. datazoom 中增加了将组件效果显示在 y 坐标轴中的功能。 本来是这样的 现在还可以这样 2. 增加了对 Pandas 和 Numpy 数据的简单处理。解决直接传入 Pandas 和 Numpy 数据类型出错的问题。 如果使用的是 Numpy 或者 Pandas,直接将数据放入 add() 方法也可能会出现问题,因为 add() 方法接受的是两个 list 列表。最后所有的配置项都是要经过 JSON 序列化的,像 int64 这种类型的数据在这个过程是会报错的。 在这里提供了 pdcast(pddata) 和 npcast(npdata) 两个方法,用于这两个库数据类型的处理。 pdcast(),接受的参数可以为 Series 或者 DataFrame 类型。 @staticmethod pdcast(pddata)用于处理 Pan

优秀的个人博客,低调大师

一图尽览美国最活跃的无人机投资基金

本文来自AI新媒体量子位(QbitAI) 无人机正在越来越多的领域得到应用,来自CBIsights的数据显示,无人机公司的融资次数在今年一季度达到历史最高值,而融资金额也在恢复之中。 那么,谁是对无人机创业公司最感兴趣的风投? 数据显示,美国市场上有九家基金对无人机投注最多。这九家基金中,有四家是风险投资公司,有三家是企业的风投基金,还有两家是超级天使。 高通风险投资和Lux资本是无人机领域最活跃的投资者,他们一贯在物联网领域非常活跃,所以这个结果也并不意外。高通此前还为无人机开发者设计推出了消费级无人机参考设计平台Snapdragon Flight。 Lux资本以广泛投资无人机公司而著称,从无人船到无人赛车等都有涉猎。高通在这一领域的投资则有更多的战略考量。在两家的投资组合中均有AirMap,这家公司可以把无人机周围的空间情况,可视化的呈

资源下载

更多资源
Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册