01/10/2018, 14:32

Đọc sách gì để tiếp cận level Expert, Master Java

Chào các bạn,
Mình ko mong đạt tới level expert hay master trong một sớm một chiều… và cũng còn ti tỉ thứ phải làm với java core, advanced. Nhưng các bạn biết đấy!..Con ếch có lẽ sẽ nhận thấy và hiểu rõ cái đáy giếng của mình hơn khi nhìn thấy trời xanh.

Các bạn có thể chỉ giúp mình một số tài liệu, nguồn được không?

Kevin viết 16:39 ngày 01/10/2018

mình thì khuyên bạn dành nhiều thời gian làm việc để trở thành expert hơn là đọc

Phan Bá Hải viết 16:46 ngày 01/10/2018

Đầu năm nay mình đặt ra mục tiêu là học chỉnh chu Design Pattern
Đi từng bước nhỏ để expert Java

anon45952904 viết 16:33 ngày 01/10/2018

Mình đồng ý với bạn rằng làm việc là cách học rất tốt, tuy nhiên mình ko có điều kiện để làm việc trong môi trường cọ sát hay training hay học tập từ người khác nên cần tìm tài liệu tốt dể điều hướng.

Kevin viết 16:42 ngày 01/10/2018

vậy theo mình bạn nên tham gia một dự án opensource hoặc là đọc từ source code những framework nổi tiếng như spring, hibernate hoặc thậm chí là code của JDK/OpenJDK . Mình cũng ko rõ nhưng mình ít khi đọc full sách, mình chỉ đọc những cái mình quan tâm kiểu một topic nào đó chẳng hạn. Mình đi từ kiến thức OOP rồi đến design pattern như @SakaDream rồi tới architect chứ chưa theo full một quyển nào cả , mình nghĩ bạn bắt đầu từ cái chủ đề bạn muốn học rồi từ keyword đó search ra sách , từ sách đọc source code rồi nghiền ngẫm ra

Hung viết 16:39 ngày 01/10/2018

Đọc nhiều sách, không phải sách Head First, Pro, In Action gì đó
Luôn đọc docs chính thức (câu trả lời nên học ở đâu để master Java)
Design tổng thể và chi tiết càng nhiều càng tốt
Viết test case nhiều lên.

Ngồi cắm đầu code chỉ có thể thành thợ code giỏi, nhưng không thể thành software developer giỏi.

Vụ SVG mình đưa ra gợi ý rồi, nhưng bạn không có kiến thức nền vững, cụ thể là Compiler. Nếu là Real Project, làm việc trực tiếp với chục ngàn đối tượng, triệu row là chuyện hằng ngày

Kevin viết 16:40 ngày 01/10/2018

bạn có nghĩ là cần phải là một coder giỏi trước khi thành một developer giỏi hông ?

Kevin viết 16:41 ngày 01/10/2018

quên, chúc mừng năm mới mọi người !

anon45952904 viết 16:41 ngày 01/10/2018

Cảm ơn bạn rất nhiều,

Mình vừa đi làm khác ngành vừa tiếp cận lập trình với C, C++. Lướt w3schools.com, tutorialspoint.com, stackoverflow.com. JS, PHP, MySQL, Vuejs mình biết cơ bản. Sơ sơ cũng khoảng hơn 1 năm.
Khoảng 3 tháng nay mình cắm đầu vào Java, javafx, Design pattern, ko cảm thấy việc lập trình là khó nhưng thấy như mình đang giải quyết công việc ko đủ tốt, ko đủ chiều sâu kiến thức.

Mỗi khi tiếp cận bằng cách vào tutorialspoints.com và đọc sách head first và đọc docs khi cần làm việc. Nhưng nhận thấy nó vẫn cứ ở đó, quanh quanh như ở 1 cái ao và chưa biết làm thế nào để đào nó sâu hơn.

Hung viết 16:37 ngày 01/10/2018

Với mình là vầy.

Cho problem và tool, coder dùng tool giải quyết problem. Nếu problem khác 1 chút, tool không xài được, coder không làm được

Với developer, nếu problem khác, developer biết tool có gì, design ra sao, từ đó ra quyết định mở rộng tool hay viết tool mới. Để viết được tool thì có kiến thức nền tốt.

anon45952904 viết 16:37 ngày 01/10/2018

Kinh nghiệm của mình rằng: Kiến thức vững và sâu luôn luôn giúp người ta mạnh hơn rất nhiều. Người có điều này thường là người luôn tìm ra giải pháp, chính xác và rất nhanh, hoặc chắc chắn với câu trả lời kiểu như “điều đó là không thể”.

Nhưng làm nhiều ko có nghĩa là vững và sâu.

Kevin viết 16:37 ngày 01/10/2018

à, vậy mình khác quan điểm về coder một chút, coder đối với mình là người có thể sử dụng tools để giải quyết vấn đề ở khía cạnh kỹ thuật, còn developer thì cao hơn chút về các kỹ năng mềm cũng như teamwork , design … Nên đối với mình, để làm việc ở higher level thì cần phải sử dụng tools thật tốt, biết điểm mạnh yếu mà vận dụng. Khi sử dụng đã tốt rồi thì tới việc sáng tạo sau

Kevin viết 16:42 ngày 01/10/2018

Trong công việc cũng vậy, với mình khi một architect design ra hệ thống thì ít nhất phải chứng minh được nó hoạt động tốt bằng một hoặc vài case chứ ko chỉ đơn thuần là documents

anon45952904 viết 16:36 ngày 01/10/2018

Vụ SVG mình đưa ra gợi ý rồi, nhưng bạn không có kiến thức nền vững, cụ thể là Compiler. Nếu là Real Project, làm việc trực tiếp với chục ngàn đối tượng, triệu row là chuyện hằng ngày

Bạn có thể cụ thể hơn được không? Ít nhất mình cũng biết chỗ nào để mà học. Có vẻ mình đang dùng giải pháp “bad programing”: Mình dùng regex để lôi elements trong SVG file ra rồi đem sang javafx build lại theo format SVGPath của javafx.

Mình không nhìn ra mối liên hệ với compiler

anon45952904 viết 16:36 ngày 01/10/2018

Mình thì lâu nay cứ nghĩ việc của coder là code, just code.

coder = syntactical writer
developer = coder + designer = creator.

Nghĩ lại:
developer = coder + designer
creator = developer + practical idealist

Hung viết 16:34 ngày 01/10/2018

Regex chỉ dùng trong bước token parser.
SVG thực chất là XML nên sử dụng XML Parser để xây AST.

Nếu đúng các bước, dùng XML DOM Parser ra DOM tree, từ DOM tree sang AST cho việc render. Từ AST gắn thêm feature và tạo các metadata. Một bộ feature riêng duyệt cây, khi qua từng node thì render.

Nếu làm đủ chạy rất chậm, nên mình nói là làm
giảm các bước trung gian, chỉnh sửa CFG sao cho parse và render cùng lúc, đạt được O(n).

Sau khi làm được render được On thì đến bước optimize, tăng tốc render từng node lá, phân cụm Node trung gian render đồng thời. Cái này lại liên quan đến bên Đồ hoạ.

Gần như là build 1 hệ thống từ kiến thức nền, nhiều bước nên không chỉ có vài trick là giải quyết được liền.

anon45952904 viết 16:33 ngày 01/10/2018

Overwhelmed now.
Thank you, thank you, thank you…

Bài liên quan
0