So sánh php và asp.net nên chọn ngôn ngữ nào

PHP – một trong những ngôn ngữ lập trình đứng top đầu được triệu “tín đồ” đang sử dụng và phát triển. ASP.NET – một nền tảng của Microsoft cho phép bạn lập trình trên bất kỳ ngôn ngữ .NET nào.

Show

Vậy ngôn ngữ lập trình nào tốt hơn? Nên học ngôn ngữ lập trình nào?

Trước hết chúng ta cần biết PHP và ASP.NET là gì và những điểm nổi trội của từng ngôn ngữ?

So sánh php và asp.net nên chọn ngôn ngữ nào

PHP

PHP là chữ viết tắt của cụm từ Hypertext Preprocessor. PHP ban đầu là một công cụ kịch bản (scripting) sau đó đã nhanh chóng thống lĩnh internet nhờ việc học nó khá dễ dàng và cộng đồng phát triển rất lớn.

PHP_ ngôn ngữ lập trình mã nguồn mở được sử dụng chủ yếu cho việc phát triển các ứng dụng dựa trên Web. Có một vài công cụ ngoài kia cho phép bạn sử dụng nó để viết các ứng dụng cho desktop, nhưng phần lớn các ứng dụng viết bằng PHP chạy trên một máy chủ Web (hầu hết mọi người sử dụng PHP với một máy chủ Apache, mặc dù một vài người cũng sử dụng Microsoft IIS).

Ưu điểm

  • Dùng mã nguồn mở (có thể chạy trên Apache hoặc IIS).
  • Phổ biến hơn ASP (có thể thấy dựa vào số website dùng PHP).
  • Dễ học khi đã biết HTML, C.
  • Dựa vào XAMP (dễ cấu hình).
  • Nhiều hệ thống CMS miễn phí dùng.
  • Đi cặp với mySQL (cũng dễ ).

Nhược điểm

  • Chỉ chạy trên ứng dụng web.

ASP.NET

So sánh php và asp.net nên chọn ngôn ngữ nào

ASP.NET được phát triển bởi Microsoft, cung cấp cho các nhà phát triển một công cụ kịch bản dễ dàng để xây dựng các trang web và các ứng dụng web. Đó là một người kế nhiệm của ASP (Active Server Pages), một nền tảng tiên phong khác của Microsoft vào giữa những năm 90. Bạn có thể lập trình ASP.NET bằng cách sử dụng bất kỳ ngôn ngữ nào mà .NET hỗ trợ, điều này làm cho nó đặc biệt phổ biến trong cộng đồng các nhà phát triển .NET. Sự thống trị trước đây của Microsoft trong thị trường trình duyệt web với IE cũng đóng góp một phần cho sự phổ biến ngày càng tăng của ASP.NET.

Một số trang web lớn có sử dụng ASP.NET là StackOverflow, PlentyOfFish.com và MySpace.

Ưu điểm

  • Mã nguồn rõ ràng, trong .NET 2.0, mã nguồn tách biệt với giao diện HTML.
  • Chạy nhanh hơn PHP.
  • Visual Studio có thể sinh mã, tiết kiệm thời gian viết code.
  • Có thể dùng C#, VB hoặc Managed C++.
  • Đi cặp MSSQL, Oracle.

Nhược điểm

  • Không thể chạy trên Linux
  • Nếu không có Visual Studio thì khó viết code

Nên học ngôn ngữ nào?

Học ngôn ngữ nào tùy thuộc vào tính chất công việc riêng của mỗi bạn. Nhưng WEBICO khuyến khích bạn học PHP vì những lý do sau đây:

  • Chi phí là 0đ
  • PHP hoạt động trên Host tốt hơn ASP.NET.
  • PHP nhận được sự hỗ trợ học tập tốt hơn, đối với người mới bạn có thể “thỉnh giáo” rất nhiều bạn lành nghề đi trước.
  • Dễ học hơn ASP.NET
  • Đứng top ngôn ngữ phổ biến nhất.

Với bất cứ ngôn ngữ nào cũng đòi hỏi sự học tập nghiêm túc, thành thạo. Chúc bạn tìm được ngôn ngữ lập trình phù hợp nhất để có thể ứng dụng trong công việc thiết kế web chuyên nghiệp của mình. Thiết kế web là công việc thú vị, hi vọng bạn có thể cháy hết mình với niềm đam mê.

Hiện nay 2 ngôn ngữ lập trình đang được sử dụng phổ biến hiện nay là PHP và ASP.NET. Nhiều nhà phát triển website sử dụng PHP nhưng một số lớn khác lại sử dụng ASP.NET. Vậy tại sao họ lại đưa ra các lựa chọn này. Chúng ta sẽ cùng tìm hiểu về 2 ngôn ngữ này.

Khái quát chung về ASP.NET và PHP

\>> ASP.NET: được phát triển bởi Microsoft nhằm mang lại cho các nhà phát triển một công cụ lập trình kịch bản để tạp ra các Website và ứng dụng trên nền tảng Website. Ngôn ngữ này là sự phát triển dựa trên nền tảng thành công của người “tiền nhiệm” ASP. Bạn có thể lập trình ASP.NET dựa trên bất kỳ ngôn ngữ .NET nào. Trước kia, sự thống trị của Microsoft trong lĩnh vực trình duyệt Web với Internet Explorer cũng là nguyên nhân khiến ASP.NET phát triển.

\>> PHP: là một ngôn ngữ lập trình máy chủ (Server) được tạo ra nhằm mục đích phát triển các Website “động” có tính tương tác cao. Cấu trúc câu lệnh của PHP khá giống với hai ngôn ngữ khác là C và Pascal

So sánh php và asp.net nên chọn ngôn ngữ nào

So sánh về chi phí :

PHP hoàn toàn miễn phí.

\>> ASP.NET chạy trên PC/Laptop chạy trên hệ điều hành windows. Bạn cũng có thể dùng Mono Project để chạy ASP.NET trên các máy Mac hoặc Linux.

\>> ASP.NET chỉ chạy trên các máy chủ windows mà trong vài năm trở lại đây thì chi phí để thuê 1 máy chủ windows thường cao hơn chi phí phải trả cho một máy chủ Linux cùng loại. Môi trường phát triển tích hợp – IDE phổ biến nhất cho ASP.NET là Visual Studio.

Nếu là người mới học lập trình thì chi phí bạn phải trả cho ASP.NET bằng 0. Tuy nhiên, nếu bạn muốn làm việc chuyên nghiệp với ngôn ngữ này thì bạn cùng cần phải suy nghĩ đến việc mua bản quyền cho Visual Studio.

Khả năng mở rộng:

Cả 2 ngôn ngữ đều có khả năng mở rộng rất cao. Ví dụ điển hình là hai mạng xã hội nổi tiếng như Facebook (viết bằng PHP) và MySpace (viết bằng ASP.NET). Điều này nói lên khả năng mở rộng của cả 2 ngôn ngữ là ngang nhau.

So sánh php và asp.net nên chọn ngôn ngữ nào

So sánh về kỹ thuật:

\>> Theo đánh giá chung, các giải pháp của Microsoft rất tốt ở cấp Enterprise (cái này thì chỉ có J2EE sánh được). Xin đừng nhầm lẫn giữa khái niệm Enterprise với website có nhiều người truy cập, ở đây nói về độ phức tạp của các dịch vụ, độ tin cậy, tính khả chuyển… những tiêu chuẩn mà chỉ khi thiết kế các ứng dụng phục vụ cho các tập đoàn lớn thì chúng ta mới đụng tới. Tuy nhiên đi kèm với nó cũng là sự phức tạp và tốn kém tài nguyên.

\>> PHP rất thích hợp hơn cho những nhóm phát triển nhỏ, cho cách phát triển kiểu agile, nghĩa là có thời gian phát triển và đưa vào sử dụng nhanh. Nhưng điều này không có nghĩa là PHP dành cho những website có ít người sử dụng, rất nhiều website có hàng triệu người sử dụng hàng ngày phát triển bằng PHP.

So sánh về Tốc độ:

Có khá nhiều tranh cãi về tốc độ của LAMP hay của ASP.Net + SQL Server cao hơn. Cái này còn tùy vào cấu hình, đặc thù của ứng dụng. Nhìn chung về mặt web server, Linux “có tiếng” hơn Windows Server về tốc độ (Google, Yahoo đều dùng Linux server cho các dịch vụ của mình và không có phàn nàn gì về tốc độ cả!). Theo một số người, PHP script nhanh hơn ASP.Net script (như C#, VB.Net) trong các tác vụ thông thường và tốn ít bộ nhớ hơn, tuy nhiên điều này cũng còn nhiều tranh cãi.

Về database server, MySQL có tốc độ rất tốt (đặc biệt là kiểu MyISAM) nhưng thiếu một số tính năng cao cấp như stored procedure, trigger (phiên bản MySQL 5 có hỗ trợ các tính năng này nhưng còn yếu và có bug).Tất nhiên, PHP cũng có thể dùng với nhiều database khác, còn ASP.Net dùng với Oracle thì không có gì phải bàn về tốc độ cả.

Bạn không cần phải băn khoăn gì về tốc độ của PHP + MySQL hay ASP.Net cho bất kỳ website nào dù lớn hay nhỏ. Vấn đề chỉ là thiết kế ứng dụng hiệu quả và tìm được dịch vụ hosting tốt.

So sánh php và asp.net nên chọn ngôn ngữ nào

Ngôn ngữ lập trình – nhân lực cần để phát triển:

\>> ASP.Net, nói chính xác hơn là C# hay VB.Net, là ngôn ngữ lập trình hướng đối tượng được thiết kế tốt, thừa hưởng rất nhiều thế mạnh của Java. ASP.Net cũng có bộ công cụ phát triển hạng nhất: Visual Studio.Net. Nhưng giá phải trả là tài nguyên và thời gian học. Để tạo một trang web đơn giản bằng ASP.Net khá dễ, nhưng để hiều sâu sắc cho những vần đề phức tạp hơn lại là cả một quá trình.

\>> PHP là một ngôn ngữ được sinh ra với mục đích duy nhất là để dùng lập trình Web: giản dị và dễ hiểu. Mãi đến PHP 5, lập trình hướng đối tượng mới được đưa vào tương đối đầy đủ. Công cụ phát triển (IDE) cho PHP không có cái nào sánh được VS nhưng hiện nay nếu dùng Eclipse plug-in cũng có thể nói đạt 8/10.

Vấn đề bảo mật:

Vấn đề bảo mật ASP được đánh giá là cao hơn vì và ít bị các loại virut nhắm vào. Tuy nhiên, người thiết kế web cần lưu ý vì cả PHP và ASP đều có những lỗ hổng bảo mật khác nhau. Tốc độ Tốc độ tùy vào cấu hình, đặc thù của ứng dụng. Về mặt web server thì Linux có tốc độ cao hơn Window server. PHP script có tốc độ cao hơn ASP.NET script, trong các tác vụ thông thường và tốn ít bộ nhớ hơn. Về database server, MySQL có tốc độ rất tốt nhưng thiếu một số tính năng cao cấp như stored procedure, trigger.

Chúng ta thường bị "nói quá" về ngôn ngữ này hay ngôn ngữ kia tốt hơn. PHP hay ASP.NET mỗi ngôn ngữ đều có những thế mạnh riêng của nó nên cũng không thể đánh giá là ngôn ngữ nào hơn ngôn ngữ nào, thực tế hoàn toàn phụ thuộc vào kỹ năng của người lập trình và quản lý hệ thống. Chúc bạn lựa chọn được cho mình một trang web với ngôn ngữ lập trình phù hợp với mục đích của website.