Lập trình bất đồng bộ trong Scala với Future

Lập trình bất đồng bộ trong Scala với Future

Scala có thể sử dụng được tất cả các thư viện của Java nên ta hoàn toàn có thể sử dụng các tính năng về lập trình song song của Java (Thread, Runnable…) để phục vụ cho việc xử lý bất đồng bộ khi code Scala. Tuy nhiên, bản thân Scala cũng có những tính năng phục vụ riêng cho việc lập trình bất đối xứng với API ở mức abstract hơn, đồng thời dễ dàng tích hợp với các API mà Scala cung cấp. Một tính năng có sẵn trong standard library của Scala là Future, ngoài ra còn ... »

Xử lý bất đồng độ trong JavaScript với Promise và Generator

Xử lý bất đồng độ trong JavaScript với Promise và Generator

1. Callback Ai đã từng sử dụng Javascript chắc đều biết xử lý bất đồng bộ là một đặc trưng của Javascript. Ví dụ, bạn viết hàm request(URL) để gửi yêu cầu đến một đường dẫn rồi ghi log kết quả trả về ra console: function request(URL) { var xhttp = new XMLHttpRequest(); //Bất đồng bộ xhttp.onreadystatechange = function() { if (xhttp.readyState == 4 && xhttp.status == 200) { console.log(xhttp.responseText); } }; xhttp.open("GET" ... »

Swift 2.0 và những điểm đặc trưng

Swift 2.0 và những điểm đặc trưng

Xuất phát từ sở thích muốn làm một sản phẩm đã ấp ủ khá lâu bằng IOS, sau môt thời gian tìm hiểu đắn đo tôi đã quyết định chọn swift 2.0 làm ngôn ngữ chính cho việc phát triển sản phẩm của tôi. Sau khi khi tìm hiểu phiên bản swift 2.0 tôi có tóm tắt những điểm khác biệt của swift2.0 so với những phiên bản trước như sau: Bắt lỗi(Error Handling) Đôi khi một số thứ có thể bị lỗi. Khi một function bị lỗi, cách tốt nhất là bắt được lỗi đó ... »

Producer-Consumer

Producer-Consumer

1. Giới thiệu Là một design pattern được thiết kế dựa trên pattern Master/Slave. Trong đó: Producer(nhà sản xuất): tạo ra các items, các data. Các items, data sẽ được cho vào một buffer hay 1 queue. Consumer (nhà tiêu thụ): Cùng thời điểm trên nhà tiêu thụ lấy các items, xử lý các data từ trong buffer hoặc queue. Producer giống như là Master, Consumer thì đóng vai trò như slave. Số lượng Consumer thường là số nhiều. Ví dụ về Producer – Consumer và một số proplem trong mô hình: hình ảnh sau (Sưu tầm ảnh trên ... »

Giới thiệu Apache Knox

Giới thiệu Apache Knox

1. Apache Knox Apache Knox Gateway là REST API Getway để tương tác với Apache Hadoop. Nó cung cấp 1 điểm truy cập duy nhất cho tất cả các REST tương tác với các Apache Hadoop cluster. Knox tích hợp với các hệ thống: Identity Management, SSO. 1.1 Luồng bảo mật Knox có thể sử dụng cho cả với Hadoop clusters không thiết lập bảo mật và có thiết lập bảo mật. Hình trên là luồng bảo mật khi ứng dụng Knox vào các cluster thiết lập bảo mật với Kerberos: Knox tích hợp tốt với các giải pháp ... »

Poderosa auto connect to multiple servers

Poderosa auto connect to multiple servers

Khi phải làm việc với nhiều server, chúng ta thường hay phải thực hiện lại một loạt các công việc nhàm chán ssh, login, …Có nhiều cách để tự động hóa các thao tác này như sử dụng tool, viết file bash.Bài viết này sẽ giới thiệu 1 phương án sử dụng poderosa kết hợp với macro viết bằng js.### 1. Poderosa Đây là 1 công cụ hỗ trợ kết nối server được sử dụng cực kỳ phổ biến tại Nhật cũng như nhiều nơi khác.#### Một vài tính năng cơ bản Telnet, SSH1, SSH2 Split screen, Reproduce Change ... »

Bóc tách vấn đề nhỏ không liên quan

Bóc tách vấn đề nhỏ không liên quan

Một kỹ sư không chỉ biết code mà phải biết chia những vấn đề lớn thành những vấn đề nhở và giải quyết lần lượt từng vấn đề một. Hay nói ngắn gọn lại là “Chia để trị”. Trong bài viết này mình sẽ đưa ra vài lời khuyên để đồng nhất, bóc tách chương trình con. Cụ thể là: Nhìn vào một function hoặc môt block (gọi chung là chương trình con), hãy tự hỏi rằng “What is the high-level goalof this code?” Kiểm tra xem việc thực thi đoạn code đấy đã giải quyết trực tiếp được vấn ... »

Phân tích câu tiếng Nhật với Atilika Kuromoji

Phân tích câu tiếng Nhật với Atilika Kuromoji

Hiện tại có rất nhiều công việc liên quan đến xử lý văn bản tiếng Nhật. Bạn muốn lấy danh sách các danh từ, muốn lấy cách đọc chữ Hán hay muốn đổi động từ, tính từ về dạng từ điển để thuận lợi cho việc tìm kiếm. Tất cả các công việc này đều có thể thực hiện dễ dàng với Atikila Kuromoji. Atilika Kuromoji  là phần mở rộng hơn dựa trên nền tảng Mecab, 1 trong những engine phân tích ngôn ngữ học tiếng Nhật phổ biến nhất. Mecab lúc đầu phát triển dựa theo ChaSen nên có ... »