前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >为什么要用框架Framework

为什么要用框架Framework

作者头像
PM吃瓜
发布2019-08-13 13:11:24
1.4K0
发布2019-08-13 13:11:24
举报
文章被收录于专栏:PM吃瓜(公众号)

我们首先要探讨一个问题——为什么要使用框架。 它的好处是什么?有哪些优势?对个人或公司运营有哪些帮助?

一.框架和库

库:英文是(Library)可以理解为仓库、图书馆、存书室。在程序里面理解,就是各种

代码的封装集合包,提供原生内置并不存在的功能和方法。

框架:英文是(Framework)可以理解为骨架、架构、书架、书框。在程序里面理解,

就各种条条框框像个有规则的书架一样,让你按照它的代码规范、编码模式(比如很多框架是基于 MVC 模式的)去开发应用程序。当然,框架内可能也包含了库的功能,也提供了各种封装功能的集合包。

那么使用框架开发有哪些优势呢?

二.个人用框架的优势

在个人项目开发中,使用框架比采用原生代码开发优势较为明显:

1.效率极高:因为框架已经帮你疏通了管道、构建了厂房、安好了水电、装全了设备、

排好了书架,你要做的就是按照书架的布局或规格,整齐的把书放上,就完了。如果你不用框架建设,你还需要自己疏通管道、构建厂房、安水电、装设备、排书架,效率大大提高。

2.安全性高:框架的开发难度较高,一般都是身经百战的架构高手们经过多年、多版本

研发、更新迭代孕育而成。经过大量市场和用户的轮番测试和考验,保证了不同情况和状况的稳定性。而如果你是低手或者新手,且自己架构,很有可能会遇到厂房崩塌、漏水漏电等不安全的情况发生。

3.稳定性高:基本同上,因为各种部件进行有有条不紊的架构,导致在不同程度的运行

中保证流畅。而自行架构的,在某些极端情况下可能会遇到管道堵塞的问题发生。

PS:使用框架有这么多明显的优势,那对于个人开发者有必要学习那些原生的基础知

识吗?答案是:必须要学习。首先,最基础的没有学好,在学习和使用框架的时候会到处碰壁。其次,基础知识越扎实,在使用框架的深度和灵活度上要远高于不扎实的人,这是个人竞争力的体现。

PS:一般对于职业生涯规划,我总结出可能会出现三种情况:1.努力学习基础知识, 然

后学习一种或多种框架在工作中高效的使用,最终积累的各种资源,成立自己的工作室或公司承办业务;2.努力学习基础知识,然后学习一种或多种框架在工作中高效使用,然后又返璞归真深入研究原生,开发多款工具或开源框架,实现大牛级别;3.改行。

三.公司用框架的优势

在公司团队项目开发中,使用主流框架比原生或自行开发框架优势较为明显:

1.团队协作力强: 开源框架提供了统一的规范和编码模式, 且模块与模块之间相对独立。

对于程序员来说,只要根据这种规范来编码,团队之间的协调性会非常容易。而且主流的开源框架在招募人才方面较为容易,上来就能使用,降低的培训成本。

2.降低培训成本:如果使用原生代码,当另一个团队人员接受或参与,几乎看不到懂之

前的技术员人代码,最终可能要重构,成本巨大。如果使用公司研发的框架,那么也需要一定时间的培训才能上手,成本也是巨大的。而使用主流框架,大部分技术人员在来公司之前就已经掌握。

3.去技术人员化:一个公司把核心代码掌握在某个技术人员手里,这是极其危险的事。

当这个项目的原生或者自行开发的框架是某一个技术人员设计的,当他离职后,代码将是一堆垃圾,没人能看懂。如果使用主流框架,那么公司的核心是项目和业务本身,降低技术人员的价值。任何一个技术人员离职,都不会影响项目的研发进度,只要懂主流框架的技术人员,上手即可继续。

PS:这里要声明一下,不同级别的公司在原生和自行开发框架、主流开源框架的认识

上是有一定分歧的。技术型的大公司,不缺线,不缺技术人员,开发自己的框架主要解决自己庞大的业务需求,其次是捍卫自己技术型公司的地位。而缺钱、缺人才的中小型公司, 什么都要自己研发,自己研发框架,自己研发前端库,然后用框架和库开发自己的论坛,内容管理系统,商城系统。不用 discuz、dede、ecshop 之类的开源系统。最终导致烧完 100 万资金,还欠发两个月工资,老板失踪,网站也没上线运营就倒闭了。

四.框架和开源系统

所谓开源系统,就是开放源代码的系统。这些系统,包括比如 discuz论坛系统、phpcms

内容管理系统、shopex商城系统。这些系统,都是定制某种领域功能的、已经开发好的系

统。原则上,这些系统已经不需要技术人员来编码了,可以直接上线运营了。因为这些是定制的系统,所以系统会专门根据此领域的情况进行特定的优化。那么也就是说,这些开源系统在安全性、稳定性和效率上要高于用框架开发的同类产品。所以,很多公司大量招聘开源系统的二次开发人才。

那么到底是学框架开发,还是学开源系统的二次开发呢?我的建议是,先学基础(比如

PHP1,2,3季度) ,再学框架(PHP 第 4 季) 。之后如果对开源系统的二次开发感兴趣,其实有了这么多基础,直接看 API 就非常容易了,都不需要专门做视频指引。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-01-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Tech爬虫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
Prowork 团队协同
ProWork 团队协同(以下简称 ProWork )是便捷高效的协同平台,为团队中的不同角色提供支持。团队成员可以通过日历、清单来规划每⽇的工作,同时管理者也可以通过统计报表随时掌握团队状况。ProWork 摒弃了僵化的流程,通过灵活轻量的任务管理体系,满足不同团队的实际情况,目前 ProWork 所有功能均可免费使用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档