Những dấu chân của nhân loại trên con đường đến với lập trình hướng đối tượng (phần 2)

Ẩn dữ liệu (hiding data) và đóng gói thông tin (encapsulation) Kể cả đối với object composition của ngôn ngữ C, bằng việc tách biệt việc define và implement của header file chúng ta vẫn có thể ẩn những thông tin bên trong kiểu dữ liệu trừu tượng. Tuy nhiên, sau này người ta đã dần dần hỗ ...

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

Let Build Single Page App - Part III

In Part II we have built API end point that needed for implementing authentication system. In this part we'll be focusing on building user interface using that end point with ReactJS. As usual you can find source code here. Now without any further ado lets get started. Routing Configuration ...

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

Google Firebase - Phần 2

Như bài giới thiệu trước mình đã chia sẻ về Google Firebase một dịch vụ cơ sở dữ liệu thời gian thực hoạt động trên nền tảng đám mây được cung cấp bởi Google nhằm giúp các lập trình phát triển nhanh các ứng dụng bằng cách đơn giản hóa các thao tác với cơ sở dữ liệu. Các bạn có thể xem lại ở đây: ...

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

Sử dụng Firebase trong việc đăng nhập và xác thực đăng ký thành viên

Theo thông tin từ hội nghị Google I/O 2016. Firebase đã đưa ra bản mới với nhiều nâng cấp. Chúng ta sẽ làm demo để chạy thử một ứng dụng đơn giản và dễ dàng cùng với firebase sử dụng email và password để xác thực người dùng VIDEO DEMO Đặc điểm của firebase Firebase cùng với những đặc ...

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

TÌm hiều về các length unit phổ biến trong CSS

CSS hiện đang sử dụng một số đơn vị khác nhau cho độ dài của element. Một số thuộc tính CSS sử dụng đến đơn vị độ dài như: awidth, height, margin, padding, font-size, line-height... Đợn vị độ dài có thể chia ra làm 2 loại: đơn vị tương đối (relative) và đơn vị tuyệt đối (absolute). Một số đơn vị độ ...

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

Responsive design testing

1 - Responsive là gì? Sống trong thời đại công nghệ phát triển như ngày nay, yêu cầu của con người ngày càng khắt khe hơn, họ đòi hỏi một trang web không chỉ đẹp mà phải chạy mượt mà trên mọi thiết bị: máy tính bảng, iphone, laptop; trên mọi độ phân giải màn hình từ 800×600 đến ...

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

Laravel và NoSql

Hôm nay mình sẽ chia sẻ cho các bạn làm thế nào để sử dụng laravel với Nosql cụ thể ở đây là MongoDB. Nội Dung Trước tiên chúng ta đi tìm hiểu sơ qua về Laravel và NosSql. So sánh giữa Nosql và Mysql. Tiếp theo là MongoDB. Cuối cùng là cài đặt MongoDB vào Laravel Như thế nào. ...

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

Laravel Eloquent Technique: Dedicated Query String Filtering

Giới thiệu Với vai trò là Developer, chúng ta hẳn đã rất quen với những form search dữ liệu. Cụ thể là trong các màn hình Admin cần view và filter dữ liệu để dễ dàng cho việc quản lý. Mở đầu cho bài viết tôi xin đưa ra bài toán về quản lý các bài học (Lesson) như sau: Tôi cần một màn hình ...

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

Hướng dẫn cách vẽ đồ thị bằng HTML5 và CSS3

Mở đầu Vẽ đồ thị hay biểu đồ là một một công việc không hề dễ dàng, đôi khi nó khiến cho các nhà thiết kế website phải bực mình vì quá lằng nhằng và phức tạp đối với những kiểu biểu đồ khác nhau. Thông thường, với một website designer, họ thường tạo chúng bằng các công cụ vẽ vector như Corel, ...

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

[Android] Sử dụng Tool hỗ trợ thiết kế giao diện đa màn hình trong Android.

I.Giới thiệu Việc thiết kế giao diện trên Android để có thể phù hợp với nhiều kích cỡ màn hình khác nhau sẽ làm các bạn mất khá nhiều thời gian. Mình sẽ hướng dẫn các bạn thực hiện việc thiết kế đó 1 cách nhanh hơn, đơn giản hơn và chính xác hơn. Thay vì các bạn phải vào từng file dimens ...

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

Sử dụng Bitmasks trong Objective-C

Để biểu diễn nhiều trạng thái của một đối tượng, thay vì sử dụng nhiều biến lưu lại các trạng thái này, người ta sử dụng một biến để lưu lại trạng thái của tất cả. Kĩ thuật này được gọi là "bit masking". Trong lập tình iOS, chắc hẳn khi xây dựng giao diện và làm việc với Auto resizing mask ...

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

random — Pseudorandom Number Generators (Part II)

Purpose: Implement một vài hàm sinh số ngẫu nhiên Avalable In: Python 1.4 trở lên Module random cung cấp một bộ sinh số ngẫu nhiên (PRNG - pseudorandom number generator) dựa vào giải thuật Mersenne Twister. Ban đầu được phát triển để sinh ra input cho các mô phỏng Monte Carlo, Mersenne ...

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

Phân trang trong Rails sử dụng Gem Kaminari và tạo select limit load với gem Ransack

1.Giới thiệu Phân trang là một kĩ thuật rất phổ biến và quan trọng trong các trang web lớn,khi mà số lượng các item nhiều. Đó là yếu tố sống còn của website khi mà nó trực tiếp ảnh hưởng đến hiệu năng của hệ thống. Tôi lấy một ví dụ đơn gian nếu chúng ta cần phải load ra 100000 bản ghi tốn mất ...

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

Hiệu ứng Diderot và cách để vượt qua nó (hay lý do tại sao bạn dễ tiêu tiền vào những thứ không cần thiết)

Chắc hẳn ai trong chúng ta cũng đã từng rơi vào tình huống khi ta mua một món đồ mới và lập tức tìm mua những món đồ khác hợp để đi kèm với nó, chẳng hạn như một chiếc túi xách và đôi giày hợp với chiếc váy mới, hay tấm phủ bàn phím, đế tản nhiệt, túi chống sốc, balo riêng...cho chiếc laptop ...

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

Hướng dẫn sống còn cho kỹ sư trẻ từ thiên tài hacker người Nga

1. Nguồn ロシアの天才ハッカーによる【新人エンジニアサバイバルガイド】 2. Lý do Mặc dù đã đăng ký tham gia chương trình Hack não ở công ty, nhưng do lười nên không được miễn report </p> <div class= Tác giả: Tạ Quốc Bảo viết 13:35 ngày 12/08/2018

Nested Model Validation Problem and Solution

Nested Attribute is one of the helpful feature for Ruby on Rails developers. It gives the privilege to save attributes of a record through its associated parent. You can find details about nested model and nested attribute here. Model Validation Validation of models is an important part ...

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

padding and margin đơn giản hay nguy hiểm

Xin chào tất cả các bạn, hôm nay mình xin phép được viết một bài vô cùng đơn giản về UI, đó là công cụ padding và margin. I) Giới thiệu Có rất nhiều bạn nhầm lẫn cách sử dụng của 2 công cụ này nên hôm nay mình sẽ đưa ví dụ và cách dùng tốt nhất mà mình cảm thấy cho hai công cụ này. II) Giới ...

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

Repeat Annotation In Java

Kiến thức yêu cầu( Prerequirement ) Java core Khái niệm về Annotation và cách tạo 1 custom annotation. Có thể tham khảo các link sau: https://docs.oracle.com/javase/tutorial/java/annotations/basics.html http://www.mkyong.com/java/java-custom-annotations-example/ Trong một vài trường hợp, ...

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

Tìm hiểu về OAuth 2.0 (part I)

Các khái niệm cơ bản Các thuật ngữ này sẽ được sử dụng một cách thường xuyên trong bài viết, nên trước tiên, chúng ta cần nói rõ với nhau xem, chúng có nghĩa là gì : Resource Owner: là chủ sở hữu của dữ liệu ta muốn chia sẻ. Chẳng hạn, bạn muốn chia sẻ thông tin email + username facebook của ...

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

Sử dụng nhiều phiên bản PHP trên Apache

Như các bạn biết, việc cài đặt server apache thì trong cùng 1 server chỉ sử dụng được 1 phiên bản của PHP. Nếu như bạn dùng PHP5 thì sẽ không chạy được PHP 7 hoặc ngược lại. Việc trên gây ra khá nhiều bất tiện trong quá trình phát triển phần mềm, nhất là với việc chuyển đổi (migrate) từ một hệ ...

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