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

9102 年了,真的有公司不用框架写 PHP 吗

  •  
  •   emeab · 216 天前 via iPhone · 8795 次点击
    这是一个创建于 216 天前的主题,其中的信息可能已经有所发展或是发生改变。
    今天面试一家公司(小公司 20 人不到)。问了几个问题,回答的时候面试官全程在干别的事情。有个问题是,你可以不用框架写项目吗? 我当时想了想 回答 需要 2-3 星期。
    第 1 条附言  ·  216 天前
    这贴本来就是个吐槽.. 我自我介绍的时候全程在干别的事情. 全部下来什么技术问题都不问. 就问这个问题. 我说完就叫我等通知了. 幸好下午面的还行.和面试官聊的还可以. 感觉有戏
    88 回复  |  直到 2019-05-29 17:23:22 +08:00
        1
    seeingrun   216 天前
    我也面试过公司说用原生 PHP 写项目,面试官说这样会安全
        2
    liuxu   216 天前
    我司
        3
    mamahaha   216 天前   ♥ 1
    你瞧不起小公司,小公司也瞧不起你,每个人都应该反思一下这样的面试为啥会存在?
        4
    emeab   216 天前 via iPhone
    @mamahaha 我又没有瞧不起小公司 我要是瞧不起还去面试干什么。。。 小公司不用框架不更加累吗?框架写好的你又要实现一遍。。。
        5
    emeab   216 天前 via iPhone
    @liuxu 用原生写感觉如何。。。。
        6
    lihongjie0209   216 天前
    @emeab 框架 or library 这是一个问题

    有时候可能只需要一个 library 的功能, 结果引入了框架,那就得不偿失了。

    框架属于用起来爽,改起来麻烦。
        7
    emeab   216 天前 via iPhone
    @lihongjie0209 个人理解 小公司 基本上也就是写业务逻辑。基本上不会到改框架这地步。这楼基本上就是我面试失败的吐槽 因为面试官很不尊重我。。
        8
    downstairs   216 天前
    当然有。根据需求来,就跟为什么还有人用 C 而不是 C#或者 C++进行编程一样
        9
    agdhole   216 天前   ♥ 2
    不用框架写,引入各种库写着写着自己就造了个框架
        10
    emeab   216 天前 via iPhone
    @agdhole 感觉不用引入自己写也基本是个基础框架了吧。。
        11
    lihongjie0209   216 天前
    @agdhole

    写代码核心框架除了 IOC 和 AOP,还需要什么库?
        12
    DavidNineRoc   216 天前
    我觉得你应该回答他, 可以. 不要回答多少时间.
    可能面试官误以为你只会用框架, 而需要几周的时间去熟悉原生
        13
    falcon05   216 天前 via iPhone
    估计之前这公司被只会用 thinkphp 写代码的坑过……
        14
    zhanglp888   216 天前
    @agdhole 确实如此
        15
    heraldic   216 天前
    框架是好东西,但是原生的也要会有一点的,要不真的没法沟通
        16
    xiangyuecn   216 天前
    面试造航母,上班拧螺丝。基础的框架怎么来的?人家原生代码写了一堆东西,然后感觉不错,就封装调整一下喂给别人吃,说不定人家就是看重你要有这个基础能力呢。
        17
    ben1024   216 天前
    有原生的,但是多数用原生的目的是框架满足不了需求的情况,而不是为了其他的某些原因(安全,性能)
        18
    wispx   216 天前 via iPhone
    我司自己写的框架自己用
        19
    xiaotuzi   216 天前 via iPhone
    用一个数据库封装的 CURD,就可以写得很爽了,框架加了太多东西,很多你不需要的。
    如果原生都不擅长写,那框架出了 bug 就坏事了
        20
    worldtongfb   216 天前 via Android
    前天面了一个 10 年的老系统 全部原生 听说几十 w 代码文件 不是行 是文件个数
        21
    caoyouming   216 天前
    php 原生,是指的将 php 和 h5 混在一起吗[/手动滑稽]
        22
    eret9616   216 天前
    支持 3 楼 你要反思一下你为什么被邀请到这样的公司面试 这样的公司为什么会邀请你
        23
    caoyouming   216 天前
    如果大家觉得框架会限制很多,并且太多东西不需要,那你可以去尝试一下 yaf,这个就仅仅是你几十层建筑下的房基,你想装窗户或者建什么东西,自己去决定就好了吧。
        24
    emeab   216 天前 via iPhone
    @eret9616 因为我水平不行啊 而且我在小地方 工资不高 也就 5k 左右 税前的
        25
    liuxu   216 天前
    @emeab 没什么感觉,框架无非就是有个路由,容器之类的使用方便,不用框架但依然会用一些组建,smarty 之类,其实还好
        26
    emeab   216 天前 via iPhone
    @caoyouming 有可能 因为我给他看的是 laraveel-admin 写的简单页面。。 我也说了有些页面是我自己写的 他没看
        27
    whatsmyip   216 天前
    个人项目,不用框架,感觉太臃肿了

    自己整理了一套通用库,crud 够用了

    https://github.com/newnius/util4p
        28
    caoyouming   216 天前
    @emeab 那没啥说的了,php+h5 后期维护的代价有点大的呀,并且也就只有开发者自己才最懂代码。
        29
    emeab   216 天前 via iPhone
    @whatsmyip 如果遇到队列 延迟任务 这种呢? 引入包来解决吗 还有路由 鉴权
        30
    dream7758522   216 天前 via Android
    我在用 ci,太舒服了
        31
    emeab   216 天前 via iPhone
    @liuxu 主要是怕遇到需要用到队列这种的
        32
    xnode   216 天前
    如果简单的东西直接用 composer 算框架吗 直接撸就好了
        33
    emeab   216 天前 via iPhone
    @caoyouming 我这边小公司大部分都这样 前端就写用户界面 后台管理系统的后端全包 之前我也自己用过 vue-admin 来开发 后面觉得太累了 那些领导也不管你 反正做出来就行 所以现在我就用 laraveel-admin 来做 特别需求的页面也就自己写
        34
    xiongliuhua   216 天前
    不都是为了开发效率嘛
        35
    whatsmyip   216 天前
    @emeab 后期打算放 redis,或者其他 mq,然后前端或者另外的进程 flush。php 原生就不支持异步,啥框架都没用吧。
        36
    emeab   216 天前 via iPhone
    @whatsmyip 我现在的 项目用的是 beanstalk redis 只用来做缓存
        37
    janxin   216 天前
    真的有=。=
        38
    jhdxr   216 天前
    我很好奇他们是否能够区分 framework 和 library。不用 framework 我觉得当然是可行的,实际上现在不少主流的 framework 本身也是在大量的 library 上拼出来的,或者反过来会把自身拆成不少 library,按需索取即可。
        39
    caoyouming   216 天前
    @emeab 这种我也写过,基本上可以说 php 开发人员承担整个项目所有,包括一部分前端。
        40
    G900   216 天前
    说 9012 年的,我很期待明年你们怎么说,0202 年?
        41
    hiddendeerer   216 天前
    这要看技术老大怎么决定的,我第一家实习自己产品就是纯原生,不过后面遇到的公司都是框架了
        42
    kid1412621   216 天前
    Php 是什么
        43
    kwklover   216 天前
    用框架未必好啊,现在框架那么多,不是每个开发人员熟悉的框架都一样,如果一个公司每个项目都了用不同技术体系,以后员工离职了,维护就麻烦了。用一些库来复用代码,提高效率到时可以。
        44
    kwklover   216 天前
    而且有一些框架还是涉及授权问题,引入一个新框架,需要授权的成本评估的。
        45
    hugee   216 天前 via Android
    我公司纯原生 php。。。
        46
    imdong   216 天前
    遇到问题,先从自身找问题。
    想一下,你为什么会去这家公司面试。
        47
    luanguang   216 天前
    有吧……
        48
    KasonPasser   216 天前
    看做什么项目,有时原生比框架要爽得太多了。根本就用不到那么多复杂的东西。
        49
    weiqk   216 天前 via Android
    我一直想不通为什么要框架,是开发效率高还是运行效率高?还是找会框架的程序员成本低?
        50
    FantaMole   216 天前
    是个坑,一般来说拿原生写也没什么,但是公司一般不会给这个时间,真全都不用可太麻烦了,赶进度的话至少 ORM 还是要的吧。以前拿 yaf 写新的微服务,很多都要自己造轮子,然后那个 sprint 东西就没做完,你拿原生写的性能好不好,领导在还没出成品的时候不会管的。
        51
    encro   216 天前
    根据我的经验,不用框架的小公司,基本不靠谱
        52
    emeab   216 天前 via iPhone
    @weiqk 开发快 特别团队开发
        53
    hero2040407   216 天前
    @falcon05 只会 thinkphp 又如何?一个能把框架用好的程序员对于小公司足够了
        54
    Kylin30   216 天前   ♥ 1
    我的比特币都是手挖的
        55
    ershisi   216 天前
    我还见过到现在仍然在用 asp 的。神奇的是还活了下来。
        56
    way2create   216 天前
    我只比较烦写的很乱格式很乱的老旧臃肿代码 用不用框架另说
        57
    linxb   216 天前
    很多人都觉得自己写的东西比现成的好,然而往往事与愿违
        58
    falcon05   216 天前 via iPhone
    @hero2040407 没如何,你这么激动干嘛?
        59
    wmhx   216 天前
    我还见过把 php 当 shell 来写脚本做运维的呢, 有什么不可以?
        60
    dabaibai   216 天前
    用原生是基础 用框架显得很 low?
        61
    sbhtdgg   216 天前
    因为很多公司老项目是原生的,需要人维护。
        62
    duola   216 天前
    @whatsmyip https://github.com/newnius/util4p/blob/master/examples.md#Validator
    if()Validator::isEmail($email)){
    echo 'valid email';
    }
    是不是错了。
        63
    emeab   216 天前
    @sbhtdgg 16 年才建的公司能有多老...
        64
    whatsmyip   216 天前
    @duola 非常感谢,已修正
        65
    Seanfuck   216 天前 via iPhone
    现在的框架越来越臃肿,封得越来越深,不用也有好处,要用就用简单的
        66
    tanszhe   216 天前
    极简 . 高性能 . 松耦合 . 分布式 . 可运行于多种环境(cli,apache/php-fpm,swoole)
    https://github.com/lizhichao/one
        67
    earthyan   216 天前 via iPhone
    需要什么引入什么就好了
        68
    yuekcc   216 天前
    可能是 thinkphp 教育了一代人。现在的 php 框架也的确太重了。
        69
    orvice   215 天前
    属于可以但没必要
        70
    shiji   215 天前
    不用框架的原生 PHP 其实很考验 PHP 功底的。。
        71
    AbrahamGreyson   215 天前 via iPhone
    其实就是玩文字游戏,不用框架,也得七七八八引入一大堆开源项目来保证项目的基础设施。
    ORM,路由,验证,模板引擎,跨站过滤,加密解密,请求和响应接口,api,随便就能想到十几二十个。
    这些东西全都自己写,保证质量不是不可能,但是成本太高。
        72
    jinliming2   215 天前 via iPhone
    越小的公司,业务逻辑越简单。
    你说我就提供一个文件下载的接口,原生写也就几行代码,你却要引入一整个框架,只是为了只写“一行代码”来实现,是不是有点得不偿失?
    只有业务逻辑大到一定程度,复杂到一定程度,才需要引入框架。

    现在很多培训班出来的人,写代码离不开框架,根本连编程语言的基本功都没有,这样的人你敢要?
    问你能否脱离开框架写东西就是在问你语言基本功怎么样。如果框架不提供某个功能,你能否自行实现这个功能;如果框架里的某个功能存在缺陷或是安全漏洞,你能否自行进行修复。
        73
    jinliming2   215 天前 via iPhone
    如果仅仅只是做一个公司的官网,上面动态展示几条公告新闻,这样的需求你甚至直接写个 php 文件,html 嵌套 <?php 来写都是完全 OK 的,简单高效。
        74
    cooaer   215 天前 via iPhone
    我司+ 1。开始业务少的时候还好,复杂了之后,那代码不能看,太混乱了!
        75
    lincanbin   215 天前
    PHP 本身路径即路由,文件即模板。
    没有框架也不是什么大问题。
        76
    KasuganoSoras   215 天前
    此时一位热爱手写原生 PHP 的网友路过
    能用原生 PHP、在指定时间内能实现的,就不会去用框架。原本简简单单几十行代码能搞定的东西还要引入个框架,多累啊……

    从 2012 年开始写 PHP 到现在,各种主流框架 ThinkPHP、Laravel、Yii 都摸过了,自己造的框架也是多的数不过来,但是还是觉得写原生舒服,只要手快脑子灵活,用框架和不用框架没什么区别。要是框架出了 bug,翻文档找社区搞半天累得要死;自己写的出了 bug,快速定位问题,瞬间修复上线,毕竟还是自己写的东西自己最了解。
        77
    KasuganoSoras   215 天前
    现在我服务器上很多服务,例如各大 Minecraft 服务端 Jenkins 的爬虫,MySQL 定期备份,大大小小的一些脚本我都用 PHP 来写,论效率和便捷性丝毫不输 Python,配合 pthreads 和 swoole 这些优秀的多线程扩展,可以把 PHP 玩出各种花样。
    真正熟练掌握原生写法后,大脑就像自带 PHP 解释器,几乎不需要运行都能预测出执行结果,有很多次我开项目都是从开始到完工都不需要测试,写完了运行一下一次过,0 warning 0 errors。
        78
    jadeity   215 天前
    我猜面试官的意思是“能不用框架写项目,一定可以更好的用框架写项目”。
        79
    shench   215 天前
    你这个回答是什么意思,2、3 个星期学习一下?
        80
    weiqk   215 天前 via Android
    @emeab 经过实践证明,框架开发比原生开发慢的多,尤其是复杂项目,感觉框架是给设计师用的
        81
    alexmy   215 天前
    我们的 PHP 项目中只有官网是用的 yii。别的都是自己手撸的。

    我自己的小项目,nginx 日志里面都是各种开源框架的 admin 路径探测。
        82
    t2doo   215 天前
    看完全楼,就没有发现有人这么说:不用框架,原生自己写要花那么多时间,工资 Double 我是没问题的:)
        83
    sandersyao   215 天前
    看多大的任务了,我偶尔也会接到一些让我写爬虫爬网站的,最近爬了一个有赞的店铺代码量 367 行,就感觉不值当用框架了,况且我是 vim 党
        84
    kekxv   215 天前 via Android
    你见过用原生 js 写前端的不,就是 jq 都不用的
        85
    emeab   214 天前 via iPhone
    @kekxv js 原生能接受啊 我就这样写的
        86
    jjzhanhun   214 天前
    一个 index.php 文件闯天下
        87
    baiban   207 天前
    其实 PHP 不用框架也没啥大问题。现在大部分程序用框架,其实也就是主要利用它的路由、DB 类还有 LOG 日志。
        88
    AbrahamGreyson   176 天前
    @sandersyao 想必阁下这 367 行代码中一定也包含了网络异常的处理,有赞店铺防爬虫(如果有)逻辑的处理,还包含了一个合格爬虫大体上应该具备的多线程抓取,中途异常的进度保存以及日志功能喽

    我想表达的是,绝大多数夸夸其谈不需要用框架的人,其实压根也没对健壮性有那么强的要求,并不意味着他们水平多棒棒。这个角度上来看,用与不用,很可能是两拨追求不同东西的人。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2279 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 45ms · UTC 15:34 · PVG 23:34 · LAX 07:34 · JFK 10:34
    ♥ Do have faith in what you're doing.