Tản mạn về Dependency Injection


Java Việt Nam

Tản mạn về Dependency Injection

Như thường lệ, blog của mình sẽ rất ít các định nghĩa, rất nhiều code, hình ảnh minh họa và những câu nói dí dỏm.

OK, hãy bắt đầu với định nghĩa về Dependency

Dependency

Khi trong class A có sự tồn tại của lớp B, dùng lớp B để làm 1 công việc gì đó, ta nói lớp A đang phụ thuộc vào lớp B.

Ví dụ:

CustomerRepository.java

CustomerService.java

Như ví dụ ở trên, lớp CustomerService đang phụ thuộc vào lớp CustomerRepository, vì CustomerService đang sử dụng 1 instance của CustomerRepository để thực hiện việc lưu trữ dữ liệu xuống database, cụ thể ở đây là customerRepository.

Dependency1

Vậy: customerRepository được khởi tạo ở đâu? Vì nếu không được khởi tạo, thì khi sử dụng chúng ta sẽ nhận được NullPointerException.

Câu trả lời là: để sử dụng được đối tượng customerRepository

View original post 1,618 more words

Advertisements

Being too smart is *your* problem.


Nguyễn Vũ Hưng's blog on Free and Open Source

Thông minh quá cũng là vấn đề. Đây là một số biểu hiện:

1. Chán dự án
2. Không nhìn thấy tương lai
3. Anh em xung quanh thấy “ổn”, trong khi mình thấy nhiều issue, rooms for improvement
4. Sếp không có tầm hình cho chính hắn, cho bạn, cho phòng/công ty
5. Công ty không thấy được giá trị của bạn
7. Không ai chỉ lối/hướng dẫn được cho mình

Vậy phải làm gì khi đó?
1. Tìm việc mới
2. Trở thành lãnh đạo
3. Làm việc 1 mình

Tham khảo:
https://www.linkedin.com/pulse/20140729162449-52594-seven-signs-you-re-too-smart-for-your-job

View original post

Lập trình viên học trên chiến trường


VinaCode

Bài viết được dịch từ blog Coding Horror

Lời bàn của Vinacode:

Gần đây trên diễn đàn Dạy Nhau Học thì admin Lê Trần Đạt đã đăng một bài viết rất hay có tên là “Cách học lập trình thất bại”, mình xin tóm tắt một phần của bài viết như sau:

Một điều rất kỳ lạ là các bạn sinh viên rất thích học lập trình thất bại. Đạt đã nhận được rất nhiều câu hỏi ở dạng “anh ơi, chỉ em cách học lập trình thất bại”. Các câu hỏi đó trông như thế này:

  • Anh có sách có bài tập C/C++/Java/XYZ và lời giải cho em xin với?
  • Xin bài tập của ngôn ngữ XYZ

Đạt không nói cách học này sai, nhưng cách học này chỉ phù hợp với học sinh tiểu học thôi. Học lập trình không phải để giải bài tập. Học lập…

View original post 1,487 more words

Lập trình viên: hãy mài sắc lưỡi cưa của bạn


Dĩ nhiên, việc đi mài cưa quá nhiều, hoặc mài cưa một cách ngẫu nhiên mà không có mục đích, thì có thể trở thành một hình thức khác của sự trì hoãn. Nhưng một lập trình viên mà hoàn toàn không cảm thấy thích thú với việc này một chút nào cả thì đó là một dấu hiệu cảnh báo đỏ lớn. Như Peter Bregman đã giảng giải, ám ảnh có thể trở thành một điều tốt:

Người ta thường thành công không chỉ bởi những cá tính khác thường của họ mà bởi chính bản thân họ. Những nỗi ám ảnh là một trong những tín hiệu tuyệt vời nhất của thành công. Việc hiểu một nỗi ám ảnh của ai đó và bạn sẽ hiểu được động cơ tự nhiên thúc đẩy anh ta. Thứ mà sẽ giúp anh ta đi đến tận cuối trái đất này.

Sẽ là rất tốt nếu bạn có một chút ám ảnh về việc mài sắc lưỡi cưa của mình, nó nghĩa là tích cực post link và thảo luận về các bài viết lập trình trên,

VinaCode

Bài viết được dịch từ blog Coding Horror

Là một nhà phát triển phần mềm, bạn làm cách nào để mài sắc lưỡi cưa của mình?

Lập trình viên nên tích cực mài giũa 'lưỡi cưa' của mình cho thật sắc bén.Lập trình viên nên tích cực mài giũa ‘lưỡi cưa’ của mình cho thật sắc bén.


Mài sắc lưỡi cưa là một thành ngữ để ám chỉ bất cứ việc gì bạn làm mà không phải là lập trình, nhưng cần thiết, (trên lý thuyết) làm cho bạn trở thành một lập trình viên giỏi hơn. Nó xuất phát từ cuốn sách 7 Thói Quen Của Người Thành Đạt của tác giả Covey.

Có một người tình cờ gặp một tay thợ đốn gỗ ở trên núi. Anh ta dừng lại và quan sát người thợ đốn gỗ, xem người thợ đang luýnh quýnh cưa một cái cây rất to. Anh để ý thấy rằng người thợ đốn gỗ đó đang làm việc…

View original post 1,562 more words