Phân tích yêu cầu phần mềm

Để mang đến một sản phẩm phần mềm chất lượng đáng tin cậy thì việc phân tích yêu cầu là khâu vô cùng quan trọng trong quá trình xây dựng phần mềm. Hoạt động này đòi hỏi sự phố kết hợp rất chặt chẽ giữa khách hàng và người phân tích để vạch ra được xem chúng ta phải phát triển cái gì 1 - Mục tiêu ...

Tác giả: Hoàng Hải Đăng viết 14:52 ngày 12/08/2018

デザインパターン → Chain of Responsibility パターン(責任の連鎖)

「Chain of Responsibility」という英単語は、「責任の連鎖」を意味します。 このパターンは、ある要求の受取り対象となる複数のオブジェクトに鎖状の関係を構築し、要求を処理する事が可能なオブジェクトに渡るまで、順次、構築した鎖状の関係に沿って要求を受流していくパターンです。 一つの処理パイプラインの中で、要求を残し、起動します。 このパターンでは、要求の受取り対象の中で、次の要求の受取り対象への参照国営百貨店が含まれます。 要求の受取り対象は要求を処理できない場合、メッセージにて次の要求の受取り対象に伝えます。 クラス図: ...

Tác giả: Tạ Quốc Bảo viết 14:52 ngày 12/08/2018

Từ 3 phút còn 3 giây

Hãy tưởng tượng bạn đang lướt web và tất cả các trang cho bạn thấy bạn cần chờ đợi trong 15 giây khi load mỗi trang. Bạn sẽ tiếp tục lướt web trong bao lâu mà không mất kiên nhẫn? Bao lâu cho đến khi bạn chuyển sang làm cái gì khác? Nếu bạn gặp một trang web như thế này thì sao? Bạn có ghé thăm web ...

Tác giả: Tạ Quốc Bảo viết 14:52 ngày 12/08/2018

Tại sao nên sử dụng Test Driven Development (TDD)

Bài viết này mục đích chủ yếu là phân tích tính ưu việt của TDD với hi vọng giành được sự đồng tình của các nhà quản lý, người dạy và người học. Quy trình được giới thiệu sau đây không quá phức tạp, tuy nhiên nó đòi hỏi phải hiểu đúng và thực hiện nghiêm túc. Tuy nhiên, thực tế trong ngành CNTT ...

Tác giả: Trịnh Tiến Mạnh viết 14:52 ngày 12/08/2018

Tạo tài liệu Test Strategy

1. Test Strategy là gì? Test Strategy (chiến lược/mục tiêu test) là 1 kế hoạch để xác định các cách tiếp cận kiểm thử, và nó trả lời cho câu hỏi như bạn muốn thực hiện gì và làm thế nào bạn sẽ thực hiện nó. Đây là tài liệu quan trọng nhất cho bất kỳ team QA nào về kiểm thử phần mềm và viết ...

Tác giả: Trịnh Tiến Mạnh viết 14:52 ngày 12/08/2018

Tổng quan về Collections trong Java

1. Giới thiệu Java Collection Framework Bất kì lập trình viên nào đã từng làm việc với Java hay Android có lẽ đều biết tới ArrayList – một class cực kì dễ dùng và tiện dụng. Nhưng có lẽ không nhiều người biết rằng ArrayList chỉ là một trong số rất nhiều class thuộc bộ thư viện Java Collection ...

Tác giả: Bùi Văn Nam viết 14:52 ngày 12/08/2018

Enum và sự khác biệt khi sử dụng giữa rails 4.x và rails 5.x

Có thể nói nôm na: Enum là trường được định nghĩa là enum thì sẽ lưu trong DB là số nhưng mà lại có thể được truy xuất bằng chữ Ví dụ : Model User có trường role: [:member, :admin] thì được lưu trong DB tương ứng là 0, 1 nhưng có thể được truy xuất bằng chữ : User.member, User.admin Cú pháp: ...

Tác giả: Hoàng Hải Đăng viết 14:52 ngày 12/08/2018

Một số phép nối bảng trong Mysql

Link video hướng dẫn: link video Cài đặt: Trước tiên hãy khởi động mysql và cài đặt classicmodels database. Tải classicmodel database tại download Mình sẽ dùng classicmodels database để làm ví dụ. Phép nối trong (Inner join) Ví dụ: Bảng products là bảng lưu trữ các sản phẩm. Khi nào một ...

Tác giả: Hoàng Hải Đăng viết 14:52 ngày 12/08/2018

Chu trình kiểm thử phần mềm

Link tham khảo: http://www.guru99.com/software-testing-life-cycle.html Trái với mọi người thường nghĩ, kiểm thử phần mềm không chỉ là một hoạt động đơn lẻ. Chu trình kiểm thử phầm mềm chính là chuỗi các hoạt động được tiến hành để thực hiện việc kiểm thử. Nó bao gồm hàng loạt các hoạt động được ...

Tác giả: Tạ Quốc Bảo viết 14:52 ngày 12/08/2018

Nested Classes (P1)

Ngôn ngữ Java cho phép bạn định nghĩa một class nằm ở bên trong một class khác. Nó được gọi là nested class và được minh họa ở phía dưới: class OuterClass { ... class NestedClass { ... } } Nested class được chia thành 2 loại: static và non-static. Nested classes được khai ...

Tác giả: Tạ Quốc Bảo viết 14:52 ngày 12/08/2018

A simple API using protobuf and gRPC

This tutorial provides a basic Go programmer’s introduction to working with gRPC. Define a service in a .proto file. Generate server and client code using the protocol buffer compiler. Use the Go gRPC API to write a simple client and server for your service. This requires Go 1.6 or ...

Tác giả: Tạ Quốc Bảo viết 14:52 ngày 12/08/2018

LLDB Debugger

If you don't know what means LLDB abbreviation, then this post is for you! I am quite serious. This tool makes life much easier when you publish your iOS applications. Honestly, how many times you had to write NSLog or print to debug some variable? How many times you had to recompile ...

Tác giả: Trịnh Tiến Mạnh viết 14:52 ngày 12/08/2018

Kiểm thử phần mềm bắt đầu khi nào?

Kiểm thử là một quá trình đánh giá một hệ thống hay là các thành phần của nó với mục đích là xác định xem nó có thỏa mãn những yêu cầu được đưa ra hay không. Hiểu một cách đơn giản, kiểm thử - test là chạy một chương trình để xác nhận bất kì lỗ hổng, lỗi sai hay những yêu cầu bị bỏ quên, những yêu ...

Tác giả: Tạ Quốc Bảo viết 14:52 ngày 12/08/2018

Space Position pattern - Công nghệ chọn gấu

Xin chào các bạn, trong cái xã hội ngày nay thì việc con người giao tiếp với con người không còn khó khăn như ngày xưa, thời mà công nghệ còn chưa phát triển. Bởi vậy mà hầu hết chúng ta đều có rất nhiều các mối quan hệ, bạn bè... cá nhân mình nghĩ thì điều này là tốt. Nhưng, việc có nhiều các mối ...

Tác giả: Tạ Quốc Bảo viết 14:52 ngày 12/08/2018

Kiến trúc hệ thống trên Laravel – phần 4

Các bài viết trong series Kiến trúc hệ thống trên Laravel – phần 1 : Tại sao phải áp dụng architect vào trong Laravel Kiến trúc hệ thống trên Laravel – phần 2 : OOP, Interface, Dependency Injection, IoC Kiến trúc hệ thống trên Laravel – phần 3 : Phân tích sâu vào việc sử dụng interface Kiến trúc ...

Tác giả: Bùi Văn Nam viết 14:51 ngày 12/08/2018

Building a Shopping Cart in Ruby on Rails

Bài hướng dẫn này sẽ giúp bạn làm thế nào để xây dựng một giỏ hàng đúng cách trong các hệ thống mua sắm online bằng Ruby on rails. Một câu hỏi được đặt ra khi cần xây dựng các hệ thống mua sắm online đó là xây dựng giỏ hàng. Giỏ hàng ở đây được hiểu là nơi lưu lại tạm thời các sản phẩm được ...

Tác giả: Bùi Văn Nam viết 14:51 ngày 12/08/2018

Interface trong Typescript (Phần 1)

Giới thiệu: Interface trong typescript cho phép bạn định nghĩ thuộc tính là gì và phương thức là gì mà đối tượng cần để được thực thi (implement). Nếu đối tượng tuân thủ đúng khuôn mẫu interface thì đối tượng đã implement interface ấy sẽ được thi hành đúng. Nếu interface không được thi hành đúng ...

Tác giả: Trịnh Tiến Mạnh viết 14:51 ngày 12/08/2018

MobX - Reactjs SetState: 3 lý do tôi ngưng sử dụng React.setState

Trong vài tháng trở lại đây, Tôi đã ngưng sử dụng React's setState trong tất cả các Component React mới của tôi.Đừng hiểu sai ý tôi. Tôi không dừng sử dụng local component state, tôi chỉ dừng sử dụng trong việc quản lý nó mà thôi. Và nó thực sự rất thú vị! Sử dụng setState rất khó đối với người ...

Tác giả: Trịnh Tiến Mạnh viết 14:51 ngày 12/08/2018

Bài 5 - Tạo Scrollspy bằng Bootstrap

Chào các bạn, cho tới bài này thì chắc các bạn cũng đã quen dần với việc sử dụng bootstrap rồi phải không? Bài này, chúng ta tiếp tục đi tìm hiểu về 1 hiệu ứng cũng khá được ưa chuộng trên các website hiện nay. Đó là Scrollspy Hiệu ứng này sử dụng jquery và javascript, những thành phần này đã ...

Tác giả: Bùi Văn Nam viết 14:51 ngày 12/08/2018

Cảnh báo đăng nhập bằng Golang

Dạo gần đây mình đang theo học một môn võ công mới. Môn võ công này kinh dị đến nỗi mới theo được vài ngày đã bị tàu hỏa nhập ma. Cấu trúc thì xấu kinh dị, thuật ngữ thì khó, Nhưng cuộc sống mà không có gì là tươi đẹp. Cuộc đời xô đẩy dẫn đến mình phải luyện nó thôi. Golang hay còn gọi là Go ...

Tác giả: Tạ Quốc Bảo viết 14:51 ngày 12/08/2018