Về chủ đề
Có nhiều loại vấn đề khác nhau có thể được coi là
khoa học máy tính lý thuyết . Từ quan trọng ở đây là " lý thuyết " (vì tất cả chúng ta đều có một số ý tưởng về những gì khoa học máy tính giải quyết). Hiểu từ lý thuyết là không quá rõ ràng. Trong một thời gian dài, tôi đã hiểu nó có nghĩa là toán học, trái ngược với "hack". Tôi học tốt hơn từ những người trong ngôn ngữ học:
lý thuyếtđối với họ rõ ràng không có nghĩa là toán học, nhưng dựa trên một lý thuyết có thể hơi không chính thức (mặc dù nó cũng có thể là toán học), và là một tổ chức kiến thức và khái niệm cấu trúc sự hiểu biết về các hiện tượng quan sát được và hy vọng cho phép sử dụng suy đoán và dự đoán của kiến thức có được. Nó cũng làm giảm số lượng để học và dạy bằng cách giảm số lượng các khái niệm nguyên thủy mà từ đó phần còn lại có thể được suy luận.
Lý thuyết có thể trái ngược với thực tiễn , đó là cách mà kiến thức này được sử dụng để thực sự chạy các công cụ điện toán, để xây dựng các hệ thống, v.v. Tôi cũng có thể phản đối việc áp dụng kiến thức này để giải quyết các vấn đề trong các lĩnh vực khoa học và con người khác các hoạt động.
Nhưng tôi nghi ngờ có ranh giới rõ ràng.
Điều này nói rằng, khoa học máy tính lý thuyết bao gồm nhiều lĩnh vực khác nhau và tôi sẽ cố gắng đưa ra một số, trong khi tôi chắc chắn tôi quên những người khác, và những người khác có thể không đồng ý với tổ chức này.
một miền là khả năng tính toán , nghiên cứu những gì có thể được tính toán và làm thế nào theo nghĩa khá trừu tượng: phần lớn những gì được mô tả trong câu trả lời của Suresh Venkat.
khác là thuật toán , tìm ra phương tiện hiệu quả để tính toán câu trả lời cho các vấn đề cụ thể, với các ràng buộc cụ thể. Khả năng tính toán là một bối cảnh lý thuyết cho thuật toán.
ngữ nghĩa (vì muốn có một cái tên tốt hơn), phân tích tổ chức khái niệm về các vấn đề tính toán và thuật toán, thành các khái niệm cấp cao hơn, để nhân tố các kỹ thuật đã được chứng minh là hữu ích và thường được sử dụng lại, chẳng hạn như khái niệm chương trình con, dữ liệu- cấu trúc, mô-đun, ẩn thông tin. Nó bao gồm sự phát triển của các công cụ toán học chính thức hóa đầy đủ các khái niệm này để cho phép lý luận cấp cao (ví dụ về ngữ nghĩa Scott). Nó cũng chạm vào cách thể hiện điều này, do đó về sự tách biệt và mối quan hệ giữa cú pháp và ngữ nghĩa. Các khái niệm ngôn ngữ lập trình là một phần của nó (mặc dù thiết kế ngôn ngữ có lẽ là ứng dụng cơ bản của kiến thức đó). Nó cũng có thể bao gồm mối quan hệ giữa lý thuyết bằng chứng và lý thuyết tính toán, và vai trò hiện đại của các hệ thống loại.
một chủ đề khác, có thể phát triển hơn nó cho đến nay, là mối quan hệ giữa tính toán và vật lý cơ bản. Ví dụ. có một mối quan hệ giữa các giới hạn về tính toán và các tính chất của thế giới vật lý, chẳng hạn như mật độ thông tin vật lý hoặc các định luật nhiệt động lực học. Điện toán lượng tử có thể cải thiện một chút năng lực tính toán của chúng ta; chúng ta có thể hy vọng nhiều hơn không? Một số người có thể tranh luận rằng đây vẫn là TCS, mặc dù có những nghiên cứu về TCS về siêu tính toán .
Về hoạt động cụ thể
Tôi đang bỏ qua các hoạt động rõ ràng theo yêu cầu của cuộc sống học tập. hoặc đời sống khoa học trong công nghiệp: giảng dạy, xuất bản, xem xét các bài báo, viết đơn xin tài trợ, nhận trách nhiệm học tập, quản lý con người, tư vấn cho sinh viên hoặc các nhà hoạch định chính sách. Nhưng ngay cả khi đó, không có câu trả lời đơn giản cho câu hỏi của bạn. Ở đây tôi chỉ phác thảo một vài khía cạnh mà tôi nghĩ đến, nhưng tôi chắc chắn có rất nhiều điều để nói. Và tôi không chắc chắn tôi đang trả lời bạn. Một số nhà khoa học giỏi nhất đã viết sách về công việc của họ và điều đó có thể cho bạn gợi ý về các hoạt động khoa học.
Nghiên cứu về lý thuyết có thể liên quan đến nhiều thứ khác nhau, tùy thuộc vào kỹ năng và sở thích của bạn khác nhau rất nhiều từ nhà khoa học đến nhà khoa học. Thật khó để nói về điều đó, vì mỗi người nhận thấy nhiều hoạt động và sở thích của riêng mình hơn so với những người khác. Hầu hết các nghiên cứu đều yêu cầu kiến thức rộng, vì các kết quả thú vị và thực sự ban đầu thường xuất phát từ việc đặt mọi thứ vào mối quan hệ hoặc chuyển một kỹ thuật từ trường này sang trường khác hoặc nhận được các quan điểm kỹ thuật khác nhau về cùng một vấn đề. Vì vậy, học càng nhiều càng tốt theo chiều rộng là quan trọng. Hãy nhớ rằng trong khi bạn có thời gian và khả năng cho nó khi còn là sinh viên, hoặc là giảng viên / nhà khoa học cơ sở, cả hai sẽ bị giảm sau đó, vì trách nhiệm và cuộc sống nói chung. Dạy những gì bạn không chuyên có thể là một cách để tiếp tục học.
Loại công việc mọi người làm có thể thay đổi rất nhiều, bởi vì mọi người may mắn rất khác nhau, với rất nhiều sở thích và khả năng kỹ thuật, do đó bổ sung cho nhau. Một số người là người giải quyết vấn đề. Họ nhìn vào những câu hỏi lý thuyết hoặc thực tế được đưa ra bởi những người khác, hoặc của chính họ, và cố gắng giải quyết chúng, hoặc tiến gần hơn đến một giải pháp hoàn chỉnh hoặc một phần. Những người khác sẽ giỏi hơn trong việc cấu trúc kiến thức hiện có, và đặt mọi thứ vào mối quan hệ, và sau đó tìm câu hỏi mới để hỏi. Cả hai đều cần thiết.
Tìm kiếm bằng chứng đơn giản hơn về kết quả kỹ thuật, hoặc trình bày lý thuyết đơn giản hơn, hoặc hợp nhất các khái niệm là rất quan trọng. Nó khái quát hóa kết quả, giảm số lượng những điều cần học, nhấn mạnh những ý tưởng thiết yếu và có thể mang lại sự hiểu biết mới. Vì thời gian học tập của chúng ta có hạn, nên chỉ có thể tiến bộ khi chúng ta cô đọng kiến thức.
Một ví dụ đơn giản là nghiên cứu về các họ trừu tượng của các ngôn ngữ chính thức. Khi lý thuyết ngôn ngữ lần đầu tiên được phát triển, các thuộc tính đóng trong các hoạt động khác nhau đã được chứng minh lặp đi lặp lại cho từng họ ngôn ngữ (thông thường, không ngữ cảnh, RE, ...), với các kỹ thuật ad hoc tùy thuộc vào gia đình. Sau đó, các tài sản đóng cửa này có quan hệ nội tại độc lập với các gia đình liên quan và chúng được nghiên cứu như vậy. Ngày nay, chúng ta chỉ phải kiểm tra một vài thuộc tính đóng đơn giản hơn cho một gia đình nhất định và chúng ta nhận được "miễn phí" toàn bộ các thuộc tính khác.
Một điểm quan trọng khác là không có sự phân biệt rõ ràng như vậy giữa công việc lý thuyết, thực tế hoặc thực nghiệm. Một lý thuyết tốt có thể dẫn đến việc thực hiện các hệ thống có thể cơ giới hóa việc giải quyết các vấn đề. Và sẽ cần một nhà lý thuyết giỏi để thực hiện một hệ thống như vậy, với sự kết hợp giữa công việc lý thuyết và thực tiễn, bao gồm thực hiện hệ thống, hoặc thiết kế ngôn ngữ. Nhiều ví dụ xuất hiện, chẳng hạn như các hệ thống tổng hợp bằng chứng và / hoặc chương trình, ngôn ngữ chuyên biệt cho các hệ thống song song đồng bộ, một ngôn ngữ thuật toán hạn chế mà độ phức tạp tính toán có thể được suy ra một cách có hệ thống. Điều quan trọng không chỉ là có thể tạo ra các hệ thống pratical như vậy, điều này làm cho kết quả lý thuyết trở nên phổ biến và có thể sử dụng rộng rãi hơn, nhưng nó thường rất quan trọng đối với nhà lý thuyết hoặc sử dụng thành thạo các hệ thống này, nếu chỉ dỡ bỏ các phần kém sáng tạo của mình làm việc, hoặc để đóng góp cho sự phát triển và mở rộng của các hệ thống này.
Một khía cạnh khác là có thể so sánh các phương pháp lý thuyết bằng thí nghiệm pratical. Ở đây, vấn đề là so sánh các kỹ thuật khác nhau để hoàn thành cùng một mục tiêu. So sánh việc triển khai thường là vô nghĩa vì hiệu quả của chúng thường phụ thuộc vào ngôn ngữ lập trình hoặc kỹ năng lập trình của người thực hiện. Nhưng nếu chúng có thể được thể hiện tất cả trong một khung lý thuyết chung, thì đôi khi có thể so sánh chúng với thực nghiệm trong khung đó. Ở đây, lý thuyết và thực hành hỗ trợ lẫn nhau, như họ thường làm trong khoa học. Phân tích lý thuyết thuần túy không phải lúc nào cũng dễ dàng đạt được. Hơn nữa, phân tích thử nghiệm, khi được tiến hành tốt, có thể thể hiện hành vi bất ngờ có thể thúc đẩy phân tích lý thuyết tốt hơn.
Thế giới không đơn giản hay rõ ràng. Đó là lý do tại sao nó có thể vui vẻ, có chỗ cho tất cả các loại kỹ năng. Đặt câu hỏi về kiến thức của riêng bạn, và trả lời câu hỏi của người khác, bằng mọi cách.
Hai điều thường bị lãng quên: đạo đức của khoa học, và giải thích nó cho mọi người. Cả hai đều cần thiết, và khó khăn.