Trung Quân
  • Node.js
  • ReactJS
    • Learn React Hooks
  • MERN Stack
  • Thuật Toán
  • Công Nghệ
    • Amazon AWS
    • Hosting – Domain
  • Về Tác Giả
  • Bản Quyền
Top Posts
Lộ trình học lập trình Web từ con...
Nhận diện, xác thực khuôn mặt với ReactJS...
Tạo hiệu ứng thẻ bài Magic với HTML...
NodeJS viết API gửi Email với OAuth2 và...
Tạo hiệu ứng Parallax đơn giản chỉ với...
Git – GitHub • Học Git thực tế...
Tạo một trang GitHub Profile phiên bản vũ...
Cài đặt iTerm2, Oh My Zsh, Zsh-autosuggestions và...
Cài đặt NVM, NodeJS và GIT trên MacOS...
Thuật toán Tìm phần tử bị lặp đầu...

Trung Quân

  • Node.js
  • ReactJS
    • Learn React Hooks
  • MERN Stack
  • Thuật Toán
  • Công Nghệ
    • Amazon AWS
    • Hosting – Domain
  • Về Tác Giả
  • Bản Quyền
Common Problems

Framework và CMS khác nhau như thế nào? Và tại sao cần nó thay vì Code chay?

by trungquandev September 3, 2017
written by trungquandev September 3, 2017
framework-vs-cms-pure-code-trungquandev

Xin chào các bạn, như tiêu đề bài viết, hôm nay mình sẽ phân biệt về Framework, CMS cũng như tại sao lại cần chúng thay vì chúng ta có thể Code chay, Code thuần từ đầu đến cuối một dự án.

Mục đích mình viết bài này là bởi vì hồi năm 2 đại học, khi code xong một trang web bằng html, css, js, php, mysql thuần, mình lại nghe nói tới là cần phải học Framework hoặc CMS để có thể đi làm được và sẽ được các công ty chú ý hơn. Lúc đó mình chẳng hiểu tại sao có thể code thuần thì cần gì phải Framework, cần gì phải CMS cho lằng nhằng, bây giờ thì đỡ ngơ hơn rồi =))

Những nội dung có trong bài này:

  • Phân biệt Framework và CMS
  • Tôi có thể tự code thuần, tại sao tôi phải học Framework, CMS ???

1 – Phân biệt Framework và CMS

  • Framework: Đầu tiên các bạn hãy hiểu nó là một bộ khung đỡ, bộ khung này cung cấp cho chúng ta một cấu trúc cơ bản để thể xây dựng ứng dụng một cách linh hoạt, tối ưu, chuyên nghiệp, ổn định, dễ bảo trì…vv.. Giúp chúng ta tiết kiệm được rất nhiều thời gian, giảm thiểu số lần phải viết đi viết lại những đoạn mã code thông dụng.

– Một số framework ví dụ: Laravel, Codeigniter, Yii, CakePHP….

  • CMS: Viết tắt của Content Management System, dịch sang tiếng Việt của mình là Hệ Thống Quản Trị Nội Dung. Đối với CMS, chúng ta có thể dễ dàng quản lý, chỉnh sửa nội dung của trang web mà rất rất ít phải đụng tới code, có khi là không phải đụng tới luôn. Vì vậy đối những bạn làm SEO, Test hay bất cứ  ai không biết code, vẫn có thể làm được một trang web với CMS. Mọi thao tác đều là kéo thả hoặc là làm việc với giao diện ứng dụng.

– Một số CMS ví dụ: Wordpress, NukeViet, Magento, Joomla….

  • Note: có lẽ các bạn đã hiểu được phần nào sự khác nhau giữa 2 thằng trên rồi, nếu vẫn còn mơ hồ, thì mình có một cách giải thích khá dễ hiểu như sau:

Hãy tưởng tượng bây giờ bạn đang có rất nhiều tiền đi, bạn muốn có một căn nhà mới để ở. Có 2 phương án cho bạn lựa chọn:

Thứ nhất bạn có thể tìm mua một căn nhà đã được xây sẵn rồi sau đó bạn chỉ cần trang trí nhà cửa, sắp xếp nội thất trong nhà…bla..bla..

Thứ 2, bạn có thể tìm mua một mảnh đất, mua tất cả những vật liệu xây dựng cần thiết để tự tay xây lên căn nhà theo ý của bạn.

Việc làm một trang web cũng như bạn xây lên một căn nhà vậy, nếu bạn đi theo cách đầu tiên, thì đó được gọi là CMS, còn đối với cách thứ 2, thì đó lại là Framework. Dễ hiểu phải không nào ^^


2 – Tôi có thể code thuần, tại sao tôi phải học Framework, CMS ???

Sau khi đã phân biệt Framework và CMS ở phần trên, câu hỏi tiếp theo đặt ra là tại sao chúng ta lại phải làm việc với chúng, chúng ta đủ sức để Code thuần, Code chay cơ mà. Mình đã từng nghĩ như thế đấy =))

Chúng ta thử phân tích nhé:

– Bây giờ ta có một tháng để code ra một trang web, dùng code thuần ta có thể mất tới 20 ngày thôi. Nhưng dùng Framework lại có thể chỉ mất 15 ngày, thậm chí với CMS, chỉ 5 ngày (5 ngày là nhiều rồi đấy, mình chỉ ví dụ thôi =)).

– Các bạn thấy đấy, dĩ nhiên ta nên chọn cách tối ưu thời gian nhất, để dành thời gian còn lại làm những việc khác, học những thứ khác…v..v.. Nhưng phải chắc chắn là kiến thức lập trình thuần bạn phải nắm vững thì hãy làm Framework, CMS nhé. Cái gì cũng phải đi lên từ gốc cả. không ai trèo cây từ ngọn cả đâu ^^.

"Qua một ngày, nếu không học thêm được điều gì mới, bản thân ta đã bị lặp lại ngày hôm qua, thật lãng phí."

– Một điều nữa, khi đi làm thực tế, không phải một dự án chỉ có mỗi một mình chúng ta làm, mà là rất nhiều người cùng làm. Khi làm Teamwork như vậy, việc sử dụng Framework, CMS sẽ rất có ích vì công việc được làm theo một form chuẩn, một mô hình chuẩn. Thậm chí, khi team bạn có một người nghỉ việc, hay là bạn join vào một team mới, việc làm quen với code của Project theo chuẩn Framework, CMS sẽ giúp bạn tiết kiệm rất nhiều thời gian và dễ dàng làm việc hơn.


...

– Trên đây là những gì mình hiểu và học hỏi được, nếu có gì sai sót, hy vọng sẽ nhận được góp ý từ các bạn.

– Trên thực tế, khi đi làm, tùy vào mỗi công ty mà bạn sẽ phải follow theo cách làm việc ở đó, Framework, CMS hay là code thuần cũng được. Hãy cứ làm và học hỏi, bởi vì kiến thức không bao giờ là đủ !!!

...


Done, hy vọng bài viết này có thể giúp được phần nào đó cho những bạn chưa hiểu về Framework cũng như CMS, đồng thời cũng giúp những bạn mới bước chân vào lập trình, đứng trước ngưỡng cửa của giai đoạn phát triển sự nghiệp bản thân và đang cần một sự định hướng cụ thể cho công việc sau này. Cảm ơn các bạn đã đọc bài viết của mình.

Best Regards – Trung Quân – Green Cat

Khóa học lập trình làm việc thực tế:

Nếu các bạn thấy bài viết của mình có ích thì hãy ủng hộ mình bằng cách tham khảo bài viết giới thiệu khóa học lập trình MERN Stack Miễn Phí cực kỳ chất lượng và chính chủ dưới đây của mình nhé, cảm ơn các bạn ^^
KHOÁ HỌC LẬP TRÌNH MERN STACK 100% DỰ ÁN THỰC TẾ và CHẤT LƯỢNG
mern-stack-course-trungquandev
1 comment
0
FacebookTwitterGoogle +Pinterest
trungquandev

previous post
Phân trang trong Laravel kết hợp sử dụng Ajax
next post
Laravel & Pusher: Tạo một ứng dụng web thời gian thực

Related Posts

Hướng Dẫn Import Database Trong phpmyadmin

April 18, 2016

NodeJS xác thực người dùng sử dụng JWT...

October 16, 2019

Cấu hình bộ phát wifi TP-Link cho gia...

November 23, 2018

Tổng Quan Về Laravel Một Framework Khá Mạnh...

July 22, 2016

Ứng dụng web chuyển năm dương lịch bất...

June 8, 2016

Hướng dẫn tạo Domain ảo tại Localhost sử...

May 6, 2017

Hiểu sâu về JWT – JSON Web Tokens

September 15, 2019

Ứng dụng web tìm kiếm “cặp số bạn...

June 28, 2016

Tản mạn về cái tên “Lập trình viên...

March 25, 2018

Tất cả hướng đi để trở thành một...

April 20, 2017

Bát Chánh Đạo

batchanhdao-trungquandev

About Me

About Me

Trung Quân

Senior Software Engineer at Pod Foods (US)

Academy Of Cryptography Techniques

"I am a dog and cat lover, love green, love to read books, write blog and oil painting ..."

Read my CV → https://cv.trungquandev.com/

My Maxim Live

A bit of fragrance clings to the hand that gives flowers!

For Vietnamese young generation

Đừng bao giờ làm người khổng lồ trong tư tưởng nhưng chỉ là thằng lùn trong hành động.

Keep in touch

Facebook Instagram Linkedin Youtube Email Github

Fanpage Facebook

Facebook

Học lập trình “MERN Stack Cơ Bản” qua ứng dụng thực tế

mern-stack-trello-app-trungquandev


  Khóa học lập trình MERN Stack (NodeJS, ReactJS, ExpressJS, MongoDB) cực kỳ chất lượng và Miễn Phí do chính mình hướng dẫn nhé:
  MERN Stack - xây dựng ứng dụng quản lý công việc dạng Kanban tương tự Trello.

Học lập trình “MERN Stack Nâng Cao” qua ứng dụng thực tế

mern-stack-advanced-trello-app-trungquandev


  * Học lập trình MERN Stack Nâng Cao (NodeJS, ReactJS, ExpressJS, MongoDB). Đây là một khóa học mà mình đã làm cực kỳ tâm huyết, với phong cách dạy lập trình làm dự án thực tế, chuyên nghiệp. Để các bạn có một hành trang kiến thức vững chắc cho hành trình làm lập trình viên trong tương lai nhé.
  Lập Trình MERN Stack Nâng Cao - Học Thực Tế Để Đi Làm

YouTube: Trungquandev Official

youtube-channel-trungquandev-official


  - Các bạn tham khảo kênh YouTube chính thức của mình và ủng hộ mình bằng cách tặng mình một lượt Đăng Ký Kênh nha.
Cảm ơn các bạn ^^

  YouTube: TRUNGQUANDEV OFFICIAL

© Copyright

Bản quyền:
  © DMCA (Digital Millennium Copyright Act)


DMCA.com Protection Status

License

Giấy phép nội dung:
  Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 Quốc tế.


Giấy phép Creative Commons

Other links

Portfolio của mình:
  https://cv.trungquandev.com

Lập trình cuộc sống:
  https://laptrinhcuocsong.com

Nhiều bài viết hay về javascript:
  https://codetheworld.io

  • Facebook
  • Youtube
  • GitHub
  • Linkedin
  • Instagram

@2022 - trungquandev.com. Since 2016 - All Right Reserved. Developed by Trung Quân Dev