
Kiểm thử dựa trên yêu cầu
Để hiểu được Kiểm thử dựa trên yêu cầu, trước hết chúng ta hãy hiểu yêu cầu là gì và ai tạo ra chúng? Yêu cầu là gì? Từ điển Oxford định nghĩa yêu cầu như là một nhu cầu, mong muốn, nhu cầu, và muốn, sự cần thiết, điều kiện tiên quyết, bắt buộc và cần thiết. Đơn giản, trong phát triển sản phẩm, ...

Upload và download ảnh trên S3 [Scala. Play]
Đầu tiên, đăng kí một tài khoản trên S3 1.1.Tạo bucket Chọn vào phần button create bucket hiển thị ở màn hình top S3 Step 1 Tên bucket Nhập tuỳ ý tên bucket dựa theo format của DNS như sau ・ Không sử dụng dấu ngoặc trong tên Bucket ・Độ dài của kí tự là từ 3~63 ・ Không kết thúc ...

Android - Architecture Components ViewModel - xử lý configuration changes chưa bao giờ đơn giản đến thế.
Rất cảm ơn tất cả các bạn đã đọc và ủng hộ cho 2 bài viết trước về Architecture Components Android - Bạn biết gì về Architecture Components Giới thiệu về Room Persistence Library Tiếp tục seri về Architecture Components, lần này mình xin tiếp tục giới thiệu chi tiết về một Component nữa ...

Đào sâu về toán tử "===" ROR
Là dân IT chắc không ai thoát khỏi câu hỏi: " == và === khác nhau như thế nào?". Nếu ai đó đã biết về Javascript thì trong Javascript, toán tử === chỉ trả về true nếu như cả hai toán hạng đều cùng một loại và có cùng giá trị. Nếu so sánh khác loại, kết quả sẽ trả về false. Đơn giản vậy thôi... ...

Override rails admin gem, authenticate and authorize it with devise
Rails admin gem is a popular gem for creating admin interface on the resources. It provides a quick way of the following operations: CRUD operation Export data to CSV/EXCEL Easily query the data Automatic form validation Authentication and authorization via devise and cancancan But at ...

kết hợp Custom Data Attributes và hàm attr()
Hàm attr(), bên cạnh ứng dụng vào tootips, ta còn có thể xây dựng thumbnail có tittle và description để kết hợp với data attributes. Bạn chỉ cần viết đoạn code HTML theo cấu trúc sau: <a class="caption" href="#" data-title="Vulture" data-description="..."> <img src="img.jpg" ...

Những ứng dụng thực tế của Singleton class trong Ruby
Hầu hết các Ruby developer đều đã trải qua khái niệm metaclasses hoặc singleton. Tuy nhiên khái niệm này dường như là một điều mơ hồ và hiếm khi được sử dụng, mặc dù chúng ta đều hưởng lợi từ các singleton class mỗi ngày. Bạn có thể đã đọc các bài báo cổ điển về các loại metaclass của Ruby bởi ...

Đại số quan hệ và các phép toán tập hợp
Đại số quan hệ (Relational algebra) là một bộ các toán tử và quy tắc được sử dụng để thao tác trên các quan hệ và kết quả trả về là một quan hệ mới. Sau khi Edgar F. Codd đưa ra mô hình dữ liệu quan hệ vào năm 1970, đại số quan hệ được xem là nền tảng cho các ngôn ngữ truy vấn dữ liệu nói chung ...

Machine Learning thật thú vị (7): Tại sao Machine Learning vẫn chưa thể so sánh với bộ não con người? - mô hình DCGANs
Một trong những khả năng tuyệt vời nhất của con người chính là khả năng tưởng tượng. Có những người ta chưa gặp bao giờ, nhưng nếu ai đó đưa ta ảnh của nửa khuôn mặt người đó, ta hoàn toàn có thể dự đoán ra hình ảnh của cả khuôn mặt. Thậm chí, con người hoàn toàn có thể tưởng tượng ra toàn bộ một ...

Machine Learning thật thú vị (8): Đánh lừa hệ thống mạng nơron trong Machine Learning
Cứ khi nào một lập trình viên viết một chương trình phần mềm, những hackers luôn cố gắng tìm cách xuyên thủng phần mềm đó. Nhiều hackers còn lợi dụng những lỗi nhỏ nhất trong chương trình để phá hủy hệ thống, đánh cắp dữ liệu hay gây ra tàn phá nói chung. Nhưng liệu hệ thống được xây dựng bởi ...

Ad-hoc Testing: làm thế nào để phát hiện ra bug mà không có quy trình kiểm thử chính thức
1. Khái niệm Thuật ngữ ad-hoc ngụ ý sự thiếu vắng cấu trúc hoặc cái gì đó không có phương pháp. Khi bạn nói về thử nghiệm ad hoc , nó có nghĩa là nó là một phương thức kiểm thử hộp đen hoặc thực hiện kiểm thử mà không theo bất kỳ quy trình chính thức nào. Quy trình chính thức ở đây có nghĩa là ...

Giải quyết các vấn đề xung quanh Requirement.
Bài viết được đúc kết từ các dự án thực tế tôi đã làm và tham khảo những ý kiến/bài viết trên mạng khác. Nội dung có thể không đúng hoàn toàn với dự án của bạn nhưng bạn có thể ứng dụng một phần nào đó. Những phương pháp (nằm trong từng vấn đề) mà tôi đề cập dưới đây sẽ luôn có phương pháp: ...

ResponseUIViewController in IOS!
Bài hôm nay mình sẽ giới thiệu cho các bạn cách để Load UIViewController 1 cách dễ dàng hơn. đầu tiên các bạn tạo cho 1 protocol như này. protocol ResponseUIViewController {} extension ResponseUIViewController where Self: UIViewController { } xong rồi cho UIViewController adopt protocol ...

Tổng quan về Web Front-End 2017
Giới thiệu Trong những năm trở lại đây, xu hướng công nghệ trong việc phát triển Front-end đã thay đổi và phát triển mạnh. Các thư viện mới, các công cụ hỗ trợ mới,.. ngày một xuất hiện nhiều hơn làm cho hệ sinh thái của front-end ngày một lớn dần đồng thời cung cấp rất nhiều lựa chọn công cụ, ...

Ingestion and Processing of Data For Big Data and IoT Solutions
Overview In the era of the Internet of Things and Mobility, with a huge volume of data becoming available at a fast velocity, there must be the need for an efficient Analytics System. Also, the variety of data is coming from various sources in different formats, such as sensors, logs, ...

Code CSS chuyên nghiệp và đơn giản hơn với SASS - Phần 2
Ở bài viết trước, mình đã giới thiệu qua các quy tắc khi biết css bằng scss sao cho code chúng ta ngắn gọn trực quan và dễ hiểu nhất. Các bạn có thể tham khảo phần 1 tại đây. Ở bài viết này, mình xin giới thiệu các mệnh đề được sử dụng trong SASS. Mệnh đề "if" Tương tự như các ngôn ngữ lập ...

[RN][Redux] Redux Observable
Trong bài viết này tôi sẽ giới thiệu với bạn 1 loại redux mới Redux Observable Giới thiệu Redux Observable sử dụng RxJs và các đối tượng observable để tạo ra các tiến trình bất đồng bộ và luồng xử lý dữ liệu cho ứng dụng Redux. Ứng dụng Điều đầu tiên chúng ta cần làm để bắt đầu với redux ...

[P2] - Lấy dữ liệu website bằng puppeteer
Ở phần 1 mình đã nắm được những kiến thức cơ bản về thằng puppeteer này rồi Mục tiêu của mình ở phần này là sẽ quét những bài viết to ở mỗi category của trang 24h.com.vn. Sau đó vào từng bài để lấy phần header Nhắc lại chút kiến thức của phần 1 nhé. Mình sẽ dùng hàm evaluate của thằng puppeteer ...

Tạo một CLI app đơn giản với Python
Hôm nay mình xin chia sẻ với các bạn một module khá là tiện dụng của python trong việc tạo một CLI app đơn giản và nhanh chóng. Đó là module có tên là argparse. Trong bài viết này, mình sẽ sử dụng python 3. Cấu trúc cơ bản của một CLI app Hãy cùng xem xét một command cơ bản của Linux sau: $ ...

Autolayout Phần 2
Tiếp tục phần 1 , trong phần 2 này mình sẽ nói rõ hơn về Autolayout thông qua ví dụ để mọi người có thể hiểu được constraint một cách dễ dàng hơn. Ví dụ : Tạo textfield để nhập user name ở chính giữa của màn hình Đây là một ví dụ rất đơn giản , chúng ta có thể dễ dàng thực hiện với nhiều cách ...