对于初学者来说,我想会有相对的了解和认识,自然也有助于今后前端面试的一些小细节!
当下学的自然是phpcms

phpcms优点:

1. 模块化安装,非常适合安装,拆卸非常方便的。

2. 灵活的标签语法,非常强大,漏洞较少。

3. 缓存做的很优秀。几乎支持目前主流的几大缓存系统解决方案,
file缓存,eaccelerator缓存,memcache缓存,shmop缓存等

4. 安全性也不错的。后台为了防范入侵,采用了cookie和session同时存在验证技术,
才可以安全进入后台。

多次登录失败,开启验证码功能。防止机器人频繁猜口令。

5. 数据库。 在根目录下的include目录下,db_access.php db_mssql.php db_mysql.php 等,
就照着他的方法,在增加几个也没问题的。

6.兼容性。是在php4的基础上开发的,所以向下兼容性是不错的。
在include/global.func.php 这个文件可以看到很多 if(!function_exist()){ },
这些代码就是为了兼容php4相关函数。


当然有利就会有弊
phpcms缺点:

1. 后台对应的模块的功能列表url,从数据库中读取的,也即是,安装的时候,
将url写入数据库了。这个如果二次开发要修改的话,不是很方便的,最好是写到文件中,
读取文件内容,方便开发者开发,而且也更容易维护,如果是出于安全考虑的话,不妨加下密也可以的。

2. 分部式。 后台的某些功能模块,还是要调用各个应用模块的admin部分,相关*.inc.php文件.
 如果我要把其中某个模块或应用独立出去部署到其他的服务器上,就不方便了。

3.数据库设计问题,后台开设模型时,表的引擎只能是myIsam,而不能选择其他的,
字段的类型,比如要开设一个字段为number,类型为int,但是在新增加的模型表中还是以varchar出现,
而不是int,长度是默认的255.modelfiled表,才发现该系统是将类型写到该表中了。

4.加密/解密程序。目前已经在想相关安全网站已被爆以破解。这也不是什么新闻了。
在开发中,关注下相关安全厂商发布的漏洞。

5. 数据库抽象层。 就以上提到的几个数据库文件
db_mssql.php db_mysql.php db_access.php 等对于数据库分布式,应该没问题的。
数据库抽象层处理数据比较快,且快平台更容易且更容易维护,这个是需要考虑的。



Dedecms功能实用,模板功能使用简单。但是漏洞较多
DEDE的优势:开源免费是DEDE的最大优势,可以集合群智群力来完成商业CMS不可能达到开发速度,
因为它的开发力量来自四面八方,懂程序的就可以。

1、 易用性。


在使用PHPCMS和DEDECMS的时候,易用性织梦要好很多,并且很多的功能很容易上手,织梦在一些细节方面比PHPCMS要注意得多,比如说, 在新建一个频道的时候,可以选择不同的模版及生成的位置。织梦只要你设置好目录的名称,比如目录是yd。通过设置,你可以把你的文件都放在该目录 下,并且自动绑定域名下的URL为xxx.com/yd/ 但是PHPCMS有一个选择,你选择生成静态文件的时候,还要你填写一个URL地址,如果你太粗心的话,很容易没有注意这个细节,我用PHPCMS的时 候,就为了这个细节,花了我半个多小时,后来问人才知道。


总结:PHPCMS在细节的一些处理不如DEDECMS。很多小小的功能要特别注意。


所以新人站长选择PHPCMS的时候,最好先抽空大致看下帮助文档。


2、 程序的代码简洁性。


此点主要是考虑前台页面的表现代表,不包括网站后台程序代码。因为本人不懂PHP,所以,不能做评价,特此注明。


个人觉得PHPCMS比DEDECMS最优秀的就是这块了,DEDECMS进行了封装了很多的代码,很多的标签拿来就只管用,但是那些标签代码里有很多的不需要的标签写了一大堆。对于一个喜欢在前台页面代码纠结我来说,织梦这块做得比PHPCMS要缺少一些。


另外PHPCMS的前台数据调用的方式很有意思,除了一些基本的标签之外,则可以完全通过GET的模式,自己写SQL语句来调取数据。这一点其实也是 让人很纠结的。因为不是每个人都懂SQL语句,如果PHPCMS能做一个象DX的那样方便的SQL调取数据的界面化的功能,那就太好了,再加上配合PHPCMS前台显示数据的方式,那么前台代码可以做到最大的优化了。


总结:对于喜欢在前台模版HTML简洁化的纠结的,PHPCMS相对来说比DEDECMS有优势。


当然DEDECMS也可能做到,但是需要一定的功底去修改相关的标签。总之我觉得挺为难的。因为我不会。这点可能有点片面了,但作参考。


3、 功能


功能这块,两个CMS差不多。大同小异的。


不过PHPCMS的BUG比织梦要多。由于我只用到了两个CMS的资讯模块,所以不太好做。此外,PHPCMS的全局标签似乎很少。而DEDECMS 的全局标签做到很优秀。比如我们要实现这样的标题 xxxxxxxxxxx_xxxxx网,织梦只要用标题标签_站点名称,就可以了。好象PHPCMS还有一段代码,对于我不懂程序的人可苦了,到最后,我 还是不会修改,最后只好放弃了。


总结:差不多,都可以选择。

查找了这些对比,我想后期有想冲前端去的朋友,可以更好的利用一下,有助面试 ,后期也会继续查找总结更新

搜查的PHPCMS,织梦DEDECMS 部分对比分析的更多相关文章

  1. 织梦dedecms做的网站首页标题篡改跳转赌博网站解决方案

    织梦dedecms因其强大功能,简单实用的优点常常被用来做企业网站,程序开源使用的人多了网站漏洞多会有中毒的情况,常见的有一种,首页标题关键词描述被篡改,百度快照收录点击后跳转的赌博网站,怎么解决这个 ...

  2. 织梦Dedecms使用Nginx的安全设置

    首先需要说明的是,任何程序都是有漏洞的,我们需要做好一些必要的防范,来减少由于程序漏洞造成的损失.织梦的漏洞多,这个是很多人的想法.不过大家如果做好了织梦系统的文件夹权限什么的设置,很多漏洞也是用不上 ...

  3. 织梦DedeCMS模板防盗的四种方法

    织梦(DedeCMS)模板也是一种财富,不想自己辛辛苦苦做的模板被盗用,在互联网上出现一些和自己一模一样的网站,就需要做好模板防盗.本文是No牛收集整理自网络,不过网上的版本都没有提供 Nginx 3 ...

  4. 织梦Dedecms安全设置

    织梦DedeCMS是一款非常流行的CMS,很多刚开始建站人都用的织梦,一方面是织梦比较容易操作;另一方面是织梦的SEO方面做的确实比其他的系统要好一些.这些都导致织梦的用户群是非常庞大的,用的人多了, ...

  5. 织梦DEDECMS网站后台安全检测提示 加一个开关

    1.进入后台后,点击 系统->系统基本参数->添加变量: 变量名称:cfg_safecheck_switch 变量值:N 变量类型:布尔(Y/N) 参数说明:启用安全监测系统: 2.找到系 ...

  6. 织梦DedeCMS首页调用单页文档内容的方法

    很多使用织梦dedecms单页文档功能的朋友都想知道如何在织梦首页调用单页文档的内容,下面就教大家具体的实现方法: 具体步骤如下: 首先在首页模板需要显示单页文档内容的地方插入如下代码: {dede: ...

  7. 织梦DedeCms调用全站相关文章方法

    织梦DedeCms 有个标签可以调用相关文章,通过下面的修改可以调用全站的相关文章,文章页内显示相关文章内容,可以提高关键词密度,还是挺不错的. 模板调用代码 <div>     < ...

  8. 织梦DedeCms用SQL语句调用数据库任意内容方法

    织梦DedeCms给我们提供了大量调用标签,供我们调用各种数据,但提供再多的标签,也有满足不了我们的时候,这时我们可以用SQL语句,灵活调用我们需要的内容. 如何任意调用数据库中的内容呢?先举个例子: ...

  9. 织梦DedeCms网站更换域名后文章图片路径批量修改

    因为织梦上传图片用的是绝对地址,如果域名更换后,之前发布的文章的图片URL是不会跟着改变的,所以我们需要把旧域名替换成新的域名,方法很简单,有一段SQL语句更新一下文章正文内容就行. 复制下面SQL语 ...

随机推荐

  1. Hibernate中的数据库方言(Dialect)

    在配置hibernate.cfg.xml时需指定使用数据库的方言: 例: <property name="dialect">org.hibernate.dialect. ...

  2. 苹果浏览器和uc浏览器在移动端的坑(日常积累,随时更新)

    先mark 1 .  移动端uc浏览器不兼容css3 calc() 2 .  ie8下a标签没有内容给宽高也不能触发点击跳转 3 . safari输入框加上readOnly="ture&qu ...

  3. Linux shell的输入输出

    echo --echo命令可以显示文本行或变量,或者把字符串输入到文件 --echo [option] string -e 解析转义字符 例如:echo -e "nimenhao\nasfd ...

  4. Fundamental types

    Fundamental types void type boolean type character types integer types Modifiers signedness size Pro ...

  5. C# 调用C++dll出现的问题。

    问题描述: 对 PInvoke 函数“winform应用!winform应用.Form1::add”的调用导致堆栈不对称.原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配.请检查 PIn ...

  6. windows 下面安装make

    1.前面文章中已经提到了wingw32的安装,安装好之后设置相应环境变量.2.打开cmd,输入 mingw-get install mingw32-make,会进行安装.3.输入 mingw32-ma ...

  7. C#通过虚方法实现方法重写—多态。

    class Program { //希望person存的是哪个类的对象就调用哪个类的方法 //第一步 将父类中对应方法家virtual关键字 变为虚方法(子类可重写) //子类中方法用override ...

  8. 32.QT-制作最强电压电阻表盘,可以自定义阴影效果,渐变颜色,图标,文字标签等-附带demo程序

    由于上位机需要绘制电压电阻表盘,如下图所示: 后来,在网上找阿找,还是没找到满意的,索性自己来画控件算了,由于第一次画控件,所以花了我2天时间,才画好 效果图如下: 上图的所有颜色(包括滑动的渐变/单 ...

  9. netty源码解解析(4.0)-1 核心架构

    netty是java开源社区的一个优秀的网络框架.使用netty,我们可以迅速地开发出稳定,高性能,安全的,扩展性良好的服务器应用程序.netty封装简化了在服务器开发领域的一些有挑战性的问题:jdk ...

  10. Python高阶函数--map

    map()函数 map()是 Python 内置的高阶函数,它接收一个函数 f 和一个 list,并通过把list 的每个元素依次作用在函数 f 上,得到一个新的 list 并返回. 例如,对于lis ...