Kiến thức lập trình so với logic lập trình


10

Có sự khác biệt nào giữa hai chủ đề không? Tôi đã thấy các công ty yêu cầu kiến thức lập trình tốt một số logic lập trình tốt .

Tôi đã thấy điều này trong hồ sơ công việc cho một nhà phát triển - ví dụ "logic lập trình tốt", "kiến thức lập trình mạnh".

Tôi tin rằng kiến ​​thức Lập trình có liên quan đến kiến ​​thức về ngôn ngữ đang được xem xét và Logic lập trình là logic giải quyết vấn đề bằng cách sử dụng lập trình (nói chung).
Xin hãy sửa tôi nếu tôi sai. Ngoài ra cái gì quan trọng hơn?

Chỉnh sửa: Việc lựa chọn các thành phần cho ứng dụng, thiết kế giao diện xác nhận đầu vào của người dùng có thuộc kiến ​​thức lập trình hoặc Lập trình logic không?
Liệu logic lập trình chỉ đơn giản ngụ ý giải quyết vấn đề, hay còn điều gì khác mà nó nên bao gồm?


3
những điều khoản này không có ngữ nghĩa được xác định rõ và thường được thống nhất. "Ý nghĩa" của chúng khá nhiều phụ thuộc vào bối cảnh. "Tôi đã thấy các công ty hỏi" - những công ty nào? trong những điều khoản chính xác họ đã yêu cầu?
gnat

@gnat Tôi đã thấy điều này trong hồ sơ công việc cho một nhà phát triển
Shirish11

trong những điều khoản chính xác họ đã yêu cầu?
gnat

@gnat ví dụ logic lập trình tốt, kiến ​​thức lập trình mạnh.
Shirish11

Tôi không thấy bất kỳ bài đăng nào bao gồm "kiến thức lập trình" hoặc "logic lập trình" trên trang Careerers.stackoverflow.com . Bạn có thể cung cấp một liên kết đến một số ví dụ? Không nhìn thấy các ví dụ cụ thể, tôi khuyên bạn nên tránh xa các công việc trong đó "kiến thức lập trình tốt" là một bằng cấp. Mô tả công việc nên cụ thể hơn nhiều. Không nên nói rằng một công việc cho một nhà văn hoặc nhiếp ảnh gia sẽ đòi hỏi "kiến thức viết tốt" hoặc "kiến thức nhiếp ảnh tốt", phải không? Điều tương tự ở đây.
Caleb

Câu trả lời:


7

Kiến thức lập trình là sự hiểu biết về cách sử dụng ngôn ngữ lập trình, cú pháp là gì, từ khóa, cách sử dụng mã (và hiểu OOP nếu đó là ngôn ngữ hướng đối tượng). Kiến thức này có thể đạt được thông qua việc đọc sách giáo khoa và nghiên cứu ngôn ngữ và khái niệm.

Lập trình Logic là khả năng giải quyết vấn đề và suy nghĩ một cách trừu tượng khi sử dụng ngôn ngữ lập trình. Điều này khác với kiến ​​thức lập trình vì logic lập trình có được bằng kinh nghiệm và thực tiễn.

Một số lập trình viên có thể có kiến ​​thức tốt về ngôn ngữ lập trình nhưng không có nhiều kinh nghiệm trong việc giải quyết các vấn đề khi sử dụng nó. Và tương tự, một số lập trình viên có thể có kỹ năng suy luận logic tốt nhưng có kiến ​​thức hạn chế về ngôn ngữ lập trình. Kỹ năng về cả kiến ​​thức lập trình và logic lập trình có thể đạt được, nhưng sau này có kinh nghiệm.


2
Tài liệu tham khảo cần thiết. Như đã viết, những định nghĩa này dường như chỉ là ý kiến ​​/ sự hiểu biết của bạn về chúng. Trích dẫn nguồn gốc của các định nghĩa này và / hoặc ví dụ về việc sử dụng đồng ý với các định nghĩa của bạn sẽ làm cho câu trả lời này tốt hơn nhiều.
Caleb

+1 cho "Điều này khác với kiến ​​thức lập trình vì logic lập trình có được bằng kinh nghiệm và thực tiễn."
Md Mahbubur Rahman

4

Logic lập trình được định nghĩa là ứng dụng của các kỹ năng giải toán / toán học trong một vấn đề progamming cụ thể. Kiến thức lập trình là việc áp dụng một ngôn ngữ lập trình cụ thể để cho phép lập trình viên áp dụng logic lập trình. Cả hai đều quan trọng trong quá trình giải quyết vấn đề progamming.

Cần nhấn mạnh vào các kỹ năng giải quyết vấn đề - logic - trở nên giỏi trong việc giải quyết các vấn đề phức tạp. Một khi bạn đã thực hành kỹ năng này (sẽ mất một lúc để bắt đầu nghĩ ra) hãy dạy cho mình một ngôn ngữ lập trình để áp dụng logic.


... Được định nghĩa là ... ở đâu và bởi ai? Trích dẫn tài liệu tham khảo của bạn cho các định nghĩa.
Caleb

3

Chúng nghe rất khác với tôi và tôi đã có một khoảng thời gian khó khăn để nói cái nào quan trọng hơn.

Bạn có thể là một người bảo trì phần mềm tuyệt vời, nhưng bản thân một lập trình viên rất tệ. Một số người rất tuyệt vời trong việc gỡ lỗi mã, tìm đường đi qua nó, sửa nó và cải thiện nó một chút. Chúng thường được so sánh với người lao công, nhưng đó là một sự bất đồng: họ có thể có kiến ​​thức và bí quyết thực sự để đưa mọi thứ đến trạng thái tốt hơn.

Nhưng họ vẫn có thể rất tệ trong việc viết mã mới và thiết kế và thực hiện các thuật toán. Họ có thể hiểu lý do tại sao mọi thứ thường tốt hơn bằng cách này hay cách khác, và họ thậm chí có thể hiểu sau khi thực tế lợi ích của thiết kế này so với thiết kế khác. Nhưng họ có một thời gian khó khăn với chính mình. Họ thiếu hiểu biết sâu sắc về tư duy logic và giải quyết vấn đề này.


Cả hai đều quan trọng trong tâm trí của tôi. Bạn không muốn chỉ có những tin tặc có thể đưa ra các giải pháp tuyệt vời, nhưng tạo ra mã không thể nhầm lẫn cho các thế hệ nhãn cầu tiếp theo sẽ xem xét cơ sở mã của bạn. Nó có thể tốt cho việc tạo mẫu và các dự án ngắn hạn, nhưng ở quy mô lớn hơn chỉ có thể bay rất lâu.

Vì vậy, nhóm đầu tiên cũng rất cần thiết. Nhưng họ sẽ không thể thiết kế phần mềm tuyệt vời với nhóm thứ hai. Nó khá cộng sinh (và tốt nhất khi những phẩm chất thực sự nằm trong cùng một nhà phát triển). Tôi đoán nếu bạn coi đây là vấn đề về gà và trứng, tôi phải thừa nhận rằng loại logic này quan trọng hơn một chút, vì lý do lịch sử, vì chúng phải tồn tại trước tiên để đi đầu. Nhưng điều đó có nghĩa là chúng quan trọng hơn trong một cửa hàng phần mềm? Tôi không nghĩ vậy. Bạn có thể sản xuất phần mềm tuyệt vời và thành công bằng cách kết nối mọi thứ với nhau và không phát minh ra nhiều.


3

Kiến thức lập trình - có được thông qua việc đọc và nghiên cứu , trong khi Lập trình logic là thứ xuất phát từ kinh nghiệm để xử lý các tình huống khác nhau và tìm giải pháp cho chúng.


1
-1, định nghĩa của bạn đơn giản là không đúng. Bạn có thể học kiến ​​thức thông qua kinh nghiệm và bạn có thể học logic từ một cuốn sách.
corsiKa

Đồng ý, bạn có thể học hỏi kinh nghiệm, nhưng phương pháp và kỹ thuật lập trình có thể được học từ những cuốn sách hay. Tuy nhiên, logic lập trình chặt chẽ hơn với kinh nghiệm.
Yusubov

2

Có một sự khác biệt rất lớn. Lập trình logic có nghĩa là người ta sẽ có thể giải quyết các vấn đề thuật toán, có thể tạo mã chung, hiệu quả. Họ phải giỏi giải quyết vấn đề một cách hiệu quả. Kiến thức lập trình là kiến ​​thức về các khái niệm lập trình chung, ngôn ngữ / ngôn ngữ và công nghệ


Tôi không nghĩ should be able to create generic, efficient codeđến Logic. Một logic không bao giờ phụ thuộc vào mã nhưng mã phụ thuộc vào logic.
Junaid

0

Kiến thức lập trình có nghĩa là biết về các khái niệm của ngôn ngữ lập trình cụ thể cung cấp các tính năng thường có thể giải quyết vấn đề.

Lập trình logic có nghĩa là áp dụng kiến ​​thức lập trình để đóng khung logic lập trình sẽ hoạt động để giải quyết vấn đề.

Vì vậy, một người quan tâm đến các khái niệm và người khác quan tâm đến logic.


-1

Kiến thức lập trình là biết sử dụng búa n đục

Lập trình Logic đang chế tạo chiếc ghế ra khỏi Nhật ký gỗ .. !! (sử dụng Hammer n Chisel)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.