综合( 右侧选择分类 )
hangge

TIOBE - 2019年6月编程语言排行

六月头条:Python 排名飙升 Python 的 TIOBE 指数持续飙升,并在本月创下了历史新高,达到 8.530%,远超 C++ 的 7.384%。如果 Python 可以保持这种增长速度,有机会在 3 到 4 年内在 TIOBE 语言排行榜上取代 C 和 Java 的位置,从而成为世界上最流行的编程语言。 Python 排名上升得如此快原因在于软件工程正在蓬勃发展,而 Python 恰好吸
3026 人浏览
iOS

UIView层次管理(放到最上层或放到最下层)

将一个UIView显示在最前面只需要调用其父视图的 bringSubviewToFront()方法。 将一个UIView层推送到背后只需要调用其父视图的 sendSubviewToBack()方法
3026 人浏览
hangge

Docker - 常用命令汇总1(镜像管理、容器运行、停止、进入等)

一、镜像管理1,下载镜像我们使用docker pull命令从Docker Hub上下载指定镜像:hello-world是Docker官方提供的一个镜像,通常用来验证Docker是否安装成。dockerpullhelle-world2,搜索镜像使用docker search命令可以搜索Docker Hub中的镜像。3,查看已下载的镜像使用docker images命令可以查看所有已下载到本地的镜像。
3024 人浏览
xiaozhi

8.如何在JavaScript中访问暂未存在的嵌套对象

为了保证可读性,本文采用意译而非真译。JavaScript 是个很神奇的东西。但是 JavaScript中的一些东西确实很奇怪,让人摸不着头脑。其中之一就是当你试图访问嵌套对象时,会遇到这个错误Cannot read property 'foo' of undefined在大多数情况下,处理嵌套的对象,通常我们需要安全地访问最内层嵌套的值。 来个粟子:constuser={ id
3023 人浏览
java

开发部署提速8倍!这款IDE插件了解一下?

对于开发者而言,提高工作效率大概有 2 种主要方式,第一种方式就是加快自己的工作速度,争取在同一段时间内多码一些代码、多干一些活来实现多产;而聪明的开发者会选择第二种方式,就是通过插件,让一些重复性的、繁琐性的工作被自动化,从而节省出时间来做一些实质性的业务,达到轻松又高效的工作步调。最近通过发布会直播,了解到一款本地 IDE 插件——Cloud Toolkit,就是通过第二种方式来提高开发者的工
3020 人浏览
xiaozhi

3.我从来不理解JavaScript闭包,直到有人这样向我解释它

正如标题所述,JavaScript闭包对我来说一直有点神秘,看过很多闭包的文章,在工作使用过闭包,有时甚至在项目中使用闭包,但我确实是这是在使用闭包的知识。最近看到的一些文章,终于,有人用于一种让我明白方式对闭包进行了解释,我将在本文中尝试使用这种方法来解释闭包。##准备在理解闭包之前,有个重要的概念需要先了解一下,就是 js 执行上下文。这篇文章是执行上下文 很不错的入门教程,文章中提到:当代码
3018 人浏览
android01

Android源码解析(二十三)-- Android异常处理流程

前面的几篇文章都是讲解的android中的窗口显示机制,包括Activity窗口加载绘制流程,Dialog窗口加载绘制流程,PopupWindow窗口加载绘制流程,Toast窗口加载绘制流程等等。整个Android的界面显示的原理都是类似的,都是通过Window对象控制View组件,实现加载与绘制流程。这篇文章休息一下,不在讲解Android的窗口绘制机制,穿插的讲解一下Android系统的异常处
3015 人浏览
xiaozhi

5.JavaScript是如何工作: 深入探索 websocket 和HTTP/2与SSE +如何选择正确的路径

文章底部分享给大家一套 react + socket 实战教程这一次,我们将深入到通信协议的领域,映射和探讨它们的属性,并在此过程中构建部分组件。快速比较WebSockets和 HTTP/2。最后,我们分享一些关于如何选择网络协议的方法。简介如今,功能丰富、动态 ui 的复杂 web 应用程序被认为是理所当然。这并不奇怪——互联网自诞生以来已经走过了漫长的道路。最初,互联网并不是为了支持这种动态和
3014 人浏览
iOS

iOS中基于协议的路由设计

一、背景前段时间对我们自己的App做了结构上的重构,抛弃了之前简单的MVC开发模式,原因是随着App的业务线越来越多,单个页面的功能越来越复杂,MVC开发模式导致整个Controller-layer的代码越来越多。本文将分享重构中的Router模块。使用路由模式可以解决我们项目中页面与页面之间的耦合(因为我们App是视图生命周期作为驱动,所以这里说是页面,实际是控制器层),因为一个页面功能太多就会
3013 人浏览
android01

Android源码解析(十一)-- 应用进程启动流程

在android guide中有这样的一段关于android应用程序进程的描述:**By default, every application runs in its own Linux process. Android starts the process when any of the application's components need to be executed, then
3011 人浏览
wechat

微信小程序协同工作和发布

小程序协同工作和发布在中大型的公司里,人员的分工非常仔细,一般会有不同岗位角色的员工同时参与同一个小程序项目。为此,小程序平台设计了不同的权限管理使得项目管理者可以更加高效管理整个团队的协同工作。以往我们在开发完网页之后,需要把网页的代码和资源放在服务器上,让用户通过互联网来访问。在小程序的平台里,开发者完成开发之后,需要在开发者工具提交小程序的代码包,然后在小程序后台发布小程序,用户可以通过搜索
3007 人浏览
xiaozhi

1.创建华丽 UI 的 7条规则 第一部分 (2019年更新)

简介首先也是比较重要的,先说明点这篇指南并不适合所有人,主要适合以下从业者:开发者希望能够在必要时设计出自己漂亮的 UI。用户体验设计师希望他们的产品组合看起来比五角呆板的 PPT 更好看或者让用户得到更好的用户体验。本文中主要围绕以下 7 规则讲解:光来自天空 (Light comes from the sky)黑白优先 (Black and white first)加倍你的空白 (Double
3005 人浏览
php

yii2 增删改查

一、新增使用model::save()操作进行新增数据$user= new User; $user->username =$username; $user->password =$password; $user->save();使用createCommand()进行新增数据Yii::$app->db->createCommand()-&
3005 人浏览
hangge

Docker - 容器存储详解1(使用Data Volume实现数据持久化)

对于有些容器,我们可能会有持续化数据的需求,也就是容器启动时需要加载已有的数据,容器销毁时希望保留产生的数据,也就是说这类容器是有状态的。 这个就需要用到Docker的Data Volume存储机制。Data Volume本质上是Docker Host文件系统中的目录或文件,能够直接被mount到容器的文件系统。 在具体的使用上,docker提供了两张类型的volume:bind moun
3005 人浏览
iOS

IOS中的NSString与NSArray的互转

将string字符串转换为array数组 NSArray *array = [Str componentsSeparatedByString:@","];//分隔符逗号将array数组转换为string字符串 NSString *tempString = [mutableArray componentsJoinedByString:@","];//分隔符逗
3003 人浏览
xiaozhi

4.React 新特性讲解及实例(一)

本节主要讲解以下几个新的特性:ContextContextTypelazySuspense错误边界(Error boundaries)momoContext定义:Context 提供了一种方式,能够让数据在组件树中传递而不必一级一级手动传递。这定义读的有点晦涩,来看张图:假设有如上的组件层级关系,如果最底层的Item组件,需要最顶层的Window组件中的变量,那我们只能一层一层的传递下去。非常的繁
3002 人浏览
php

上传文件报413 Request Entity Too Large错误解决办法

产生这种原因是因为服务器限制了上传大小1、nginx服务器的解决办法修改nginx.conf的值就可以解决了将以下代码粘贴到nginx.conf内client_max_body_size 20M可以选择在http{ }中设置:client_max_body_size 20m; 也可以选择在server{ }中设置:client_max_body_size 20m; 还可以选择在location{
3000 人浏览
qdxw

js输入金额自动格式化

js输入金额自动格式化<script> functioncc(s){ if(/[^0-9\.]/.test(s))return"invalidvalue"; s=s.replace(/^(\d*)$/,"$1."); s=(s+"00").replace(/(\d*\.\d\d)\d*/,"$1")
2998 人浏览
cheng

使用redis遇到了 Could not connect to Redis at 127.0.0.1:6379: Connection refused 错误

遇到的问题[root@localhost ~]# redis-cli Could not connect to Redis at 127.0.0.1:6379: Connection refused not connected> 当我们直接连接 redis 时,会遇到 Could not connect to Redis at 127.0.0.1:6379: Connection ref
2998 人浏览
java

为什么80%的码农都做不了架构师?

一般来说技术团队的金字塔顶尖往往是技术最牛的人做架构师(或TL)。所以架构师在广大码农中的占比大概平均不到 20%。而架构师也可以分为初级、中级、高级,江湖上真正高水平的架构师就更少了。所以,80%码农干上许多年,还是做不了架构师,正在辛苦工作的程序员们,你有没有下面几种感觉?① 我的工作就是按时完成领导交给我的任务,至于代码写的怎样,知道有改进空间,但没时间去改进,关键是领导也不给时间啊。② 我
2996 人浏览