从html小白到php,刚开始感觉php做网站挺简单的,但是到后来越感觉所学知识不够用了,网站远非留言板,登陆注册那么简单的。
目前我对这些技术的还不是很了解:
服务器运维,网站部署,技术架构
php 高级技术,定时任务,队列(一直以来我都是把php当“静态”语言来用的,没人访问就是死的) composer docker Ionic phonegap
mysql 事务,高级
其他数据库 nosql memcached redis mongodb
css3 html5 html5新特性 html5网站 angularjs框架 React框架 requirejs CommonJS
nodejs npm Grunt工具 git github
电子商务网站系统设计的知识,大并发,秒杀系统设计
搜索技术,厄需解决我目前的sql word link '%$q%'
linux php环境部署,优化。Linux lamp环境优化,常用web软件环境配置,安装
设计模式,算法
以上就是我迫切想要学的东西。
我想学习web开发的一切,前端和后端,有人说如果感觉自己到了瓶颈期时,那就该看书了,希望大神给我知道一下,推荐几本书。前后端的,实战基础都可以。谢谢!
回复内容:
从html小白到php,刚开始感觉php做网站挺简单的,但是到后来越感觉所学知识不够用了,网站远非留言板,登陆注册那么简单的。
目前我对这些技术的还不是很了解:
服务器运维,网站部署,技术架构
php 高级技术,定时任务,队列(一直以来我都是把php当“静态”语言来用的,没人访问就是死的) composer docker Ionic phonegap
mysql 事务,高级
其他数据库 nosql memcached redis mongodb
css3 html5 html5新特性 html5网站 angularjs框架 React框架 requirejs CommonJS
nodejs npm Grunt工具 git github
电子商务网站系统设计的知识,大并发,秒杀系统设计
搜索技术,厄需解决我目前的sql word link '%$q%'
linux php环境部署,优化。Linux lamp环境优化,常用web软件环境配置,安装
设计模式,算法
以上就是我迫切想要学的东西。
我想学习web开发的一切,前端和后端,有人说如果感觉自己到了瓶颈期时,那就该看书了,希望大神给我知道一下,推荐几本书。前后端的,实战基础都可以。谢谢!
你列的这个列表非常棒,知识面很完整,但我个人认为,你现在面临的这个瓶颈并不是书能够解决的。或者说光靠书很难解决。
想清楚学习的目的,避免为学而学
比如高并发,秒杀,架构,这些经常都是现有业务接触不到的东西,学习起来一般两种目的:要么为了应对面试,要么为了日后业务发展,需要的时候能够顶上(知识储备)。不同的目的有不同的学习手段和目标程度。比如如果为了面试,那么做到有一定了解,清楚场景、常见解决方案即可,面试的时候也不用瞎编,就说没机会接触但了解过如何如何,就是很好的回答了。如果是为了业务发展,如果当前公司很快就会发展到那个程度,那就得要到实战的地步,可以找老板沟通,老板说不定正发愁呢。
但如果你的公司离哪个场景很远,你又不打算跳槽,那就别浪费宝贵的时间,学点别的吧
实践,实践,实践!
无论你习惯看书,还是习惯视频,还是像我一样习惯面向google面向stackoverflow学习,学习唯一不变的终点永远是实践。无论你的学习目的是什么,开始之前永远都先给自己准备好实践的机会。公司需要就和老板沟通,公司不需要就自己业余开小项目,不方便的话,那就学到“了解问题点,了解常见解决方案”的程度停止
你已经具备很好的知识面,那么结合公司当下/未来的需求找到突破口应该不是难事,争取结合公司发展所需来学习是效率以及收益最高的,相信我,老板永远最喜欢那种公司需要什么技术就能跳起来说“以前我看过这个东西,有三种方案,我觉得B方案目前最适合我们公司的情况,我能带头把这个做出来”的员工
场景是王道
上面两点中我一直反复在聊场景,其实和英文很类似,英文的核心能力并不是几万的单词量,也不是多么高深的语法,而是“语感”,或者说,从场景联系到合适的表达方式,以及反过来从别人的表达中领会场景的能力。
书和视频,包括网上搜索,绝大多数都只能解决“how”的问题,但我始终认为"how"几乎是最不重要的事情,至少对于互联网技术来说,除了极端场景,99%的情况下,“how”都不是问题,不就是找最合适的那个类库看下文档,调用调试一下么。问题的关键永远是“when”和“what”,偶尔是“why”
how: 是怎么达成某件事情(比如怎么支撑大并发吧),这其实真的不太重要
when: 什么时候需要引入支撑并发的方案? 一台常见的单核8G服务器能支撑多少用户并发?怎么监视并发量从而确认是否需要扩容?常见的并发优化能有多少并发量的提升?这决定了业务成长到什么地步要考虑引入相应方案,过早优化是万恶之首
what: 并发问题的核心是解决什么问题? 比如一个方向是横向扩容/自动扩容,另一个方向是高并发下的数据一致性(事务和分布式事务),当然也还有单机并发优化。如果你理解了就会发现,单机优化确实重要而且是基础,但绝大多数时候远远不如前两个管用。如果你懵懵懂懂就奔着“高并发”这么个词,学了一堆单机优化的东西,可能最后派不上用
why: 为什么公司需要这个技术?业务和技术的结合点在哪里? 是你的公司的商业模式决定了需要靠支撑大量并发来盈利么?是公司的业务数据宝贵不容有失所以需要强大的异地容灾?还是因为公司业务无法接受当机时间过长,所以需要灾备,需要柔性高可用?当然,也不能排除“高层喜欢这个技术”这个稍稍令人丧气的理由。
合起来看,how之外的那些问题,简单地说就是场景问题,想通这个真的非常重要,只有想通这个,你的学习才是有目的,有条理,有计划,有最终成果的有效学习
最后,反感看书学习的我唯一推荐一本书,是一本最棒的学习list,有很多你没列出来却至关重要的需要学习/关注的点,《The Pragmatic Programmer》,译名《程序员修炼之道》有点俗,但错过实在可惜
附另一个回答《程序员怎样结合平时工作中的项目修炼自己的技能?》
程序猿遇到瓶颈, 看书什么的根本就没用, 最好的方法就是跳槽
一步步来,买书看,做项目练习,熟练使用至少两个php框架
从基础开始学,PHP基础,html基础,找一些小的项目看,然后可以接触框架,如新手比较好理解的Codeigniter,关键是自己动手做个东西。
可以多看看PHP的技术博客:
http://blog.tanteng.me
1 先推荐书
服务器运维
《鸟哥的Linux私房菜》
git
githug - 一个用git来学习git的小游戏
类似的还有vimtutor
网站系统设计的知识,大并发,秒杀系统设计:
看几个大公司的技术博客,学习一下一线的开发人员都在做什么,就差不多了
腾讯大讲堂
腾讯全端 AlloyTeam 团队
点评美团技术团队
蘑菇街技术博客
设计模式,算法
《大话设计模式》
《代码大全》
其他方面我了解的少,欢迎补充
2 再说说遇到瓶颈怎么办
首先不要觉得自己太弱,感觉遇到瓶颈说明你还是意识到自己在某些方面不足,但是不要盲目就开始学。我的建议是:
该有的广度应该有,如果从PHP开始,那么Web、数据库、运维、架构都应该有所了解
想一想自己未来5年要做什么样的事,是一直当一个程序员吗?在一个团队里面处于什么位置的程序员呢?
想好2之后,应该对自己未来将要做的事情有持续的、深度的了解
学习linux脚本,学习symfony或yii之类的全栈框架,熟悉运用云产品做大型场景的应用。
到达瓶颈的时候要想的东西其实很简单,就是什么都不想,该做的扎扎实实的做,厚积薄发。瓶颈的原因就是不能达到薄发的标准,提高自身对技术的理解,有机会的话接触更加宽广的技术栈,尽量不要一个语言用到老,但是不是让你什么语言都用或者抛弃PHP,而是去学习其他语言的一些思想。然后在使用一些第三方技术或框架的时候尝试在不影响项目流程的情况下深入的学习一些底层的知识。

PHP在現代Web開發中仍然重要,尤其在內容管理和電子商務平台。 1)PHP擁有豐富的生態系統和強大框架支持,如Laravel和Symfony。 2)性能優化可通過OPcache和Nginx實現。 3)PHP8.0引入JIT編譯器,提升性能。 4)雲原生應用通過Docker和Kubernetes部署,提高靈活性和可擴展性。

PHP適合web開發,特別是在快速開發和處理動態內容方面表現出色,但不擅長數據科學和企業級應用。與Python相比,PHP在web開發中更具優勢,但在數據科學領域不如Python;與Java相比,PHP在企業級應用中表現較差,但在web開發中更靈活;與JavaScript相比,PHP在後端開發中更簡潔,但在前端開發中不如JavaScript。

PHP和Python各有優勢,適合不同場景。 1.PHP適用於web開發,提供內置web服務器和豐富函數庫。 2.Python適合數據科學和機器學習,語法簡潔且有強大標準庫。選擇時應根據項目需求決定。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP成為許多網站首選技術棧的原因包括其易用性、強大社區支持和廣泛應用。 1)易於學習和使用,適合初學者。 2)擁有龐大的開發者社區,資源豐富。 3)廣泛應用於WordPress、Drupal等平台。 4)與Web服務器緊密集成,簡化開發部署。

PHP在現代編程中仍然是一個強大且廣泛使用的工具,尤其在web開發領域。 1)PHP易用且與數據庫集成無縫,是許多開發者的首選。 2)它支持動態內容生成和麵向對象編程,適合快速創建和維護網站。 3)PHP的性能可以通過緩存和優化數據庫查詢來提升,其廣泛的社區和豐富生態系統使其在當今技術棧中仍具重要地位。

在PHP中,弱引用是通過WeakReference類實現的,不會阻止垃圾回收器回收對象。弱引用適用於緩存系統和事件監聽器等場景,需注意其不能保證對象存活,且垃圾回收可能延遲。

\_\_invoke方法允許對象像函數一樣被調用。 1.定義\_\_invoke方法使對象可被調用。 2.使用$obj(...)語法時,PHP會執行\_\_invoke方法。 3.適用於日誌記錄和計算器等場景,提高代碼靈活性和可讀性。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

SublimeText3 Linux新版
SublimeText3 Linux最新版

Dreamweaver Mac版
視覺化網頁開發工具