Thứ Ba, 13 tháng 8, 2013

Học PHP cơ bản - PHP Framework những điều nên và không nên


học php framework cơ bản

Có rất nhiều loại PHP framework sẵn có hiện nay cho bạn lựa chọn, thậm chí bạn có thể tự tạo ra 1 PHP framework cho riêng mình, tuy nhiên, điều này chỉ được khuyến khích dành cho các chuyên gia PHP (PHP expert) , những người đã có kiến thức và hiểu biết vững vàng về framework. Khi bạn cần tìm một loại PHP framework phù hợp nhất với nhu cầu của mình, đừng quên lưu ý về độ phổ biến của nó, ngoài ra ứng dụng web của bạn được phát triển bởi bao nhiêu người cũng là 1 điều nên lưu ý. Một PHP framework càng được phổ biến, tức là nó càng được nhiều người sử dụng và phát triển. Mặt khác, nếu bạn muốn xây dựng ứng dụng cho website của riêng mình, tốt nhất bạn nên chọn 1 PHP framework phù hợp và dễ sử dụng nhất đối với nhu cầu của bạn – không quan trọng nó có được nhiều người sử dụng hay không.

Ngày nay, nói đến lập trình PHP thì hầu hết các lập trình viên đều nghĩ tới 1 phương tiện là PHP Framework. Vì nó giúp lập trình viên giảm thiểu tối đa thời gian phải viết lại những thao tác cơ bản. Hơn nữa, PHP Frameworkcòn làm cho lập trình viên có nhiều thời gian nghiên cứu và cập nhật công nghệ mới, bởi họ không mất quá nhiều thời gian cho việc tìm tòi hay vận dụng những kiến thức mà cơ bản là đã quá nhàm chán với họ trong các dự án.


Thật vậy, PHP Frameworkhiện nay khá đầy đủ và đáp ứng hầu hết các điều kiện cần và đủ cho việc xây dựng một dự án. Nói tới Framework thì nổi bật nhất vẫn là những tay gạo cội và lão làng như: Zend Framework, CodeiGniter Framework, CakePHP Framework,.... Các framework này chú trọng những chi tiết nhỏ nhất trong lập trình. Nhằm giảm tải thời gian vận dụng cho người sử dụng chúng. Chẳng hạn như các helper giúp người dùng xây dựng form, các helper giúp người dùng sử dụng những thẻ HTML, các helper giúp người dùng validation các form và dữ liệu,....Những điều này, thực tế chỉ góp phần làm cho Framework đó trở nên thân thiện và quen thuộc với người dùng nhiều hơn thôi.
Nhưng thực tế, PHP Frameworkcũng để lại những hệ lụy tác động tới nhiều yếu tố của ứng dụng hay nghiêm trọng hơn vẫn là tới yếu tố con người. Trong bài này, chúng ta cùng phân tích xem. Vấn đề gì cần quan tâm và cần chú ý khi vận hành bất kể PHP Framework nào nhé.


Các bạn có thể học hỏi thêm và tham khảo ở trang chủ chia sẻ kiến thức php framework : http://daotaolaptrinh.edu.vn/php-framework

Cần hay không cần những helper như thế ?.
Nếu phải hỏi các lập trình viên rằng "Bạn có biết HTML hay không ?. Bạn có biết tạo form bằng HTML hay không ?." Sẽ không ít người cười và cho rằng bạn đang làm những việc dư thừa. Ở đẳng cấp một lập trình viên. Thì đó là yếu tố cơ bản bắt buộc họ phải học qua, vậy tại sao chúng ta còn đợi chờ một PHP Framework thay ta làm những công việc như thế. Có, dĩ nhiên là tốt. Nhưng không có cũng chẳng ảnh hưởng tới ai. Hơn nữa với việc cập nhật các thư viện này sẽ khiến cho ứng dụng trở nên chậm chạp và khó vận hành hơn. Một điều mà các PHP Framework luôn phải chịu tác động.
Model bài toán nan giải dành cho các framework.
Hầu hết các PHP Framework đều xây dựng trên mô hình M-V-C một trong những design pattern. Mô hình này sẽ tách code thành 3 phân vùng khác nhau với 3 trách nhiệm khác nhau. Controller sẽ đóng vai trò tiếp nhận request (yêu cầu) để chuyển chúng tới cho Model. Lúc này model sẽ vận hành các cấu trúc Active Record hoặc SQL thuần để lấy ra thông tin từ database sau đó đổ chúng vào dạng mảng. Lúc này khi controller yêu cầu tới request nào nó sẽ đẩy mảng thông tin đó vào view. Tại view để lấy được các giá trị trong mảng, ta lại phải duyệt mảng để lấy ra từng phần tử đơn lẻ như thế. Việc này càng làm cho ứng dụng trở nên chậm chạp. Góp phần gia tăng % "rùa" của PHP Framework.
Autoload - yếu tố chí mạng làm chậm framework.
Để giúp người sử dụng dễ dàng vận hành các thư viện, các PHP Frameworkthường cho phép tính năng autoload luôn bật on ở mọi thứ. Điều này giúp cho người lập trình không tốn thời gian khởi tạo các đối tượng khi cần dùng tới. Bởi chúng đã được triệu gọi ngay khi chúng ta truy cập tới controller mất rồi. Có vẻ lợi nhiều hơn hại các bạn nhỉ. Nhưng thực tế, chính autoload trở thành bài toán nan giải khi người sử dụng triệu gọi một đối tượng bất kỳ. Vì không phải controller nào cũng cần những thư viện giống nhau. Nó tùy thuộc vào yêu cầu của controller đó như thế nào và ra sao. Do đó, đừng bao giờ áp đặt cho PHP Frameworkcủa chúng ta phải load tất cả các thư viện. Đúng là lợi đấy, nhưng nếu lợi 1 thì hại sẽ là 10 cho ứng dụng của bạn.
Hướng đối tượng - câu chuyện muôn thuở cho các framework.
Để code được mạch lạc, được trong sáng. Người lập trình đều muốn đưa mã nguồn của họ về hướng đội tượng Để giúp họ phát huy yếu tố kế thừa và vận hành hiệu quả những gì mà họ đã từng làm với các ứng dụng trước đó. Hơn nữa, mô hình hướng đối tượng (Object-Oriented Programming) cũng là một thế mạnh của PHP. Nên cứ thế mà lập trình viên không ngừng xây dựng code của mình theo hướng đó. Đúng là OOP làm code trở nên trong sáng và rõ ràng, nhưng lạm dụng OOP một cách thiếu linh động sẽ làm gây tác dụng ngược lại với lợi ích mà chúng ta luôn mong muốn. Nên vận dụng OOP thật khéo léo với design pattern để phát huy tối đa sức mạnh mà OOP vốn có.
Và tư duy ngủ quên - mối hiểm họa đáng lo lắng cho lập trình viên. PHP Frameworkđúng một trong những bước tiến đáng kể của PHP. Bởi việc xây dựng hàng loạt các thư viện giúp người dùng giải quyết bài toán một cách khoa học và không cần phải làm lại những thao tác đã quá căn bản. Nhưng cũng chính vì những điều này mà PHP Frameworklàm cho người lập trình có thói quen ỷ lại một cách nghiêm trọng khi vận dụng PHP Framework. Chẳng hạn ở phiên bản CodeIgniter 1.7.2, CodeIgniter đã hỗ trợ cho người sử dụng cả thư viện shopping cart, image,....Việc này vô tình làm cho Lập trình viên PHP có suy nghĩ lười nhác trong việc vận dụng và phát triển. Với họ việc tạo 1 cart online chỉ đơn giản là móc, móc, trỏ, trỏ. Gọi lớp kia, gọi lớp này là xong. Vô tình chính PHP Framework đã giết chết suy nghĩ của người lập trình. PHP frameworks làm cho sự phát triển của những ứng dụng web viết bằng ngôn ngữ PHP trở nên trôi chảy hơn, bằng cách cung cấp 1 cấu trúc cơ bản để xây dựng những ứng dụng đó. Hay nói cách khác, PHP framework giúp đỡ các bạn thúc đẩy nhanh chóng quá trình phát triển ứng dụng, giúp bạn tiết kiệm được thời gian, tăng sự ổn định cho ứng dụng, và giảm thiểu số lần phải viết lại mã cho lập trình viên. Ngoài ra Framework còn giúp những người mới bắt đầu có thể xây dựng các ứng dụng ổn định hơn nhờ việc tương tác chính xác giữa các Database, mã (PHP) và giao diện (HTML) 1 cách riêng biệt. Điều này cho phép bạn dành nhiều thời gian để tạo ra các ứng dụng web, hơn là phí thời gian để viết các đoạn mã lặp lại trong 1 project.
 Như bạn có thể thấy, mỗi loại PHP framework đều có lợi thế riêng của nó, thế nên tốt nhất là bạn nên tìm hiểu kỹ và xài thử để có chọn lựa đúng đắn cho nhu cầu của mình. Ngoài ra bạn có thể nhờ những người đã có kinh nghiệm sử dụng tư vấn thêm cho mình, họ sẽ giúp bạn phân tích các tính năng cần thiết cho nhu cầu của mình và nên sử dụng loại nào.

Chủ Nhật, 11 tháng 8, 2013

Cơ bản về framework trong lập trình php

Học php cơ bản, học kiến thức php cơ bản, kinh nghiệm học php cơ bản ...

Framework là một thư viện các lớp đã được xây dựng hoàn chỉnh , bộ khung để phát triển các phần mềm ứng dụng. Framework  cơ bản không xa lạ gì đối với những bạn đã từng học những tài liệu PHP nhưng để có thể hiểu chuyên sâu về nó thì vẫn cần một thời gian.
- Zend Framework là một thư viện các lớp được xây dựng trên nền tảng ngôn ngữ PHP, theo hướng OOP và được công ty Zend phát triển.
1, Tại sao chúng ta phải sử dụng PHP Framework?
PHP frameworks cung cấp modules trước được xây dựng để thực hiện nhiệm vụ tẻ nhạt mã hóa, do đó, các nhà phát triển có thể dành nhiều thời gian của họ vào việc phát triển các ứng dụng thực tế hơn là tái xây dựng nền tảng với nhau và mỗi dự án.
Dùng lại mã qua các dự án tương tự sẽ tiết kiệm được rất nhiều các nhà phát triển một số lượng đáng kể về thời gian và nỗ lực trong dự án web đào tạo, web kinh doanh, web du lịch ...
2. Khi nào chúng ta sử dụng PHP Framework ? 
Đối với những người mới bắt đầu, một Framework sẽ cung cấp cho bạn sự đơn giản và ổn định cho dự án, vì vậy nó là ý tưởng tốt để sử dụng PHP Frameworks bất cứ khi nào bạn có thể 


php framework

Khi làm việc trên 1 project với thời gian giới hạn chặt chẽ, sử dụng PHP framework là 1 lợi thế rất lớn, nó có thể giúp tăng tốc quá trình viết mã. Vì thế, nếu bạn đang làm việc trong 1 tình trạng thời gian gấp rút, PHP framework sẽ rất có ích cho bạn.  
Một trường hợp khác, bạn nên quan tâm đến học tốt PHP framework là khi bạn làm 1 project qua mức cơ bản với số lượng mã phải viết quá lớn, nó sẽ giúp công việc của bạn trở nên bớt dài dòng hơn.
3.Những PHP Framework tốt nhất và nên sử dụng..


óm lại:

PHP framework là 1 giải pháp tuyệt vời cho các lập trình viên phát triển các kỹ năng như: giảm thiểu việc viết lại mã, tăng tốc quá trình phát triển ứng dụng, và chuẩn hóa mã lệnh khi xây dựng các ứng dụng web. Không chỉ giúp các bạn cải thiện tốc độ phát triển ứng dụng, nó còn giúp bạn giảm thiểu các lỗ hổng bảo mật 1 cách triệt để. PHP framework phù hợp cho cả những người mới làm quen hay những bạn đã có kiến thức vững về hoc Java.
- See more at: http://lmt.com.vn/home/php/php-tool/item/353-gioi-thieu-php-framework.html#sthash.c1tUdsZq.dpuf    

óm lại:

PHP framework là 1 giải pháp tuyệt vời cho các lập trình viên phát triển các kỹ năng như: giảm thiểu việc viết lại mã, tăng tốc quá trình phát triển ứng dụng, và chuẩn hóa mã lệnh khi xây dựng các ứng dụng web. Không chỉ giúp các bạn cải thiện tốc độ phát triển ứng dụng, nó còn giúp bạn giảm thiểu các lỗ hổng bảo mật 1 cách triệt để. PHP framework phù hợp cho cả những người mới làm quen hay những bạn đã có kiến thức vững về hoc Java.
- See more at: http://lmt.com.vn/home/php/php-tool/item/353-gioi-thieu-php-framework.html#sthash.c1tUdsZq.dpuf

óm lại:

PHP framework là 1 giải pháp tuyệt vời cho các lập trình viên phát triển các kỹ năng như: giảm thiểu việc viết lại mã, tăng tốc quá trình phát triển ứng dụng, và chuẩn hóa mã lệnh khi xây dựng các ứng dụng web. Không chỉ giúp các bạn cải thiện tốc độ phát triển ứng dụng, nó còn giúp bạn giảm thiểu các lỗ hổng bảo mật 1 cách triệt để. PHP framework phù hợp cho cả những người mới làm quen hay những bạn đã có kiến thức vững về hoc Java.
- See more at: http://lmt.com.vn/home/php/php-tool/item/353-gioi-thieu-php-framework.html#sthash.c1tUdsZq.dpuf   

óm lại:

PHP framework là 1 giải pháp tuyệt vời cho các lập trình viên phát triển các kỹ năng như: giảm thiểu việc viết lại mã, tăng tốc quá trình phát triển ứng dụng, và chuẩn hóa mã lệnh khi xây dựng các ứng dụng web. Không chỉ giúp các bạn cải thiện tốc độ phát triển ứng dụng, nó còn giúp bạn giảm thiểu các lỗ hổng bảo mật 1 cách triệt để. PHP framework phù hợp cho cả những người mới làm quen hay những bạn đã có kiến thức vững về hoc Java.
- See more at: http://lmt.com.vn/home/php/php-tool/item/353-gioi-thieu-php-framework.html#sthash.c1tUdsZq.dpuf
PHP frameworks là một giải pháp tuyệt vời dành cho các nhà lập trình web tập trung nhiều kỹ năng để giảm bớt các bước lặp đi lặp lại trong quá trình viết code, đẩy nhanh quá trình phát triển và cung cấp hướng lập trình viết mã tốt nhất để xây dựng dự án web. Điều này giúp các bạn phát triển các ứng dụng web phong phú, hạn chế các nguy cơ bảo mật cao trong các đoạn mã của bạn. Một số lập trình viên PHP không cảm thấy cần thiết để học và sử dụng Framework để phát triển ứng dụng web, nhưng đó là một lợi thế rất lớn và cơ bản để phục vụ phát triển nhanh ứng dụng đáp ứng nhu cầu của khách hàng của họ. Và đối với những người cơ bản mới bắt đầu Framework có thể tăng cường khả năng học hỏi viết mã PHP tốt nhất và giảm tối thiểu lỗi xảy ra khi viết code.
Hiện nay có rất nhiều Frameworks và vì thế các lập trình viên nên chắc chắn rằng có thể lựa chọn tốt nhất đáp ứng nhu cầu của mình dựa theo tính năng, hỗ trợ, tốc độ phát triển, khả năng mở rộng và các tính năng khác. 

Một số tài liệu PHP Frameworks  các bạn có thể tham khảo trên mạng internet và một số dạng framework bao gồm:
 Zend Framework
CakePHP, Symfony
Codelgniter
Seagull.