Showing posts with label NetBeans. Show all posts
Showing posts with label NetBeans. Show all posts

Thursday, July 4, 2013

Vì sao bạn chọn PHP làm bạn đồng hành để thiết kế website?

Khác với mô hình lập trình Desktop thông thường, lập trình trên môi trường web chủ yếu dựa vào mô hình Client-Server và giao thức HTTP để làm việc. Hiện tại, có khá nhiều ngôn ngữ cho phép chúng ta lập trình web như Java, .NET, PHP, Perl, Python, Ruby on Rails…Mỗi ngôn ngữ đều có những ưu và khuyết điểm riêng. Nội dung của bài viết này sẽ đi vào một số điểm nổi bật của PHP và một số nhân tố khiến PHP ngày càng trở nên phổ biến như ngày nay.
Tôi chọn PHP vì:

Mã nguồn mở

  • Có lẽ nhiều bạn cũng biết PHP là một sản phẩm mã nguồn mở (Open-source) nên việc cài đặt và tùy biến PHP là miễn phí và tự do.
  • Vì có ưu thế nguồn mở nên PHP có thể được cài đặt trên hầu hết các Web Server thông dụng hiện nay như Apache, IIS…

Tính Cộng đồng của PHP

  • Là một ngôn ngữ mã nguồn mở cùng với sự phổ biến của PHP thì cộng đồng PHP được coi là khá lớn và có chất lượng.
  • Với cộng đồng phát triển lớn, việc cập nhật các bản vá lỗi phiên bản hiện tại cũng như thử nghiệm các phiên bản mới khiến PHP rất linh hoạt trong việc hoàn thiện mình.
  • Cộng đồng hỗ trợ, chia sẽ kinh nghiệm của PHP cũng rất dồi dào. Với rất nhiều diễn đàn, blog trong và ngoài nước nói về PHP đã khiến cho quá trình tiếp cận của người tìm hiểu PHP được rút ngắn nhanh chóng.

Thư viện phong phú

  • Ngoài sự hỗ trợ của cộng đồng, thư viện script PHP cũng rất phong phú và đa dạng. Từ những cái rất nhỏ như chỉ là 1 đoạn code, 1 hàm (PHP.net…) cho tới những cái lớn hơn như Framework (Zend, CakePHP, CogeIgniter, Symfony…) ,ứng dụng hoàn chỉnh (Joomla, WordPress, PhpBB…)
  • Với thư viện code phong phú, việc học tập và ứng dụng PHP trở nên rất dễ dàng và nhanh chóng. Đây cũng chính là đặc điểm khiến PHP trở nên khá nổi bật và cũng là nguyên nhân vì sao ngày càng có nhiều người sử dụng PHP để phát triển web.

Hỗ trợ kết nối nhiều hệ cơ sở dữ liệu

  • Nhu cầu xây dựng web có sử dụng cơ sở dữ liệu là một nhu cầu tất yếu và PHP cũng đáp ứng rất tốt nhu cầu này. Với việc tích hợp sẵn nhiều Database Client trong PHP đã làm cho ứng dụng PHP dễ dàng kết nối tới các hệ cơ sở dữ liệu thông dụng.
  • Việc cập nhật và nâng cấp các Database Client đơn giản chỉ là việc thay thế các Extension của PHP để phù hợp với hệ cơ sở dữ liệu mà PHP sẽ làm việc.
  • Một số hệ cơ sở dữ liệu thông dụng mà PHP có thể làm việc là: MySQL, MS SQL, Oracle, Cassandra…

Lập trình hướng đối tượng

  • Ngày nay, khái niệm lập trình hướng đối tượng (OOP) đã không còn xa lạ với lập trình viên. Với khả năng và lợi ích của mô hình lập trình này nên nhiều ngôn ngữ đã triển khai để hỗ trợ OOP.
  • Từ phiên bản PHP 5, PHP đã có khả năng hỗ trợ hầu hết các đặc điểm nổi bật của lập trình hướng đối tượng như là Inheritance, Abstraction, Encapsulation, Polymorphism, Interface, Autoload…
  • Với việc ngày càng có nhiều Framework và ứng dụng PHP viết bằng mô hình OOP nên lập trình viên tiếp cận và mở rộng các ứng dụng này trở nên dễ dàng và nhanh chóng.

Tính Bảo mật

  • Bản thân PHP là mã nguồn mỡ và cộng đồng phát triển rất tích cực nên có thể nói PHP khá là an toàn.
  • PHP cũng cung cấp nhiều cơ chế cho phép bạn triển khai tính bảo mật cho ứng dụng của mình như session, các hàm filter dữ liệu, kỹ thuật ép kiểu, thư viện PDO (PHP Data Object) để tương tác với cơ sở dữ liệu an toàn hơn.
  • Kết hợp với các kỹ thuật bảo mật ở các tầng khác thì ứng dụng PHP sẽ trở nên chắc chắn hơn và đảm bảo hoạt động cho website.

Khả năng mở rộng cho PHP

  • Bằng việc xây dựng trên nền ngôn ngữ C và là mã nguồn mở nên khả năng mở rộng cho ứng dụng PHP có thể nói là không có giới hạn.
  • Với thư viện phong phú và khả năng mở rộng lớn, ứng dụng PHP có thể tương tác với hầu hết các loại ứng dụng phổ biến như xử lý hình ảnh, nén dữ liệu, mã hóa, thao tác file PDF, Office, Email, Streaming…
  • Bạn hoàn toàn có thể tự xây dựng cho mình các Extension để tối ưu, bổ sung các chức năng cho PHP cũng như tối ưu luôn Core của PHP để phục vụ cho các mục đích mở rộng website của mình.

Liệu biết PHP là đủ?
Như nhiều bạn lập trình viên có khả năng học khá nhiều ngôn ngữ lập trình nói chung và ngôn ngữ lập trình web nói riêng thì việc chỉ biết mỗi PHP thì có lẽ chưa “thỏa mãn”. Biết một ngôn ngữ chưa hẳn là ít, nếu bạn chú tâm và đào sâu thì mỗi ngôn ngữ luôn có những tầng khác nhau để khám phá. Không sợ học hết, chỉ sợ học không nổi mà thôi!

Nói đi cũng phải nói lại, nếu chỉ biết mỗi PHP thì thật sự bạn khó có khả năng triển khai 1 website. Bởi vì trong một hệ thống website, Coding PHP chỉ là một mảng nhỏ trong khâu sản xuất web mà thôi. Bạn cần phải trang bị một số kiến thức khác trong công nghệ web như : HTML, CSS, Javascript, SEO, UML, Database, Networking…để đảm bảo bạn nắm được những gì sẽ xảy ra trong quá trình làm web vì nó sẽ rất có ích cho bạn khi triển khai PHP.

Như vậy có nghĩa là học lập trình web thì bạn phải vừa học theo chiều sâu và học theo chiều rộng. Ngôn ngữ lập trình web phía Server (PHP) thì học càng sâu càng tốt và các công nghệ của web thì tìm hiểu càng rộng càng tốt. Có như vậy bạn mới có một cái nhìn toàn diện hơn về ứng dụng web và dễ dàng hoàn thiện website.

Môi trường làm việc, thị trường & tương lai của PHP

Để học tập và nghiên cứu PHP thì triển khai môi trường để tiến hành rất dễ. Bạn có thể cài các bộ ứng dụng đầy đủ để tạo mô hình Client-Server ngay trên máy của mình để học (AppServ, WAMP, XAMPP…) .
Nếu bạn không muốn code từ đầu thì có thể nghiên cứu các Framework PHP để phát triển ứng dụng trên đó như là Zend, CakePHP, CodeIgniter…

Như hầu hết các ngôn ngữ lập trình hiện đại khác, bạn cũng có thể sử dụng các IDE để phát triển ứng dụng PHP như Zend Studio, Nusphere PhpED, NetBeans…Với các tính năng nổi bật như là Code & Syntax Highlighting, Auto-Complete, Project Manager, Code Navigator, Debug…thì việc code PHP sẽ trở nên dễ dàng và nhanh chóng hơn.

Với việc ngày càng có nhiều ứng dụng lớn viết bằng PHP, sự đa dạng trong ứng dụng và Framework làm cho thị trường và tương lai dành cho các bạn yêu thích PHP là rất lớn. Ngoài ra, bạn có thể thử sức với chứng chỉ ZCE của Zend trong lĩnh vực PHP. Rất nhiều công ty đang chọn PHP làm ngôn ngữ phát triển website cho khách hàng cũng như sản phẩm của riêng họ nên việc hiểu biết và chuyên sâu về công nghệ web nói chung và chuyên sâu về PHP nói riêng sẽ là một lợi thế rất lớn cho các bạn.

(Bài viết được sưu tầm trên internet)