导航:首页 > 编程语言 > php技术路线

php技术路线

发布时间:2022-12-22 11:51:16

1. 成为系统设计工程师或软件设计工程师,需要什么知识基础会C++,MFC,Oracle,SQL,PS,将学javaphp

系统设计工程师的要求比较高。一般是主持总体的架构和风格的。要懂技术和管理。
软件设计工程师看你走哪一条技术路线。选定技术路线了就知道你要学什么了。
比如Java、PHP是两条不同的技术路线。
如果要学B/S程序的话,前端的HTML、CSS和Javascript是要学的。
HTTP的知识也要掌握。
数据库任选一两种,大概流行哪些可以问网络。
其它……入行了自己就了解了。

2. php工程师发展方向

php工程师有两个发展路线,分别是技术路线和领导路线。如果是技术路线,需要对开发有狂热的兴趣,能够从代码的编写中认识到设计与软件架构的重要性,对软件设计乐此不疲,可以走技术讲阶路线,由初级工程师到高级工程师为归宿。

3. 零基础学习PHP如何入门

其实学习PHP只要把握好学习路线,能够在极短的时间里完成从新手到熟练的过程。在这里,小编为大家整理出了学习PHP的路线和具体的课程。

  1. 入门:新人必看的PHP基础知识视频教程

    可掌握PHP基础知识,了解PHP的基本语法、数组、函数、表单验证、图像处理,以及MySQL数据库等PHP开发过程中所遇到的知识点和基本操作。

  2. 进阶:PHP如何操作MySQL数据库视频教程

    利用PHP操作MySQL数据库教程,MySQL是PHP最合适的搭配,MYSQL开源、跨平台,PHP扩展包对MySQL的支持比较完善。本课程讲解MySQL数据库的基础知识,以及如何利用PHP来操作MySQL数据库,实现对数据的调用和修改。

  3. 实战:PHP项目实战_多用户留言系统视频教程

    利用PHP基础课程中的知识,在本课程中创建多用户留言系统,包括用户界面设计,注册,验证,帖子的写入、修改等留言系统的必备功能。

  4. 进阶:PHP进阶之面向对象相关视频教程

    学习和了解开发独立的模板引擎技术,学习三层架构及分层思想和原理,然后通过后面的CMS内容管理系统等课程的实践来掌握以上知识点。

  5. 进阶:PHP进阶之CMS内容管理系统

    CMS内容管理系统具有许多基于模板的优秀设计,可以加快网站开发速度和开发成本,同时易于使用,可开发性强,可分布式管理,CMS的功能并不只限于文本处理,它也可以处理图片、Flash动画、声像流、图像、甚至电子邮件档案等。

  6. ThinkPHP框架讲解视频教程

    ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性,并且拥有众多原创功能和特性。理解ThinkPHP的框架基础知识,安装配置,模型的建立、开发及调试。学习ThinkPHP3.2.1的使用方法。

  7. 作为一个新手,学习PHP语言需要有学习一门新语言的心态,注意不骄不躁,步步为营,按照方法和步骤去学习,由浅入深的接触。

4. 工程企业用什么软件管理好

1.九思软件
1) 技术路线:J2EE标准,纯JAVA路线。
2) 主要优势:
公司是东软、浪潮、中软、神码、联通、移动等大公司的OA战略合作商。
产品成功率比较高,获得“中国管理软件项目成功率第一品牌”奖项。
定位高端市场,获得“中国高端协同办公系统第一品牌”称号,客户如:光大银行、中电广通、焦煤集团、中国电子器材总公司。
3) 主要劣势:
各地虽部署了分支机构,但依赖直销,渠道工作启动较晚。
2. 慧点科技
1) 技术路线:LOTUS标准,Domino路线。
2) 主要优势:
作为IBM的LOTUS平台伙伴,公司专注钢铁、航空等行业应用整体解决方案。
行业影响力强:2011中国软件和信息技术服务业最具影响力的行业品牌。
定位高端市场,客户如:中钢、首都机场等。
3) 主要劣势:
只有5个分支机构,项目化方式,完全依赖直销。
技术路线落后,技术体系封闭,平台费用高。
3. 金和软件
1) 技术路线:微软平台,.net路线。
2) 主要优势:
公司品牌运作能力强,擅长精确管理培训课程。
行业影响力强:中国管理软件百强厂商。
定位迁移:从9800元的低端产品,逐步向中高端市场迁移,渠道布局广泛。
3) 主要劣势:
产品验收周期长,产品与理念脱节严重。
技术落线适合中小企业,以.NET为主,JAVA新启动不成熟,公司盈利能力弱。
4. 用友致远
1) 技术路线:以JAVA路线为主。
2) 主要优势:
借助用友品牌、分公司和渠道资源,业务覆盖面广。
市场占有率高:连续六年中国协同应用软件市场年度成功企业。
定位全覆盖:从几千元的A3、几万元的A6、十几万的A8企业版、到几十万的A8集团版全覆盖。
3) 主要劣势:
核心功能工作流较弱。
大用户的支撑能力较弱。
5. 通达科技
1) 技术路线:以PHP为主。
2) 主要优势:
产品价格低廉。
客户数量多:网站上宣布已经有上万个客户。
定位低端客户:主要面向几千元到几万元的低端客户。
3) 主要劣势:
技术落线落后,产品核心功能薄弱。
具有网络销售和渠道销售能力,但各地缺少本地化的服务机构和直销能力。
6. 泛微网络
1) 技术路线:PHP和JAVA两条路线。
2) 主要优势:
界面设计美观、协同理念强大、功能模块众多。
品牌知名度高:中国最具竞争力科技型中小企业100强。
定位模糊:PHP和JAVA产品线多条,从中小客户到中大型客户都有对应。
3) 主要劣势:
易用性很差,很难学习和掌握。
可用性功能少,实施难度大,服务成本高。[8]
7.华天动力
1)技术路线:纯JAVA路线。
2)主要优势:
工作流管理、统计报表、开放平台三大核心技术领先业界。
易用性、实用性在业内非常领先。
性价比极高:高端性能、中低端价格。
所有版本统一服务和升级,可以平滑升级。
3)主要劣势:
品牌知名度略低,用户认知度不够高。
项目管理的功能不够强大。
OA办公系统遍地开花,各说各的好,各有各的理。乱花丛中如何慧眼识英雄,明辨高与低,找出最适合自己的那个“高帅富”[9]?
8.协众软件
1、技术路线:PHP开发。
2、主要优势:
产品针对移动端、多客户端设计了独立的技术架构,能够支撑未来的组织运行管控,拥有强大的工作流和引领未来的系统组织发展。是一套成熟稳定、简单易用、高性能、高性价比的中小企业管理系统。
3、主要劣势:
公司宣传力度不大,导致潜在客户对系统认识度不够错过这套系统。
产品研发主要针对中小企业,大型企业使用须拓展一些功能

5. 给创业者的建议:创业公司如何确定技术路线

如果是一个纯粹的技术问题,那么很可能会一直争论不休,最后的结果就像某个笑话里面说的,某公司一直到倒闭技术路线还没统一。因此,本文不会向你推荐任何一个具体的技术方案。 给非技术出身创业者的建议 以前做技术咨询时,我们经常会遇到一些非技术出身的创业者,他们往往对好的技术人员非常渴求。但对如何找到好的技术人员,如何吸引技术人员加入,他们却束手无策。在我创业的这两年,这点得到了充分的印证,我可以轻松地劝喜欢的技术人员加入,但要找到好的设计师并说服他们加盟太难。各种人才都有自己的圈子、文化和行为方式,他人很难融入。 对于非技术出身的创业者,我的建议是,尽量使用开源系统、现成的解决方案。虽然技术人员往往对Discuz!、UcHome甚至WordPress等现成的系统颇有微词,但对于没有技术背景的创业者,这些系统是最好的切入点。 我见过一些非常成功的团队,创始人完全不懂技术,但对产品、运营、营销非常在行,他们的网站全部采用开源系统,没有任何的改动,只是找了设计师对样式做了修改。网站的流量、用户满意度都非常不错。因为没有任何先行的开发,所以网站可以很快正式上线,而且大多数程序的开源系统,也都有较强的自定义能力,仔细琢磨下就可以玩出很多花样。 这时就需要考虑引入一个好的技术带头人,建立自己的技术路线。通常也会有一番波折,但这也是种甜蜜的烦恼,因为不发展到一定程度,根本不需要考虑。发展到这样的程度,公司的现金储备和知名度都有了很大的提升,招人也就会容易一些。 给技术出身的创业者的建议 激进的技术路线 很多人喜欢激进的技术路线,比如用Erlang、Go等语言做项目,而公司全部员工几乎都是初学者。又或者有人在iOS第一代SDK出现时就投身App Store。 有时,有些功能或产品只有激进的技术路线才能解决,较早使用先进技术可以获得技术优势和壁垒,在一般网站都使用SQL Like语句做全文搜索时,如果你率先使用Lucene/Sphinx等开源搜索引擎,那么就会在性能和效果上有非常明显的优势。技术发展非常快,但普及非常慢。在2001年开发出Lucene第一个版本后不久,国内的技术人员就开始写文章和学习笔记介绍它,但到了2008年,国内很多中型网站的全文搜索仍在使用SQL Like语句,很多技术人员明知这样耗费服务器资源很严重,甚至会拖垮服务器,但也不会改用Lucene。 有时,激进的技术路线可以帮助你在新兴市场占领先机。前两年苹果App Store刚刚出现,软件比较缺乏,所以只要产品质量尚可就可以获得很多用户,从而获得不菲的收入。现在开发者想做出被市场认可的产品非常难,而那些进入早的产品则可以靠早期积累下的用户稳定可靠地发展。 激进的技术路线的另一个好处是,可以作为人才过滤器。如果公司使用的技术刚出现或者刚开始流行,那么愿意尝试甚至可以用好这种技术的人,往往是善于学习、不怕麻烦的。这是技术团队里面最喜欢的一种人。 但激进的技术路线不是谁都可以玩得转的。如果想采用激进的技术路线,往往需要技术带头人是所选技术的专家,可以在技术方面辅导团队成员。同时不能让先进技术成为技术带头人的独门绝技,这样的团队是不健康的。 沉稳的技术路线 对这样的团队来说,我建议采用沉稳的技术路线。简单地说,就是采用技术带头人或者团队成员都熟悉的技术,一切从实用出发。 首先,招人变得相对容易。到目前为止iOS程序员的价格仍旧是居高不下,且非常难以招到高质量的。与之相对,C#程序员、PHP程序员、Java程序员就相对便宜和好招多了。同时,可以选择的现成技术解决方案也多了,就PHP、.NET、Java等语言来说,开源的论坛、CMS系统都非常多。 以Java为例,之前是一门新兴语言,存在的最大问题是各种第三方库的匮乏。但这些年发展下来,以Apache基金会、IBM等为代表的机构,积累了大量的开源库,如Lucene家族等。 再以PHP为例,PHP早期就是以快速开发、简单易用而闻名的,在大规模计算和性能上并不占有优势,特别是脚本的运行方式带来了一些对象生命周期以及性能的问题。但作为PHP用户社区的成员,LiveJournal创造了Memcache解决了缓存生命周期,Facebook创建了HipHop for PHP大大提高了性能。 所以我们不仅可以在理论上说,没有坏的平台,只有坏的架构师,也可以从实践上说,现在几乎每个主流开发平台,都有一些世界级的优秀网站背书。而且在互联网时代,其他公司的经验很容易借鉴。 因此,采用技术带头人或者团队成员都熟悉的技术路线,积极了解社区动态,大多数公司就可以应对技术上面遇到的问题。对于乐于学习的团队而言,现在是最好的时代。

6. PHP程序员前途发展方向

PHP程序员前途发展方向

首先你要明白,PHP程序员前途有两条进阶路线。一条是技术路线,由程序员,经系统分析师、系统设计师直到架构设计师为归宿。而另一条php程序员发展方向是领导路线,由程序员,经开发小组负责人、工程负责人,奋斗到项目经理。
如果你还不是一名程序员,你是否在为是否从事程序员工作而挣扎呢?
如果你已经是一名程序员,你是否在为程序员的前途而感到迷茫呢?
如果是,我可以告诉你,做程序员是有前途的!
从程序员的角度,可以发现更好的方向,IT(IT教育 IT培训 )业不断有新东西出现。用J系列语言比用C系列语言更时尚,用面向对象(或构件)的方法比面向过程的方法更先进,还有Delphi、.NET(.NET培训 )、eLearning等开发工具,更有ERP(企业资源计划(ERP)培训 )(企业资源计划)、CRM(客户关系管理)、SCM(供应链管理)、CPC(协同产品商务)、BIS(商业智能系统)、EAI(企业应用集成)、EIP(企业信息门户)等层出不穷的新概念。如果你能不断与时俱进,追着新东西走,可以极大的'锻炼你的学习能力,分析问题的能力和解决问题的能力。
从社会的角度来讲,社会对程序员的定位是满足技术需求,程序员自身所受的教育和积累的经验也使自主前程意识局限于技术路线。实际上,我们所看到的在技术方面有建树的前辈多是综合型的人才,单纯局限于技术思维的多有行为局限,也难看出自身的幸福感。其实,人有多方面的属性,除非你是极少数的天才,在某一方面特别突出(相应地在其它方面就很脆弱),大多数人是多种属性综合发展,而且各属性间相互促进。所以,在考虑程序员的前程时,有必要分析程序员的主要属性及其可能产生的影响。
当你把程序当作异物看待时,编程是一种负担,是劳累的事儿,是极其厌恶的事。如果能把编程当成一种兴趣,一种爱好。这样你就会不断努力,不断学习新知识,把程序作为人生奋进的载体,创造性地使用程序,并且能影响到其它领域。
php程序员前途很大,做程序员最需要的就是熬得住找准php程序员发展方向,有时候你努力了很长一段时间可能一点好的结果都没有这是很正常的。所以就看你的耐心怎么样。如果你仅仅是有激情,想进入这个行业尝试,那做为前辈来说我还是奉劝你打消这个念头,到IT里面做程序设计是很辛苦的,很多时候你脑子里想的只有代码,其他的都不记得了。生活不规律,睡眠不足这些都是家常便饭。所以,如果你想进来,那请你做好充分的思想准备,很多只有激情的年轻人,最后都是以放弃告终的,千万要想好,半途而废只会浪费光阴。最后,做程序员是有前途的,这个前途不是停止在程序员上,而是不断的往上走,比如成为工程师、架构师、分析师等,这些才是更高的你需要去奋斗的目标,千万不要只做底层的程序员,不然就停止进步了。

;

7. 如何学习php

最简单的就是网上自学
但是这样自律性要求很强
而且能力也要强
建议去报一些培训班之类的
然后找份工作慢慢深造

8. php视频教程

好的php视频教程我个人推荐IT学习联盟的《零基础php就业班》,它是一套完整的php教程。这套教程从零基础开始教起,零基础到就业水平,没有基础的人也可以学习这套教程。
………………………………………………………………………………
关于如何学习php,我刚才看到一篇很不错的文章,是一个专科生介绍自己如何自学php,并找到php的工作,里面介绍了他的学习方法和学习过程,希望对你有帮助。
先做个自我介绍,我07年考上一所很烂专科民办的学校,学的是生物专业,具体的学校名称我就不说出来献丑了。09年我就辍学了,我在那样的学校,一年学费要1万多,但是根本没有人学习,我实在看不到希望,我就退学了。
退学后我也迷茫,大专都没有毕业,我真的不知道我能干什么,我在纠结着我能做什么。所以辍学后我一段时间,我想去找工作,因为我比较沉默寡言,不是很会说话,我不适合去应聘做业务。我想应聘做技术的,可是处处碰壁。
一次偶然的机会,我才听到php这个行业。那天我去新华书店,在计算机分类那边想找本书学习。后来有个女孩子走过来,问我是不是读计算机的,有没有兴趣学习php,然后给我介绍了一下php现在的火热情况,告诉我学php多么的有前景,给我了一份传单,php培训的广告。听了她的介绍,我心里痒痒的,确实我很想去学会一门自己的技术,靠自己的双手吃饭。
回家后,我就上网查了下php,确实是当今比较热门的行业,也是比较好找工作的,工资也是相对比较高。我就下决心想学php了。于是我去找php培训的相关信息,说真的,我也很迷茫,我不知道培训是否真的能像他们宣传的那样好,所以我就想了解一段时间再做打算。
后来,我在网络知道看到一篇让我很鼓舞的文章是一个php高手介绍没有基础的朋友怎么自学入门学php,文章写的很好,包含了如何学习,该怎么学习。他提到一个方法就是看视频,因为看书实在太枯燥和费解的,很多我们也看不懂。这点我真的很认同,我自己看书往往看不了几页。
我在想,为什么别人都能自学成才,我也可以的!我要相信自己,所以我就想自学,如果实在学不会我再去培训。
主意一定,我就去搜索php的视频,虽然零星找到一些php的视频,但是都不系统,我是想找一个能够告诉我该怎么学的视频,一套从入门到精通的视频,一个比较完整的资料,最好能有老师教,不懂可以请教的。
后来我又找到一份很好的视频,是在IT学习联盟推出的一份视频《零基础php就业班》(喜欢《零基础php就业班》的可以复制 t.cn/8s1Z7Of 粘贴浏览器地址栏按回车键即打开)。里面的教程还不错,很完整,还赠送10个顶级企业项目。
下面介绍下我的学习流程,希望对和我一样完全没有基础的朋友有所帮助。
收到他们寄过来的光盘后,我就开始学习了,由于我没有什么基础,我就从最简单的Html/css/javascript视频教程学起,话说简单,其实我还是很多不懂的,只要重复多看几遍,就能看懂。Html/css/javascript我差不多学了一个礼拜,接下来我就学了PHP基础和Mysql数据库,差不多也就三个礼拜。我每天都在不停的写一些简单的代码,这样一月后我基本掌握了php的全部基础。
接下来开始学习php高级课程,老师幽默风趣而又轻松的课堂教课,使我发现原来学习php并不是一件很难的事情。之前我把php基础学得还不错,到了到了php高级部分,我觉不又不是很难,可能老师太牛了,他能把复杂的问题讲的比较通俗易懂,有些难点的地方我还是连续看了五六次,把他弄懂。每天下午6点下班后,吃了饭,马上跑回家。看视频,买了几本笔记本。当时,为了编程还花几百元了台二手的台式电脑,配置一般,但编程是足够的。一边看视频,一边记笔记,把重点都记下来,还一边跟着老师敲代码,为了能尽早学会php。每天都坚持学5-6个小时。经常学到晚上一点多才睡觉。星期六,日不用上班,每天7点多起床,学到晚上11,12点。那段时间特别辛苦,特别累。在学习php的三个多月里,除了吃饭睡觉工作,剩余的时间都在学习,因为我知道自己的计算机基础不是很好,也没有学过什么计算机,相对于那些科班的人来说我要比他们付出更多的努力。我只能咬紧牙关,坚持下去,我不能放弃,我要完成我的梦想,我要让我的家人过上好日子。终于三个多月后我把php教程里的内容和项目都学完了,在学项目的过程中我发现项目特别重要,他能把你学过的知识全部联系起来,能更好的理解你所学的知识。还有学习过程中,动手很重要,要经常跟着老师动手敲,动手吧,跟着做,一行一行的跟着敲,再试着加一些自己的功能,按照自己的思路敲一些代码,收获远比干听大的多。 如果遇到暂时对于一些思路不能理解的,动手写,先写代码,慢慢你就会懂了。这套视频还赠送了10个顶级企业项目,对于我没有任何经验的人来说,这个太重要了,还有在学习项目是提升能力最快的方法。项目能把所有的知识点全都连到一起了,不再是分散的,而是形成一个整体了。那种感觉是仅仅深入钻研知识点而不写真实项目的人所不能体会的。一个项目就是一根绳子可以把大片的知识串到一起。 就这样,我用了两个月也把项目给学完了。其实学完教程差不错就达到就业水平,但是我可能觉得自己学历低还是把那10个顶级企业项目才去找工作。
于是我就到51job疯狂的投简历,因为我学历的问题,专科没有毕业,说真的,大公司没有人会要我,所以我投的都是民营的小公司,我希望自己的努力有所回报。没有想过几天过后,就有面试了,但是第一次面试我失败了,虽然我自认为笔试很好,因为我之前做了准备,但是他们的要求比较严格,需要有一年的项目经验,所以我没有被选中。
后来陆续面试了几家公司,终于功夫不负有心人。我终于面试上的,是在闵行的一家民营的企业,公司规模比较小,我的职务是php开发程序员,但我也比较满足,开的工资是3500一个月,虽然我知道在上海3500只能过温饱的生活,但是我想我足够了。我至少不用每天都要靠父母养,我自己也能养活自己的。我想只要我继续努力,我工资一定会翻倍的。
把本文写出来,希望能让和我一样的没有基础的朋友有信心,其实我们没有必要自卑,我们不比别人笨,只要我们肯努力,我们一样会成功。

……………………………………………………………………

希望你未来成为出色的php工程师。

9. php新手学习路线是怎样的

第一阶段:基础阶段(基础PHP程序员)

重点:把LNMP搞熟练(核心是安装配置基本操作) 目标:能够完成基本的LNMP系统安装,简单配置维护;能够做基本的简单系统的PHP开发;能够在PHP中型系统中支持某个PHP功能模块的开发。

时间:完成本阶段的时间因人而异,有的成长快半年一年就过了,成长慢的两三年也有。

  1. Linux

    基本命令、操作、启动、基本服务配置(包括rpm安装文件,各种服务配置等);会写简单的shell脚本和awk/sed 脚本命令等。

  2. Nginx

    做到能够安装配置nginx+php,知道基本的nginx核心配置选项,知道 server/fastcgi_pass/access_log 等基础配置,目标是能够让nginx+php_fpm顺利工作。

  3. MySQL

    会自己搭建mysql,知道基本的mysql配置选项;知道innodb和myisam的区别,知道针对InnoDB和MyISAM两个引擎的不同配置选项;知道基本的两个引擎的差异和选择上面的区别;能够纯手工编译搭建一个MySQL数据库并且配置好编码等正常稳定运行;核心主旨是能够搭建一个可运行的MySQL数据库。

  4. PHP

    基本语法数组、字符串、数据库、XML、Socket、GD/ImageMgk图片处理等等;熟悉各种跟MySQL操作链接的api(mysql/mysqli/PDO),知道各种编码问题的解决;知道常规熟练使用的PHP框架(ThinkPHP、Zendframework、Yii、Yaf等);了解基本MVC的运行机制和为什么这么做,稍微知道不同的PHP框架之间的区别;能够快速学习一个MVC框架。能够知道开发工程中的文件目录组织,有基本的良好的代码结构和风格,能够完成小系统的开发和中型系统中某个模块的开发工作。

  5. 前端

    如果条件时间允许,可以适当学习下 HTML/CSS/JS 等相关知识,知道什么web标准,div+css的web/wap页面模式,知道HTML5和HTML4的区别;了解一些基本的前端只是和JS框架(jQuery之类的);了解一些基本的JavaScript编程知识;(本项不是必须项,如果有时间,稍微了解一下是可以的,不过不建议作为重点,除非个人有强烈兴趣)。

  6. 系统设计

    能够完成小型系统的基本设计,包括简单的数据库设计,能够完成基本的:浏览器 -> Nginx+PHP -> 数据库 架构的设计开发工作;能够支撑每天几十万到数百万流量网站的开发维护工作;

    第二阶段:提高阶段 (中级PHP程序员)

    重点:提高针对LNMP的技能,能够更全面的对LNMP有熟练的应用。 目标:能够随时随地搭建好LNMP环境,快速完成常规配置;能够追查解决大部分遇到的开发和线上环境的问题;能够独立承担中型系统的构架和开发工作;能够在大型系统中承担某个中型模块的开发工作。

    1. Linux

    在第一阶段的基础上面,能够流畅的使用Shell脚本来完成很多自动化的工作;awk/sed/perl 也操作的不错,能够完成很多文本处理和数据统计等工作;基本能够安装大部分非特殊的Linux程序(包括各种库、包、第三方依赖等等,比如MongoDB/Redis/Sphinx/Luncene/SVN之类的);了解基本的Linux服务,知道如何查看Linux的性能指标数据,知道基本的Linux下面的问题跟踪等。

    2. Nginx

    在第一阶段的基础上面,了解复杂一些的Nginx配置;包括 多核配置、events、proxy_pass,sendfile/tcp_*配置,知道超时等相关配置和性能影响;知道nginx除了web server,还能够承担代理服务器、反向静态服务器等配置;知道基本的nginx配置调优;知道如何配置权限、编译一个nginx扩展到nginx;知道基本的nginx运行原理(master/worker机制,epoll),知道为什么nginx性能比apache性能好等知识。

    3. MySQL/MongoDB

    在第一阶段的基础上面,在MySQL开发方面,掌握很多小技巧,包括常规SQL优化(group by/order by/rand优化等);除了能够搭建MySQL,还能够冷热备份MySQL数据,还知道影响innodb/myisam性能的配置选项(比如key_buffer/query_cache/sort_buffer/innodb_buffer_pool_size/innodb_flush_log_at_trx_commit等),也知道这些选项配置成为多少值合适;另外也了解一些特殊的配置选项,比如 知道如何搭建mysql主从同步的环境,知道各个binlog_format的区别;知道MySQL的性能追查,包括slow_log/explain等,还能够知道基本的索引建立处理等知识;原理方面了解基本的MySQL的架构(Server+存储引擎),知道基本的InnoDB/MyISAM索引存储结构和不同(聚簇索引,B树);知道基本的InnoDB事务处理机制;了解大部分MySQL异常情况的处理方案(或者知道哪儿找到处理方案)。条件允许的情况,建议了解一下NoSQL的代表MongoDB数据库,顺便对比跟MySQL的差别,同事能够在合适的应用场景安全谨慎的使用MongoDB,知道基本的PHP与MongoDB的结合开发。

    4. Redis/Memcached

    在大部分中型系统里面一定会涉及到缓存处理,所以一定要了解基本的缓存;知道Memcached和Redis的异同和应用场景,能够独立安装 Redis/Memcached,了解Memcahed的一些基本特性和限制,比如最大的value值,知道PHP跟他们的使用结合;Redis了解基本工作原理和使用,了解常规的数据类型,知道什么场景应用什么类型,了解Redis的事务等等。原理部分,能够大概了解Memcached的内存结构(slab机制),redis就了解常用数据类型底层实现存储结构(SDS/链表/SkipList/HashTable)等等,顺便了解一下Redis的事务、RDB、AOF等机制更好。

    5. PHP

    除了第一阶段的能力,安装配置方面能够随意安装PHP和各种第三方扩展的编译安装配置;了解php-fpm的大部分配置选项和含义(如max_requests/max_children/request_terminate_timeout之类的影响性能的配置),知道mod_php/fastcgi的区别;在PHP方面已经能够熟练各种基础技术,还包括各种深入些的PHP,包括对PHP面向对象的深入理解/SPL/语法层面的特殊特性比如反射之类的;在框架方面已经阅读过最少一个以上常规PHP MVC框架的代码了,知道基本PHP框架内部实现机制和设计思想;在PHP开发中已经能够熟练使用常规的设计模式来应用开发(抽象工厂/单例/观察者/命令链/策略/适配器 等模式);建议开发自己的PHP MVC框架来充分让开发自由化,让自己深入理解MVC模式,也让自己能够在业务项目开发里快速升级;熟悉PHP的各种代码优化方法,熟悉大部分PHP安全方面问题的解决处理;熟悉基本的PHP执行的机制原理(Zend引擎/扩展基本工作机制)。

    6. C/C++

    开始涉猎一定的C/C++语言,能够写基本的C/C++代码,对基本的C/C++语法熟悉(指针、数组操作、字符串、常规标准API)和数据结构(链表、树、哈希、队列)有一定的熟悉下;对Linux下面的C语言开发有基本的了解概念,会简单的makefile文件编写,能够使用简单的GCC/GDB的程序编译简单调试工作;对基本的网络编程有大概了解。(本项是为了向更高层次打下基础)。

    7. 前端

    在第一阶段的基础上面,熟悉基本的HTTP协议(协议代码200/300/400/500,基本的HTTP交互头);条件允许,可以在深入写出稍微优雅的HTML+CSS+JavaScript,或者能够大致简单使用某些前端框架(jQuery/YUI/ExtJS/RequireJS/BootStrap之类);如果条件允许,可以深入学习JavaScript编程,比如闭包机制、DOM处理;再深入些可以读读jQuery源码做深入学习。(本项不做重点学习,除非对前端有兴趣)。

    8. 系统设计

    能够设计大部分中型系统的网站架构、数据库、基本PHP框架选型;性能测试排查处理等;能够完成类似:浏览器 -> CDN(Squid) -> Nginx+PHP -> 缓存 -> 数据库 结构网站的基本设计开发维护;能够支撑每天数百万到千万流量基本网站的开发维护工作;

    第三阶段:高级阶段 (高级PHP程序员)

    重点:除了基本的LNMP程序,还能够在某个方向或领域有深入学习。(纵深维度发展) 目标:除了能够完成基本的PHP业务开发,还能够解决大部分深入复杂的技术问题,并且可以独立设计完成中大型的系统设计和开发工作;自己能够独立hold深入某个技术方向,在这块比较专业。(比如在MySQL、Nginx、PHP、Redis等等任一方向深入研究)

    1. Linux

    除了第二阶段的能力,在Linux下面除了常规的操作和性能监控跟踪,还能够使用很多高级复杂的命令完成工作(watch/tcpmp/starce/ldd/ar等);在shell脚本方面,已经能够编写比较复杂的shell脚本(超过500行)来协助完成很多包括备份、自动化处理、监控等工作的shell;对awk/sed/perl 等应用已经如火纯青,能够随意操作控制处理文本统计分析各种复杂格式的数据;对Linux内部机制有一些了解,对内核模块加载,启动错误处理等等有个基本的处理;同时对一些其他相关的东西也了解,比如NFS、磁盘管理等等;

    2. Nginx

    在第二阶段的基础上面,已经能够把Nginx操作的很熟练,能够对Nginx进行更深入的运维工作,比如监控、性能优化,复杂问题处理等等;看个人兴趣,更多方面可以考虑侧重在关于Nginx工作原理部分的深入学习,主要表现在阅读源码开始,比如具体的master/worker工作机制,Nginx内部的事件处理,内存管理等等;同时可以学习Nginx扩展的开发,可以定制一些自己私有的扩展;同时可以对Nginx+Lua有一定程度的了解,看看是否可以结合应用出更好模式;这个阶段的要求是对Nginx原理的深入理解,可以考虑成为Nginx方向的深入专业者。

    3. MySQL/MongoDB

    在第二阶段的基础上面,在MySQL应用方面,除了之前的基本SQL优化,还能够在完成一些复杂操作,比如大批量数据的导入导出,线上大批量数据的更改表结构或者增删索引字段等等高危操作;除了安装配置,已经能够处理更多复杂的MySQL的问题,比如各种问题的追查,主从同步延迟问题的解决、跨机房同步数据方案、MySQL高可用架构等都有涉及了解;对MySQL应用层面,对MySQL的核心关键技术比较熟悉,比如事务机制(隔离级别、锁等)、对触发器、分区等技术有一定了解和应用;对MySQL性能方面,有包括磁盘优化(SAS迁移到SSD)、服务器优化(内存、服务器本身配置)、除了二阶段的其他核心性能优化选项(innodb_log_buffer_size/back_log/table_open_cache/thread_cache_size/innodb_lock_wait_timeout等)、连接池软件选择应用,对show *(show status/show profile)类的操作语句有深入了解,能够完成大部分的性能问题追查;MySQL备份技术的深入熟悉,包括灾备还原、对Binlog的深入理解,冷热备份,多IDC备份等;在MySQL原理方面,有更多了解,比如对MySQL的工作机制开始阅读部分源码,比如对主从同步(复制)技术的源码学习,或者对某个存储引擎(MyISAM/Innodb/TokuDB)等等的源码学习理解,如果条件允许,可以参考CSV引擎开发自己简单的存储引擎来保存一些数据,增强对MySQL的理解;在这个过程,如果自己有兴趣,也可以考虑往DBA方向发展。MongoDB层面,可以考虑比如说在写少读多的情况开始在线上应用MongoDB,或者是做一些线上的数据分析处理的操作,具体场景可以按照工作来,不过核心是要更好的深入理解RMDBS和NoSQL的不同场景下面的应用,如果条件或者兴趣允许,可以开始深入学习一下MongoDB的工作机制。

    4. Redis/Memcached

    在第二阶段的基础上面,能够更深入的应用和学习。因为Memcached不是特别复杂,建议可以把源码进行阅读,特别是内存管理部分,方便深入理解;Redis部分,可以多做一些复杂的数据结构的应用(zset来做排行榜排序操作/事务处理用来保证原子性在秒杀类场景应用之类的使用操作);多涉及aof等同步机制的学习应用,设计一个高可用的Redis应用架构和集群;建议可以深入的学习一下Redis的源码,把在第二阶段积累的知识都可以应用上,特别可以阅读一下包括核心事件管理、内存管理、内部核心数据结构等充分学习了解一下。如果兴趣允许,可以成为一个Redis方面非常专业的使用者。

    5. PHP

    作为基础核心技能,我们在第二阶段的基础上面,需要有更深入的学习和应用。从基本代码应用上面来说,能够解决在PHP开发中遇到95%的问题,了解大部分PHP的技巧;对大部分的PHP框架能够迅速在一天内上手使用,并且了解各个主流PHP框架的优缺点,能够迅速方便项目开发中做技术选型;在配置方面,除了常规第二阶段会的知识,会了解一些比较偏门的配置选项(php auto_prepend_file/auto_append_file),包括扩展中的一些复杂高级配置和原理(比如memcached扩展配置中的memcache.hash_strategy、apc扩展配置中的apc.mmap_file_mask/apc.slam_defense/apc.file_update_protection之类的);对php的工作机制比较了解,包括php-fpm工作机制(比如php-fpm在不同配置机器下面开启进程数量计算以及原理),对zend引擎有基本熟悉(vm/gc/stream处理),阅读过基本的PHP内核源码(或者阅读过相关文章),对PHP内部机制的大部分核心数据结构(基础类型/Array/Object)实现有了解,对于核心基础结构(zval/hashtable/gc)有深入学习了解;能够进行基本的PHP扩展开发,了解一些扩展开发的中高级知识(minit/rinit等),熟悉php跟apache/nginx不同的通信交互方式细节(mod_php/fastcgi);除了开发PHP扩展,可以考虑学习开发Zend扩展,从更底层去了解PHP。

    6. C/C++

    在第二阶段基础上面,能够在C/C++语言方面有更深入的学习了解,能够完成中小型C/C++系统的开发工作;除了基本第二阶段的基础C/C++语法和数据结构,也能够学习一些特殊数据结构(b-tree/rb-tree/skiplist/lsm-tree/trie-tree等)方便在特殊工作中需求;在系统编程方面,熟悉多进程、多线程编程;多进程情况下面了解大部分多进程之间的通信方式,能够灵活选择通信方式(共享内存/信号量/管道等);多线程编程能够良好的解决锁冲突问题,并且能够进行多线程程序的开发调试工作;同时对网络编程比较熟悉,了解多进程模型/多线程模型/异步网络IO模型的差别和选型,熟悉不同异步网络IO模型的原理和差异(select/poll/epoll/iocp等),并且熟悉常见的异步框架(ACE/ICE/libev/libevent/libuv/Boost.ASIO等)和使用,如果闲暇也可以看看一些国产自己开发的库(比如muo);同时能够设计好的高并发程序架构(leader-follow/master-worker等);了解大部分C/C++后端Server开发中的问题(内存管理、日志打印、高并发、前后端通信协议、服务监控),知道各个后端服务RPC通信问题(struct/http/thirft/protobuf等);能够更熟络的使用GCC和GDB来开发编译调试程序,在线上程序core掉后能够迅速追查跟踪解决问题;通用模块开发方面,可以积累或者开发一些通用的工具或库(比如异步网络框架、日志库、内存池、线程池等),不过开发后是否应用要谨慎,省的埋坑去追bug。

    7. 前端

    深入了解HTTP协议(包括各个细致协议特殊协议代码和背后原因,比如302静态文件缓存了,502是nginx后面php挂了之类的);除了之前的前端方面的各种框架应用整合能力,前端方面的学习如果有兴趣可以更深入,表现形式是,可以自己开发一些类似jQuery的前端框架,或者开发一个富文本编辑器之类的比较琐碎考验JavaScript功力。

    8. 其他领域语言学习

    在基础的PHP/C/C++语言方面有基本积累,建议在当前阶段可以尝试学习不同的编程语言,看个人兴趣爱好,脚本类语言可以学学 Python/Ruby 之类的,函数式编程语言可以试试 Lisp/Haskell/Scala/Erlang 之类的,静态语言可以试试 Java/Golang,数据统计分析可以了解了解R语言,如果想换个视角做后端业务,可以试试 Node.js还有前面提到的跟Nginx结合的Nginx_Lua等。学习不同的语言主要是提升自己的视野和解决问题手段的差异,比如会了解除了进程/线程,还有轻量级协程;比如在跨机器通信场景下面,Erlang的解决方案简单的惊人;比如在不想选择C/C++的情况下,还有类似高效的Erlang/Golang可用等等;主要是提升视野。

    9. 其他专业方向学习

    在本阶段里面,会除了基本的LNMP技能之外,会考虑一些其他领域知识的学习,这些都是可以的,看个人兴趣和长期的目标方向。目前情况能够选择的领域比较多,比如、云计算(分布式存储、分布式计算、虚拟机等),机器学习(数据挖掘、模式识别等,应用到统计、个性化推荐),自然语言处理(中文分词等),搜索引擎技术、图形图像、语音识别等等。除了这些高大上的,也有很多偏工程方面可以学习的地方,比如高性能系统、移动开发(Android/IOS)、计算机安全、嵌入式系统、硬件等方向。

    10. 系统设计

    系统设计在第二阶段的基础之上,能够应用掌握的经验技能,设计出比较复杂的中大型系统,能够解决大部分线上的各种复杂系统的问题,完成类似 浏览器 -> CDN -> 负载均衡 ->接入层 -> Nginx+PHP -> 业务缓存 -> 数据库 -> 各路复杂后端RPC交互(存储后端、逻辑后端、反作弊后端、外部服务) -> 更多后端 酱紫的复杂业务;能够支撑每天数千万到数亿流量网站的正常开发维护工作。

阅读全文

与php技术路线相关的资料

热点内容
dvd光盘存储汉子算法 浏览:757
苹果邮件无法连接服务器地址 浏览:963
phpffmpeg转码 浏览:671
长沙好玩的解压项目 浏览:145
专属学情分析报告是什么app 浏览:564
php工程部署 浏览:833
android全屏透明 浏览:737
阿里云服务器已开通怎么办 浏览:803
光遇为什么登录时服务器已满 浏览:302
PDF分析 浏览:485
h3c光纤全工半全工设置命令 浏览:143
公司法pdf下载 浏览:382
linuxmarkdown 浏览:350
华为手机怎么多选文件夹 浏览:683
如何取消命令方块指令 浏览:350
风翼app为什么进不去了 浏览:778
im4java压缩图片 浏览:362
数据查询网站源码 浏览:150
伊克塞尔文档怎么进行加密 浏览:892
app转账是什么 浏览:163