V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
coderluan
V2EX  ›  PHP

继续弄 php 向导图,希望大家继续帮助

  •  
  •   coderluan · 2016-11-24 22:53:14 +08:00 · 3568 次点击
    这是一个创建于 2949 天前的主题,其中的信息可能已经有所发展或是发生改变。

    之前的帖子 https://www.v2ex.com/t/322908

    首先感谢大家之前的指导和帮助,本人进行了一次迭代,新图入下: http://www.coderluan.com/wp-content/uploads/2016/11/php-1.jpg

    希望大家继续指导,你们的名字会出现在最终版本中。

    原则是“不走捷径,不走弯路,不走远路” 目标是“帮助那些基础不好又想学编程的人”

    我持保留态度的一些意见: 1.新手用百度还是谷歌,这个我直接改成搜索引擎,由使用者自己的情况决定。 2.ThinkPHP 我知道不太好,但是我看招聘需求还是有的,所以暂时保留,希望大家告知招聘面试时是否可以用 Lara 或者 Yii 取代。

    再次声明: 我不懂 PHP ,只是个想帮人的整理者,也希望得到大家的帮助。 图中内容随便喷,顺便喷我也行,光喷我的是小狗。

    第 1 条附言  ·  2016-11-25 11:10:18 +08:00
    再次更新

    http://www.coderluan.com/wp-content/uploads/2016/11/php.jpg

    还是有个问题

    就是从市场占有量,招聘时的需求,笔试面试的概率出发考虑,哪种框架比较好。
    34 条回复    2016-11-25 11:44:38 +08:00
    coderluan
        1
    coderluan  
    OP
       2016-11-24 22:55:14 +08:00
    Scholer
        2
    Scholer  
       2016-11-24 23:19:32 +08:00   ❤️ 1
    lslqtz
        3
    lslqtz  
       2016-11-25 00:30:38 +08:00
    herozzm
        4
    herozzm  
       2016-11-25 07:26:19 +08:00 via Android
    差的很多,这个不叫指南,叫走马观花,微信支付什么鬼,和 php 有必然联系额
    coderluan
        5
    coderluan  
    OP
       2016-11-25 08:27:45 +08:00 via Android
    @herozzm 向导图当然不是指南,你感觉上面的内容都掌握了,还是无法找份工作?那请问缺在哪里。微信和支付我感觉找工作有可能会问到,所以加上的。
    gino86
        6
    gino86  
       2016-11-25 08:51:59 +08:00   ❤️ 1
    虽然我不是程序员,我也说说自己对这张图的感受,那就是不适合初学者。我认为学习一门语言应该以项目为导向的。如果一味谈语法而没有实践的话,学习到的知识很容易被遗忘。 php 的话我建议选择《 PHP 和 MySQL Web 开发》,虽然个头有点大,但是对于从零开始学习的应该没有问题。而 javascript 的话首选《 JavaScript DOM 编程艺术》,谁用谁知道,这两本书都在我家书柜。数据库的话不应该一开始就谈性能,连基本 crud 操作都不会,其他都是扯谈。我当初学习 sql 用的是《 sql 入门经典第五版》,可惜这本书有点旧,现在基本没有更新,里面的例子不知道还能不能正常运行。
    sagaxu
        7
    sagaxu  
       2016-11-25 08:55:24 +08:00 via Android   ❤️ 1
    @coderluan 微信和支付只不过是上百个常见 API 对接中的一种,做没做过区别不大。语言本身,从入门到熟练干活,不消半个月,熟悉某个库的用法,查一下文档就搞定了。
    coderluan
        8
    coderluan  
    OP
       2016-11-25 09:05:50 +08:00 via Android
    @gino86 两本书会加入,数据库有 headfirstSQL ,这个很基础吧。性能优化那个是针对 mySQL 的,你感觉看必知必会就行,不需要高性能 MySQL ?
    gino86
        9
    gino86  
       2016-11-25 09:28:27 +08:00
    @coderluan 首先我道个歉,没有注意到 head first sql ,也不知道基础程度怎样。刚查了下当当网,出版时间是 2009 年,比入门经典第五版要旧,不知道代码还能运行不。如果版本跨度太大,例子已无法运行,建议不要推荐此类书籍。
    sagaxu
        10
    sagaxu  
       2016-11-25 09:29:26 +08:00 via Android
    @coderluan 数据库基础甚至不应该是 SQL ,而是模型,模式,范式,依赖,关系代数这类理论。然后针对具体的 DB 引擎研究性能优化。在 DB 之前,还应该学点离散数学和算法分析。
    gino86
        11
    gino86  
       2016-11-25 09:36:18 +08:00
    @sagaxu 离散数学和算法分析 扯远了,这些应该是专门的 DBA 才会深入研究的吧
    echo111222
        12
    echo111222  
       2016-11-25 09:49:25 +08:00 via Android
    如果是帮助零基础想入门编程的人。应该根据萧井陌的编程入门来。知乎专栏。那才是正确之路,从计算机科学的基础开始。我也是零基础自学的,跟楼主的图差不多,学 html css js php mysql ,还没学到框架就学不下去了,总结下就是坑爹。为什么?计算机很多基础概念不懂,结果上手语言也是一脸懵比。学编程,必须先打下计算机科学的基础。比如数据结构,算法,操作系统等等。对了,你 web 基础,至少应该加上 Http 吧
    sagaxu
        13
    sagaxu  
       2016-11-25 09:50:45 +08:00 via Android
    @gino86 每个 211 毕业的计算机或者软件专业的本科生都学过,这个很重要,比如说有时候要自己写个容错的 json 解析器,学没学过编译原理,差别就非常大了
    coderluan
        14
    coderluan  
    OP
       2016-11-25 09:59:30 +08:00
    @gino86 客气了,你这样也要道歉,我发了这么帖子只能切腹了。 head first 系列口碑一向不错的。
    coderluan
        15
    coderluan  
    OP
       2016-11-25 10:02:34 +08:00
    @sagaxu @sagaxu 这个是给零基础想入门 PHP 的同学看的,他们应该没太多精力放在数据库理论上,科班出身另当别论。
    coderluan
        16
    coderluan  
    OP
       2016-11-25 10:12:19 +08:00
    @echo111222

    目标是“帮助那些基础不好又想学编程的人”。换言之就是容易去培训班被坑的人。
    你推荐的明显是走科班的路子,我不认为他们有那个时间或者精力,所以重点放到动手能力。
    计算机科学基础的话,我可以推荐一本《计算科学导论》作为了解,当故事书读,太具体的课程我建议工作之后慢慢补。
    echo111222
        17
    echo111222  
       2016-11-25 10:25:45 +08:00
    @coderluan 基础不好,那就要补基础。至少进制转换你得会吧。什么是 sock  什么是线程 什么是进程。这些得了解吧。最基础的东西必须得了解,学语言才能事半功倍。我不知道你有没有看过萧井陌(初中生自学成才)的编程入门,但是我希望你能看看。你不一定要认可我的观点,我也只是表达下。
    gino86
        18
    gino86  
       2016-11-25 10:26:05 +08:00
    @sagaxu 那岂不是要把《离散数学及其应用》和《算法导论》加上?
    echo111222
        19
    echo111222  
       2016-11-25 10:27:45 +08:00
    再说一句,基础不行,连看 php 官方文档也费事。
    echo111222
        20
    echo111222  
       2016-11-25 10:29:18 +08:00
    @gino86 离散数学和算法导论可以先不用上。我觉得计算机科学的基础必须先上。。比如进制转换,线程,进行, socket 概念得懂吧。数据结构也可以先了解基本的吧?链表,树,栈。
    gino86
        21
    gino86  
       2016-11-25 10:30:28 +08:00
    @echo111222 我觉得吧,底层的东西可以先放到一边, php 程序员什么时候经常会操作二进制数据?应该是业务逻辑为主吧。 php 支持多线程编程吗,如果可以,那我真的是 out 了。另外,我也想知道什么是“ sock ”,你确定你没有打错“ socket ”
    coderluan
        22
    coderluan  
    OP
       2016-11-25 10:32:49 +08:00
    @echo111222

    我 985 科班出身,那套体系很清楚,所以我也认为直接把那些东西抛给基础不好的孩子,会断了他们这条路。我自然知道萧井陌,所以也不认为人人都能像他一样。专业基础很重要,如果你在读大学时间充足,理科底子好,那样我也推荐你好好打打基础。否则的话,我更推荐偏实用性,先提高动手能力,努力找份工作,工作了之后再慢慢补基础。

    PS :定位不同,我也只是表达下。
    Lucups
        23
    Lucups  
       2016-11-25 10:33:40 +08:00
    推荐一个重量级的框架: Symfony ——一个堪称业界典范的纯 PHP 框架。
    用惯 Symfony 后的感受就是,用其他框架的时候总感觉少这个缺那个,然后一言不合就改造。

    所以,学习 PHP 框架有一条捷径,就是 Symfony !
    coderluan
        24
    coderluan  
    OP
       2016-11-25 10:41:35 +08:00
    @Lucups

    说了不走捷径了。

    好吧,不开玩笑了,确实有人推荐 symfony ,也许他是最好的,但是我有点顾虑,就是这么多框架,他们的市场需求是怎么样的,也就是找工作,笔试,面试哪个最常见。

    不能面试时,对方说我们公司之前框架是 tp ,你熟悉吗?咱们说 fuck off this and go ahead for symfony.
    echo111222
        25
    echo111222  
       2016-11-25 10:43:19 +08:00
    @gino86 嗯。打错了,不好意思。(后面的回复纠正了)大部分都是业务逻辑。我知道用不上二进制。很多东西用不上,但是用上面的东西都是基础下面的东西建立的。了解一些,会更好的使用上面的。个人观点而已。
    @coderluan 嗯嗯。我是野路子出身。虽然背了个 CS 专业。我自学的时候也是像您的向导图一样,因为遭遇了很多懵逼的坑(很多都是自己基础的概念不清楚)。所以才这么强调一定要有点基础。不过我建议你教程加 HTTP 的内容吧。面试的时候会问的。 HTTP 也是做 web 必须要懂的吧。
    coderluan
        26
    coderluan  
    OP
       2016-11-25 10:49:03 +08:00
    @echo111222 我加上计算机科学导论了,一些基础概念这么课都会涉及,线程啊,数据结构啊,但是不会讲的太深,推荐给使用者当故事书看了。 Http 这个推荐的 MDN 学院上有相关内容的。
    gino86
        27
    gino86  
       2016-11-25 10:49:11 +08:00
    @Lucups @coderluan 你们都说得对。 symfony 是不错的,但是我要说的是,学习 symfony 的时间足够入门 php 了。
    coderluan
        28
    coderluan  
    OP
       2016-11-25 10:50:21 +08:00
    @gino86 请问一下,就市场需求来说,也就是找工作面试,那么多框架,哪个优先级比较高。
    gino86
        29
    gino86  
       2016-11-25 10:59:02 +08:00
    @coderluan 这个真不好意思,我不是 interviewer ,不能正确地回答你这个问题。如果是前几年的话,国内 tp 是首屈一指的, zend framework 是国外的重量级框架。近几年很多国外的框架大热,例如 ci, laravel , yii ,而 laravel 颇有大国崛起的感觉。
    echo111222
        30
    echo111222  
       2016-11-25 11:00:09 +08:00
    @coderluan 希望你的向导图能最后强调下基础的重要性。引导他们以后加强基础的学习。“基础不好想学编程的人”也有很多是学生,学生也可以根据自己时间,可以加强点基础。框架的话,以我今年的面试经验, Yii Laravel ThinkPHP 都比较多。
    coderluan
        31
    coderluan  
    OP
       2016-11-25 11:03:58 +08:00
    @echo111222
    我打算制作大多数主流的语言的向导图。
    专业基础的重要性会在最开始就指出 并且 整理专业基础的学习线路,
    所以单独语言的向导图暂时没有
    coderluan
        32
    coderluan  
    OP
       2016-11-25 11:04:06 +08:00
    @gino86 谢谢
    echo111222
        33
    echo111222  
       2016-11-25 11:37:55 +08:00 via Android
    @coderluan 嗯嗯。我没有说要出单独的语言向导。。不好意思,前面语气有点激动了。。我也是希望后来者路更好走。尽管我还是个菜鸟。加油!
    coderluan
        34
    coderluan  
    OP
       2016-11-25 11:44:38 +08:00
    @echo111222 没事,共勉。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2876 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 12:26 · PVG 20:26 · LAX 04:26 · JFK 07:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.