Những mẹo hay và những chú ý khi chúng ta làm css (phần 3)

Bài này sẽ tiếp tục giới thiệu về những mẹo hay và những chú ý khi chúng ta làm css như 2 bài trước. Rất mong những chia sẻ của mình sẽ giúp được các bạn mới làm css hay những bạn đã có kinh nghiệm lâu năm. Sử dụng Em, Rem và Pixel Em, Rem và Pixel là các đơn vị được sử dụng để thiết lập ...

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

Tại sao JPEG giống như 1 chiếc máy Photocopy?

Nếu bạn tạo ra bản copy của 1 bản copy của 1 bản copy, chất lượng sẽ giảm dần qua từng lần copy. Vấn đề này được gọi là " generation loss " ( mất chất qua thế hệ ). Điều này không khó để hiểu tại sao nó xảy ra với máy photocopy. Việc scan và in không phải là công đoạn hoàn hảo, nó dựa vào các ...

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

Advanced Form Programming in FuelPHP

FuelPHP cung cấp một lập trình biểu mẫu nâng cao thông qua các lớp Fieldset và Fieldset_Field. Fieldset cung cấp một cách hướng đối tượng để tạo biểu mẫu. Nó có hỗ trợ hoàn chỉnh cho các mô hình. Nó cũng hỗ trợ sẵn cho việc xác nhận phía máy khách và phía máy chủ. Chúng ta tìm hiểu về lớp Fieldset ...

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

CRUD với react và ruby on rails - Phần 3

Xóa dữ liệu Để xóa dữ liệu, việc đầu tiên chúng ta cần là thêm một nút chức năng để xử lý việc xóa Item trong component <Allitems/> // app/assets/javascripts/components/_all_items.js.jsx var AllItems = React.createClass({ handleDelete() { console.log("delete item clicked"); }, ...

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

Custom Atrributes bằng việc sử dụng BindingAdapters trong Kotin

Bằng việc sử dụng Framework Android Data Binding, Nó dễ dàng custom attributes mà có thể sử dụng nó trong layout. Nó là một phương thức với tham số chính xác được chú thích bới @BindingAdapter. Cho ví dụ phổ biến nhất đó là download ảnh từ URL bằng Glide hoặc Picasso @BindingAdapter("bind:imageU ...

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

Tìm hiểu Service Provider trong Laravel

Xin chào anh em , gặp lại anh em trong bài viết chia sẻ lần này trong series Laravel và những điều thú vị mình muốn chia sẻ những điều mình đã tìm hiểu được về Service Provider trong Laravel. Như các bạn biết đấy, bài viết lần trước mình đã chia sẻ về Service Container. Thì bài viết này mình ...

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

Essential RubyOnRails patterns : Service Objects

Xin chào tất cả các bạn, hôm nay mình xin giới thiệu với các bạn về chủ đề như tiêu đề mình đã nhắc đến, đó là Service Object trong Ryby on Rails. Service object là gì? Service Objects là một mô hình trong phát triển Ruby on Rails, nó giúp giảm tính xử lý trong models và controllers, giúp cho ...

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

Ruby Array

Trong ruby, ta thường sửa dụng 2 class Array và Hash để lưu trữ và truy vấn sữ liệu. Hôm nay mình sẽ viết 1 bài về các phương thức thường được sử dụng của Array, bài về Hash hẹn tháng sau nhé (yaoming). 1. Khởi tạo array: Ruby cung cấp nhiều cách khởi tạo array khác nhau. Khởi tạo array và ...

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

Thống kê với Aggregation Query trong Elasticsearch (Phần 4 - Multi-values metrics aggregation, top_hits)

Ở phần trước chúng ta đã tìm hiểu thế nào là multi-values aggregations, sử dụng một số loại query như stats, extended_stats, và một loại thống kê rất hưũ ích trong phân tích log đó là percentiles, ở bài này chúng ta sẽ tìm hiểu thêm một aggregation query tương tự như percentiles đó là ...

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

Cấu trúc dữ liệu và giải thuật - Cấu trúc dữ liệu đồ thị (Graph)

1. Cấu trúc dữ liệu đồ thị Một đồ thị là một dạng biểu diễn hình ảnh của một tập các đối tượng, trong đó các cặp đối tượng được kết nối bởi các link. Các đối tượng được nối liền nhau được biểu diễn bởi các điểm được gọi là các đỉnh (vertices), và các link mà kết nối các đỉnh với nhau được gọi ...

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

Angularjs phần 3 - Module & Realtime application

Bài trước chúng ta đã tìm hiểu về HTTP & AJAX, bài tiếp theo chúng ta sẽ cùng tìm hiểu sử dụng về Module& Realtime application. Module Trong các ứng dụng thực tế, việc phân chia ứng dụng thành các thành phần khác nhau là điều cần thiết. Dưới đây là lợi ích của việc chia nhỏ ứng dụng: ...

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

Phương thức và đối số trong Ruby

phương thức không có đối số Một phương thức có thể được định nghĩa và được gọi không có đối số như sau: def method_without_arg() "without arg" end def method_without_arg_and_parentheses "without arg & parentheses" end irb> method_without_arg => "without arg" irb> ...

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

Sidekiq Error Handling

Sidekiq là framework để thực hiện các background job được sử dụng rất nhiều trong các rails app hiện nay. Trong bài viết này tôi sẽ giới thiệu một vài vấn đề về xử lý lỗi trong sidekiq. 1. Best Practices Sử dụng một dịch vụ báo lỗi - Honeybadger, Airbrake, Rollbar, BugSnag, Sentry, ...

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

Tìm hiểu về React Router

Tại sao lại cần React Router Việc SPA bị giới hạn trong 1 view trong khi ứng dụng của chúng ta cần hiển thị rẩt nhiều view. Do đó ta cần bỏ qua giới hạn đó để học cách hiển thị nhiều view trên cùng 1 SPA. Đồng thời việc routing cho ứng dụng SPA củng giúp cho việc đồng bộ dữ liệu hiển thị với URL, ...

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

Tại sao chúng ta nên sử dụng Angular

Mở đầu Nếu đã từng xây dựng một vài ứng dụng Web , chắc hẳn bạn đã từng nghe đến cái tên Angular , một Frameworks Javascript giúp chúng ta xây dựng ứng dụng Web đầy đủ tính năng từ phía Client . Angular lần đầu được phát hành bởi gã khổng lồ Google vào năm 2010 với phiên bản AngularJS ...

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

Thực thi 1 chuỗi Ajax request với BackboneJS

Đối với dự án Backbone.js mà tôi đang làm việc, tôi cần triển khai một mô hình trong đó lưu yêu cầu vào chương trình phụ trợ 1 cách tuần tự. Điều này có thể cần thiết hoặc hữu ích vì những lý do sau: State và thứ tự ưu tiên: Giả sử ứng dụng phía máy khách trong đó người dùng thực hiện hai ...

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

Cách xác định các Phần tử Web bằng Using Selenium Xpath và Other Locators – Selenium Tutorial #5

Trong bài hướng dẫn trước, chúng ta đã làm quen với cách tạo kịch bản test cho Selenium IDE bằng cách sử dụng Firebug để xác định các phần tử Web. Mỗi phần tử có thể định vị bằng ID, type, placeholder và name. Tuy nhiên có những phần tử ta lại không thấy có ID hoặc không biết cách xác định để ...

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

Cùng tìm hiểu về ReactJS - Components

Trong phần này chúng ta sẽ cùng tìm hiểu về cách kết hợp các components để làm cho ứng dụng đễ bảo trì hơn. Cách tiếp cận này cho phép cập nhật và thay đổi các components của bạn mà không ảnh hưởng đến các phần còn lại của trang. 1. Stateless Example Components đầu tiên trong ví dụ dưới đây ...

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

Khi nào nên sử dụng PureComponent hoặc Component

PureComponent tiền đề của nó là một phiên bản có hiệu suất cao hơn của Component. Điều này là đúng, nhưng hiệu suất đạt được đi cùng với một vài thứ đi kèm. Chúng ta hãy tìm hiểu về PureComponent và hiểu tại sao chúng ta nên sử dụng nó nhé. Component và PureComponent có một sự khác biệt ...

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

Passport NodeJS

Khi xây dựng một ứng dụng, có nhiều trang chúng ta cần yêu cầu người dùng phải là ai đó mới cho truy cập. Vì vậy cần có xác thực người dùng - là việc kiểm tra xem người dùng đang truy cập đã đăng ký tài khoản hay chưa, người dùng là ai? Quy trình này được thực hiện bằng cách yêu cầu người dùng cung ...

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