Nên lưu trữ dữ liệu thế nào nếu có tới hàng tỷ record?
NoSQL thôi.
Công nghệ phân tích ngữ nghĩa
Chưa bh làm nhưng mình có 1 ý tưởng này không biết có hữu ích không nữa =)
- Mỗi từ là 1 node con, nhiều từ thành 1 câu. Lúc này 1 câu là 1 node cha.
- Về ngữ pháp, thì một từ có thể có nhiều "state", như là động từ, thêm "ly" thành trạng từ (ví dụ vậy), hoặc danh từ(ion, ing...),..., hoặc đơn giản là từ cho vui ) vậy một node có 1 attribute thể hiện cho state đó, và một vài từ có thể là instance của "thì" (-tense) của câu (ví dụ quá khứ, quá khứ hoàn thành, hiện tại đơn..), nhưng có xác suất, ví dụ "had you have"...
- Một node được đính kèm node trước và node sau, dựa vào đó so sánh.
- Nếu có nhiều node cha, cũng có node cha trước và node cha sau, thì lúc này kiểm tra node cha trước có attribute biểu đạt cho "thì" nào, thì node sau dựa trên scene của node trước để so sánh cái "state" mà là instance của "thì". Sau đó thì.... cái nào sai thì highlight theo xác suất lên ) Oh mai gót,@_@ hóp ít díu sờ phun.
Nhờ giải thích giá trị biến i trong đoạn Code
ten ten ten tèn. var là scope function block, còn let là enclosing block. Trong 1 scope, thì biến var dc sinh ra và chỉ có 1 ràng buộc được chia sẻ trong một scope và trong vòng lặp, tức là i trong mọi callback của setTimeout đều là trả về 5 (tại sao trả về 5 mà ko phải 4? vì nó lấy thằng loop cuối cùng đã kết thúc) Còn với let, thì cứ mỗi vòng lặp thì nó sẽ tạo 1 ràng buộc mới (ý mình là binding), thế nên nó gắn theo loop, nhận giá trị 0 => 4, vì nó không cho phép truy cập thằng let, trước khi mà biến đó dc khai báo trong block, còn không thì nó sẽ ném exception ra đỏ choé.
Hỏi về hiệu suất Android
Case hay. Khi người dùng swipe phải (recyclerview chứa recyclerview horizontal, thì cha đứng lai, con sẽ sử dụng lại view để tạo => mượt). Khi swipe xuống (vertical), mỗi view bên trong inner recycler view dc inflated lại. Nguyên nhân: các nested view trong recylerview đều có view pool của nó. Sửa: Đặt recylerview chỉ là single view pool: public OuterRecyclerViewAdapter(List<Item> items) { viewPool = new RecyclerView.RecycledViewPool(); } @Override public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { //tạo viewholder. holder.innerRecyclerView.setRecycledViewPool(....viewPool); } Cách làm này làm cho cha và con cùng một view pool, thế là mượt hơn. Hi vọng giúp dc bạn.
Tổ chức
Chưa có tổ chức nào.