Multithreading: Java Memory Model

Ở các bài viết trước, mình đã đề cập tới cách khởi tạo và xử lý đa luồng (multiple threads) trong Java, trong bài viết này chúng ta sẽ đi sâu hơn về kiến trúc, các cách tổ chức sắp xếp bộ nhớ trong Java. Tìm hiểu về Java Memory Model (Mô hình bộ nhớ Java), Cách mà Java Virtual Machine ...

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

[Estimation Part_1] Key factor for success Estimation in Software Development

Giới thiệu Trong bài viết này tôi muốn giới thiệu tới các bạn một số điểm cần chú ý khi thực hiện estimate một dự án phần mềm. Làm thế nào để có thể đưa ra một bản estimation chính xác nhất. Có một thực tế quan trọng nhưng ít người biết, đó là việc estimate chính xác, hợp lý là yếu tố quyết định ...

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

SqlAlchemy trong python (part 3)

Tổng quan Trong những bài viết trước, chúng ta đã so sánh giữa SQLAlchemy và những Python O R M khác. Trong bài viết này , chúng ta sẽ đưa đến một cái nhìn rõ ràng hơn về SQLAlchemy O R M và những phép toán thông qua những ví dụ cụ thể. Không chỉ có SQLAlchemy O R M mới có khả ...

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

Làm việc với Gson trong android

CHào, lại tới ngày viết viblo rồi. Chưa nghĩ ra được cái gì để viết, tiện dự án mình đang làm có đang dùng Gson nên mình cũng giới thiệu luôn cho các bạn chưa biết nó là gì? Gson là một thư viện java cho phép người sử dụng có thể chuyển đổi từ một đối tượng Java sang JSON và cũng có thể chuyển ...

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

Áp dụng mô hình CMMI trong việc việc phát triển phần mềm (phần 1)

1. Khái niệm về CMMi CMMI (Capability Maturity Model® Integration) là một mô hình quản lý chất lượng cho các tổ chức. Nó có thể được sử dụng để định hướng quản lý, định hướng phát triển cho một dự án, một bộ phận của tổ chức hoặc toàn bộ tổ chức đó. CMMI được tạo ra và duy trì bởi một ...

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

Non-Relational SQL ( MongoDB ) với Python và Django

I. MongoDB MongoDB là một cơ sở dữ liệu tài liệu mã nguồn mở, và cơ sở dữ liệu hàng đầu NoSQL. MongoDB được viết bằng c ++. 1.Giới thiệu về MongoDB MongoDB là một tài liệu định hướng cơ sở dữ liệu đa nền tảng. Phân loại như là một cơ sở dữ liệu NoSQL, MongoDB cũng tránh các cấu trúc cơ sở ...

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

[Write-up] Framgia CTF - The Haunted Elevator (2016/01/09)

Vậy là cuộc thi đã kết thúc được một tuần. Thay mặt BTC, mình xin được phép đưa ra phần write-up một số bài của phần CTF của cuộc thi. Phần game logic, các bạn hãy liên hệ với bạn @bs90 để được giải đáp nhé. Survey Cũng như lần trước, một survey nho nhỏ, hi vọng ai chưa làm có thể bớt chút thời ...

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

Giới Thiệu Về Các Hệ Mã Hóa

Trong thời đại số hóa ngày nay, mật mã đóng một vai trò rất quan trọng. Và tôi nghĩ người lập trình viên cần phải trang bị các kiến thức cơ bản về mã hóa. Vì vậy, trong bài viết này tôi muốn giới thiệu đến các bạn tổng quan về các hệ mật mã, cách chúng làm việc, ưu và nhược điểm của từng hệ mật mã, ...

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

Tìm Hiểu AngularJS - SQL - DOM (P7)

Để tiếp tục loạt bài tìm hiểu về AngularJS, bài trước ta đã tìm hiểu về AngularJS - Tables lần này ta sẽ cùng nhau tìm hiểu về SQL, nhưng do phần này những gì mình tìm hiểu được khá ngắn nên mình sẽ gộp cả phần DOM vào bài viết này luôn. Trong bài viết có sử dụng đến các kiến thức của các bài ...

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

Htaccess và các vấn đề liên quan

Thông thường để cấu hình cho Server Linux thì ta phải có kiến thức về quản trị mạng Linux, điều này đôi khi gây khó khăn cho các lập trình viên. Vậy có cách nào khắc phục vấn đề này mà không cần đăng nhập vào tài khoản phía Server ? Ở Server có một file đặc biệt tên là .htaccess, file này có ...

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

Android Date - Time - Tabs

Tài liệu này được dịch và làm lại trên slide dạy Android của Đại học Cleveland. DATE Android hỗ trợ những widget (DatePicker, TimePicker) và những dialog (DatePickerDialog, TimePickerDialog) để hỗ trợ user nhập vào ngày, tháng, năm, thời gian. DatePicker và DatePickerDialog cho phép bạn đặt ...

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

Thiết lập quảng cáo sử dụng goole admod trên iOS

AdMob là nền tảng quảng cáo trên thiết bị di động của Google, là chương trình hiển thị quảng cáo trên các thiết bị di động. Để bắt đầu thực hiện trước tiên cần những Yêu cầu: Xcode 5.1 trở lên deploy cho ios 6.0 trở lên Bắt đầu tạo 1 project mới File > New > Project . ...

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

Laravel Pagination

1. Giới thiệu Ngày nay, trong quá trình lập trình web công việc phân trang dữ liệu là không thể thiếu. Nó giúp chúng ta xử lý dữ liệu hợp lý hơn, đồng thời quản lý việc truy suất dữ liệu hợp lý hơn. Các framework PHP hầu như đều hỗ trợ phân trang, Laravel cũng vậy. Laravel cung cấp cho chúng ...

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

test specification step by step

Ace dev thường bị đánh giá rank thấp ở khoản QA/test, đợt review vừa rồi bị GL hỏi test specification là gì nên về quyết tâm tìm hiểu và viết bài này, hi vọng có thể giúp được các ace dev trong mục QA/test. 1.Test Specification (TS) là gì: Từng nghe QA leader tạo plan test,QA viết test case,thực ...

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

Python is Now the Most Popular Introductory Teaching Language at Top U.S. Universities (Translated Article)

If you don't know Vietnamese, please visit the link at the end of this article for the English version. Hiện nay, ở Mỹ, Python hiện đang là ngôn ngữ lập trình được đưa vào giảng dạy ở các khóa học mở đầu về KHMT phổ biến nhất. Để làm rõ thực tế này, hôm nay, tôi xin dịch một blog của Philip Guo ...

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

TableView nâng cao trong iOS

1. Giới thiệu : Một tính năng phổ biến trong hầu hết các ứng dụng trong thực tế là cung cấp nhiều màn hình để người dùng có thể điều hướng và làm việc với chúng. Chúng ta có thể dùng TableView với các cell có thể mở rộng, ẩn, hiện để có thể có các cách khác nhau trong việc hiển thị các màn hình ...

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

Custom trình duyệt video sử dụng AVPlayer-AVFoundation

Hiện nay có rất nhiều ứng dụng iOS có chức năng quay video và play video. iOS đã cung cấp các thư viện để chúng ta có thể dễ dàng play video, đơn giản nhất mà chúng ta hay sử dụng đó là MPMoviePlayerController. Tuy nhiên, từ iOS 9 trở đi thì đã không khuyến cáo sử dụng class này nữa, thay vào đó là ...

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

Tìm hiểu và cách sử dụng sidekiq và sidetiq

I. Các khái niệm 1. Sidekiq Sidekiq là một gem hỗ trỡ xử lý ngầm dưới background mạnh mẽ cho Ruby. Nó nhằm mục đích là đơn giản để tích hợp với bất kỳ ứng dụng Rails hiện đại và hiệu suất cao hơn nhiều so với các giải pháp hiện có khác. Link github 2. Sidetiq Sidetiq là một gem hỗ trợ cho ...

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

Các Ngôn Ngữ Lập Trình Có thể Bạn không biết

Có một sự thật là những ngôn ngữ lập trình "cổ lỗ sĩ" hiếm khi bị lãng quên hoàn toàn khi vẫn còn giá trị sử dụng với những thị trường ngách, nơi việc bảo trì và phát triển một hệ thống phần mềm cũ vẫn là sự lựa chọn tốt và tiết kiệm hơn hẳn so với việc phải "code lại từ đầu". Bài viết này nhằm ...

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

Hiểu biết cơ bản về Builder pattern

Builder pattern là một mẫu thiết kế thuộc "Nhóm khởi tạo" ( Creational Pattern ). Mẫu thiết kế này cho phép lập trình viên tạo ra những đối tượng phức tạp nhưng chỉ cần thông qua các câu lệnh đơn giản để tác động nên các thuộc tính của nó. Trong bài này chúng ta sẽ tìm hiểu về mẫu thiết kế này ...

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