fbpx

Nên lựa chọn ngôn ngữ nào để lập trình website

Có thể nói Nam hoàn toàn không phải là “chuyên gia” trong lĩnh vực Web development, tuy nhiên tôi cũng rất yêu thích về các công nghệ xây dựng website, từ Frontend, Backend, Database…Chính vì vậy Nam cũng luôn thắc mắc & tìm kiếm câu hỏi: “Đâu là ngôn ngữ? giải pháp phù hợp để xây dựng Website”

Danh sách các ngôn ngữ lập trình website cấu thành nên các giải pháp nổi tiếng hàng đầu trên thế giớiCó thể nói Nam hoàn toàn không phải là “chuyên gia” trong lĩnh vực Web development, tuy nhiên tôi cũng rất yêu thích về các công nghệ xây dựng website, từ Frontend, Backend, Database…Chính vì vậy Nam cũng luôn thắc mắc & tìm kiếm câu hỏi: “Đâu là ngôn ngữ? giải pháp phù hợp để xây dựng Website”

Tìm hiểu ngay dịch vụ thiết kế Web

Website bao gồm những loại nào?

Theo những research của Nam từ trang quora.com thì công nghệ xây dựng Website được chia thành 2 loại chính: tĩnh và động

  • Website tĩnh: Thường không sử dụng Database, cùng với đó website cũng không có nhiều sự tương tác đến từ người dùng. Nội dung trong website thường không có sự thay đổi khi người dùng tương tác, hầu như chỉ dừng lại ở các tác vụ chuyển màn rất đơn giản. Như Website hiện tại Nam đang sử dụng cũng đang vận hành dựa trên Hugo Cms & Markdown file hoàn toàn không sử dụng kho dữ liệu Database
  • Website động, thường sử dụng Database để gọi dữ liệu, thường sẽ giải quyết nhu cầu của người dùng dựa theo Database có sẵn. Dynamic Web cũng là một trong những phần Nam rất coi trọng, trong đó phải kể đến WordPress, Flutter + Firebase (Công nghệ mới nhất được Nam áp dụng để xây dựng các ứng dụng đơn giản)

Những khái niệm, ngôn ngữ nào liên quan trong việc xây dựng một Website?

Một Website, web app hiện đại thì theo Nam hiểu chúng có tính chia tách decoupled, trong đó có thể chia thành những thành phần như sau:

Frontend:

Thường thì khi xây dựng một website tĩnh thì đôi khi, quá trình code chỉ dừng lại ở Frontend mà thôi. Bạn sẽ sử dụng Html để xây dựng bố cục, Css để tinh chỉnh & tạo sự sống động cho Layout & phần Javascript để thực hiện xây dựng các chức năng đơn giảnCó thể nói Html như xương sống, Javascript như bộ não còn Css cho ta thấy được vẻ đẹp của phần Frontend WebsiteKhi đã phần nào quen thuộc với bộ ba ngôn ngữ kể trên, bạn có thể chuyển sang phát triển những thành phần nâng cao như thư viện Frontend jQuery, Angular, React…hoặc chuyển phần Frontend & Interactive cho các công cụ như Flutter / Dart

Backend

Backend & DatabaseNhư mã nguồn WordPress thì chúng sử dụng Php cho Backend, thực tế Nam hay sử dụng Php để viết những tính năng, chèn script hoặc xây dựng giao diện(Single, Archive hoặc custom post type…) Hiện Nam đang khá quan tâm đến backend Golang và đang tập tành nó với công cụ tạo trang tĩnh Hugo Cms đã

Database

Nam không có nhiều kinh nghiệm trong quản trị Database, tuy vậy tôi cũng nắm rõ về phần này chia làm 2 loại chính

  • NoSQL (Dữ liệu không có quan hệ): MongoDb là ví dụ điển hình nhất, những dữ liệu đổ về sẽ dưới dạng Json decoded và thông thường sẽ theo kiểu mảng.
  • MySQL, MariaDB (Dữ liệu có quan hệ): Đây là dữ liệu dạng bảng có liên kết & logic rất chặt chẽ, phù hợp với việc Scale dữ liệu trên quy mô lớn.

Lựa chọn công nghệ nào cho website?

Để trả lời câu hỏi này thì còn … tùy vào mục đích xây dựng Website. Đối với những website chuyên để show thông tin & nặng về Content thì sử dụng WordPress vẫn là lựa chọn tối ưu, lý do là bởi WordPress đã được phát triển rất lâu đời với rất nhiều Plugins, cùng với đó là sự nâng cấp đáng kể về mặt hiệu năng khi sử dụng Block Editor. Khi sử dụng phiên bản mới này của WordPress, người dùng có thể thỏa thích sáng tạo nội dung & mở rộng khối lượng Block tùy vào nhu cầu sử dụng. Việc xây dựng website đơn giản như việc lắp ghép từng khối vào vậy. Cá nhân Nam cho rằng hiện tại hầu hết nhu cầu show thông tin, Blogging & SEO tiếp thị các sản phẩm hầu như chỉ cần sử dụng WordPress là đã có thể đảm nhiệm tốt. Đây cũng là kinh nghiệm nhiều năm làm việc trong lĩnh vực Thiết kế Web. Với sự kết hợp của Woocommerce cùng sự tối ưu khéo léo (Giảm số lượng sản phẩm trên 1 trang, phát huy tối đa sở trường chia sẻ thông tin của WordPress), việc kinh doanh Online của các doanh nghiệp vừa và nhỏ sẽ trở nên dễ dàng & linh hoạt hơn rất nhiều.Jam StackCòn nếu bạn muốn thực sự xây dựng các tính năng đắt tiền thì có thể cân nhắc việc Code App bằng Flutter, bởi phần Interactive của App làm rất ổn thỏa với cơ chế Statefull Widget, đồng thời trong quá trình xây dựng ứng dụng cũng có rất nhiều trạng thái, State Lifecycle… Với nhu cầu phát triển Web chỉ đơn thuần là Content với tốc độ siêu tốc, bạn cũng có thể cân nhắc sử dụng Hugo Cms (kết hợp với máy chủ CDN Netlify hoặc Cloud Cannon). Thậm chí, Nam cũng đã Demo cách xây dựng 1 website bán hàng nhẹ nhàng bằng Snipcart

Array

Nam là 1 Growth Hacker, Developer đam mê với sự nghiệp phát triển web