Mình mới check lại version của php là 5.5.9 đối với image tutum nhé, mình nghĩ để project hoạt động tốt nhất bạn nên cài đặt image có phiên bản php 5.2
Bạn có thể tìm trên docker có khá nhiều image đã được publish
Tham khảo https://hub.docker.com/r/tommylau/php-5.2/
Mình có viết lại chỗ xử lí đếm ko lặp bằng PHP. kết quả khi S = 11 là 8 thì phải. Nhưng đây chỉ là cách cho bài toán cụ thể này. Không biết có cách nào xử lí tổng quát chỗ đếm ko lặp này ko nhỉ?
Sau 2 tuần xem video đủ kiểu, đọc doc... Không biết bắt đầu mọi thứ từ đâu rồi cũng trôi, nhưng nếu có ng học rồi hỏi thì giảm chắc dc 2/3 thời gian ... Nếu đọc doc mà tự tạo 1 project lớn liền là ngáp ngáp
Độ chính xác trong ví dụ này chưa cao là vì phỏng đoán xác suất tiên nghiệm chưa đúng. Xác suất tiên nghiệm ở đây là p(tiểu_đường) = p(không_tiểu_đường) = 0.5. Có vẻ không ổn. Không thể nào trong một dân số mà số người bị tiểu đường bằng với số người không bị tiểu đường cả.
À, còn với việc thay đổi code trực tiếp ở trait cũng không nên. Ví dụ ở trait em có hàm send email, yêu cầu phải thay đổi bằng send sms ==> em update code ở trait thì các class sử dụng nó không phải thay đổi gì. Nhưng như vậy em ko versioning được trait. Nguyên tắc open-close cũng bị vi phạm nếu em edit trực tiếp ở trait
Khác chứ em: vấn đề là thế này, trait là cái cụ thể, khi sử dụng em phải sử dụng use trait_name đúng không?
Giờ em có trait1 sử dụng ở 10 class. Em muốn thay trait1 bằng trait2 ==> em sẽ phải replace ở 10 chỗ của 10 class khác nhau, vì mình ko thể binding trait được
Còn với cơ chế binding và inject của interface, việc thay thế là cực kỳ đơn giản, vì chỉ thay thế ở 1 chỗ thôi.
Nói chung trait chỉ giúp em đỡ phải viết 1 số hàm thôi, nhưng nó vẫn là liên kết chặt (tightly coupled) với các class .
Em vẫn chưa hiểu lắm. Theo em hiểu cách của anh là : VD như để xử dụng 1 hàm A , của 1 class B nào đó, ta tạo ra interface C rồi bind nó với class B , rồi gọi hàm A bằng cách sử dụng interface C.
Nhưng giờ có traits rồi ở đâu cần dùng thì em gọi hàm của trait ra, nếu sau này muốn sửa gì thì em cũng chỉ sửa mỗi trait thôi. Em thấy nó có khác gì đâu anh.
Về bản chất, trait là ép các class sử dụng các function có sẵn của trait, không tùy biến được
còn interface là định nghĩa tên và tham số của function, chứ ko có định nghĩa body của function
==> Nên 2 cái được sinh ra cho 2 mục đích khác nhau, nó ko overlap cho nhau
Data Access Object.
Nó thuộc tầng Model đó bạn. Theo như MVC thì Model làm nghiệp vụ trực tiếp cuối cùng.
Ở đây DAO làm nghiệp vụ trực tiếp với database, ví dụ như chạy các câu query!
Mình đã từng thử dùng cách đưa nội dung file .properties vào $roorScope nhưng có vẻ không hợp lý, của bạn có vẻ rất hay và mình đang thử, sẽ báo kết quả cho bạn.
Rất cảm ơn bạn.
THẢO LUẬN
Thank bạn
vậy sau khi cài xong mysql thì có cần cài thêm phpmyadmin hay 1 image nào khác k ạ??
Mình mới check lại version của php là 5.5.9 đối với image tutum nhé, mình nghĩ để project hoạt động tốt nhất bạn nên cài đặt image có phiên bản php 5.2 Bạn có thể tìm trên docker có khá nhiều image đã được publish Tham khảo https://hub.docker.com/r/tommylau/php-5.2/
Mình có viết lại chỗ xử lí đếm ko lặp bằng PHP. kết quả khi S = 11 là 8 thì phải. Nhưng đây chỉ là cách cho bài toán cụ thể này. Không biết có cách nào xử lí tổng quát chỗ đếm ko lặp này ko nhỉ?
Sau 2 tuần xem video đủ kiểu, đọc doc... Không biết bắt đầu mọi thứ từ đâu rồi cũng trôi, nhưng nếu có ng học rồi hỏi thì giảm chắc dc 2/3 thời gian ... Nếu đọc doc mà tự tạo 1 project lớn liền là ngáp ngáp
Anh cho em hỏi là em đang làm một 1 project chạy php 5.2 thì cài tutum apache kia có được k ạ??? Em cảm ơn!!
Độ chính xác trong ví dụ này chưa cao là vì phỏng đoán xác suất tiên nghiệm chưa đúng. Xác suất tiên nghiệm ở đây là p(tiểu_đường) = p(không_tiểu_đường) = 0.5. Có vẻ không ổn. Không thể nào trong một dân số mà số người bị tiểu đường bằng với số người không bị tiểu đường cả.
Để tôn trọng tác giả thì mình nghĩ bạn dịch bài của ai thì phải ghi nguồn dịch. https://hackernoon.com/understanding-map-filter-and-reduce-in-javascript-5df1c7eee464 Trong bài gốc trên, tác giả còn ghi ra cụ thể anh ấy tham khảo từ nguồn nào.
À, còn với việc thay đổi code trực tiếp ở trait cũng không nên. Ví dụ ở trait em có hàm send email, yêu cầu phải thay đổi bằng send sms ==> em update code ở trait thì các class sử dụng nó không phải thay đổi gì. Nhưng như vậy em ko versioning được trait. Nguyên tắc open-close cũng bị vi phạm nếu em edit trực tiếp ở trait
Khác chứ em: vấn đề là thế này, trait là cái cụ thể, khi sử dụng em phải sử dụng use trait_name đúng không? Giờ em có trait1 sử dụng ở 10 class. Em muốn thay trait1 bằng trait2 ==> em sẽ phải replace ở 10 chỗ của 10 class khác nhau, vì mình ko thể binding trait được Còn với cơ chế binding và inject của interface, việc thay thế là cực kỳ đơn giản, vì chỉ thay thế ở 1 chỗ thôi. Nói chung trait chỉ giúp em đỡ phải viết 1 số hàm thôi, nhưng nó vẫn là liên kết chặt (tightly coupled) với các class .
Anh em nào chấp nhận trả phí thì có thể dùng package này nhé https://codecanyon.net/item/rv-media-laravel-media-management/20257936?rel=botble
Em vẫn chưa hiểu lắm. Theo em hiểu cách của anh là : VD như để xử dụng 1 hàm A , của 1 class B nào đó, ta tạo ra interface C rồi bind nó với class B , rồi gọi hàm A bằng cách sử dụng interface C. Nhưng giờ có traits rồi ở đâu cần dùng thì em gọi hàm của trait ra, nếu sau này muốn sửa gì thì em cũng chỉ sửa mỗi trait thôi. Em thấy nó có khác gì đâu anh.
Về bản chất, trait là ép các class sử dụng các function có sẵn của trait, không tùy biến được còn interface là định nghĩa tên và tham số của function, chứ ko có định nghĩa body của function ==> Nên 2 cái được sinh ra cho 2 mục đích khác nhau, nó ko overlap cho nhau
Bạn có thể add fb mình để mình hướng dẫn dùng tool này nhé
oh, thank bạn nhé!
Data Access Object. Nó thuộc tầng Model đó bạn. Theo như MVC thì Model làm nghiệp vụ trực tiếp cuối cùng. Ở đây DAO làm nghiệp vụ trực tiếp với database, ví dụ như chạy các câu query!
Mình đã từng thử dùng cách đưa nội dung file .properties vào $roorScope nhưng có vẻ không hợp lý, của bạn có vẻ rất hay và mình đang thử, sẽ báo kết quả cho bạn. Rất cảm ơn bạn.
Mình đang tham khảo theo link của bạn và thấy nó rất hay. Cảm ơn!
Có lẽ bạn đang nhầm lẫn một chút về khái niệm IDE và Text Editor. Về cơ bản sublimetext không khải là IDE mà nó chỉ là một Text Editor. Bạn có thể tham khảo hai khái niệm này ở đây: IDE: http://searchsoftwarequality.techtarget.com/definition/integrated-development-environment Text Editor: https://en.wikipedia.org/wiki/Text_editor
thank bạn đã quan tâm