
SubSonic Framework: Tạo 1 Blog Engine (Phần 2)
(Phần 1: ...) Thêm loại hỗ trợ Có bài viết blog là hữu ích, nhưng việc tổ chức các bài viết thành các loại làm cho nó dễ dàng hơn cho người đọc theo chủ đề quan tâm, vì vậy tôi sẽ hỗ trợ thêm thể loại cho blog. Thêm một bảng mới để các cơ sở dữ liệu tổ chức các loại gọi là blog_categories ...

Sơ lược về ứng dụng trí tuệ nhân tạo (artificial intelligence - AI) trong software testing (kiểm thử phần mềm)
Sơ lược về software testing (kiểm thử phần mềm) Trước hết về hoạt động kiểm thử phần mềm, đây là hoạt động rất quan trọng vì: Có quá ít mô hình phát triển phần mềm Các mô hình phát triển phần mềm này đều nhận ra tầm quan trọng của hoạt động kiểm thử phần mềm Có một số kiểu kiểm thử phần ...

Sử dụng Decision Table technique để viết Test Case cho các ứng dụng kinh doanh phức tạp (part 1)
I. Giới thiệu Có nhiều kỹ thuật và phương pháp để thiết kế các test case. Trong mục này, chúng ta sẽ tìm hiểu cách sử dụng kỹ thuật bảng quyết định - Decision Table technique hiệu quả để viết test case cho ứng dụng với logic kinh doanh phức tạp. Sau đây là ví dụ: Chúng ta đều biết rằng các ...

Giới thiệu một số cú pháp truy vấn của calabash
1. Tổng quan Các API Calabash Android và API Calabash iOS cả hai đều có một phương thức truy vấn chọn một hoặc nhiều đối tượng có thể nhìn thấy trong màn hình hiện tại của ứng dụng. Các phương thức truy vấn có một đối số các chuỗi mô tả những đối tượng được "truy vấn". Với iOS cú pháp cho các ...

Kiểm thử Game trên Mobile
1.Khái quát kiểm thử game a. Định nghĩa: Kiểm thử game là một phần trong việc phát triển game, là quá trình kiểm thử phần mềm dành cho việc kiểm soát chất lượng video game. Chức năng chính của kiểm thử game là tìm ra và cung cấp bằng chứng, tài liệu về các lỗi của game. Kiểm thử phần mềm ...

Quản lý rủi ro trong dự án phần mềm
Thông thường, “rủi ro” dùng để chỉ một hay nhiều sự việc chưa nhưng có khả năng xảy ra trong tương lai có tác động đến dự án, và khi sự việc đó xảy ra thường sẽ gây ảnh hưởng xấu, thậm chí là “tai nạn” cho dự án, cản trở dự án đạt được mục tiêu của mình. Rủi ro thường được ...

Anh tạo user cho em rồi, vào đổi password đi nhé!
Dự án hiện tại của tôi đang dùng 26 con Ubuntu server lớn nhỏ, và tất nhiên không phải ai trong đội phát triển cũng có quyền truy cập vào tất cả chúng. Tôi có quyền đó, đồng nghĩa với việc tôi phải đảm nhận nhiệm vụ quản lý quyền truy cập của các thành viên trong đội tới từng server một. Gần đây ...

Multithreading: Java Synchronized Blocks
Java synchronized blocks (Khối xử lý đồng bộ) được sử dụng để tránh xảy ra race conditions (Điều kiện tương tranh). Nếu các bạn đã đọc qua bài viết của tôi thì các thuật ngữ trên không có gì là khó hiểu cả. 1. The Java synchronized Keyword Synchronized blocks trong Java được thể hiện qua ...

Ruby Exceptions
Trong một chương trình execution và exception luôn đi cùng với nhau, nghĩa là một chương trình khi thực thi có thể gặp một số trường hợp xấu. ví dụ gỉa sử chúng ta có một đoạn code mở một file mà nếu file đó không tồn tại thì khi chạy chương trình đó sẽ xảy ra lỗi dẫn đến chương trình sẽ dừng lại. ...

Top 7 xu hướng Game Mobile năm 2016
Hãy cùng điểm qua những xu hướng mới sẽ tác động mạnh mẽ tới làng Game Mobile trong năm 2016 1. Google Play trở lại Trung Quốc, Game Android bùng nổ Google vừa qua đã chính thức thông báo về kế hoạch mở rộng tại thị trường Trung Quốc, gợi ý cho sự trở lại của Google Play. Nếu điều này ...

10 lý do tại sao lỗi của bạn bị từ chối . Là một QA/tester bạn sẽ làm gì trong trường hợp đó!
Nếu như một dự án không có sự tranh luận của các developer và các tester chỉ vì những lý do hết sức tầm thường, đơn giản hay chỉ vì cái tôi cá nhân quá lớn của từng người, tôi chắc dự án đó sẽ thành công. Phần lớn, tester và developer tranh luận chỉ vì một lý do đơn giản đó là lỗi (bug) của sản ...

Synergy - Công cụ hoàn hảo cho người dùng nhiều máy tính
Bạn có nhiều hơn 1 máy tính trên bàn làm việc? Trường hợp này xảy ra rất nhiều trong thực tế. Bạn cần một chiếc máy case cấu hình cao để làm việc, đồng thời cũng cần 1 chiếc laptop nhỏ gọn để có thể có thể đem đi chỗ này chỗ kia. Cũng có thể bạn cần làm việc trên nhiều hệ điều hành khác nhau, ...

Tìm hiểu về Strict Mode trong Javascript
"use strict"; Chắc hẳn bạn đã bắt gặp dòng lệnh trên khi làm việc với JavaScript rồi chứ nhỉ? Đó là nội dung thường xuyên xuất hiện trong hầu hết các thư viện Javascript hiện đại. Vậy "use strict"; là gì, nó có ảnh hưởng gì đến code của bạn, và liệu bạn có nên sử dụng nó? Bài viết này ...

Typesafe action trong redux với Typescript
Tình cờ bắt gặp bài viết Managing state in angular 2 app của Victor Savkin, mình chợt nhận ra Action của redux có thể được viết dưới dạng class của typescript để đảm bảo an toàn kiểu. Ví dụ ta không thể truy cập vào một property không tồn tại của một action, chẳng hạn: class AddTodoAction { ...

Giới thiệu về Web MIDI (phần 1)
"1 tut về MIDI? Vào năm 2016? Bạn đang đùa, phải không?" Không! Nó không như bạn nghĩ đâu! Đối với nhũng người đã sử dụng web từ thập niên 90, cụm từ "Web MIDI" làm nhớ đến một thời gian khi trang web tự động chơi một phiên bản rút gọn bloopy của The Final Countdown khi bạn đã đăng ký sổ lưu ...

OkHttp 3
Một trong những việc rất nhàn chán khi phát triển ứng dụng trên nền tảng Android đó là xử lý kết nối mạng, bắt lỗi và exception, kiểm soát kích thước file download và thời gian download file đó...vv. Tuy nhiên có một thư viện giúp chúng ta giải quyết các vấn đề đó một cách nhanh gọn, đó là ...

Play around with ChatWork - A Chat++ Contribution Guidelines
Bài viết kỷ niệm 5 năm ngày ChatWork ra đời! ... và chúc mừng Chat++ release version 5.0.0 ... From Chat++'s Creators with Love! ... Mở đầu bài viết, mình xin được giới thiệu về ChatWork, những điều có thể bạn chưa biết. ChatWork là một sản phẩm của Công ty cổ phần ChatWork ...

Một số phương pháp hay để thực hành kĩ năng lập trình của bạn
Nếu như bạn đã lựa chọn được một ngôn ngữ lập trình để học, chúng ta hãy bắt đầu học thông qua một số trang web rất thú vị sau đây: Dash - Học qua các dự án Nội dung học: HTML, CSS, JavaScript Dash tương tự như trang web Codecademy với phương pháp tiếp cận là nhập vai vào các dự án, và ...

Chuyển đổi từ postal_code thành address
Trong công việc của bạn, đôi khỉ phải chuyển đổi từ postal_code thành address, dự án mình có động đến phần này nên muốn chia sẻ 1 ít kinh nghiệm, khách hàng là người Nhật nên mình chia làm 2 phần, đối với postal_code của Nhật và phần còn lại. Phần postal_code của Nhật (http://qiita.com/inodev/ite ...

Những điểm khác nhau quan trọng giữa Python 2.x và Python 3.x
1. Division operator Nếu bạn đang có một công việc nâng cấp phiên bản Python, vậy hãy chú ý tới phép chia. Xem ví dụ sau đây nhé. print 7 / 5 print - 7 / 5 Output in Python 2.x: 1 -2 Output in Python 3.x: 1.4 -1.4 2. Print function Đây là một trong những sự thay đổi ...