Phan Nhật Minh
(phannhatminh)
Thành viên danh dự
Có đ/c nào hứng thú nghiên cứu coldfusion không nhỉ? Mình thấy cái này tương lai có triển vọng đánh bại PHP nếu như nó được chuyển sang public domain thay vì tồn tại theo dạng comercial như hiện nay. Theo mình thì ngôn ngữ này có một số điểm rất mạnh sau:
+ Tính tin cậy và bảo mật cực tốt do khả năng kiểm soát chặt chẽ input, variable thông qua pre-defined parameters đồng thời có thể run trên server dưới dạng encrypted code nhằm tránh các lỗi bảo mật liên quan đến coding disclosure (một lỗi rất phổ biến được các haker tận dụng hiểu quả và triệt để với PHP). Ngay cả khi chạy trên chế độ non-encrypted cũng vẫn rất an toàn do cơ chế management division rất được chú trọng. Eg: Khi coder muốn viết một chương trình giao tiếp với database thì tham biến cần biết duy nhất là database label, hoàn toàn không cần phải provide dbname, dbpass hay la host address như PHP. Vì admin ở cấp cao hơn sẽ chịu trách nhiệm thiết lập một hidden reference chứa các tham số dbname, dbpass và host address point tới label đó. Khả năng này khiến hệ thống database được bảo mật một cách tối đa trong trường hợp hacker cố gắng khai thác lỗi coding disclosure hoặc cần phải sự dụng external coder với độ tịn cậy thấp để phát triển các internal application.
+ Cấu trúc ngôn ngữ của coldfusion rất gần với HTML và tương tác rất tốt với HTML đặc biệt nếu bạn sử dụng các trương trình hỗ trợ như Dreamweaver. Vì coldfusion vừa là sripting language vừa là markup language như HTML.
+ Coldfusion còn có khả năng coding trên cả 3 cấu trúc language phổ biến hiện nay là object oriented(fusebox), scripting và markup do vậy rất thuận tiện và thoái mái cho các coders. Mặc dầu vậy điểm mạnh của CFML vẫn là nền tảng markup.
+ Sometimes bạn còn cảm thấy CFML giống như drag-n-drop programming language với khả năng phát triển các ứng dụng siêu nhanh. Eg Bạn có thể viết "from scratch" một forum tựa như vb hay phpbb trong vòng 2 tuần! với phần lớn công việc là design và drag-n-drop thay vì phải coding cho từng text box hay radio button như PHP.
+ Coldfusion có đặc tính independent vượt trội so với PHP bao gồm platform idependent, browser independent, database independent trong khi PHP không hỗ trợ database independent và browser independent.
Mặc dầu vậy CFML không phải không có những điểm yếu so với PHP:
+ Là thế hệ ngôn ngữ phát triển sau PHP và tập trung chính vào các ứng dung comercial thế nên CFML không phải là một ngôn ngữ flexible và sophisticated như PHP. CFML chỉ giới hạn ở các web application thông dụng và đặc biệt tập trung vào các ứng dụng web - database driven.
+ CFML thật sự là một comerical / instant language không thích hợp cho các mục đích nghiên cứu , học tập vì khi làm việc với nó việc duy nhất mà bạn cần quan tâm là thiết kế giao diện mà không hề biết đến những "dirty work" đằng sau nó.
+ CFML không thuộc public domain thế nên tính phổ biến của nó thua xa PHP, và bạn có thể cảm thấy thất vọng khi có ý định tìm kiếm các open-source application với CFML.
+ CFML sometimes tạo cho bạn cảm giác rườm rà và confuse khi debuging và analyzing vì bản chất markup language structure không phải là một structure thích hợp cho một scripting/programming language(Eg: khi coding dưới dạng markup bạn không thể tạo lập các funtion hoặc object).
Một số nhận xét chung như vậy, đ/c nào có hứng thú thì add tiếp
+ Tính tin cậy và bảo mật cực tốt do khả năng kiểm soát chặt chẽ input, variable thông qua pre-defined parameters đồng thời có thể run trên server dưới dạng encrypted code nhằm tránh các lỗi bảo mật liên quan đến coding disclosure (một lỗi rất phổ biến được các haker tận dụng hiểu quả và triệt để với PHP). Ngay cả khi chạy trên chế độ non-encrypted cũng vẫn rất an toàn do cơ chế management division rất được chú trọng. Eg: Khi coder muốn viết một chương trình giao tiếp với database thì tham biến cần biết duy nhất là database label, hoàn toàn không cần phải provide dbname, dbpass hay la host address như PHP. Vì admin ở cấp cao hơn sẽ chịu trách nhiệm thiết lập một hidden reference chứa các tham số dbname, dbpass và host address point tới label đó. Khả năng này khiến hệ thống database được bảo mật một cách tối đa trong trường hợp hacker cố gắng khai thác lỗi coding disclosure hoặc cần phải sự dụng external coder với độ tịn cậy thấp để phát triển các internal application.
+ Cấu trúc ngôn ngữ của coldfusion rất gần với HTML và tương tác rất tốt với HTML đặc biệt nếu bạn sử dụng các trương trình hỗ trợ như Dreamweaver. Vì coldfusion vừa là sripting language vừa là markup language như HTML.
+ Coldfusion còn có khả năng coding trên cả 3 cấu trúc language phổ biến hiện nay là object oriented(fusebox), scripting và markup do vậy rất thuận tiện và thoái mái cho các coders. Mặc dầu vậy điểm mạnh của CFML vẫn là nền tảng markup.
+ Sometimes bạn còn cảm thấy CFML giống như drag-n-drop programming language với khả năng phát triển các ứng dụng siêu nhanh. Eg Bạn có thể viết "from scratch" một forum tựa như vb hay phpbb trong vòng 2 tuần! với phần lớn công việc là design và drag-n-drop thay vì phải coding cho từng text box hay radio button như PHP.
+ Coldfusion có đặc tính independent vượt trội so với PHP bao gồm platform idependent, browser independent, database independent trong khi PHP không hỗ trợ database independent và browser independent.
Mặc dầu vậy CFML không phải không có những điểm yếu so với PHP:
+ Là thế hệ ngôn ngữ phát triển sau PHP và tập trung chính vào các ứng dung comercial thế nên CFML không phải là một ngôn ngữ flexible và sophisticated như PHP. CFML chỉ giới hạn ở các web application thông dụng và đặc biệt tập trung vào các ứng dụng web - database driven.
+ CFML thật sự là một comerical / instant language không thích hợp cho các mục đích nghiên cứu , học tập vì khi làm việc với nó việc duy nhất mà bạn cần quan tâm là thiết kế giao diện mà không hề biết đến những "dirty work" đằng sau nó.
+ CFML không thuộc public domain thế nên tính phổ biến của nó thua xa PHP, và bạn có thể cảm thấy thất vọng khi có ý định tìm kiếm các open-source application với CFML.
+ CFML sometimes tạo cho bạn cảm giác rườm rà và confuse khi debuging và analyzing vì bản chất markup language structure không phải là một structure thích hợp cho một scripting/programming language(Eg: khi coding dưới dạng markup bạn không thể tạo lập các funtion hoặc object).
Một số nhận xét chung như vậy, đ/c nào có hứng thú thì add tiếp