![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
畅所欲言/杂谈
编程哲学家
资深PHP,擅长抽象编程,没有我实现不了的需求,没有我解决不了的问题;主导过多个成功的项目,带领过超过十人以上团队,擅长架构与程序设计、发掘业务以及解决各种各样的问题,知识面广,博学,爱智慧与思考。
展开
-
深入剖析PHP的运行原理和运行流程
PHP的工作原理和运行流程php是一门适用于web开发的动态语言,它可以说是一个用C语言实现的包含大量组件的软件框架。那么,php是如何运行的呢?它的运行原理是什么?它的执行流程是怎么样的呢?php是以请求/响应为周期运行服务端应用程序,当请求进入应用程序,流程如下:php的每一个请求都会重复以上的交互。底层分析php的运行模式有两种:web模式和cli模式。无论是哪种公众模式,php的工作原理都是一样的,都是作为一种SAPI运行。首先,认识下SAPI,它是什么?...原创 2021-07-09 20:42:12 · 1525 阅读 · 3 评论 -
垃圾文章,标题党吸引(类似八卦)一堆人点击,好好写高质量文章没人看,一篇高质量文章需要几天时间构思才能,又几天时间梳理才能写出来,结果写出来却没多人看,什么世道,现在csdn又取消了推荐卡我还有必要写
垃圾文章、标题党吸引(类似八卦)一堆人点击,好好写高质量文章没人看,一篇高质量文章需要几天时间构思才能,又几天时间梳理才能写出来,结果写出来却没多人看,什么世道,现在csdn又取消了推荐卡我还有必要写吗?像什么“破解隔壁女神的wifi”,学会uc震惊部那套了啊,你不去uc震惊部真屈了才了扬帆向海、沉默王二。去这俩傻逼博客上找素材而我很写了很多好的文章却发不出去...原创 2021-07-09 18:08:41 · 180 阅读 · 2 评论 -
在接触go之后,我发现它真的不适合写业务逻辑,更适合些中间件,中间件语言,这是谷歌给它的定位,它不是应用层语言
其实go不适合写业务,更适合写中间件,php更适合写业务原创 2021-05-28 00:36:58 · 1368 阅读 · 0 评论 -
“Go 仅是 Google 的编程语言,而不是程序员的和社区的”
包含了类 C 语法,拥有高性能、高效率且易于上手的 Go 语言,在被 Google 推出之后就受到了国内外开发者的热烈欢迎, 但是在此之际,不少程序员也纷纷开始吐槽,无论是 Go 语言的管理权还是其功能模块的更新,最终都需要取决于 Google 这位管控者,这极大地限制了 Go 的发展自由,最终他们还得出“Go 语言是 Google 的,而不是社区以及程序员”的结论。作者 | Chris Siebenmann最近,我在Twitter上看到了下面这样一个问题:很多人在讨论Go,难道我..翻译 2021-05-18 12:31:21 · 615 阅读 · 0 评论 -
to b还是to c,这是个问题
这是关于一篇产品选型,定位的文章,将深入分析:to b和to c的现在以及未来发展、前景,to b和to c那个更容易盈利,短期回笼资金,那个更好做,以及细分化发现蓝海市场原创 2021-04-14 08:54:27 · 149 阅读 · 0 评论 -
关于小公司/创业公司的技术选型、管理以及如何如何快速成长获得成功
创业的目的是赚钱,而不是玩技术。很多公司网上随便下载个二开,人家照样赚的盆满钵满玩技术是创业公司的大忌关于技术、创业以及创业公司运用管理创业阶段绝对不是追求技术的时候创业阶段最重要的就是专注业务成败在此一举了为什么他喜欢死往技术里钻,因为大公司没有给他危机感,但小公司却是完全不一样管理三要素,给予更多帮助,然后才是激励和压力创业最需要的就是多面手,一个人负责多个工作。一个人懂的越多越好大公司的用的技术和开发模式不...原创 2021-04-11 12:52:41 · 571 阅读 · 3 评论 -
闲谈招聘面试
纵观五年的职业生涯下来面试过不少人,也被不很多人面试过。做过招聘,写过JD,最忙的时候白天开发,午休的时候写招聘,看简历,约候选人,下午有面试就面试,没面试就开发,晚上整理需求、拜访客户,沟通余下的项目需求,看招职位投递的简历,跟进本组的项目进展情况,每周(本组)还要开一次会。。。现在想想那时能同时兼任做这么多事情还能忙的过来也真是年轻精力旺盛,要是现在就不一样定了。好了,回到正题,其实招聘从来不是个轻松的活,如果写出简洁、清晰明了、言简意赅的招聘信息就看你的文字工资低和文字表达能力了,还有对岗位的原创 2021-01-16 17:09:13 · 189 阅读 · 1 评论 -
由于golang语言炒的火热,我最近也花了几天时间看了下,说下我对goalng的一些看法和见解
go这与有上手的第一感觉就是这语言各方面都好原始,语言各方面都不完善、不完备.五天时间,我个人对go的一些总结:面向对象几乎处于荒漠阶段 语法松散 没有泛型 错误处理非常原始。 语法怪异既不像c系,又不像java系,语法很简短,但简短的同时又非常碎,就语法本身来说语义性并不是很强;java语法是又臭又长像写句子,非常的冗长,但语义性很强。在语法设计方面,我个人感觉很鸡肋 开发效率应该很低.语言本身提供的东西越少开发效率越低,go语言本身提供的东西非常少,毕竟是半底层语言。php之所以开发.原创 2020-12-19 18:36:11 · 209 阅读 · 2 评论 -
老生常谈,php五大运行模式
前言 吃饱了撑的睡不着,突然想谈一些php的几大运行模式,脚本语言也是非常强大滴!1、运行模式关于PHP目前比较常见的五大运行模式:1)CGI(通用网关接口 / Common Gateway Interface)2)FastCGI(常驻型CGI / Long-Live CGI)3)CLI(命令行运行 / Command Line Interface)4)Web模块模式(Apache等Web服务器运行的模式)5)ISAPI(Internet Server Applicatio.原创 2020-10-14 10:39:04 · 142 阅读 · 0 评论 -
JPHP——让PHP运行在JVM上,JVM作为php编译器的尝试
早在前几年已经有了.net core php的实现,还顺带实现了jit(详见这里),不过.net core不太受linux平台的待见,普遍对.net的印象也是只能运行在windows下,.net也是近几年才支持跨平台,可惜是事后诸葛亮,马后炮,机会、风口已经错过,市场份额早已被个语言抢占,大局已定。.net要是早在十几年前支持跨平台或许也就没有java什么事了,现在支持跨平台或许.net还有救?在探索JVM的过程中,突发奇想能不能让php运行在JVM上,结果还真找到了——JPHP。JPHP是一...原创 2020-10-10 18:16:29 · 1098 阅读 · 0 评论 -
MVC已死,是时候转向MOVE了(MVC is dead, it‘s time to MOVE on)
MVC 模式在编程中的应用,是一个很了不起的主意。“数据模型(Model)”可以封装与应用程序的业务逻辑相关的数据及对数据的处理方法;“视图层(View)”能够实现数据有目的的显示;“控制器(Controller)”能够在不同层面间起到组织作用,对应用程序的流程进行控制。 不过,可能你在使用这种三层架构模式的过程中会逐渐迷惑。因为有很多代码你不知道把它放哪,就只好把它放到控制层,最后发现在控制层中塞了太多的代码。 LinkedIn 的软件工程师Conrad Irwin也遇到同样的问题,于是他..转载 2020-08-17 12:14:26 · 152 阅读 · 0 评论 -
我发一篇信息安全和社会工程学方面的文章结合我几年在安全社工方面的积累,可csdn就是不给我通过,气死我了,花大半天的时间写出来却发不出来!!!
标题叫杂谈:无孔不入的社会工程学,可csdn就是不给我通过,审核十几次了!,气死我了,花大半天的时间写出来却发不出来!!!原创 2020-08-01 19:02:22 · 193 阅读 · 4 评论 -
Unix 40年:Unix年鉴
今年是Unix 40年的生日,这篇文章,主要是一个Unix的年鉴,其记录了40年来所有和Unix有关的里程碑事件。如果你想知道Unix的一些故事,你可以查看下面这些文章:《Unix40年:昨天,今天和明天》 《Unix传奇》上篇,下篇 《Unix的现状与未来》1956美国司法部颁布法令责成AT&T公司不得从事除了公共承运人提供的通信服务以外的一切商业活动。1969...转载 2020-02-16 14:23:17 · 178 阅读 · 0 评论 -
静态内容实现缓存的七种不同方法
在商业世界中,人们常说“现金为王”。然而,在技术世界里,我们却说“缓存为王”。 从浏览器到应用前端、应用后端、数据库,每一层都可以通过缓存来显著地提高系统的扩展能力,改善系统的响应能力,同时减少系统的负担。互联网平台上的内容可以分为静态和动态两种。静态内容指那些不经常改变的文本和图像。动态内容是指随着时间的推移,不断变化的内容。本文主要讨论静态内容实现缓存的七种不同方法。1. 利用 CDN...原创 2020-01-25 18:50:37 · 856 阅读 · 0 评论 -
写在2019年的最后一天,有感而发
又到一年的年底了,回首看自己匆忙度过的这几年,几乎所有时间都在工作、在公司、在客户那,不仅感慨自己的职业生涯,太悲催了,做的技术太容易被利用,这几年光帮别人挣的盆满钵满,自己还是苦的一笔,穷的要死。多少时间都在反思自己,我都在想为什么会这样。前两年在北京一个中大型公司做外包(非外派),做了近两年,给公司挣了300多万,但薪水一直不高(工资十几k的样子,综合下来一年各方面加起来差不多也就20多万)...原创 2020-01-24 00:54:27 · 4688 阅读 · 9 评论 -
编程语言介绍及各语言特点
C语言:是一种面向过程的语言优点:代码量小,运行速度快,功能强大第一个优点:c语言的代码量小。完成同样的功能,c语言编出来的程序容量比较小,其他语言编写容量比较大比如 Microsoft Word 和 WPS,它们同样都是办公软件,功能也差不多,但 WPS 的安装文件只有 50MB 左右,而 Microsoft Word 的安装文件超过 500MB,有的甚至接近 1GB。原因就是 WP...转载 2020-01-03 17:09:59 · 566 阅读 · 0 评论 -
浏览器内部工作原理
目录 一、介绍 二、渲染引擎 三、解析与DOM树构建 四、渲染树构建 五、布局 六、绘制 七、动态变化 八、渲染引擎的线程 九、CSS2可视模型 英文原文:How Browsers Work: Behind the Scenes of Modern Web Browsers 一、介绍 浏览器可以被认为是使用最广泛的软件,本文将介绍浏览器的工作...转载 2020-01-03 17:06:41 · 183 阅读 · 0 评论 -
【编程语言】静态语言与动态语言的本质区别以及其应用场景
从宏观的语言层面来说,编程语言类型共分为两大类:静态语言(又叫强类型语言)与动态语言(又叫弱类型语言)。静态语言通常是低级(底层)语言,动态语言一般为高级(应用)语言,静态语言运用通常是通过编译器,而动态语言解释器。动态语言动态语言即脚本语言又叫弱类型语言(严格的来说不算编程语言),依靠解释器解释运行(解释器不会做任何的代码优化的),每次运行每次解析。这样编译运行机制,让其在运行效率上...原创 2019-12-19 18:03:20 · 1549 阅读 · 0 评论 -
“心智模式”系列:你是如何看待成败的?——兼谈有效归因
上次的帖子提到了心智模式的重要性,不过那个帖子比较务虚。所以今天俺想找个具体的话题来聊聊——分析一下周围的人在是如何看待成功/失败滴?★先来看几个例子 俺一直在软件开发这个行当里混。所以先说说程序员的例子。 干咱们这行的,常碰到软件开发的延期问题。每当项目进度 delay,俺如果问相关的当事人为啥会 delay,大都会得到如下的回答:1. 搞需求的家伙太土鳖了,需求一直都...转载 2019-12-17 12:23:29 · 336 阅读 · 0 评论 -
如何完善自己的知识结构
最近一个月比较忙,积欠了不少邮件和留言没有回复,向各位表示歉意 :( 也希望大伙儿体谅,俺只是靠个人的业余时间和精力维护这个博客,随着读者的增多,难免有些应接不暇。★引子 最近几年,陆续有读者来信跟俺交流“知识管理”这个话题。也有读者在博客留言,建议俺专门为此话题写一个系列。不过捏,因为手头还有 N 多系列没有收尾,再开新的系列要激起公愤了 :) 所以,今天只单独写一篇,谈谈俺...转载 2019-12-17 12:28:42 · 357 阅读 · 0 评论 -
重构原则
一、何谓重构(What)视上下文的不同,重构有两种定义:重构(名词):对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。重构(动词):使用一系列重构的手法,在不改变软件可观察行为的前提下,调整其结构。1、重构的目的是使软件更容易被理解和修改。2、重构不会改变软件的可观察的行为——重构之后软件的功能一如以往。在使用重构技术开发...原创 2019-12-09 18:03:43 · 697 阅读 · 1 评论 -
写给程序员的n+1条建议
前言为什么叫n+1条建议呢?因为更多的是写给自己,同时分享给他人,而且不只是工作,还有生活上面的个人体会,会持续更新,哈哈哈哈哈~嗝建议 不要抱怨加班 互联网加班是常态,研究表明,人的大脑很少因为工作的繁忙而真正的感到疲倦,更多的是消极情绪,所以我们如果希望加班早点结束,应该让自己开心起来,真正的喜欢上加班正在做的事情,否则将是恶性循环。那么如何让自己喜欢上加班时候的重复劳动...转载 2019-12-16 09:33:45 · 225 阅读 · 1 评论 -
大型网站seo怎么做?大型网站优化需注意的6个方面
任何一个网站,无论规模大小,都要建立在seo基础上。对于大型网站而言,良好的底层优化可以增加页面索引量和有机可见性。“大型网站”的定义无疑会因个人观点的不同而有所不同,但就本文的目的而言,我指的是拥有数十万个url的网站。为什么大型网站seo难做?首先,这些站点的规模意味着基本技术错误的存在可能会成倍增加,随着时间的推移,这些问题可能会降低站点的整体质量,并导致索引和可见性问题。其...原创 2019-12-14 10:33:06 · 627 阅读 · 0 评论 -
如何规划你的软件版本号
语义化版本 2.0.0摘要版本格式:主版本号.次版本号.修订号,版本号递增规则如下:主版本号:当你做了不兼容的 API 修改, 次版本号:当你做了向下兼容的功能性新增, 修订号:当你做了向下兼容的问题修正。先行版本号及版本编译元数据可以加到“主版本号.次版本号.修订号”的后面,作为延伸。简介在软件管理的领域里存在着被称作“依赖地狱”的死亡之谷,系统规模越大,加入的包越多,...转载 2019-12-10 11:49:25 · 916 阅读 · 0 评论 -
浏览器运行原理
一、浏览器简介浏览器是指可以显示网页服务器或者文件系统的HTML文件(标准通用标记语言的一个应用)内容,并让用户与这些文件交互的一种软件。浏览器的主要功能就是向服务器发出请求,在浏览器窗口中展示您选择的网络资源。这里所说的资源一般是指 HTML 文档,也可以是 PDF、 图片或其他的类型。 资源的位置由用户使用URI(统一资源标符)指定。多年以来,各浏览器都没有完全遵从这些规范,同时还在开...原创 2019-12-10 10:29:24 · 363 阅读 · 1 评论 -
Web(万维网)发展简史
静态网页的诞生1989年,在欧洲粒子物理实验室(粒子物理研究通常与来自世界各地的研究所进行合作)的IT部门工作的Tim Berners-Lee向其领导提出了一项名为Information Management: A Proposal的提议:使来自世界各地的远程站点的研究人员能够组织和汇集信息,在个人计算机上访问大量的科研文献,并建议在文档中链接其他文档,这就是Web的原型。1990年,...原创 2019-12-10 10:28:28 · 3780 阅读 · 0 评论 -
过早的优化是万恶之源?
代码优化的好处多多,但是这并不意味着所有的代码都需要进行优化,有时过度的优化反而适得其反——费时、费力、不讨好。“现代计算机科学的鼻祖”Donald Knuth曾说过“过早的优化是万恶之源”,因为:让正确的程序更快,要比让快速的程序正确容易得多。在项目开发中,总是有程序员浪费宝贵的时间去改进那些不需要改进的代码,而没有通过所做的改进增加价值。在对项目进行优化时,究竟哪些地方应该优化,应该如...转载 2019-12-09 18:06:14 · 537 阅读 · 0 评论