-
PHP航母的超级引擎发动机zend engine
PHP是最好的编程语言,这个已经成为了人们津津乐道的话题。然而关于这艘航母究竟会服役多久,它会一直航行下去吗,它的下一站会是哪里,对于这些问题,无数人有着强烈的好奇心,如果你也有的话,请继续阅读下去。25年没有熄火的秘密作为一艘已经诞生25年的航母,php似乎从来没有停航过。即使曾经史上最宏大的泰坦尼克都有过装冰山沉没的时候,然而PHP这25年来虽然航速有所下降,但是却从未停止...
-
让PHP应用性能维持在更高水平
默认情况下安装的PHP类似于在百货商店中购买的常规软件包,但它非常合适,但并不完美。调优的PHP就像是量身定制的装备。但是,应该注意的是,调优PHP只是提高PHP性能和效率的一种手段,它与不良的代码和无响应的API调用无关。php.ini文件PHP 解释器在 php.ini 文件中配置和调优,此文件的位置在不同的操作系统中是不同的,并且常规命令行对应 php.ini 和 PHP...
-
请不要在 JDK 7+ 中使用这个 JSON 包了
【Json-lib 介绍】Json-lib 是以前 Java 常用的一个 Json 库,最后的版本是 2.4,分别提供了 JDK 1.3 和 1.5 的支持,最后更新时间是 2010年12月14日。虽然已经很多年不维护了,但在搜索引擎上搜索 "Java Json" 等相关的关键词发现好像一直还有人在介绍和使用这个库。项目官网是 http://json-lib.sourcefor...
-
手把手教你实现一个 JSON 解析器
1. 背景JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。相对于另一种数据交换格式 XML,JSON 有着诸多优点。比如易读性更好,占用空间更少等。在 web 应用开发领域内,得益于 JavaScript 对 JSON 提供的良好支持,JSON 要比 XML 更受开发人员青睐。所以作为开发人员,如果有兴趣的话,还是应该深入了解一下 ...
-
顶级PHP大师的开发原则
1. 在合适的时候使用PHP – Rasmus Lerdorf没有谁比PHP的创建者Rasmus Lerdorf明白PHP用在什么地方是更合理的,他于1995年发布了PHP这门语言,从那时起,PHP就像燎原之火,烧遍了整个开发阵营,改变了互联网的世界。可是,Rasmus并不是因此而创建PHP的。PHP是为了解决web开发者的实际问题而诞生的。和许多开源项目一样,PHP变得流行,...
-
终于明白为什么要加 final 关键字了
在开发过程中,由于习惯的原因,我们可能对某种编程语言的一些特性习以为常,特别是只用一种语言作为日常开发的情况。但是当你使用超过一种语言进行开发的时候就会发现,虽然都是高级语言,但是它们之间很多特性都是不太相同的。现象描述在 Java 8 之前,匿名内部类在使用外部成员的时候,会报错并提示 “Cannot refer to a non-final variable arg ins...
-
PHP 框架 CodeIgniter 4.0 正式版发布了。
PHP 框架 CodeIgniter 4.0 正式版发布了。 “当你浏览市面上大多数的 PHP 框架时,你会发现其中大多数框架都具有某种形式的商业支持,但是对于 CodeIgniter 框架来说,是一些普普通通的开源贡献者们帮助了框架的发展,甚至在遇到一些挑战时仍在继续坚持。” 对于很多PHPer来说,CI是认知MVC的一个重要框架。CI4.0 相对与上代版本做了完全重构,在框...
-
优化PHP代码技巧总结
1、如果一个方法能被静态,那就声明他为静态的,速度可提高1/4;2、echo的效率高于print,因为echo没有返回值,print返回一个整型;3、在循环之前设置循环的最大次数,而非在在循环中;4、销毁变量去释放内存,特别是大的数组;5、避免使用像__get, __set, __autoload等魔术方法;6、requiere_once()比较耗资源;7、在includes和...
-
Python3.9又更新了:dict内置新功能,正式版十月见面
Python3.8 的热乎劲还没过去,Python 就又双叒叕要更新了。近日,3.9 版本的第四个 alpha 版已经开源。从文档中,我们可以看到官方透露的对 dict、math 等组件增加的新特性,以及下一步的开发进展。自公开了 3.8 版本后,Python 的迭代依然在继续。目前是 Python3.9,这是一个正在开发的 Python 版本。其最新的 alpha 4.0 版...
-
JDK13新特性,让开发效率更快一步
推荐阅读:闭关修炼21天,“啃完”283页pdf,我终于4面拿下字节跳动offer肺炎在家“闭关”,阿里竟发来视频面试,4面顺利拿下offerJDK13到今天已经发布快2个月了,之前有零零散散的试过一些新的特性,但却没有整体的整理一下。想到作为Java开发,连使用的JDK(Java Developerment Kit)有什么特性都不清楚,实在是有些不应该,想要进阶为更有价值的J...
-
将python功能代码生成.exe文件,离开python环境也能用
因工作需要,用python做了一个对文件夹内文件进行分类统计,生成excel表格的小程序。但前提是必须电脑安装了python。为让同事也能使用,几经摸索学习,实现了将python功能代码生成.exe文件。发到同事没装python的电脑后,双击统计表格生成,效果不错。特分享一下。功能说明文件夹内有多种文件,需对各种文件进行分类统计,生成excel表格,模拟使用效果为:《建立文件台...
-
Visual Studio引入AI: 让IntelliSense更懂你
让IntelliCode更加智能化在你敲代码的时候,你正在舒服的享受着自动完成列表所带来的编码快感,这一切都依赖着IntelliCode组件在幕后所做的辛勤工作。在之前的一篇关于IntelliCode文章中,我们解释了IntelliCode是如何通过对几千个GitHub开源项目里的代码进行机器学习,然后作出更加智能化的编码建议。对于一些类似于标准库的公共API,基于社区知识库的...
-
初学 Java Web 开发,请远离各种框架,从 Servlet 开发
Web框架是开发者在使用某种语言编写Web应用服务端项目时关于架构的最佳实践。很多Web框架是从实际的Web项目抽取出来的,仅和Web的请求和响应处理有关,形成一个基础,在开发别的应用项目的时候则可以从这个剥离出来的基础做起,让开发者更关注更具体的业务问题,而不是Web的请求和响应的控制。框架很多,但套路基本类似,帮你隐藏很多关于 HTTP 协议细节内容,专注功能开发。但对一个...
-
PHP框架之Laravel基础知识最全总结,还不快收藏
laravel框架基础知识一、laravel简介laravel是一套优雅简介的PHP开发框架,受欢迎程度非常之高,功能强大,工具齐全;今天我们一起来看看框架的基础知识二、版本选择本篇学习笔记以laravel5.2.15版本为框架的版本基础;更多版本请移步https://www.golaravel.com/三、laravel下载安装以及开发环境搭建(一):环境搭建由于larave...
-
从iPad Pro 12.9体验来谈:为什么iPad 一定要买更大的?
提示:本篇文章全程使用iPad Pro 12.9 搭配 Smart Keyboard 完成。iPad 拥有如此多的尺寸,从最小的7.9英寸iPad mini 5 到最大的iPad Pro 12.9英寸,尺寸跨度非常大,而恰好我就是从iPad mini 5 换到 iPad Pro 12.9,两款iPad 均体验了一段时间,最终得出了结论:还是大的好。接下来就结合我的使用体验来给大...
-
2020年最具人气的10大编程语言
程序员书库(ID:OpenSourceTop) 编译书单来自:https://hackr.io/blog/best-programming-languages-to-learn-2020-jobs-future当今世界最重要的技能就是学会编写程序,几乎每个行业都涉及计算机,无论是飞机上的自动驾驶仪器还是你手上戴着的智能手表,各种形式的计算机围绕着我们,就连存储和访问信息,都需要...
-
iOS 14适配机型公布,全新系统加入诸多新功能
手机系统,一直都是智能手机的“灵魂”所在。也正因如此,各大手机厂商在升级自家产品硬件之余,也不忘投入大量精力让自家的手机系统进化的更加完美。这不就在最近,一项以系统体验备受夸奖的苹果公司就在自家的iOS系统方面为大家带来的新的消息。近来 ,有关iPhone iOS 14的讯息不断涌现 ,同时鉴于iOS1 3版本更新经常出现的许多漏洞 ,比如说反复杀后台应用的现象等也是层出不穷。...
-
微信更新,简单操作关闭烦人的广告
我们在每天刷朋友圈时候,经常可以看到许多烦人的广告,有没有办法将广告关闭或减少呢?答案是肯定的。下面就看具体的关闭方法。首先要明白这里说的广告是平台自动在朋友圈展示的商品广告,非一些做微商的好友在朋友圈分享的广告。如下图所示:关闭朋友圈广告的操作步骤:1.打开微信,点击【我】,在打开的信息页面中点击【设置】,在【设置】页面中点击【关于微信】。如下图所示:2.点击【关于微信】,点...
-
PHP 可能在未来十年内消失?
犹记得,据 2001 年 7 月的 PHP 官方文档描述,“PHP 是有史以来最好的语言,没有之一。它快速,非常强大,而且免费。"不过,随着时间的迭代,不少开发者发现所谓世界上最好的语言 PHP,虽然能极大地提升性能,但是其功能不够完善最终导致 PHP 开始走上了下坡路,对此,你怎么看?作者 | Italo Baeza译者 | 孙薇,责编 | 屠敏以下为译文:自Wordpres...
-
OAuth2.0 技术选型参考
1. 前言在使用 OAuth2.0 中 Authorization Server (授权服务器)是一个回避不了的设施,在大多数情况下我们调用的是一些知名的、可靠的、可信任的第三方平台,比如 QQ、微信、微博、github 等。我们的应用只作为 Client 进行注册接入即可。也就是说我们只需要实现 OAuth2.0 客户端的逻辑就可以了,无须关心授权服务器的实现。然而有时候我们...
-
TensorFlow2.1正式版上线:最后一次支持Python2,进一步支持TPU
去年 10 月,谷歌才发布了 TensorFlow 2.0 正式版。时隔三个月后,昨日官方发布了 TensorFlow 2.1,本次版本更新带了了多项新特性、功能改进和 bug 修复。从本次更新的日志来看,TensorFlow 2.1 将成为最后一个支持 Python2 的版本了。同时,本次更新的重点是增加了对 TPU 的多项支持,而 tf.keras 和 tf.data 这两...
-
PyCharm安装与使用指导
PyCharm是目前进行python开发最受欢迎的集成开发环境。PyCharm是由JetBrains打造的一款Python IDE。带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。一、pyc...
-
YYYY-MM-DD 的黑锅,我们不背
写这篇博文是记录下跨年的bug。去年隔壁组的小伙伴就是计算两个日期之间间隔的天数,因为跨年的原因计算有误。当时测试组的小姐姐也没有模拟出来这种场景,导致上生产环境直接影响线上的数据。今天逛技术论论坛正好遇到Java日期的操作bug。1 yyyy 和 YYYY别看字,看代码输出结果:2019-12-31 转 YYYY/MM/dd 格式: 2020/12/312020-01-01 ...
-
HTTP协议之编写简单的Web服务器
HTTP即超文本传输协议(Hypertext Transfer Protocol),是Web通信所使用的协议。它是基于TCP/IP实现的协议,所以需要先了解TCP通信,本篇将使用TCP来写一个简单的Web服务器端,它可以响应浏览器的访问。通信需要服务端和客户端,在这里浏览器就属于客户端,当访问一个网页时,浏览器内部会创建套接字和服务器进行通信。服务器会响应请求返回一些HTML格...
-
Android Studio 4.0最新情报
新的 Android Studio 4.0 更换了全新的启动界面,在之前 Google I/O 中官方发布了 Android Studio 3.5 的 beta 版,一个月之后发布了 Android Studio 3.6 beta 版,而最近的 Android Dev Summit 中为我们带来了 Android Studio 4.0 预览版,今天我们就来看一下,新的 Andr...
-
java生成pdf
直入正题:所需ar包具体代码:package com.medmeeting.core;import com.itextpdf.text.*;import com.itextpdf.text.pdf.BaseFont;import com.itextpdf.text.pdf.PdfPCell;import com.itextpdf.text.pdf.PdfPTable;impor...
-
String 有多长?
1 String的形式public final class StringString类是由final修饰的,所以是不能被继承的①,我们在对字符串进行比较时,一般是期望对比其中的字符串是否一样,所以这里我们不能用"=="进行字符串的比较,而是需要使用"equals"方法②,因为使用==进行比较时,是比较的对象,只有指向同一个字符串对象的才会是true,否则就算字符串值相同也可能出...
-
5种创建Java对象的方式
在本篇文章中,将介绍5种创建Java对象的方式。类是创建对象的基本模板,接下来将介绍5种不同的方式,利用Java类来实例化Java对象。1. 使用new关键字 采用new关键字实例化对象是Java中最为常见的方法,下面是采用new关键字实例化对象的示例。在开始之前,我们先准备好一个Java类:Student.java。package com.ramostear.oops;pu...
-
分布式任务调度xxl-job
前言碎语在单机应用时期,任务调度一般都是基于spring schedule和集成quartz来实现的,当系统发展成分布式服务,应用多实例的时候,任务就会出现多次调用的问题,很多时候我们任务并不需要跑多次。解决方案有很多,最最简单粗暴的就是可以设置应用开关。其次就是集中式话任务管理调度。当然,quartz也有集群模式,但是基于api控制并不直观。下面介绍一个集中式的分布式任务调度...
-
分布式唯一ID生成器
在应用程序中,经常需要全局唯一的ID作为数据库主键。如何生成全局唯一ID?首先,需要确定全局唯一ID是整型还是字符串?如果是字符串,那么现有的UUID就完全满足需求,不需要额外的工作。缺点是字符串作为ID占用空间大,索引效率比整型低。如果采用整型作为ID,那么首先排除掉32位int类型,因为范围太小,必须使用64位long型。采用整型作为ID时,如何生成自增、全局唯一且不重复的...