Technical Stack là mẫu khỉ gì? | Từ coder tới developer – Tôi đi code dạo

Lang thang trên mạng, ta thường nghe nhắc tới những 1 số thuật ngữ như LAMP Stack, MEAN Stack. Trong quy trình xây dựng siêu phẩm start-up, ta cũng hay nghe nhắc tới tầm quan yếu của việc chọn technical stack cho ưu thích.

Đã có bao giờ bạn thắc mắc về ý nghĩa của những thuật ngữ này chưa? Hãy cùng tìm hiểu qua bài viết này nhé!

Stack là gì, tại sao nó ra đời?

Để làm cho ra 1 ứng dụng hoàn chỉnh, chỉ viết code ko thôi là ko đủ. Lúc cần lưu trữ thông tin, ta nên đưa chúng vào cơ sở dữ liệu. Sau khoản thời gian đã hoàn thành phần code, ta nên tìm bí quyết deploy nó, tức là đưa code lên 1 chỗ nào đấy để chạy code.

1 chương trình hoàn thiện ko chỉ có code, mà còn nên có nền móng hệ điều hành và những phần mềm đi kèm (net server, cơ sở dữ liệu). Người ta gom những thứ này lại sở hữu nhau (giống như ráp Lego đấy), tạo thành technical stack.

Technical Stack, còn gọi là answer stack, là 1 tập hợp những phần mềm/kỹ thuật phối hợp chung sở hữu nhau, tạo thành 1 nền móng để ứng dụng có thể hoạt động được.

Technical Stack là cái khỉ gì? | Từ coder đến developer - Tôi đi code dạo
Những phòng ban cấu thành 1 stack

Cấu tạo của Stack ra sao?

1 stack thường được cấu tạo bởi những thành phần:

  • Hệ điều hành
  • Net Server
  • Database Server
  • Again-end Programming Language

Giả sử sở hữu LAMP Stack, những thành phần này sẽ lần lượt là:

  • Linux
  • Apache
  • MySQL hoặc MariaDB
  • PHP hoặc Python

Từng thành phần trong stack đảm nhận 1 nhiệm vụ biệt lập.

Technical Stack là cái khỉ gì? | Từ coder đến developer - Tôi đi code dạo
Vai trò của những thành phần trong 1 stack

Hình trên là tóm tắt bí quyết 1 ứng dụng net hoạt động. Giả sử sở hữu LAMP stack, máy chủ sẽ chạy hệ điều hành Linux, cài server Apache Tomcat. Lúc có request từ khách hàng, server sẽ gọi code PHP, code này đọc dữ liệu từ cơ sở dữ liệu MySQL, render ra HTML về phía khách hàng.

Xem Thêm  04 phương pháp điều trị bệnh trứng tóc hiệu quả cho chị em

Thông thường, sở hữu những host trên mạng (somee, hawkhost, digital ocean) họ phân phối sẵn toàn bộ stack (os, net server và database), khách hàng chỉ việc up code lên và chạy thôi.

Giả dụ muốn tìm hiểu bí quyết stack hoạt động, khách hàng hãy thử tìm kiếm 1 con VPS chạy Linux, tiếp theo tự động cài đặt những phần mềm cần thiết. Thú vị nhiều đấy ;).

Lựa chọn software program stack theo tiêu chí nào?

Thông thường, người ta lựa chọn stack dựa vào khả năng, trình độ của viên chức. Thí dụ cácnhân viên đã quen code PHP thì cứ LAMP Stack mà táng, viên chức khoái hàng Microsoft thì dùng Stack của Microsoft thôi.

Technical Stack là cái khỉ gì? | Từ coder đến developer - Tôi đi code dạo
Slack, ứng dụng chat cho staff khá nổi danh cũng được xây dựng trên LAMP stack.

Bên cạnh ra, người ta còn lựa chọn Stack dựa theo tốc độ phát triển thành ứng dụng hay tốc độ xử lý. Thuở new start-up, Twitter chọn stack dựa trên Ruby on Rails để phát triểu ứng dụng nhanh chóng. Tiếp theo, họ chuyển qua Stack dùng Java/Scala để nâng cao khả năng chịu tải của hệ thống (Nguồn).

Lựa chọn technical stack là 1 điều quan yếu hàng đầu lúc khởi đầu xây dựng siêu phẩm. Nó xác định kiến trúc hệ thống, chi chi phí vận hành cũng như tốc độ và khả năng mở rộng của ứng dụng.

Do vậy, chúng ta sẽ cùng tìm hiểu về 1 số stack thường, cùng sở hữu những ưu nhược điểm của chúng tại phần dưới nhé!

1 số stack thường

LAMP Stack

Xem Thêm  Ko Gian Nghiên Cứu Là Gì ? Cấu Trúc 1 Đề Tài Nghiên Cứu Khoa Học

Đây là stack thường nhất, được gần như những web site dùng. Stack này bao gồm: Linux, Apache, MySQL và PHP/Python/Perl. Những CMS phổ thông} như Joomla, WordPress đều dựa trên nền stack này cả.

Technical Stack là cái khỉ gì? | Từ coder đến developer - Tôi đi code dạo
Những thành phần của LAMP Stack

Điểm “hay ho” của Stack này là những thành phần của nó đều Open Supply, ko cần nên bỏ đồng nào ra sắm, chi chi phí bản quyền bằng 0. Cùng đồng người dùng siêu nhiều nên bạn siêu dễ dàng tìm chỉ dẫn lúc gặp vấn đề.

Những máy chủ cài đặt Linux giá cả cũng siêu hạt dẻ. Do đấy, ví dụ code trên LAMP Stack, khách hàng có thể dễ dàng tìm host free cho ứng dụng của mình.

Stack này còn có 1 số dị bản như: MAMP (Trên MAC), WAMP( Trên Win), XAMPP (Trên mọi hệ điều hành).

WISA Stack

Stack này bao gồm: Window, IIS, SQL Server, sentayho.com.vn. Có thể thấy, toàn bộ stack dùng hàng của Microsoft.

Technical Stack là cái khỉ gì? | Từ coder đến developer - Tôi đi code dạo
Những thành phần của WISA Stack

Stack này được nhiều tổ chức, tổ chức dùng. Thông thường những ứng dụng được code trên nền móng sentayho.com.vn sẽ lựa chọn stack này.

Ưu điểm của stack này là tốc độ phát triển thành ứng dụng và khả năng bảo trì: C# là 1 ngôn ngữ khá mạnh mẽ, sentayho.com.vn làm cho việc siêu phải chăng sở hữu SQL Server, có nhiều instrument tương trợ tận răng cho khách hàng.

Tuy vậy, dùng hàng của Microsoft thì chi chi phí bản quyền (sắm Visible Studio để code, bản quyền Window, SQL Server) khá cao, do đấy những tổ chức bé thường ko dùng.

Xem Thêm  Chỉ từ là gì? Vai trò trong câu và thí dụ minh họa chỉ từ

Sắp đầy, C# đã trở nên ngôn ngữ Open Supply. Phương pháp đây ko nhiều ngày .NET Core ra đời, SQL Server cũng đã có mặt trên Linux. Biết đâu ko nhiều ngày sau chúng ta sẽ có 1 stack miễn chi phí chạy trên Linux sở hữu kỹ thuật của Microsoft thì sao ;).

MEAN Stack

1 stack cũng khá nổi trong vài 5 trở lại đây là MEAN stack. Nó bao gồm: MongoDB, Specific, AngularJS, NodeJS. (1 dị bản khác là MERN, thay đổi Angular và React).

Technical Stack là cái khỉ gì? | Từ coder đến developer - Tôi đi code dạo
Những thành phần của MEAN Stack

Thực ra stack này ko hoàn toàn đúng chuẩn stack vì nó ko bao gồm hệ điều hành. NodeJS dùng để viết code server-side, có thể hoạt động như net server luôn (Trong thực tế người ta thường dùng thêm nginx làm cho proxy server).

Technical Stack là cái khỉ gì? | Từ coder đến developer - Tôi đi code dạo

Cũng như LAMP Stack, toàn bộ những thành phần của MEAN Stack đều là hàng Open Supply. Điểm “hay ho” của stack này là toàn bộ những thành phần của nó đều dùng ngôn ngữ JavaScript.

Điều này đồng nghĩa sở hữu việc bạn có thể xây dựng toàn bộ 1 hệ thống chỉ bằng 1 ngôn ngữ duy nhất, chạy tại cả front-end và back-end, tiết kiệm thời kì và chi chi phí.

Từng developer sẽ có 1 technical stack ưa thích. Người trải nghiệm cùng chia sẻ về technical stack mà mình hay dùng trong phần remark nha. Giả dụ có thắc mắc gì, đừng ngại ngùng đặt câu hỏi nhé!

Tài liệu để khách hàng tham khảo thêm:

  • https://en.wikipedia.org/wiki/Solution_stack
  • https://www.upwork.com/hiring/improvement/choosing-the-right-software-stack-for-your-website/
  • https://en.wikipedia.org/wiki/LAMP_(software_bundle)
  • https://en.wikipedia.org/wiki/MEAN_(software_bundle)