Node.js Tutorial: Phần 5: Express route

Route là một thành phần cực kỳ quan trọng của một website, nó giúp website biết được người dùng truy cập đến nơi nào của trang web, từ đó phản hồi lại một cách thích hợp. Trong ExpressJs, route được tích hợp sẵn và dễ dàng sử dụng. Bài viết này hãy cùng mình đi tìm hiểu về route trong Express nhé. ...

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

Bluetooth

1 . Cài đặt Tạo 1 project và đặt tên là AndroidConnection acitivity_main.xml định nghĩa như dưới đây: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" ...

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

Android memory leak monitor

Ta có thể hiểu đơn giản, leak memory là hiện tượng xảy ra khi hệ thống không thể thu hồi vùng nhớ đã cấp phát cho đối tượng khi đối tượng không còn được sử dụng nữa. Ví dụ, bạn có một Activity, khi Activity được khởi chạy, bạn có một instance của Activity trong bộ nhớ. Khi user tắt Activity ...

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

Làm cách nào để tìm được bug ?

Là một software tester, một QA engineer, bạn cần phải nghĩ "in every minute" làm cách nào để tìm được lỗi cho application, cho web ... Đôi khi bạn coi trọng những lỗi làm crash hệ thống và chỉ cố tìm những lỗi đó. Tuy nhiên theo suy nghĩ của tôi thì chúng ta cũng cần phải cố gắng tìm ra những lỗi ...

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

Ruby''s Lookups & Scopes

Cách Ruby tìm kiếm định danh Vấn đề khó khăn nhất trong Ruby đó là việc xác định một định danh. Một định danh trong Ruby bao gồm: tên hàm: x.name hoặc name biến cục bộ: name biến class: @@name biến toàn cục: $name hằng: NAME modules: Name Việc xác định một ...

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

Những điều cần biết về Action Cable trong Rails 5 - (Part 1)

Bản Rails 5 rc2 vừa được release là hoạt động khá tốt, bên cạnh đó Rails 5 cũng giới thiệu hỗ trợ WebSocket qua Action Cable. Đây được coi là một tin tốt cho cộng đồng Rails trong việc xây dựng các ứng dụng realtime sẽ dễ dàng hơn rất nhiều. Tuy nhiên, bên cạnh những điểm mạnh thì luôn tồn tại song ...

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

Tìm hiểu về Model trong Backbone.js

Giới thiệu Khi chúng ta nói về bất kỳ mô hình MVC thì Model chắc chắn là một phần quan trọng nhất trong kiến trúc của các ứng dụng. Model là nơi chứa tất cả các dữ liệu ứng dụng. Cùng với việc giữ dữ liệu, class Model thực hiện các hành động khác nhau trên dữ liệu. Các hành động như khả năng xác ...

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

4 JavaScript Design Patterns You Should Know

Mỗi developer luôn cố gắng viết các đoạn code có thể bảo trì, dễ đọc và có thể sử dụng lại được. Cấu trúc của code trở nên quan trọng hơn khi ứng dụng ngày càng lớn. Các mẫu thiết kế (design patterns) đã chứng minh được vai trò quan trọng của mình trong việc giải quyết này. Mặc dù có một loạt ...

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

JavaScript & CoffeScript - A comparison

What is JavaScript? JavaScript is a scripting language for Web pages, but it's used in many non-browser environments too. JavaScript runs on the client side of the web, which makes the webside dynamic and smooth. What is CoffeeScript? CoffeeScript is a also a scripting language that ...

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

Hướng dẫn đưa game Unity lên facebook canvas

1. Giới thiệu Chào các bạn hôm nay mình sẽ hướng dẫn các bạn đưa game của các bạn build bằng Unity lên Facebook . Mình nhận thấy hiện nay khá nhiều người thích chơi game trực tiếp trên facebook bởi vì họ thường ngại tải một cái game khá là nặng về máy vừa tốn tiền 3G vừa chờ đợi lâu khó chịu lại ...

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

Xem Git log và tìm kiếm kết quả trên git log

Git là công cụ rất tuyệt vời để quản lí phiên bản code. Nó giúp các lập trình viên trong dự án có thể làm việc với nhau một cách thống nhất, đồng bộ và an toàn. Nếu bạn lỡ tay làm gì ảnh hưởng đến mã nguồn của mình, bạn vẫn có thể lấy lại được một cách khá dễ dàng. Trong quá trình làm dự án, chúng ...

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

Tìm hiểu thế giới web từ con số 0 (Part III)- Amazon web services

Trong bài viết trước chúng ta đã tìm hiểu về web service, web service là gì và cách thức nó hoạt động ra sao. Thật là thiếu sót nếu không nhắc tới amazon web service khi tìm hiểu về web service. Vậy nên trong bài viết lần này cũng ta sẽ cùng đào sâu về web service thông qua tìm hiểu về amazon web ...

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

What is Scrum? How it works?

Scrum là là một quy trình phát triển phần mềm theo phương pháp Agile. Nói rõ hơn: Scrum được xây dựng dựa trên lý thuyết quản lý tiến trình thực nghiệm (empirical process control), lý thuyết này chỉ ra rằng tri thức đến từ kinh nghiệm và việc ra quyết định được dựa trên những gì đã biết. Scrum ...

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

Ubuntu và Windows

1. Tiện lợi khi vận hành & sử dụng Chắc bạn đã từng trải qua cơn ác mộng mỗi khi cập nhật (Update) Windows: bạn phải bỏ ra cả ngày trời để làm việc này với một cơ số lần khởi động lại trong suốt quá trình cập nhật. Trong khi đó, với Ubuntu thì việc khởi động lại là không cần thiết. Đồng ...

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

Task and back stack trong android

Một ứng dụng android thường sẽ bao gồm nhiều activity. Mỗi activity nên được thiết kế xung quanh một kiểu hành động cụ thể mà người dùng có thể thực hiện và bắt đầu các activity khác. Ví dụ: một ứng dụng email có thể có một activity để hiển thị một danh sách các thư mới. Khi người dùng chọn một ...

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

How Browser works

Khi nhìn từ bên ngoài, trình duyệt web giống như một ứng dụng hiển thị những thông tin và tài nguyên từ server lên màn hình người sử dụng, nhưng để làm được công việc hiển thị đó đòi hỏi trình duyệt phải xử lý rất nhiều thông tin và nhiều tầng phía bên dưới. Việc chúng ta (Developers, Testers) tìm ...

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

[Memento Pattern] Sử dụng NSKeyedArchiver

Một trong những cách triển khai của Memento pattern là Archiving . Nó chuyển đổi object thành 1 stream có thể save và restore lại nhưng không phơi bày các private properties ra các external class . Ta có nhiều lựa chọn để lưu mảng các objects. NSUserDefaults : lưu app ...

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

Tăng tốc độ tối đa cho ứng dụng viết bằng Angular JS

Gắn bó với AngularJS cũng khoảng 2 năm rồi. Thật sự nhìn lại nhưng app mình làm với nó vẫn chưa gọi là "good" về chất lượng (performance). Có thể do: code sh*t, hoặc do cách tổ chức (structure) chưa tốt, hoặc cũng có thể do dữ liệu quá lớn,... Đến lúc phải nhìn lại xem nó đang bị ảnh hưởng do yếu ...

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

Sử dụng MessagePack đóng gói dữ liệu gửi qua GCDAsyncSocket như thế nào?

Có rất nhiều ứng dụng đòi hỏi bạn cần phải gửi nhận dữ liệu giữa client và server liên tục. Khi đó bạn cần phải sử dụng socket để làm điều đó. Vậy socket là gì, sử dụng nó như thế nào, làm sao để đóng gói dữ liệu gửi đi và khi nhận được dữ liệu dạng byte thì làm sao để convert nó sang kiểu dữ liệu ...

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

Tip on Chrome''s console for web developer

Bài viết này sẽ tổng hợp lại một số thủ thuật console trên trình duyệt Chrome cho các nhà phát triển web, giúp các bạn tăng tốc quá trình code cũng như debug. $(selector) trả về tham chiếu đến phần tử DOM đầu tiên với CSS selector quy định. Đây này là alias cho hàm document.querySelector(). Ví ...

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